Wireless Programming desktop app

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:WP1

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:WP2

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!

9 thoughts on “Wireless Programming desktop app

  1. Excellent. But how do I download the EXE? I can’t find any “download” link…

  2. 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.

  3. 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 …
    Moteino: [TO:1:OK]
    FAIL: No response from Moteino programmer, is it connected to COM14?

Comments are closed.