# SunVolt R10 battery on CAN, reporting charge when in discharge and vice versa

**URL:** <https://community.victronenergy.com/t/sunvolt-r10-battery-on-can-reporting-charge-when-in-discharge-and-vice-versa/35245>\
**Category:** Q&A and troubleshooting\
**Tags:** domestic, vecan, gx\_device, professional\
**Created:** [9 June 2025 21:49 UTC](https://community.victronenergy.com/t/sunvolt-r10-battery-on-can-reporting-charge-when-in-discharge-and-vice-versa/35245 "2025-06-09T21:49:10Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![RoarPowerNZ](https://avatars.discourse-cdn.com/v4/letter/r/8c91f0/32.png) [@RoarPowerNZ](https://community.victronenergy.com/u/RoarPowerNZ)\
**Post date:** [9 June 2025 21:49 UTC](https://community.victronenergy.com/t/sunvolt-r10-battery-on-can-reporting-charge-when-in-discharge-and-vice-versa/35245/1 "2025-06-09T21:49:10Z")

</div>

I recall reading something about this on the forum, but my search-foo is letting me down.

**TLDR: How to swap the sign on the current being reported by the BMS**

I have a customer who purchased a SunVolt LiFePO4 battery, these apparently support CAN, and are the flotsam from the shipwreck that was SolarZero in NZ. There are a number of these batteries on TradeMe at the moment, i think usually found on grid-tied systems (as was SolarZero’s primary market).

The customer has been very resourceful, and found that a Victron to Dyness cable (the type where pins 4,5 go to pins 7,8) works, but only with CAN terminators in place. As an aside; We always use the terminators as per the manual, but find that Dyness work without them, as do our own RoarPower batteries, but we always install the terminator. So i suspect that the BMS doesn’t do software termination, but that’s fine.

**The primary problem** :  
The battery is reporting the charge or discharge current, with the wrong sign. So when the battery is discharging, the GX / VRM / etc shows charging, and vice versa.

I’m hoping @lxonline or @nickdb or @alexpescaru will remember the hack that can fix this.

To be clear; the battery has other issues too, such as reporting that there are 1 batteries online, and 26,742 offline, and i’m pretty confident that it doesn’t meet the Victron CAN standard, but the customer would be happy to just get the charge/discharge sorted.

My memory says that someone wrote a custom driver and dropped that into the GX?

Thanks team.

---

<div class="post-metadata">

**Author:** ![lxonline](https://dub1.discourse-cdn.com/victron/user_avatar/community.victronenergy.com/lxonline/32/25567_2.png) [@lxonline](https://community.victronenergy.com/u/lxonline)\
**Post date:** [10 June 2025 05:05 UTC](https://community.victronenergy.com/t/sunvolt-r10-battery-on-can-reporting-charge-when-in-discharge-and-vice-versa/35245/2 "2025-06-10T05:05:06Z")

</div>

@RoarPowerNZ  
Other than the cusom driver, we had a funny one where all we had to do was open the battery and change connection on the shunt internally. That may or may not apply here.  
Does switching on SCS help?  
Is it also mixing DCL and CCL?

---

<div class="post-metadata">

**Author:** ![RoarPowerNZ](https://avatars.discourse-cdn.com/v4/letter/r/8c91f0/32.png) [@RoarPowerNZ](https://community.victronenergy.com/u/RoarPowerNZ)\
**Post date:** [10 June 2025 20:50 UTC](https://community.victronenergy.com/t/sunvolt-r10-battery-on-can-reporting-charge-when-in-discharge-and-vice-versa/35245/3 "2025-06-10T20:50:09Z")

</div>

I suspect that if we changed the shunt direction, it would mess up the BMS’s accounting for Ah, and therefore SOC.

It’s hard to know if its mixing DCL and CCL as both are often 100A

---

<div class="post-metadata">

**Author:** ![lxonline](https://dub1.discourse-cdn.com/victron/user_avatar/community.victronenergy.com/lxonline/32/25567_2.png) [@lxonline](https://community.victronenergy.com/u/lxonline)\
**Post date:** [11 June 2025 15:02 UTC](https://community.victronenergy.com/t/sunvolt-r10-battery-on-can-reporting-charge-when-in-discharge-and-vice-versa/35245/4 "2025-06-11T15:02:14Z")

</div>

Thats is odd, if it shows charging when discharging but soc is correct, then it is firmware.

---

<div class="post-metadata">

**Author:** ![RoarPowerNZ](https://avatars.discourse-cdn.com/v4/letter/r/8c91f0/32.png) [@RoarPowerNZ](https://community.victronenergy.com/u/RoarPowerNZ)\
**Post date:** [11 June 2025 20:21 UTC](https://community.victronenergy.com/t/sunvolt-r10-battery-on-can-reporting-charge-when-in-discharge-and-vice-versa/35245/5 "2025-06-11T20:21:23Z")

</div>

Do you mean firmware on the BMS, or on the GX?

The SOC is being calculated correctly on the BMS, which means the battery knows the current (sign), but its just publishing the value with the wrong sign when it formats the CAN message.  
I’m sure its just a case of the BMS talking a dialog of CAN that is mostly Victron compliant, but the typical SunVolt inverter is expecting negative current for charging, and positive for discharging.

---

<div class="post-metadata">

**Author:** ![lxonline](https://dub1.discourse-cdn.com/victron/user_avatar/community.victronenergy.com/lxonline/32/25567_2.png) [@lxonline](https://community.victronenergy.com/u/lxonline)\
**Post date:** [12 June 2025 05:55 UTC](https://community.victronenergy.com/t/sunvolt-r10-battery-on-can-reporting-charge-when-in-discharge-and-vice-versa/35245/6 "2025-06-12T05:55:38Z")

</div>

> [@RoarPowerNZ](#):
>
> but the typical SunVolt inverter is expecting negative current for charging, and positive for discharging.

This is what i was thinking. Some inverters systems have it the other way.

> [@RoarPowerNZ](#):
>
> firmware on the BMS

So the BMS firmware.
