ESPHome SML Smart Energy Meter Reader with display
We calculate the final price from your selected file. You review and accept it before payment.
Saved on this device.
Read your electricity meter through its infrared port — **no direct mains wiring required!** This build combines an aff
- Rating
- 0 / 5
- Likes
- 2
- Downloads
- 4
- Makes
- 0
- Views
- 152
- Reviews
- 0
Updated at source:
Model information
- Source
- Printables
- Category
- Electronics
- License
- Creative Commons — Attribution — Noncommercial
ESPHome SML Smart Meter Reader
Read your electricity meter through its infrared port — no direct mains wiring required!
This build combines an affordable ESP32-C3 with OLED display and a BPW40 photodiode right on your meter. All values are streamed to Home Assistant in real time.


What does it do?
Reads SML data from your meter via infrared (IR) — no tapping into live wires
Shows on the tiny OLED display:
Current power (W)
Grid import total (kWh)
Grid export total (kWh)
Pushes all values over Wi-Fi to Home Assistant
Blue status LED blinks whenever data arrives
Built-in web dashboard (port 80)
OTA updates over Wi-Fi
Bill of materials (all together about 5$)

Part | Notes |
|---|---|
ESP32-C3 OLED board (ABRobot 0.42") | Includes a 72×40 SSD1306 display |
BPW40 photodiode | Receives the meter's IR signal |
1 kΩ resistor | Pull-down for the photodiode signal |
3D-printed case + magnet holder | STL files included in this project |
Neodymium magnet (5 mm ⌀ × 3 mm) | Keeps the case on the meter cover |
USB-C cable + power supply | Powers the ESP32 |
3D printable files
Two STL files are part of this release:
File | Description |
|---|---|
| Main enclosure for ESP32 and photodiode |
| Matching lid for the enclosure |
Print recommendations
Material: PLA or PETG
Layer height: 0.2 mm
Infill: 20% is sufficient
Supports: Not required
Important: The photodiode chamber must be light-tight
Tip: Depending on your printer, the diode leg holes may be tight. A 3 mm drill bit cleans them up nicely.