On 4 Dec 2018, at 18.13, Li, Jun R <email@example.com> wrote:I know.
I assume an random address will be written to the settings after the first booting, right? However, I still see the message "NO ID address" showing up every time when the board reboots. Should I do extra work to generate a random mac and write it to the settings?No. The warning comes before settings_load() to indicate to the app developer that settings_load() will need to be called, i.e. the warning is not supposed to go away. I think everything is working fine with regard to this - you’re just getting distracted with this benign warning message :)
I'll try increasing the stack size to see if it is helpful to resolve "HARD FAULT". Specifically, in which thread you want to increase its stack size, settings or Bluetooth?Usually it’s the thread that calls settings_load() that ends up having an increase in stack usage. In the case of the peripheral app it’s the system workqueue (which calls bt_ready which calls settings_load). However, you should analyse the stack usage of all stacks to to decide whether they’re the right size for your application.
Are you seeing this fault with an unmodified upstream peripheral app? If so we need to fix this upstream. That said, I didn’t see such an issue when running this app on both nRF52 and nRF51 boards today.