ESP8266 remote power display for energy monitor – EV3 – 5V display

ESP8266 remote power display for energy monitor – EV3 documented an evolved design for a real power display using emontx3 / emonhub / mqtt. This article documents an adaptation to use a 5V display module (for higher brightness). The ESP8266 is not 5V tolerant, so a logic level converter is needed.

Hardware

The remote power display uses a Wemos D1Pro module, a common 5V 4 digit 14.2mm seven segment LED module with 74HC595 shift register per digit, and a common 3V/5V logic level converter between them.

Above, the Wemos D1Pro prototype with wires attached to the HSPI and power pins. A 1k pull=down resistor is soldered between the D8 and GND pins under the D1Pro board.

 

Above is the 3V/5V level converter wired into the cable and encapsulated in clear heat shrink for protection. This pull up resistors on these boards is typically 10k and that demands the lowish 1k pull down resistor on the D1Pro's D8 pin do avoid disruption of the boot process.

Above, the connections to this particular display, but beware displays vary in pinout.

Pin mapping to suit this display and cable connection is RCK=D8 (/CS), SER=D7 (MOSI), SRCLK=D5 (CLK), and set invert_display=false.

Above is a capture of the display load with the clock rate set the 1MHz. It could go faster, but this is plenty fast enough.

Above, the interior of the ABS box. This version uses an ESP8266 which was purchased without pins installed (“unwelded” in eBay speak) and the pins installed upwards. The board sits on M3 nylon nuts as spacers.

Above, the board is fixed using four M2x8mm countersunk screws.

Above is the boxed display. In this case the USB cable supplies only power, but it can be used to update the firmware.

The code is written in Lua script. It is under active development, the code as it evolves is available online https://github.com/owenduffy/rpdiotm.