I have had success in using the Wifly RN 171 (Roving Networks module) to wireless program the Arduino Duemilanove. (uploading a sketch via a WiFi connection).
I hooked up the RX and TX from the Wifly module directly to the Duemilanove's TX and Rx, and this did the trick together with some software to simulate a COM port which connects to an IP address.
However, I have switched boards and I am now developing on a Leonardo.
This board does not seem to be able to be programmed in the same way.
The Duemilanove had a FT232RL between the pc and the ATmega328, but the Leonardo is directly connected via usb to the ATmega32U4..
Both have the option to use ICSP, but I don't believe that could ever work wirelessly.
This is the setup that I am trying to get to work:
(image also attached)
(please ignore the lack of VCC and GND connections and notation of pins on the Wifly etc.)
With the Wifly connected directly to the Leonardo's RX and TX ports, I believed it would be possible to program the Leonardo.
But somehow, this is not possible..
Doe anybody know if this is a 'feature' that is turned off in the bootloader, or maybe something else?
Is it possible to enable the uploading of sketches via the UART port of the Leonardo?
Thanks in advance, I could really use a hand here.
-Daft
This does not work with the Leonardo. The bootloader of the Leonardo uses the USB bus only for getting it's sketches uploaded, the UART is not used for this purpose and is free to be used otherwise (one of the advantages of the Leonardo). If you wanna change this you have to write a new bootloader for the Leonardo combining the one of the UNO with the Leonardo's.
pylon:
This does not work with the Leonardo. The bootloader of the Leonardo uses the USB bus only for getting it's sketches uploaded, the UART is not used for this purpose and is free to be used otherwise (one of the advantages of the Leonardo). If you wanna change this you have to write a new bootloader for the Leonardo combining the one of the UNO with the Leonardo's.
Dear Pylon,
Do you know which part in the bootloader of the UNO makes the serial ports programmable?
That's what the bootloader does actually, so it's almost the whole thing. Don't think of it as copying a routine from one bootloader to the other. Optiboot is used for the UNO, caterina for the Leonardo. Keep in mind that if you combine the two you probably get a bootloader with approximately 6kB size but I guess for you this functionality is worth it.
Indeed, the 6kb would be more than worth it.
Do you know how I could go about to combine them? I doubt that I can just stack all .c and .h files together :-/
Maybe you know of someone who could help me?
You have to combine the two bootloaders (optiboot and caterina). The source codes of them are in your IDE in the sub path hardware/arduino/bootloaders/. I'd guess that your desire is so special that no one else has done that yet. I doubt you'll find someone doing this for you if he/she hasn't a need him/herself for the resulting code because it's not something you hack together in a quarter of an hour.