Spread spectrum implementation
With a protocol design in hand, the next step was to go and implement it. My goal was to produce a library which would work on the nrfusb, and also on the auxiliary stm32g4 on the mjbots pi3 hat. In this first implementation pass however, I only worked with the nrfusb as both transmitter and receiver.
While developing this, I had more than my share of “huh” moments working from the datasheet and with the components. To begin with, the initial nrf24l01+ modules I got were all Chinese clone ones. While I was having problems getting auto acknowledgement to work, I discovered that the clones at a minimum were not compatible with genuine Nordic devices. Thus I reworked genuine parts into the modules I had: