Hi Al,


I am trying to use HSL Model to control RGB lights and getting this error. I am using nRF Connect SDK and nRF52-DK.
Regards,
Zolu
Hi Al,


I am trying to use HSL Model to control RGB lights and getting this error. I am using nRF Connect SDK and nRF52-DK.
Regards,
Zolu
Hi Zolu,
Could you give some more information:
- Do you see the same issue if you test on other mesh sample ?
- When do you see the error as on the SES screenshot ? Is it right after booting or after provisioning ?
- Which chip are you running ?
- Have you flashed the Zephyr BLE controller or it's the Softdevice BLE controller ?
Hi Zolu,
Could you give some more information:
- Do you see the same issue if you test on other mesh sample ?
- When do you see the error as on the SES screenshot ? Is it right after booting or after provisioning ?
- Which chip are you running ?
- Have you flashed the Zephyr BLE controller or it's the Softdevice BLE controller ?
Hi Hung,
- No such issue is seen while testing other mesh sample.
- After provisioning
- nRF52832
I have used the light_ctrl sample code from NCS v1.5.0 as a reference and tried to build RGB on top of that. On the SDK release selection I have not selected Zephyr Base.
Hi Zolu,
Could you provide a minimal example that can reproduce the issue so we can test here ?
I assume in the prj.conf you have CONFIG_BT_LL_SW_SPLIT=y (so that the Zephyr BLE controller will be used).
Hi Hung,
I have attached the .zip file with basic implementation. This is not the final implementation though.
Regards,
Zolu
Hi Zolu,
I have reproduced the issue here. I'm checking internally to figure out what could be wrong.
It seems to me it has something to do with the usage of memory. It somehow trying to execute code in RAM.
How did you implement the model ? Have you got at any step that it was working and when you added some code it crashed ?
Hi Zolu,
I got the code reviewed by our R&D and they suspect that the use of
struct lightness_ctx *l_ctx = CONTAINER_OF(srv, struct lightness_ctx, hue_cb);
struct lightness_ctx *l_ctx =CONTAINER_OF(srv, struct lightness_ctx, sat_cb);
was wrong. If you comment out start_new_hue_trans() and start_new_sat_trans() it would work fine. At least for provisioning and configuration (of course hue_set and sat set won't work as it should).
From where did you get the code from ?
Here is the quote from our R&D:
It is not possible to provide an occasional pointer to calculate the offset of the structure field. He performs to wrong addresses access after provisioning when models set initial values that causes hardfaults.