Designed & made in France
🚚 Exceptional order volume since 1 September — allow 3 to 5 days between your order and its dispatch. We are shipping as fast as we can. ✅ Orders up to September 6: shipped. 🔄 Orders placed since September 7: currently being processed.Ordered → dispatched: ⏳ Sept 8-12 → Sept 15 · ⏳ Sept 13 → Sept 16
🎉 New: meet Pylon-Monitor Lite — the same WiFi monitoring firmware as Pylon-Monitor V2, without the physical screen. €39, same JSON API, same Home Assistant integration. Discover Pylon-Monitor Lite →
🎉 New feature: the USB Recovery Flasher — get your Pylon-Monitor working again over a USB cable when it can't be reached over WiFi any more, straight from your browser, no software to install. Try it →
Visual Tour · Live in < 2 min

Every screen, in one scroll.

No marketing fluff. These are the real pages served by your Pylon-Monitor — the same monitoring, diagnostics and Home Assistant integration screens — at http://pylon-monitor.local, exactly what you'll see the moment you plug it in. And that moment is under 2 minutes after opening the box.

Pylontech master battery panel: the RJ45 cable in the CONSOLE port feeds the Pylon-Monitor, while the stack link cable leaves LINK PORT 1 towards the slave battery
On the master battery: CONSOLE goes to the Pylon-Monitor, LINK PORT 1 goes to the slave battery.
The mistake almost everyone makes: LINK PORT 1, not LINK PORT 0
The cable that chains your master battery to the first slave must leave LINK PORT 1 on the master — never LINK PORT 0. It plugs into LINK PORT 0 on the slave, and every further battery repeats the same 1 → 0 pattern. Wired the other way round the master never sees the rest of the stack, so Pylon-Monitor reports a single battery no matter how many you own.
PHYSICAL SCREEN

Built-in TFT display

A crisp 1.8" IPS TFT panel shows the State of Charge in giant digits, with voltage and current beside it and SOH and cycle count below — readable across the room, no phone required.

Pylon-Monitor 1.8" IPS TFT screen showing live Pylontech battery data — 59% charge, voltage, current and power
1.8" IPS TFT — full color, real photo

No fan, no buttons to fiddle with — just glance at the box.

FIRST BOOT

Captive portal WiFi setup

On first power-on, the Pylon-Monitor creates its own network PylonMonitor-Setup. Connect from any phone, the setup page opens by itself.

  • No app to install, no QR code
  • Scans surrounding networks automatically
  • Saves credentials and reboots — done
  • Reopens after a Factory Reset — or 2 quick taps in a row on the reset button (back of the enclosure) if you just need to switch WiFi networks, without wiping anything else
Set up your Pylon-Monitor ×
+
pylon-monitor.local
PM
Pylon-Monitor captive portal setup page — choose your home WiFi network and enter its password
Sign in — Pylon-Monitor ×
+
pylon-monitor.local/login
PM
AUTH — OPTIONAL

Login screen — off by default, yours to enable

Out of the box, anyone on your network can open the dashboard with zero friction — no login screen in the way. If the device is reachable beyond your LAN (port-forwarded, VPN…), flip one checkbox in Settings to require this username/password screen, shown here.

  • Off by default — on if and when you want it
  • Real random session cookie, HTTP-only, never leaves your LAN
  • Passwords are never sent back to the browser once saved
  • No telemetry, no remote access, no account server
MAIN PAGE

Live battery dashboard

The home screen of the device. Live cards for Charge, Health, Temperatures, System and Cells, plus a 24h history graph — and one nav strip to jump anywhere in two clicks.

  • SOC, voltage, current, power, state in real time
  • SOH, cycles, cell imbalance, WiFi signal, MQTT status
  • Base & MOSFET temperatures, per-cell voltages
  • Up to 16 batteries chained together (e.g. 16× US5000 ≈ 76.8 kWh, or a mix like US2000 + US3000 + US5000) — a selector switches between "all combined" and any single battery
  • One-click jump to JSON, Settings, Screen Display, Update, Reboot, Reset
Pylon-Monitor ×
+
pylon-monitor.local
PM
Pylon-Monitor live dashboard — Charge, Health, Temperatures, System and Cells cards for Pylontech battery monitoring
CUSTOMIZE

Screen Display — your TFT, your layout

The physical screen's percentage is always shown, but everything else around it is up to you. Three quick presets, or tick elements individually — the live preview updates instantly, save, and the real screen matches it exactly within seconds.

  • Header title, voltage/current/power, charge gauge
  • Charging/Discharging state, SOH, cycle count, temperature
  • IP address and/or hostname.local footer
  • Fewer elements ticked? The layout re-centers itself instead of leaving empty space
Screen Display — Pylon-Monitor ×
+
pylon-monitor.local/display
PM
Pylon-Monitor Screen Display settings page — live preview and checkboxes to customize what the physical TFT screen shows
Settings — Pylon-Monitor ×
+
pylon-monitor.local/settings
PM
Pylon-Monitor Settings page — device name, sign-in toggle and Home Assistant MQTT setup
CONFIG

