Esp-01 Programmer Mod

For a small project of my there was needed a programmer for the Esp-01 wifi module to program the module. It’s not really a programmer, but more an usb to serial convertor.
Simple search on Aliexpress gave a nice looking programmer that you can stick in your pc and voila Esp-01 can be programmed, can be bought for $0.78 including shipping.

Bummer, when it arrived and want to use it to program the Esp-01 module it wasn’t possible to get it working with the Arduino ide. The ide was constant coming with the error espcomm sync failed and other com port related errors.
After a quick google search it was clear, the bought Esp-01 programmer works fine out of the box when you use the Esp-01 with the AT commands, but for using it with the Arduino Ide the Esp-01 module had to be set first in programming mode by connection GPIO-0 to ground and reset the module to bring it in flash uart download mode.
Most of the solutions found on the net uses 1 or 2 buttons to get this accomplished, but I wanted automatic programming mode just like the NodeMCU does. Just press upload in the Arduino ide and go….

The programmer uses the same usb to serial convertor (CH340G) as used in the NodeMCU so it should be possible to use the same schematic. The Arduino Ide already supports the NodeMCU so no need to change drivers, board.txt or platform.txt files.
The part that’s responsible for pulling GPIO-0 low and resetting the Esp-8266 is only two general purpose npn transitors and 2 resistors.

So I added 2x BC547 (or use any other general purpose transistor) and 12K resistors to the bottom of the programmer board. It’s not my best soldering work, but it will do the job.

Soldered 2 wires to pin 13 and 14 of the CH340G and connected them to the transistors on the other side.
You can fix everything with some hotglue if you want.

Change in the Arduino ide the setting Tools , Reset Methode to NodeMCU and you are ready to go.
Every time you press now upload the Esp-01 will be set in serial download mode and you can upload you fresh developed code.

 

Happy programming.

 

 

 

 

Iot SensorV2 with battery onboard

Not a complete new design, but a redesign of my Iot Esp8266 sensor V2, the schematic is exact the same however this time with a on board 18650 3.7V Li-ion battery.

The Iot sensor node will measure temperature, humidity, atmospheric pressure and light. The light is measured with the TSL2561 and temperature, humidity, atmospheric pressure with the Bosch BME280.

In the previous design the battery was placed in a separate battery holder and the pcb was taped to the battery, not really the ideal solution.  So the idea was born to combine everything on 1 pcb.
The first idea was to place the battery beside the electronics, when this was finished I thought that can be smaller and made also a design where the pcb is on top of the battery. Still I couldn’t decide if I wanted the side or top version. Ok, lets combine both designs and we will see later what’s version is nicer.
Just as mentioned in then previous design, it’s very hard to solder the BM280. My opinion is that you only can solder it good if you use a stencil to apply the solder paste and place the pcb in the oven or use a hot air station.
For the battery clips I used the Keystone 16~19mm PC Battery clip.  In the datasheet they note that for an 18650 with build in protection circuit you need 48mm between the front solder pins, that will make it fit for battery’s of 68mm if you add the rest of the clip. However I don’t think this is correct, at least not in my case. 18650 battery with build in protection are 69,7 mm long, it will fit but it looks that it’s way to tight. For 18650 battery with flat head the clips are to far apart and won’t make contact. An 18650 with button head will fit perfect. If you want to make your own sensor node, keep in mind that there are a lot of different sizes 18650.
I’m using now the Sanyo NCR18650GA 3350mAh – 10A Button Top and that fits perfect, they are 66.7mm long (battery used on the photo’s is not the Sanyo).

3d design in Altium
Pcb and stencil
Finished board
Board on top of the battery
Board on top of the battery top view
Board with battery on the side
PlayPause
previous arrow
next arrow
 
3d design in Altium
Pcb and stencil
Finished board
Board on top of the battery
Board on top of the battery top view
Board with battery on the side
previous arrow
next arrow

 

You can find a test/demo Arduino program on my Github.

 

If you want to make your own, or use parts of the design here are  the Altium Designer 16 files:

1708 Downloads