User Repair Of A Not User-Repairable Victron CCGX Issue

Power banks come in many sizes, and those that target construction sites are probably among the largest. The massive four ton unit based around lead-acid batteries which the [Buy it Fix it] YouTube channel got handed is a good example. Inside it are Victron CCGX inverters among a lot of other Victron electronics, with the control panel for the system throwing up an error that was deemed to be not user-serviceable. Naturally, this makes for a good challenge.

The exact error as thrown up on the central control panel is error #42, indicating a storage corruption issue on the device. According to the manual this means an issue with the internal flash memory that stores settings, serial numbers and WiFi credentials, requiring it to be shipped back to the manufacturer.

To further diagnose the issue, this Color Control unit was taken out of the power bank and coaxed onto a repair bench. This device has a whole host of Ethernet, CAN and other buses on the back, along with a USB host feature, but using the latter to reflash the firmware made no difference. Fortunately it’s just an embedded Linux system running on the System-on-Module and gaining remote SSH access was a snap due to easy root access.

Interestingly, running a diagnostic on the flash IC showed it to be still in good condition. Instead an ECC issue was logged that caused it to be marked as bad. This seems to have been due to the flash IC requiring 4 bits of ECC per 528 bytes, but the software using only a single bit. After reformatting and clearing the error it seems to have fixed the issue. Apparently it was just a weird configuration error that soft-bricked the device, raising the question of how that happened.

Continue reading “User Repair Of A Not User-Repairable Victron CCGX Issue”

Intercepting And Decoding Bluetooth Low Energy Data For Victron Devices

[ChrisJ7903] has created two Ardiuno programs for reading Victron solar controller telemetry data advertised via BLE. If you’re interested in what it takes to use an ESP32 to sniff Bluetooth Low Energy (BLE) transmissions, this is a master class.

The code is split into two main programs. One program is for the Victron battery monitor and the other is for any Victron solar controller. The software will receive, dissect, decrypt, decode, and report the data periodically broadcast from the devices over BLE.

The BLE data is transmitted in Link-Layer Protocol Data Units (PDUs) which are colloquially called “packets”. In this particular case the BLE functionality for advertising, also known as broadcasting, is used which means the overhead of establishing connections can be avoided thereby saving power.

Continue reading “Intercepting And Decoding Bluetooth Low Energy Data For Victron Devices”