Is there a way to update Arduino uno Over The Air

I have the Arduino uno with a Ethernet W5100 Shield and would like to remotely sketches. Is there a way to update Arduino uno over the air? If not, is there a wired network arduino solution that will allow update over the air.

I've done this on the esp8266 using there tools but I can't find one for the Uno.

Well it’s not really accurate to say “over the air” with Ethernet but here it is:


Also posted at:

If you're going to do that then please be considerate enough to add links to the other places you cross posted. This will let us avoid wasting time due to duplicate effort and also help others who have the same questions and find your post to discover all the relevant information. When you post links please always use the chain links icon on the toolbar to make them clickable.

Another option is to use a Raspberry Pi Zero. I have been working on a board to use them with my projects. I connect the RX/TX lines from the Pi Zero to an Uno's TX/RX. The RTS line from the Pi can be used in place of DTR for bootloading (it needs a .1uF capacitor like DTR as well).

I have some notes from the last time I set up a Pi.

One of my wants was to be able to build and upload from a headless connection so that I did not have to forward a raw serial port over a network that I have a trust issue with.

esp-link running on an ESP8266 can flash an AVR over WiFi. See esp-link uC Flashing

Also posted at:
remote control - Is there a way to update Arduino uno Over The Air - Arduino Stack Exchange

In the above link someone mentioned that it was done via Bluetooth becouse its serial.

I would be interesed to upload sketches via atmega32u4's second serial port via an rs485 link.
Would this be possible?

Probably. Need a bootloader change to look for a start sequence over that port and then to receive the data and load it.

@Watcher: do you mean to use the 32u4 as a bridge, i.e. the host on its USB can upload the image (hex file) through the 32u4 to a remote rs485 device (perhaps a 328p)?

If so the problem that I am aware of is control of the transceiver, which has a line that has to be controlled to talk, and another for listening (though it can always be on).

Since the upload starts with avrdude I would look there and see if someone has done a protocol that works with RS-485 and how avrdude controls that talk line. My guess is the avr109 protocol may have a way to control the transceiver, if so then have a look at xboot for the bootloader which I seem to recall has RS-485.