Project - RFM69 Driver for NETMF / Gadgeteer Mainboards

@ RoSchmi - I have a couple Feather f=rfm69s and 3 raw radios, not breakouts.

@ Terrence - then I think, you have everthing you need. Feather RFM69 as the transmitter, Gadgeteer or FEZ NETMF Board with raw radio as receiver.

Canā€™t wait to have a play with this as it could be a perfect fit for my current project replacing the XBeeā€™s.

1 Like

So this driver needs to work on IoT as well. Would bit banging be acceptable?

Please, can you explain a litte bit more of what you are thinking.

@ RoSchmi - I was thinking it was only for .netmf If itā€™s going to be for IoT with itā€™s hard to get to bare metal then I will need to make some seperations in my version of the driver. I consider this a requirements change.

1 Like

@ RoSchmi - Here is a guy who is working on getting the RFM12B to work on Windows 10 IOT Raspberry Pi. Hoping his code might help the overall movement.

2 Likes

Great work! Iā€™m going to take a shot at porting this to Win 10 IoT Core. Iā€™ll post back if I get something working.

Thanks, very interested to see your code.

Successfully built the library for Win IoT 10 Core. Most of the conversion was straightforward (things like converting ā€œTicks()ā€ to System.Environment.TickCout; converting the Thread-ing calls were a little more work, but not muchā€¦). Iā€™ll start testing tonight or tomorrow.

Thereā€™s one material change. Win IoT Core doesnā€™t have an InterruptPort class nor InterruptPortā€™s DisableInterrupt()/EnableInterrupt() members. You can instantiate a Gpio pin in Win IoT, set the pinā€™s DriveMode to Input (InputPullHigh in this case/if the pin supports it), and attach a handler to the pinā€™s ValueChanged event which is nearly the same as attaching to an InterruptPortā€™s OnInterrupt event. In the ValueChanged handler, you can determine if the pinā€™s Edge is falling or rising (I think weā€™re interested RisingEdge in the RFM69 class). But I think the Gpio ā€œinterruptā€ pin could still receive input while the ValueChanged handler is executing. Iā€™ll take any guidance anyone cares to offer about handling interrupts properly in Win IoT.

Similar issue with OutputPort; thereā€™s no OutputPort class in Win IoT, but you can configure a Gpio port as output, set the initial state to false (Low), etc. So I think the reset pin will work just fine.

A few other async/threading related-clean ups, but Iā€™m hopeful Iā€™ll have something to share in a few more days.

3 Likes

@ SmithJones - I canā€™t provide any technical help on this, but I am looking forward to checking out your library. I think RFM69 is the right radio (low power, long distance) for IOT telemetry data transport back to the gateway.

1 Like

The sound of a Raspberry Pi running Windows 10 Iot Core (with a ā€œnakedā€ Adafruit RFM69 radio attached) transmitting messages to a remote RFM69 receiver. Still a lot of cleanup to do, but itā€™s working.

3 Likes

@ SmithJones - That is a beautiful sound. :clap:

@ SmithJones - Any updates on your Win10 Pi radio code?

2 Likes

I need to setup some wireless water monitoring stuff over 1000acres of land. I was hoping to use G120 and Adafruit RFM69HCW Transceiver Radio Breakout - 433 MHz [RadioFruit] : ID 3071 : $9.95 : Adafruit Industries, Unique & fun DIY electronics and kits
Before I go shopping. Did this ever get finished?
Edit: Actually should use these Adafruit RFM96W LoRa Radio Transceiver Breakout - 433 MHz [RadioFruit] : ID 3073 : $19.95 : Adafruit Industries, Unique & fun DIY electronics and kits
Does anybody know if the code is the same?

@ stotech - the driver used to work. What will be the distance between the sensors and the gateway in your application. How many sensors?

I suppose that the code will not work with the LoRa modules.

@ RoSchmi - I am interested in using the driver with Win10 IOT on a RPI. Will the diver work in that situation?

Actually I guess this should have been addressed to alias @ SmithJones

@ Terrence - the NETMF/Gadgeteer adaption of the driver will not work on RPi with Windows IOT. Unfortunately there are no new posts from @ SmithJones.
Concerning RPi and Linux I just saw this post:
http://jeelabs.org/2015/05/20/rfm69-on-raspberry-pi/
Personally Iā€™m at the moment not interested in trying to make a driver for RPi and Windows IOT, unlessā€¦ someone makes a very good offer :whistle:

@ RoSchmi - I understand. I guess I just need to get on board with the Arduino crowd and use the LowPowerLab driver and code.

Thanks.

@ Terrence - Yes, if you need less than letā€™s say 50 units and want to stay with RPi and Windows IOT itā€™s probably the better way to connect an RFM69-Arduino like the Moteino to the RPi through a serial port and let the Moteino/Arduino do the RF stuff. The advantage of the stable library will pay off the higher price.