Simp BMS

Topics concerning OEM and open source BMSes
User avatar
joromy
Posts: 371
Joined: Fri Jun 28, 2019 12:56 pm
Has thanked: 1 time
Been thanked: 3 times

Re: Simp BMS

Post by joromy »

Do you have some protection diodes on that?
Maybe I should put one on the gauge coil.
Thomas A. Edison “I have not failed. I've just found 10,000 ways that won't work"
tom91
Posts: 1308
Joined: Fri Mar 01, 2019 9:15 pm
Location: Bristol
Has thanked: 103 times
Been thanked: 216 times

Re: Simp BMS

Post by tom91 »

It only has the body diode, so yes you can add protection diodes. I have not had any issues but it might be due to using 'intelligent' gauges that do not direct drive a coil.
Founder Volt Influx https://www.voltinflux.com/
Webstore: https://citini.com/
Johaljaswant
Posts: 56
Joined: Wed Jul 03, 2019 1:35 pm
Location: USA

Re: Simp BMS

Post by Johaljaswant »

Hello Tom
In wiring basics power and contactors (J4)diagrams is it the same contactors I am using for Tesla large unit H.V contactor + precharge wiring.
I am using Damien control board for Tesla motor and referring to his wiring for contactors.
If so where charge contactor will go and ground for positive contactor and pre charge relay comes from invertor ground switching.Can you please explain how this will wire with Damien contactor wiring for Tesla large unit.
Thanks
tom91
Posts: 1308
Joined: Fri Mar 01, 2019 9:15 pm
Location: Bristol
Has thanked: 103 times
Been thanked: 216 times

Re: Simp BMS

Post by tom91 »

Do not use the bms to control contactor control in this case.

Please use it to control the power feed to the forward and reverse switch. You do not want a fault dropping the contractors and potentially damaging something like your Tesla drive unit at speed.

Unless you have a way of managing HV dropout on the inverter I would advise wiring a control signal instead of cutting power direct.
Founder Volt Influx https://www.voltinflux.com/
Webstore: https://citini.com/
User avatar
Kevin Sharpe
Posts: 1345
Joined: Fri Dec 14, 2018 9:24 pm
Location: Ireland and US
Been thanked: 4 times

Re: Simp BMS

Post by Kevin Sharpe »

Johaljaswant wrote: Wed Nov 13, 2019 3:47 am I am using for Tesla large unit H.V contactor
iirc the Tesla contactors don't have an economiser and will burn up pretty fast.
This is a personal post and I disclaim all responsibility for any loss or damage which any person may suffer from reliance on the information and material in this post or any opinion, conclusion or recommendation in the information and material.
User avatar
joromy
Posts: 371
Joined: Fri Jun 28, 2019 12:56 pm
Has thanked: 1 time
Been thanked: 3 times

Re: Simp BMS

Post by joromy »

Kevin Sharpe wrote: Wed Nov 13, 2019 10:09 am iirc the Tesla contactors don't have an economiser and will burn up pretty fast.
I have used tesla contacors. But you need to use the PWM fuction in Simp BMS.

Another option I have tested with Tesla contactors is the DRV102:
drv102.JPG
You need a capacitor for timing and a resistor to set the hold PWM.
Thomas A. Edison “I have not failed. I've just found 10,000 ways that won't work"
User avatar
Kevin Sharpe
Posts: 1345
Joined: Fri Dec 14, 2018 9:24 pm
Location: Ireland and US
Been thanked: 4 times

Re: Simp BMS

Post by Kevin Sharpe »

joromy wrote: Wed Nov 13, 2019 12:55 pmI have used tesla contacors. But you need to use the PWM fuction in Simp BMS.
AFAIK the OP is planning on using the inverter for contactor control (which is also recommended practice from Damien), so...
joromy wrote: Wed Nov 13, 2019 12:55 pmAnother option I have tested with Tesla contactors is the DRV102
Looks good 8-) I've added that to GitHub as a wish list item for consideration on future versions of the inverter controller hardware.
This is a personal post and I disclaim all responsibility for any loss or damage which any person may suffer from reliance on the information and material in this post or any opinion, conclusion or recommendation in the information and material.
User avatar
joromy
Posts: 371
Joined: Fri Jun 28, 2019 12:56 pm
Has thanked: 1 time
Been thanked: 3 times

