DIY 6S to 12S BMS with CAN - DieBieMS

Was this answered? Wouldn’t manually pushing the board charge the battery as go?

Shouldn’t you know as you are the esk8engineer? :thinking:

I don’t think it was answered.

Rolling the board does not charge the battery. This only happens when regenerative braking is active.

So yes I still don’t know if it will continue to drain the battery since you are now forcing the esc to stay on and therefore I’d say you are draining the battery. I suppose it isn’t enough to have an impact.

I know from the meepo board it does drain the battery enough in this case but with that board it also powers an annoying beep when empty which might be why it does drain the battery enough to further deplete it. I personally ran into this problem which is why I raised this question. It continues to drain the battery and the beep was no longer heard after a while of kick pushing.

Haha I guess my tag is a bit miss leading. I am a Mechanical Engineer that works in the areospace industry. I am way out of my league here and new to esk8. I have however been involved with RC most of my life and that is were all my battery and soilding etc… Experience comes from.

1 Like

@JTAG There was a question about removing the switch back on post 346 by @sayekim that I do not think was ever answered about how would you turn the board off if you need to manually kick homedue to you battery being to low if the switch was no longer supported and the kick to start was enabled. Could you please address it. Thanks for everything you have done on this project.

@JTAG, So when I am hitting the soft undervoltage, the VESC is restarted and the board stops suddenly. It usually happens at low speed so I just hop off. I am a bit scared to ride when low on battery now. I’ll program a low undervoltage(like 3.1volts) so that vesc will hit the low voltage and slow down first.

Q1: Is that an expected behavior?

Digging through the firmware I found the relevant variables. float cellLCSoftUnderVoltage; // If the lowest cell is under this voltage -> disable low current load float cellHCSoftUnderVoltage; // If the lowest cell is under this voltage -> disable high current load

Q2: So what does the low current load and high current load mean?

1 Like

So I picked up another one from hummie who picked it up from someone on here. This time, I wired up just 1 vesc so I can test the functionality with a little complication as possible.

As before, push to start works but I can not see any other vescs when I run “can_devs” on the focbox, and the same from the bms. I tried both CAN ports. Neither worked.

Other then the wiring, what needs to be done on the bms and on the vesc to make this work? Just seems odd to me that this is my 3rd diebiems and I can’t get this essential feature to work.

Here is what I believe is correct, can I have someone confirm this diagram? @JTAG @Samau18

2 Likes

This is correct. I have wired it like that.

Where do you run this? Terminal?

May be some thing basic, did you set the CAN ID right? 10 for dbms, I think 0,1 for VESC.

Still chasing Danny for feedback. But still have time as CNY holidays still happening.

Sam

1 Like

Also if you have two vesc, are you able to talk between the two vesc.?

1 Like

how does one talk to the devices on can bus? through vesc terminal?

yes, and yes. I can communicate between 2 vescs but not to the bms.

Yes type ID of the destination device and connect

What’s the operation mode of the bms? Is it passing load voltage to the vesc?

1 Like

Q1 -> The BMS wil disable the output if the lowest cell voltage drops below cellLCSoftUnderVoltage this is intended to protect the battery, at some point you should stop discharging the battery to protect it. This is indeed an instant cutoff, when in your case when the load is removed the cell voltages will recover to a higher voltage restoring the output enabled state to enable. If you do not want a sudden shut off you should limit the consumption of energy when the battery is almost empty, there is already al solution for that: image

You should configure the VESC to cut off sooner than the BMS. In the future I will discuss with benjamin an option to communicate with the BMS to do this all automatically.

Q2 -> This is for a different BMS, the BMS used here only has a low current path and only uses the low current config. The high amp shield will use the high current load config to determine the relay or solid state relay enabled state.

3 Likes

No, I do not power the vesc with the bms. The bms is in paralell with the vesc. Does the bms need to power the vesc in order for canbus to work properly?

No, I just want to make sure the VESC is powered up.

I have a unity focbox, I will try to wire one up and takes some pictures.

ok, I rewired everything and still can’t it to fire up. I feel like theirs some setting I’m missing or something simple.