Your inverter is already talking to the battery. So why can't you see anything?
Every hybrid inverter running a Pylontech bank has a live conversation going with the BMS. It knows the pack voltage, it knows the current, it knows when to stop charging. And yet the moment you want to see a single cell's voltage, or the state of health of module 3, or why one unit runs two degrees warmer than the rest — there is nothing. The inverter's screen doesn't have it, the installer's app doesn't have it, and the battery is right there in front of you.
That is not a limitation of your hardware. It is the difference between two entirely separate conversations happening on two entirely separate ports — and understanding which is which is the whole point of this guide.
Four RJ45 sockets, four completely different jobs
The front panel of a Pylontech low-voltage module is covered in what look like Ethernet sockets. None of them is Ethernet. They carry four unrelated protocols, and plugging the wrong cable into the wrong one is the single most common installation mistake we see.
| Port | What it actually carries | Who normally owns it |
|---|---|---|
| CAN | CAN bus — the standard battery-to-inverter control link | Your inverter |
| RS485 A / B | RS485 serial — the alternative inverter link, and the bus some vendor tools use | Your inverter, or nothing at all |
| CONSOLE | RS-232 text console, 115200 baud — the BMS's own diagnostic shell | Nobody, almost always |
| LINK PORT 0 / 1 | The internal stack link between modules | The batteries themselves |
What the inverter link actually carries — and what it leaves out
The CAN or RS485 link between battery and inverter exists for one reason: to let the inverter charge and discharge the pack safely. It is a control conversation, and it is deliberately narrow. Typically it carries the pack's overall state of charge, pack voltage, total current, the charge and discharge current limits the BMS is currently allowing, and a small set of alarm and protection flags.
Notice what all of those have in common: they describe the whole stack as a single virtual battery. That is exactly what the inverter needs. It is also why the following never appears anywhere on your inverter, no matter how good its display is:
- Per-module state of health — one ageing unit in a stack of six is invisible in the aggregate.
- Individual cell voltages — the earliest warning signal there is, and the inverter never receives it.
- Per-module temperatures — including the difference between modules, which is often more informative than any absolute figure.
- Per-module cycle count — useful for warranty conversations, absent from the control link.
- Which specific module raised a protection event.
This is not Pylontech hiding anything. The BMS knows all of it. It simply is not what the inverter protocol was designed to move.
The Console port: the one nobody is using
The Console port is a plain RS-232 serial line running at 115200 baud, and behind it sits a small text shell built into the BMS firmware. You send a short command, it answers with a formatted table. pwr returns one line per address in the stack. bat 1 returns the individual cell voltages of unit 1. soh 2, info 3, stat — the same pattern, addressed per module.
This is the port Pylontech's own console software connects to, which is why it exists at all. And because most installations connect that software exactly once — during commissioning, from a laptop, and never again — the Console port spends the rest of the battery's twenty-year life doing absolutely nothing.
It is also, critically, a separate physical interface from CAN and RS485. Using it takes nothing away from the inverter.

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.
Which link does my inverter use?
Almost every hybrid inverter that supports Pylontech uses the CAN port; a handful use RS485 instead, and a few can be configured either way. What matters for this guide is the last column, which is the same in every single row.
| Inverter | Battery link normally used | Console port still free? |
|---|---|---|
| Victron (Cerbo GX / Venus GX) | CAN, via BMS-Can / VE.Can | Yes |
| Deye / Sunsynk | CAN | Yes |
| Growatt SPF / SPH | CAN or RS485 | Yes |
| Sofar | CAN | Yes |
| Solis | CAN | Yes |
| SMA Sunny Island | CAN | Yes |
| Voltronic / Axpert / MPP Solar | RS485 or CAN | Yes |
| Studer (Xcom-CAN) | CAN | Yes |
Treat the middle column as orientation, not as a wiring diagram: the exact port, cable pinout and protocol setting vary by firmware version and by model, and your inverter's own manual is the authority. The right-hand column is the one that never changes — whichever bus your inverter took, it did not take the Console port.
No, it will not fight with your inverter
This is the question we are asked more than any other, so here is the direct answer. Reading the Console port does not interfere with the inverter link because:
- They are different ports. Not a shared bus, not a splitter, not a Y-cable — a separate socket with its own interface on the BMS.
- The exchange is read-only in practice. The console shell answers queries. Monitoring asks for
pwr,bat,sohand reads what comes back; it sends no charge parameters, no control frames, nothing that changes battery behaviour. - The inverter never sees it. Its CAN or RS485 conversation continues exactly as before, with the same timing and the same data.
The same reasoning covers the warranty question: the Console port is a documented diagnostic interface, and reading from it is what it is for. Nothing is being modified, flashed or overridden. (As always, if your installer maintains the system under a service contract, it costs nothing to mention it to them.)
When the two views disagree — and why that is usually normal
Sooner or later you will notice the inverter reporting 62% while the battery's own console says 64%. This is almost never a fault. The inverter's figure is its own working number: many of them apply coulomb counting, smoothing, or a manufacturer-specific correction on top of what the BMS reports, and some deliberately reserve a margin at each end of the range.
The battery's console figure is the BMS's own, unfiltered. When you are diagnosing the battery, that is the number you want. When you are wondering why the inverter stopped charging at 97%, the inverter's number is the relevant one. Both are correct — they are answering different questions.
Stacked batteries: the mistake almost everyone makes
One point that catches out a large share of multi-battery installs, and it belongs here because it looks like a monitoring failure when it is really a wiring one. Whether you read the stack from the inverter or from the Console port, everything reaches you through the master module — so if the stack itself is chained wrong, only the master exists as far as any tool is concerned.
The chain cable must leave LINK PORT 1 on the master and arrive at LINK PORT 0 on the first slave, then repeat that same 1 → 0 pattern down the stack. Wired the other way round, the master never sees the rest of the bank, and every tool you point at it — inverter included — reports a single battery no matter how many you own. The full sequence is in our installation guide.
Reading the Console port without taping a laptop to the wall
Knowing the port is free is one thing; using it continuously is another. A serial console is a manual tool — it answers when asked, from a machine physically cabled to the battery, and it has no memory of yesterday. That is fine for commissioning and useless for noticing that cell imbalance has been climbing for three weeks.
Turning that port into something permanent means a small device that stays plugged into CONSOLE, polls the shell on a schedule, and republishes the result somewhere you actually look: a local dashboard, a Home Assistant entity, a Node-RED or Jeedom flow, or a plain JSON endpoint your own script can read. That is exactly what Pylon-Monitor does — and once the data is flowing, knowing which numbers deserve an alarm becomes the interesting problem. If you are still weighing up the whole approach, start with what Pylontech monitoring should actually look like.
Frequently asked questions
Can I use the Pylontech Console port while my inverter is connected over CAN or RS485?
Yes. The Console port is a physically separate RS-232 interface on the BMS, not a branch of the CAN or RS485 bus. Reading it changes nothing about the inverter link: the inverter keeps the same conversation, the same timing and the same data it had before.
What is the difference between the Pylontech CAN port and the Console port?
The CAN port carries a narrow control conversation for the inverter: overall pack state of charge, pack voltage, total current, the charge and discharge limits the BMS allows, and alarm flags — the whole stack described as one virtual battery. The Console port is an RS-232 diagnostic shell at 115200 baud that answers per-module queries, including individual cell voltages, per-module state of health, temperatures and cycle counts.
Does connecting to the Pylontech Console port void the warranty?
The Console port is a documented diagnostic interface, and reading from it is exactly what it is designed for. Nothing is modified, flashed or overridden — monitoring sends queries and reads the answers. If your installer maintains the system under a service contract, it is still worth mentioning it to them.
Why does my inverter show a different state of charge than the battery?
Because the two numbers are produced differently. Many inverters apply their own coulomb counting, smoothing or a manufacturer-specific correction on top of what the BMS reports, and some deliberately reserve a margin at each end of the range. The Console figure is the BMS's own, unfiltered. A gap of a few percent is normal, not a fault.
Which Pylontech batteries have a Console port?
The low-voltage US series and its relatives — US2000, US2000B+, US2000C, US3000, US3000C, US5000, UP2500 and the Force-L1 family. High-voltage models such as the Force-H range use a different architecture and are not covered here.
Can I plug a Pylontech RJ45 port into a network switch or router?
No. Every RJ45 socket on a Pylontech module carries CAN, RS485 or RS-232 — never Ethernet. The connector fits a router port perfectly, which is exactly why the mistake is common; nothing good comes of it. Match each cable to the labelled port instead.
Pylon-Monitor plugs into the Console port your inverter never touches — per-module SOC, SOH, cell voltages and temperatures on a live dashboard, without changing a single thing about your CAN or RS485 link.
Order now — €49 One-time purchase, €49 total — no VAT, no subscription.