Re: Simp BMS

Post by joromy »

Kevin Sharpe wrote: Wed Nov 13, 2019 1:26 pm Looks good 8-) I've added that to GitHub as a wish list item for consideration on future versions of the inverter controller hardware.
It's not so good option if you have a microcontroller. Then you can do the timing in software.
Anyway you need one mircocontroller pin for the contactor, so you might as well use a PWM pin.

The DRV102 is intended to use with dumb systems that only have on/off. And in this kind of systems it works really well.
Thomas A. Edison “I have not failed. I've just found 10,000 ways that won't work"
Johaljaswant
Posts: 56
Joined: Wed Jul 03, 2019 1:35 pm
Location: USA

Re: Simp BMS

Post by Johaljaswant »

I put SimpBMS to volt battery pack.
J2 connection as per manual but not connect to current sensor.
J5 pin 1 and 6 input +12 v and pin 9,10,11,12 connected as per manual
J4 pin 8 input +12 and 16 to ground.
HV battery wire not connect yet.batteries lying separately but bms slaves are connected.
Display get on but show no any data . All valve show zero.
Please help.
Thanks
tom91
Posts: 1308
Joined: Fri Mar 01, 2019 9:15 pm
Location: Bristol
Has thanked: 103 times
Been thanked: 216 times

Re: Simp BMS

Post by tom91 »

Please email me (address is in the setup manual), and have some screenshots of the serial terminal and your setup.
Founder Volt Influx https://www.voltinflux.com/
Webstore: https://citini.com/
tom91
Posts: 1308
Joined: Fri Mar 01, 2019 9:15 pm
Location: Bristol
Has thanked: 103 times
Been thanked: 216 times

Re: Simp BMS

Post by tom91 »

Anyone running a SimpBMS please check the github for updated firmware.

Have gone through my code (also based on others work) and correct all the mistakes relating to temperature sensors (some were not based on each reading but a module average ect.).

Also updated the temperature derating to work of min and max temperatures instead of averages.

Outstanding work:
-Pulse discharge limits, so allow higher current for a set duration with a derate over the period from the initial pulse
-Update the manual to the latest settings, I have been slacking loads of menus without updated documentation.
Founder Volt Influx https://www.voltinflux.com/
Webstore: https://citini.com/
User avatar
Bratitude
Posts: 784
Joined: Thu Jan 02, 2020 7:35 pm
Location: Canada
Has thanked: 58 times
Been thanked: 176 times
Contact:

Re: Simp BMS

Post by Bratitude »

I’ve gotten my hands on a Gen2 volt battery for next to nothing, interested in using simpbms.

Being no one (from my diging across the net) has really sniffed the canbus on the Gen2 bms, I’m thinking of wiring a up a gen1 bms to the gen 2 battery, and use simpbms.

Thoughts?

also picked up a Tesla Gen2 slave charger to use Damien’s board in
https://bratindustries.net/ leaf motor couplers, adapter plates, custom drive train components
tom91
Posts: 1308
Joined: Fri Mar 01, 2019 9:15 pm
Location: Bristol
Has thanked: 103 times
Been thanked: 216 times

Re: Simp BMS

Post by tom91 »

Gen2 has one big central unit, the Gen 1 has the slaves.

The Simp BMS works directly with the Gen 1 slaves. I have no idea what the Gen2 spits out in terms of canbus and whether that would be usable.

So yes you can make, if you rewire all the cell connections carefully, a Gen 1 BMS work on a Gen 2 battery.
Founder Volt Influx https://www.voltinflux.com/
Webstore: https://citini.com/
tom91
Posts: 1308
Joined: Fri Mar 01, 2019 9:15 pm
Location: Bristol
Has thanked: 103 times
Been thanked: 216 times

Re: Simp BMS

Post by tom91 »

Good news for users with Chevy Volt packs or other canbus based slaves.

I am developing code to utilise a Serial to Canbus translator, this will allow a second canbus at a different speed to be utilised.

