foxbms-1 icon indicating copy to clipboard operation
foxbms-1 copied to clipboard

CAN protocol compatibility with other BMS units?

Open davidbuzz opened this issue 6 years ago • 11 comments

There are a lot of BMS/batteries on the market that use CAN, and I was wandering in foxbms is compatible with any if them...? Eg: BYD Battery Box PYLON US2000 or US3000 LG RESU DYNESS PowerBox GCL variants AlphaESS Smile ... And many more Etc... I'd be happy with just one common one of these, as it would make integration of a foxbms with existing hybrid inverters easier, as they usually support most common batteries/BMS like these.

davidbuzz avatar Nov 05 '19 14:11 davidbuzz

I've done a bit of research about the can protocols and can messages used by BMS's, and it seems the majority of them think they are special and invent their own messages etc, but some of these are public info either due to specification docs or thru reverse engineering.... So I thought as I find them I'd drop links into this issue that point at places where BMS CAN protocol things have been reversed or spec released... as research info for possible future integration of one of these?

davidbuzz avatar Nov 08 '19 23:11 davidbuzz

https://github.com/jens18/lgresu is code written and communicating with a 'LG RESU 10' BMS via CAN and querying it etc, and this one is neat because it appears to also as a bonus include a simulator as well as a monitor https://github.com/jens18/lgresu/blob/master/cmd/lgresu_sim/lgresu_sim.go https://github.com/jens18/lgresu/blob/master/cmd/lgresu_mon/lgresu_mon.go

davidbuzz avatar Nov 08 '19 23:11 davidbuzz

https://www.elithion.com/lithiumate/php/controller_can_specs.php contains a full and open CAN spec document for that particular BMS. This BMS however doesnt seem to be mainstream and is not supported out-of-the-box by any major Hybrid Inverters or similar , just like I understand foxbms is in the same boat already

davidbuzz avatar Nov 08 '19 23:11 davidbuzz

Victron whitepaper says Its "VE.Can" is actually international standard J1939 / NMEA2000 https://www.victronenergy.com/upload/documents/Whitepaper-Data-communication-with-Victron-Energy-products_EN.pdf https://www.victronenergy.com/live/ve.can:nmea-2000:start I don't know if NMEA2000 defines packets down to the byte layer, haven't read it, probably not, so victron is probably still off-the-table ?

davidbuzz avatar Nov 08 '19 23:11 davidbuzz

Batrium seems to have quite an ecosystem of protocols and compatibility, but it's worth noting that there is some open source code to read UDP packets from a watchmon , not CAN ones, but same basic idea. https://github.com/Batrium/WatchMonUdpListener Individual packets are being parsed , for example https://github.com/Batrium/WatchMonUdpListener/blob/master/payload/Msg_415a_CellNodeStatus.js

davidbuzz avatar Nov 10 '19 00:11 davidbuzz

https://emusbms.com/ makes marine battery installs and a BMS ... https://www.electricmotorsport.com/ev-parts/batteries/battery-packages ...and fully specifies their CAN protocol (link below) , with a 50 page pdf that is one of the best I've seen, but again, this company isn't a popular one that I've heard of... maybe someone else has... so being compatible with them isn't high value to start with. https://emusbms.com/wp-content/uploads/2018/04/BMS_CAN_Messages_v2.0.11.pdf

davidbuzz avatar Nov 10 '19 21:11 davidbuzz

Another I haven't heard of ... Elcon, do Automotive/ Electric vehicle chargers: https://www.elconchargers.com/catalog/item/9034090/10317340.htm and their good looking CAN specification pdf here : https://www.nothnagel-marine.de/media/downloads/Elcon_TCCH/ElCon_Ladeger%25C3%25A4t_CAN-Bus-Communication-Spec.pdf

davidbuzz avatar Nov 10 '19 22:11 davidbuzz

REC , specifically the REC 9R-15S, includes some basic CAN protocol info here, probably enough... http://www.rec-bms.com/datasheet/UserManual9R_SMA.pdf ...and I fould a rumour on a random forum that said Pylon's CAN was almost a copy of the REC one except for one key difference, but didn't say what the difference was.

davidbuzz avatar Nov 10 '19 22:11 davidbuzz

This BMS is open source, and although designed for recycled car batteries like the Tesla ,VW and BMW , it communicates over CAN with a Victron compatible set of messages , which is cool Doco.. https://github.com/tomdebree/SimpBMS?files=1 Code. .. https://github.com/tomdebree/TeslaBMSV2?files=1

davidbuzz avatar Nov 11 '19 04:11 davidbuzz

Very important topic, thanks for information first

forest1298 avatar Jun 24 '20 04:06 forest1298

Thought I'd add this link https://github.com/juamiso/PYLON_EMU for the Pylon example... has anyone got this to work ?

I'm using a pip 8k max MPPT controller and would like to try this.

dudman avatar Feb 16 '22 21:02 dudman

Dear @davidbuzz,

foxBMS 1 is no longer supported or updated.

The further development of the foxBMS project is done in the second generation of foxBMS - foxBMS 2. foxBMS 2 is also available on GitHub at https://github.com/foxBMS/foxbms-2.

Best regards, The foxBMS Team

foxBMS avatar Apr 05 '24 19:04 foxBMS