Finally, it’s here – my own Windows desktop app for Moteino Wireless Programming, download the exe from here. Not sure why I didn’t make this sooner, maybe because the command line invoked python script version works perfectly fine and also maybe because there was already a vb6 version built by someone else. But, it’s time to dust off my .net GUI skills and put C# to work. And the result is this:
Not much to it really, a mere 300 lines of loosely written code, last (mid)night. Here’s a rundown of the features, I tried to make this a bit more useful and intuitive to use than the command line python script, so that would be the main attraction other than being a GUI:
- gives you a list of available serial ports so you don’t have to guess (you still have to know which serial port your wireless programmer Moteino is connected to)
- allows you to type/paste or browse for a hex file
- allows a numeric target node ID
- once all settings are populated with valid info, the Start! button is enabled
- upon exit, it saves the settings to registry and attempts to read them back in future launches
Clicking Start! will do some validation and start the OTA protocol just as the python script did it, but also gives you more visual feedback with a progress bar at the bottom:
I will potentially expand this to allow remote wireless programming through a tcp port, just like the 3rd party vb6 app, but I doubt that will be very popular so I am sticking to the basics for now. If there are any bugs let me know.
This is it for 2015, see you on the other side of 2016!
Excellent. But how do I download the EXE? I can’t find any “download” link…
You will need to download the ZIP of the whole repository then extract the exe from that.
Ok, now I see it. There is a “Download Zip” on the main Library Repository on Github and it comes with all the other stuff, Moteino related.
However, when I run the file, nothing happens. No GUI. But the program loads into the memory as a new process. And I can’t kill it. So I have like 6 instances of WirelessProgramimg.exe loaded but none of them are running. I’m using Windows 7.
Try the raw link as suggested by Mindaugas above. It should really work up to Windows 10. You should have at least .Net Framework 3.5 installed.
Use Raw for EXE download:
https://github.com/LowPowerLab/WirelessProgramming/raw/master/WirelessProgramming.exe
Very cool 🙂
Is there any chance this can be modified to update all of the switchmotes in my house at one time? A handshake that included the client sending a version number might be useful, so only nodes that haven’t been updated yet get reprogrammed.
Thanks,
1. Parallel programming of multiple targets? No this won’t be possible because the protocol is based on ACKs, the entire stream has to be fully loaded into 1 target before moving on. Perhaps a serial rather than parallel.
2. Version number? You would still have to manually keep track of the version number so while it would be a nice idea, it could be prone to error. But this is something I am thinking about, maybe I can come up with a protocol for this in the future.
I’ve got WirelessProgramming.exe to work on a few nodes, but sometimes it hangs with the message below. I’ve tried disconnecting/reconnecting the programming gateway , but doesn’t help….Meanwhile at node 1, I can see successful reciept of the ” [254] [RX_RSSI:-56]FLX? – ACK sent. ” so this means radio messages are being transmitted to Node 1. I’m running Windows XP and confirm .NET version 4.0 . Any ideas?
——–
Available serial ports found: COM1, COM14
Opening COM14 @ 115200baud …
SET TARGET: TO:1
Moteino: [TO:1:OK]
TARGET SET OK
FLX?
FAIL: No response from Moteino programmer, is it connected to COM14?
First please ensure you got the latest exe.
If still an issue, please ask in the WiPr forum.
Thanks