Due to the limits of the translator this canbus is only for talking to the rest of vehicle, so Displays, Victron Systems, Charger and DCDC.
It cannot be used to add more battery slaves due to the limited bandwidth.
Founder Volt Influx https://www.voltinflux.com/
Webstore: https://citini.com/
prensel
Posts: 111
Joined: Mon Nov 25, 2019 1:36 pm
Location: Nijmegen (NL)
Contact:

Re: Simp BMS

Post by prensel »

For those interested:

I'm using the V1 version of the SimpBMS for several applications and had needs for a second CANbus.
I thought af replacing the Teensy 3.2 with a Teensy 3.6 with dual CANbus capabilities. The socket of the 3.2 do match the pins of the 3.6 but hence the voltage differences (5V vs 3.3V) I've decided to go another route.

Since the original Teensy CAN pins 3 and 4 where already taken for the two MOSfet's I have connected two extra small wires to pins 25 and 32 on the bottom of hte Teensy and connected an extra MCP2551 transceiver for the second CANbus using the FlexCAN library on alternative pins (25 and 32). So CAN0 is working on the MCP_CAN library and Can0 is working on the FlexCAN library.

After some initial testing it seems to work like a charm :-)
= Th!nk PIV4 Collection, support, sales =
tom91
Posts: 1308
Joined: Fri Mar 01, 2019 9:15 pm
Location: Bristol
Has thanked: 103 times
Been thanked: 216 times

Re: Simp BMS

Post by tom91 »

prensel wrote: Fri Jan 10, 2020 9:17 am I'm using the V1 version of the SimpBMS for several applications and had needs for a second CANbus.
After some initial testing it seems to work like a charm :-)
Could you share some pictures of the modifications and the code?
Founder Volt Influx https://www.voltinflux.com/
Webstore: https://citini.com/
prensel
Posts: 111
Joined: Mon Nov 25, 2019 1:36 pm
Location: Nijmegen (NL)
Contact:

Re: Simp BMS

Post by prensel »

#include <SPI.h>
#include <mcp_can.h>
#include <Wire.h>
#include <FlexCAN.h>

static struct CAN_filter_t defaultMask;

typedef struct {
uint16_t id;
uint8_t len;
uint8_t buf[8];
} CANMSG_t;

MCP_CAN CAN0(10); // define CAN0 on CS pin 10

static void hexDump(uint8_t dumpLen, uint8_t *bytePtr)
{
static uint8_t hex[17] = "0123456789abcdef";
uint8_t working;
while ( dumpLen-- ) {
working = *bytePtr++;
Serial.write( hex[ working >> 4 ] );
Serial.write( hex[ working & 15 ] );
}
Serial.write('\r');
Serial.write('\n');
}

void readCAN0()
{
// MCP_CAN interface on CAN0
CANMSG_t msgRX; // receive buffer
if (CAN_MSGAVAIL == CAN0.checkReceive())
{
CAN0.readMsgBuf(&msgRX.len, msgRX.buf);
msgRX.id = CAN0.getCanId(); // Get message ID
Serial.print("MCP_CAN0: ");
Serial.println(msgRX.id, HEX);
hexDump(8, msgRX.buf);
};
};


void readCan0() {
// FlexCAN interface on Can0
CAN_message_t inMsg;
while (Can0.available())
{
Can0.read(inMsg);
Serial.print("FlexCAN0: ");
Serial.print(inMsg.id, HEX);
hexDump(8, inMsg.buf);
}
}

void setup()
{
Serial.begin(115200);
delay(3000);

// setup MCP_CAN
CAN0.begin(CAN_500KBPS);

// set FlexCAN to TXalt and RXalt
Can0.begin(125000, defaultMask, 1, 1);


}; /*--(end setup )---*/

void loop()
{
// process incoming CAN packets
readCAN0();
readCan0();

};
= Th!nk PIV4 Collection, support, sales =
User avatar
joromy
Posts: 371
Joined: Fri Jun 28, 2019 12:56 pm
Has thanked: 1 time
Been thanked: 3 times

Re: Simp BMS

Post by joromy »

I just updated Simp BMS Tesla to Firmware Version : 200115, have the same settings as before:
0 - Slave strings in parallel: 1
a - Cells in Series per String: 0

