I'm working to get the replacement for the RF22 library working.
The replacement is called RadioHead (see http://www.airspayce.com/mikem/arduino/RadioHead).
It supports radios other than just the RFM22, including other RFM22-alikes such as from Dorji, and the RFM69, and other radios. For platforms such as AVR-Arduino families, Uno, Leonardo, Yun, Maple, Flymaple, MPS340, and Teensy2,3. RF22 works well on Teensy.
RadioHead for Teensy 3 is what I'm working to test/validate, first with some RF22's in a star network. Then RFM69's.
What I am stuck on: How does a T3 compilation where SPI.h is used in conjunction with avr_emulation.h. This permits SPI I/O code for an AVR to run without change on the Teensy 3. Again, this works fine for the RF22 lib, but not so yet for the RadioHead lib, due to avr_emulation.h classes' operator overloads not being applied in the new library. This is a very clever set of classes/code but hard to grasp (for me).
In the new library, there's something simple and subtle missing in the inheritances from the generic driver on to it's derived classes for SPI and the the radio interface which is also generic with virtual methods so it's easy to swap out a radio driver and leave the protocol stack unaffected. (the stack includes optional datagram, reliable datagram, router, mesh router, etc.)
thanks in advance.
The replacement is called RadioHead (see http://www.airspayce.com/mikem/arduino/RadioHead).
It supports radios other than just the RFM22, including other RFM22-alikes such as from Dorji, and the RFM69, and other radios. For platforms such as AVR-Arduino families, Uno, Leonardo, Yun, Maple, Flymaple, MPS340, and Teensy2,3. RF22 works well on Teensy.
RadioHead for Teensy 3 is what I'm working to test/validate, first with some RF22's in a star network. Then RFM69's.
What I am stuck on: How does a T3 compilation where SPI.h is used in conjunction with avr_emulation.h. This permits SPI I/O code for an AVR to run without change on the Teensy 3. Again, this works fine for the RF22 lib, but not so yet for the RadioHead lib, due to avr_emulation.h classes' operator overloads not being applied in the new library. This is a very clever set of classes/code but hard to grasp (for me).
In the new library, there's something simple and subtle missing in the inheritances from the generic driver on to it's derived classes for SPI and the the radio interface which is also generic with virtual methods so it's easy to swap out a radio driver and leave the protocol stack unaffected. (the stack includes optional datagram, reliable datagram, router, mesh router, etc.)
thanks in advance.
Last edited: