So I took a look around my current ‘Arduino substitutes’ and much of the Arduino code I just include asis (such as WString.cpp/h for String support) potentially with an #include change. I usually write my own implementations relatively from scratch (with all the warts that causes, mainly so i don’t have to deal with random licensing). Here’s what I’ve got…
An implementation of TwoWire (I2C) using nrf_twim.
The usual Arduino-like interrupt handling using gpiote.
A watchdog timer (this is like 6 lines of code).
An implementation of SPI using nrfx_spi.
An abstraction of digital i/o pins that I use in Arduino and elsewhere (such as here).
I could throw this onto github but it’s not a repo and I’m not really going to maintain it. I’m not sure what to do instead.