But i get " !!! Series Cells Fault !!! "
Can I just ignore it, or are my settings wrong?

Readings looks like before.
BMS Status : 1 Ready 84
Out:0000 Cont:0000 In:0000
Modules: 14 Cells: 84 Strings: 1 Voltage: 306.309V Avg Cell Voltage: 3.647V Low Cell Voltage: 3.644V High Cell Voltage: 3.652V Delta Voltage: 9mV Avg Temp: 18.590C
Thomas A. Edison “I have not failed. I've just found 10,000 ways that won't work"
tom91
Posts: 1308
Joined: Fri Mar 01, 2019 9:15 pm
Location: Bristol
Has thanked: 103 times
Been thanked: 216 times

Re: Simp BMS

Post by tom91 »

joromy wrote: Thu Jan 16, 2020 5:14 pm 0 - Slave strings in parallel: 1
a - Cells in Series per String: 0 - needs to be 84 as you have 12 modules of 6 cells each
Founder Volt Influx https://www.voltinflux.com/
Webstore: https://citini.com/
User avatar
joromy
Posts: 371
Joined: Fri Jun 28, 2019 12:56 pm
Has thanked: 1 time
Been thanked: 3 times

Re: Simp BMS

Post by joromy »

Thanks, this error is new in this version, didn't get it before.
I have 14 modules...
Thomas A. Edison “I have not failed. I've just found 10,000 ways that won't work"
tom91
Posts: 1308
Joined: Fri Mar 01, 2019 9:15 pm
Location: Bristol
Has thanked: 103 times
Been thanked: 216 times

Re: Simp BMS

Post by tom91 »

My math sucks.

14x6 = 84 :)
Founder Volt Influx https://www.voltinflux.com/
Webstore: https://citini.com/
User avatar
joromy
Posts: 371
Joined: Fri Jun 28, 2019 12:56 pm
Has thanked: 1 time
Been thanked: 3 times

Re: Simp BMS

Post by joromy »

tom91 wrote: Thu Jan 16, 2020 6:03 pm My math sucks.
14x6 = 84 :)
Serial console show low temp:18.85C and high temp:19.11C

CAN bus show same temp on high and low:
373 8 39 e 42 e 24 1 24 1
LOW_CELL 3.641
HI_CELL 3.650
MIN CELL TMP 18.85
MAX CELL TMP 18.85
Thomas A. Edison “I have not failed. I've just found 10,000 ways that won't work"
tom91
Posts: 1308
Joined: Fri Mar 01, 2019 9:15 pm
Location: Bristol
Has thanked: 103 times
Been thanked: 216 times

Re: Simp BMS

Post by tom91 »

joromy wrote: Thu Jan 16, 2020 9:47 pm Serial console show low temp:18.85C and high temp:19.11C

CAN bus show same temp on high and low:
373 8 39 e 42 e 24 1 24 1
LOW_CELL 3.641
HI_CELL 3.650
MIN CELL TMP 18.85
MAX CELL TMP 18.85
I will make a test setup for this as the code makes this implausible really.

Wait, its only a difference of 0.26C, so due to it being a full number, no decimals it makes sense. So you need deltas of 1 degree to show up.

Victron screen, not the missing decimal
82979938_654901945318918_6998980986465681408_n.png
Founder Volt Influx https://www.voltinflux.com/
Webstore: https://citini.com/
User avatar
joromy
Posts: 371
Joined: Fri Jun 28, 2019 12:56 pm
Has thanked: 1 time
Been thanked: 3 times

Re: Simp BMS

Post by joromy »

Delta 1C is good enough for me, it's only for controlling the water pump.

Voltage is correct, that's what matters.
Thomas A. Edison “I have not failed. I've just found 10,000 ways that won't work"
User avatar
joromy
Posts: 371
Joined: Fri Jun 28, 2019 12:56 pm
Has thanked: 1 time
Been thanked: 3 times

Re: Simp BMS

Post by joromy »

What does "8 – Max Discharge = maximum discharge current in A" in battery settings do?
Give an error?
Set a output high/low?
Thomas A. Edison “I have not failed. I've just found 10,000 ways that won't work"
Post Reply