Reik Hua sent me his copy of the mailbox code just as I’d started looking into using the mailbox for RPIO.PWM, thus saving me loads of time and brain-ache! He uses it for his quadcopter with B2 and B3 Raspberry Pis, and I’ve just tested it on Zoe, the Pi Zero and it worked there perfectly too. Reik Hua has kindly agreed to me passing this on to Chris Hager who owns the RPIO code on GitHub, thus making it generally available to all and allowing me to discard another personal hack from my repository.
What’s the fuss about? With the new kernel version in May, the RPIO code stopped working as it was assuming a fixed memory address for the DMA. The mailbox provides the actual address which had changed with the new kernels. So not only does the RPIO now work with 0’s, 2’s and 3’s – it’s also now future proofed. And that’s why I could show Zoe back in the air yesterday!