One settings page — everything inside

Hostname, login, static IP, MQTT broker, REST API helper and Pushover emergency notifications. All in one form, with inline hints that show your current IP and copy-paste-ready YAML.

  • mDNS hostname → http://yourname.local
  • Static IP or DHCP reservation guidance
  • MQTT auto-discovery for Home Assistant
  • Ready-made REST YAML block (with your IP injected)
  • Optional Pushover push for low SOC alerts
Network — Pylon-Monitor ×
+
pylon-monitor.local/network
PM
Pylon-Monitor Network diagnostics page — connection details, gateway reachability test and WiFi signal strength graph
Settings — Pylon-Monitor ×
+
pylon-monitor.local/settings
PM
Pylon-Monitor Settings — Alarms card with SOC and temperature thresholds, Pushover credentials and a test notification button

Alarms — set thresholds, add Pushover, test with one click

DIAGNOSTICS

See exactly what the device is doing

No serial monitor, no guesswork. Three pages cover troubleshooting end to end, plus configurable alerts so problems reach your phone before you go looking for them.

  • Event log — recent activity, plus a boot history that survives crashes (kept in RTC memory, not lost on reset)
  • Raw data — the battery console's unparsed replies, for confirming the exact wire format
  • Network — WiFi signal history and a one-click gateway reachability test
  • Alarms — your own SOC/temperature thresholds with hysteresis, pushed via Pushover, with a one-click test
AWAY FROM HOME

A public link that works from anywhere too

The dashboard and /api.json above are LAN-only by design. Want to check your battery from the office or on a trip as well? Flip one checkbox in Settings to publish it to the cloud, for free, at a private link secured by your own access key — no VPN, no port forwarding, no dynamic DNS.

  • One checkbox in Settings, off by default — the device stays fully local otherwise
  • The same random access key that already protects /api.json from outside your LAN becomes the URL's token
  • Refreshed roughly every 2 minutes — not built for a live dashboard, but plenty for a phone check from the office or on the road
  • Turn the checkbox back off and the pushes — and the public URL — stop immediately
Settings — Pylon-Monitor ×
+
pylon-monitor.local/settings
PM
Pylon-Monitor Settings page — Public JSON access panel with an access key and a real public URL for viewing the battery away from home
OTA UPDATE

Firmware update — from your browser

Download the .bin from the firmware page and upload it from your dashboard — it reboots straight into the new version. No cables, no soldering, no Arduino IDE. Your settings are preserved across updates.

  • Download the latest .bin for free from the firmware page
  • Upload it from the dashboard's Update firmware page — no serial cable, no Arduino IDE
  • Update takes ~20–30 seconds
  • Hostname, MQTT, static IP, login all preserved
  • Previous firmware kept until the new one is fully written — a power loss mid-upload can't brick it
Firmware Update — Pylon-Monitor ×
+
pylon-monitor.local/firmware
PM
Pylon-Monitor Firmware update page — choose the .bin file and click Install firmware
api.json — Pylon-Monitor ×
+
pylon-monitor.local/api.json
PM
Pylon-Monitor /api.json real response — full Pylontech battery state as structured JSON
INTEGRATION

One JSON endpoint. Every tool speaks it.

GET /api.json hands back the entire device state in one plain HTTP call — charge, health, temperatures, per-cell voltages, network status, alarms. No auth, no SDK, no vendor lock-in: it's just JSON, so anything that can make an HTTP request can use it.

Best integration

Home Assistant

Built into the firmware, both ways: MQTT auto-discovery gives you 10 sensors with zero YAML, or point the native rest platform at /api.json for 6 sensors with a YAML block the device generates for you.

Jeedom

Install the JSON plugin, point an equipment at /api.json, map paths like summary>soc or net>rssi to commands. No custom plugin needed.

  • Also works out of the box with Node-RED, Domoticz, openHAB, Grafana/InfluxDB — anything that parses JSON over HTTP
  • Refreshed live every ~4 seconds on the dashboard, all on your LAN
  • Stable structure — won't break between firmware versions
MAINTENANCE

Reboot & Factory Reset

Reboot is one click away in the navigation strip, with a confirmation dialog first. Factory Reset lives inside Settings' Danger zone — it wipes WiFi credentials, MQTT, alarms and sign-in, then reopens the captive portal so you can start fresh.

  • Confirmation dialog before either destructive action
  • Old firmware/settings only touched once the action is confirmed
  • 2 quick taps in a row on the reset button (back of the enclosure) reopens the portal too — without wiping anything, for a quick WiFi change
  • Settings stay preserved across firmware updates
Factory reset — Pylon-Monitor ×
+
pylon-monitor.local/reset
PM
Pylon-Monitor Settings — Danger zone with the Factory reset button

That's the whole device.

One small box, one captive portal, one dashboard, one JSON endpoint, one update button. No cloud, no app, no subscription — €59 once.