-
-
Notifications
You must be signed in to change notification settings - Fork 35
Accessing the underlying Nordic SDK #58
Comments
Hi @theelims , |
Hi @facchinm , But I think I found the root cause. The timer functions are never pre-compiled into libmbed.a in the first place. They need to be activated inside sdk_config.h where they are disabled by default. So I would either need to make my own pre-compiled version of libmed.a with the required nrfx-drivers enabled or tell the compiler to build everything from scratch. Could you please advise me how to do so? That's way over my head. |
To produce a different libmbed.a the procedure is straightforward (from Linux and probably from Mac). |
Can this be done on Windows as well? Cygwin maybe? This way certainly works for one-off projects. But do you see a chance of somehow make the advanced sdk functions available natively from within the Arduino environment? Otherwise the whole NANO 33 BLE boards stay limited to what mbed is offering. Tight real-time applications or other advanced hardware peripherals won't be doable with this board. I was planing on releasing shields or derived boards and open source them. But if everyone interested in playing with these boards would need to go through these steps this would be quite a steep barrier. |
@theelims mbed usually strives enable all the drivers; if a driver is deactivated in the sdk, it probably mean that:
Did you try measuring |
Hi @theelims , |
Hi @polldo, wow, you puzzled all the pieces together I need. Just the other way around. I will have a closer look at your code. Thanks. I'll revisit my project again. |
The last days I tried to gain access to the Nordic SDK below the mbed layer. My application needs tight timings and the mbed timers caused to much jitter. Therefore I tried going with the hardware timer and nrf52's PPI module. I tried to get a modified timer-example from the nordic SDK to compile. So far without success. I reached a dead end and are looking for advice.
ArduinoCore-nRF528x-mbedos/cores/arduino/mbed/targets/TARGET_NORDIC/TARGET_NRF5x/TARGET_SDK_15_0/modules/nrfx/drivers/src is missing all source files. The headers are complete. The mbed repo still has all sources present.
ArduinoCore-nRF528x-mbedos/cores/arduino/mbed/targets/TARGET_NORDIC/TARGET_NRF5x/TARGET_SDK_15_0/integration/nrfx/legacy/ The legacy layer is missing most files also. But mbed is not better here.
I copied all missing files (nrfx_timer.c & nrf_drv_timer.h) into their respective folder. I took them from the nordic SDK 15.0.
Here is the actual code I'm trying to compile. Via googling I got the hint, that it doesn't find the nrfx_timer.c. The include paths in the includes.txt are all set to these folders. How do I tell the linker where to look?
Arduino and mbed are perfect for most high level stuff. However, some things need to be done with dedicated hardware peripherals. I would highly appreciate if it would be possible to use the advanced hardware features of this fantastic chip out of the arduino environment. Like it is possible an all other platforms.
The text was updated successfully, but these errors were encountered: