Yes, I have built both the ncs 1.4.1 and 1.6.1 blinky
, hello_world
and lis2dh
example projects. The first release tag of Nordic Connect SDK (ncs) which I happened across was 1.4.1. I discovered when working through a device tree tutorial that I’d need a newer release of ncs
in order to enjoy a version of Zephyr RTOS greater than 2.5.x, which brought in DEVICE_DT_GET
and a few other advances on the Zephyr device tree front.
Examples blinky
and hello_world
, and a combination of them are programmable for me – I enable Nordic’s mcuboot option in prj.conf
in each project – on both nRF9160DK board and Sparkfun Thing Plus. lis2dh
runs on the Sparkfun thing plus board for me.
In your device driver tutorial, you make a comment that it is harder to lay out the groundwork for a new driver in Zephyr’s conventional driver directory hierarchy. In my case, starting effectively from blinky
example project, would it not be easier to create source and header files there, rather than local to my modified blinky project? In other words, is it really hard to put my driver files in progress in /home/ted/projects/embedded/ncs/zephyr/drivers/sensor
?
I know I would need to amend one or more Zephyr configuration or source files somewhere, at least to add the CONFIG_<driver> type symbols to enable only needed drivers. Right now it seems like my local driver
directory and Kconfig is somehow competing with Zephyr’s standard, conventional driver file hierarchy. If I could put my driver sources where vetted drivers live, I would not need to create an additional Kconfig in the local project or app space.
Please correct me on this thought if I am mistaken. If it is reasonable to develop a new driver in Zephyr’s standard drivers location, then is it also fair to say I can create a local branch of Zephyr project, and track my development changes in git that way?