This wireless programmer provides an AVR ISP programmer over Wi-Fi network.

You can either have it connected to your WiFi router/access point or open an Access Point in the programmer itself and connect to it directly.

Hardware Materials:

1x -- ESP8266 (ESP-12E/F module) -- Rs.250 ($3-4 appx)

1x -- 5v SMPS (12v would also do) -- Rs.50 ($1 appx)

7x -- Jumper / Hookup wire -- Rs.35 (50cents appx)

1x 1117 3.3v regulator (if 5v is used for Atmega)

Note: Follow schematic for circuit for programmer.

Software Material:


ESP_ConfigStorage (library)

Note: Download the master folder into your arduino sketchbook folder.


PC (With Java and Arduino software installed along with ESP8266 hadware and tools)

USB to TTL converter (CP2102/FTDI232 etc)

USB cable for connecting PC to USB-TTL

Connecting wire for USB-TTL to ESP-12E

Step 1: Install Netburner Virtual COMM Port Driver

Install netburner com port driver software from Netburner site.

http://www.netburner.com/ -> Products -> Netburner Software, Protocols & Tools Suite -> Deployment Tools -> Download Virtual COMM Port Driver

Install the software as usual.

Step 2: Uploading the AVR_ISP Program to ESP8266

  1. First confirm your USB-TTL port in device manager.
  2. Then open Arduino IDE and WiFi_AVRISP program in it.
    Note: You must have ESP8266 boards installed first. If not do so now.
  3. Select NodeMcu 1.0 (ESP-12E) in boards menu.
  4. Set Flash size to 4M (1M SPIFFS), 4M (3M SPIFFS) will also do.
  5. Port to USB-TTL port.
  6. Upload the program.
  7. Upload data folder.

Step 3: Connect to ESP8266

Connect to ESP8266 module.

It can have any name based on module or previous configurations. But it should be open by default.

I used a phone, any WiFi enabled device should do.

Step 4: Configure ESP8266

Configure ESP8266 WiFi configuration.
You can make it connect to your Access Point (I used TPLINK WR841ND router), or open an access point inside it.

Step 5: Configure Netburner Virtual COMM Driver

User your preconfigured IP or check router for IP allocated.

I used reserved IP address in router.

Step 6: Program Atmega Using AVRISP

Connect your Atmega chip in ISP connection to your newly made WiFi_AVRISP device.

Upload program using programmer option.

Note: First upload after power up will miss first 3-4 sync, but will upload finally. Net uploads will have no such hiccups.

<p>hello</p><p>i get error when compiling</p><p>'initISP' was not declared in this scope </p><p>'initConfigServer' was not declared in this scope</p>
<p>Did you install the library first?</p><p>https://github.com/Subhajitdas298/ESP_ConfigStorage/</p>
<p>I have deleted everything completely and reinstalled.</p><p>Now it works wonderfull without error.</p><p>thanks again</p><p>Good work</p>
<p>Happy to help.</p>
<p>Hello,</p><p>I can't upload WiFi_AVRISP to ESP8266. Can you explain that? I used CH340 converter. (ESP8266-&gt;TTL?RS232-&gt;CH340-&gt;PC connected)</p>
<p>I need a full log. Keep verbose output for upload and verification active in IDE. And send me the log. Google for further details.</p>
<p>Hello:<br>This is a clone of your board. It works perfectly through the router following your instructions.<br>I've only had a warning because Atmega328bb had not defined the build.board in boards.txt. I have defined &quot;atmega328bb.build.board = AVR_UNO&quot;. I do not know if it is correct, but it works and I do not have the warning.<br>I have tried to directly connect the computer with nodemcu but I have not succeeded. I could define the access point within nodemcu and connect the notebook. But Arduino IDE makes ten attempts and nothing happens. I do not know whether to make changes to the virtual port.<br>Please, could you explain step by step how to do it?. This not depend on the router connection. Thanks in advance.</p>
Did you follow the video instructions closely? The type of error you are talking about usually happens due to improper connections.
<p>If there is not defined a build board for atmega328bb in boards.txt, when compiling, Arduino Ide says:</p><p>&quot;Warning: Board arduino:avr:atmega328bb doesn't define a 'build.board' preference. Auto-set to: AVR_ATMEGA328BB&quot;</p><p>But all is working fine via router. In Direct mode, I am unable to make it work.</p>
<p>Sorry for direct mode problem. I will look into it soon. I was busy in the mean with my studies. Sorry for that.</p>
<p>It is not a problem.</p>
<p>Nice work:<br><br>I tried to compile and have an error because Arduino Ide not find ESP_ConfigStorage library.<br>I searched the web and find nothing. I have properly installed all libraries for ESP8266 and have already updated several sketcks for nodemcu ESP12E.<br>Please can you tell me where to find this library?.<br>Thank you.</p>
I have updated the instructable with library link directly.
<p>Many Thanks</p>
<p>Do you have a schematic for my ???</p>
<p>Thank's Perfect :)</p>
<p>I gave description. But I will provide soon.</p>

About This Instructable




Bio: Electronics and Telecommunication Engineer, Software Engineer, Hobbyist
More by Subhajitdas298:Wireless AVR Programmer (WiFi) Rotary Car Parking System Click Counter - VB.NET 
Add instructable to: