Renode (https://renode.io/ and https://github.com/renode/renode) is an open source simulator and used by Zephyr OS for example to validate binaries for different architectures.
I would like to use Renode as well, however I'm stuck as soon as the softdevice is initialized. I created github.com/.../renode-nrf52 which contains all the scripts, binary files, instructions and verbose logs that are needed to reproduce the issue.
As it's possible to use gdb, I did that:
(gdb) target remote :3333
Remote debugging using :3333
SVC_Handler () at ../../../../../../modules/nrfx/mdk/gcc_startup_nrf52.S:328
328 ../../../../../../modules/nrfx/mdk/gcc_startup_nrf52.S: No such file or directory.
(gdb) bt
#0 SVC_Handler () at ../../../../../../modules/nrfx/mdk/gcc_startup_nrf52.S:328
#1
#2 0x0002b596 in sd_softdevice_enable (p_clock_lf_cfg=p_clock_lf_cfg@entry=0x2000ff44, fault_handler=0x27351 ) at ../../../../../../components/softdevice/s132/headers/nrf_sdm.h:322
#3 0x0002b610 in nrf_sdh_enable_request () at ../../../../../../components/softdevice/common/nrf_sdh.c:214
#4 0x0002a2c8 in ble_stack_init () at ../../../main.c:573
#5 main () at ../../../main.c:573
The softdevice is available (loaded at memory position 0) - any hints whats wrong with my example?