FlexiBMS Lite - New approach to get past Vaporware stage

Not yet. Had some coffee with the old colleague and talked about more normal and mundane stuff first recent events on both of our ends. They are currently looking for investors and they had asked how much a HW oriented employee would cost in a year. He then told me that he proceeded to send me that whatsapp message right after that, which would partially explain that the message came at 10 in the evening. Told me that he had been working a “little” longer days recently.

Anywhoo, I told my current wages and fringe benefits and said that was the baseline to go higher from. They had been developing and manufacturing consumer level desktop printers before, but they are moving now onto more industrial printing applications. They currently have an industrial robot arm with a printhead and they are developing their own software and hardware solutions around that (He had a picture of him riding said arm). I said that I was interested in coming back to them after hearing all this.

No dates were set in stone, but within the next half a year, depending on when they can secure more funding. I said I was going to inform my current employee as well of the developments and we agreed to keep in touch.

TLDR

Pre-emptive move to contact me, so they can give a better cost prediction for investors about how much I would cost annually. “Putting the gears in motion”, so to speak.

7 Likes

Nice layout! Took a look myself and I can’t find any issues, at least any major. Don’t like how R12’s pad is merged with B- pad, you’ll get it bridged with soldered cable and any forces applied to it will stress that resistor and could cause it to crack.

Also if Q1+Q2 will be getting too toasty you can remove those thermal reliefs in the next HW revision and get some heat sinked into the massive pads and cables.

1 Like

Had a couple of ideas for you to consider. I’m not experienced in designing or making PCB so thay might be a useless thoughts that you might have good reasons to dismiss. I really like the press for terminals on the batt + - expensive for what thay are but a nice finish and easy to to remove large cables later with out over heating the board. image https://image.made-in-china.com/44f3j00ZUlEnaRBAwky/Press-Fit-Power-Clamps-Flexible-or-Elastic-Press-Fit-Technology.jpg

Tho I don’t know how useful it be on the light version as it’s not carrying the power to the VESC you wouldn’t need 10awg cable.

Also thinking how much room in a encloser the plugs would need each side could one be spun around after if you wanted all the cables to come off one side? This is a really tiny BMS so compacked mabe it just looks as tho the the cables coming off would use up more room than the board it’s self and in reality it’s not worth even considering.

It’s looking as tho it’s becoming a reality parity quick when might you be taking pre orders? (APS BMS Just dies on me after 4 months so need to decide what to do about replacing it)

1 Like

Lite version is not going to have these, due to only having charge path control (no crazy currents). Basic version is shaping up to be board size wise bigger and with discharge path control comes the need to think about the wire connections. Good point bringing up the heat stress if you need to solder heavy gauge wire directly onto a solder pad.

I have looked earlier at Wurth electronics’ “REDCUBE WP” series screw terminals (the same ones as in the picture above) at Digi-Key, link below to the connectors.

I’m going to be pushing this project forward with a lot of effort. Priority on getting the board’s basic functionality going and being able to configure the critical parameter’s for charging use. No one wants a non-functional paper weight. And is a very bad idea to start shipping product if this is the FW state.

I’m focusing atm on making a basic bootloader that allows to flash the firmware through the USB connection alone, while still keeping the implementation simple. This way, as more software features get implemented and fixed you can easily upgrade to the latest firmware. This is one of the biggest priorities for me.

Once hardware gets mature enough to be considered shippable. I’m going first do a small 8-10 board assembly test batch to see how the PCBA workshop performs and iron out any manufacturing file deficiencies. I’m currently looking at a few china workshops like:
https://www.pcbway.com/Home/Index?code=f
and
Fusion PCB Manufacturing & Prototype PCB Assembly - Seeed Studio (I have ordered PCBs from here before)

With more options from this list:
https://www.eevblog.com/wiki/index.php?title=PCB_Assemblers#China_Based

If anybody has anybody has any experience working with Chinese PCBA workshops, I’m all ears.

3 Likes

@Samau18
10 skirrels

1 Like

Can certainly take a look when the board is ready. My only request is that there will be automatic testing tools to go with it =].

Sam

2 Likes

Here’s the planned bootloader flow chart, that I know I can implement in a timely fashion. image

The least fun part of designing a product :smiley:

Do you own your own PCBA assembly line or did you order the DieBieMS boards assembled from somewhere else?

We order parts, sent them off to be SMT-ed by SMT house (We can do it in house with our Juki too, but not very cost effectively at the current bms quantities)

Manual installing items (press-in connector, fuse) and testing are done in house.

Boards and components came today. Gonna start assembling today in sections and testing that everything is looking good.

IMAG0182 IMAG0183

10 Likes

@SimosMCmuffin and had an idea that maybe more people find useful

Is possible to have a pin supply 5v when the board is charging? I would use it to power my arduino without actually powering the board on and use my battery charge leds indicate that the board is indeed being charged, something similar how boosted does

1 Like

Unfortunately, no 5V is readily available off the board. 3V3 is available from the USART/I2C connector, which arduino can be run from, but can’t say if your other devices with the arduino will be able to run from it.

Do note, that the max current from the 5V buck is 300 mA absolute maximum (datasheet), minus what is already being used by the BMS components.

If you reaally need 5V, then probably the easiest place to get it from would be the either to solder a jump wire to the capacitor next to the CAN transreceiver and a dab of hot glue to give the wire some mechanical support.

Or straight onto the 5V buck controllers inductor output side, or output capacitor.

I’ll see if I can add an open pad somewhere for the 5V, so users can more easily get the 5V out of the BMS.


Progress on the board assembly and testing

I’ve been busy testing the voltage regulation and current consumption on the board from the 5V buck and through the LTC6803’s linear regulator. MCU is alive and I’ve been doing some low power mode testing. I want to test and confirm the current consumption for the MCU, so I haven’t assembled the rest of the board yet, meaning I can isolate all the power draw to the 5V buck or the MCU.

Started from around 3.3 mA on the basic settings with USB turned on with a couple of the internal oscillators going. Disabled the USB and it’s oscillator and turned the main oscillator from 16MHz down to 100kHz. Went into lower internal voltage regulator mode and then went into low-power-run mode.

After this my multimeter showed around 150 µA, but I don’t know how accurate it is at very low currents. I also noticed that the 3V3 linear regulator for the MCU has a quiescent current of 150 µA at zero output current, sooo the current consumption mighty be largely, because of that at the moment (Graph from it’s datasheet below). I have already found a drop-in replacement regulator, with 5µA spec’d quiescent current.

I’m gonna do more current measurements tomorrow at work with better equipment.

So in that line I have already found a couple HW related things I want to change around, but nothing major so far.

8 Likes

Thanks, or alternatively, pads to drive some leds directly would also work, I have and SOC “algorithm” that I use on the Arduíno that could merge with the firmware if you have interest, i don’t know if you have pins remaining on the micro controller

Is there a reason you couldn’t interface via USART or I2C?


Here’s a pic me (or my hands at least) testing the current consumption in my workplace’s lab. Current hovered around 145 µA and the lab multimeter used was Keysight 34461A. I’m quite surprised how close my 20 dollar chinese multimeter (an8008, approved by Dave from eevblog) showed to this amount. I’ll see if I can add the better suited linear reg to our HW team digi-key order list, I don’t personally see any big enough orders in the near days to make the order myself (free shipping after 50€ items). So far the current consumption seems pretty promising, but I’ll say for certain after I get to test the new linear reg.

IMAG0190

5 Likes

It’s possible, I don’t even need any the data of the BMS, just a way to power the board or just the logic part when the charger is plugged

Thanks

Started assembling and testing the sense and balance circuitry on the weekend.

Discovered some weird behavior on the cell voltage measurements on Sunday. Otherwise cell voltages were okay, but the top most cell was always 40-70 mV under actual amount and was fluctuating slightly, where as all the other cell voltages were rock-solid and on point. I tested with 3, 4, 5, and 6S batteries and it was always the top cell measurement that exhibited this behavior. Due to the problem always persisting with the top cell and all lower cells showing correct numbers, this lead me to believe the sense circuitry itself was okay, but there is something weird going on the supply side on the LTC6803.

Tried isolating the MCU’s 3V3 supply, which seemed to fix the problem. Meaning there is something funky going on with the 6803’s 5VREG output while USB is connected. Problem seemed to get fixed by placing a diode on the 5VREG line between the MCU 3V3 linear regulator. USB comms showed correct and steady results for the top most cell measurement after that. Board now officially has it’s first hot bodge component placement as pictured below (had to scrape off soldermask and cut a trace and then solder the diode inline onto the naked trace :wink:)

I still want to check the measurement results without the USB connected by passing the cell measurement results through an Arduino via USART.

Once I have results from that, then I’ll start testing the actual balancing. Mainly interested in the thermal behavior, currently current bleed resistors are 33 Ohm, as can be seen on the lower picture. At 4.15V this should give ~125 mA balance current.

Note

I believe I’ll be able to get the standby current use below 100µA, but I still don’t have the better suited linear regulator on hand yet, so I can’t affirm it 100%. In theory this should give for example a 1 Ah (very small) battery a storage life of ~400 days, or 2.4 mAh daily.

IMAG0192

IMAG0193


Off-topic

Assembled this thing also on the weekend (battery not yet soldered in). Kudos to @MasterCho for Thingiverse files and @Smorto (https://www.electric-skateboard.builders/t/gt2b-mastercho-chozen-mod-full-length-tutorial-how-to/16005?u=simosmcmuffin) and @Mikenopolis (https://www.electric-skateboard.builders/t/gt2b-mod-video-tutorial-chozen-remote-case/37668?u=simosmcmuffin) IMAG0194


EDIT:

Also, experimented with the super low-power modes on the MCU and did a beginner’s error. Put the MCU in stop mode 2, which stops the CPU clock.

Have a guess, if I could get my ST-LINK to connect to it after that? No. Problem really was that I don’t have RESET broken out to a test pad, because normally you can call software system reset with just the SWCLK and SWDIO, but guess if that still works when the CPU is internally stopped in a low-power stop mode? Nah. So every time the MCU booted up it directly ran itself to stop mode in couple milliseconds. Not really enough time to start debugging run from the ST-LINK and flash a new firmware to it :smile::sweat_smile: .

Fun. Times.

In the end I solved the problem by soldering a sneaky hook-up wire directly onto the QFN package’s RESET pin pad (which doesn’t extend out anywhere from below the package). Well got it done. Got reset working so I could get the debugging session started and flash a new firmware. Didn’t even have RTC running the auto wake-up in the background, so it really was a sleeping beauty at that point. Even considered desoldering the whole MCU and just plonking down a new one.

Well, you learn best from these kinds of mistakes…

12 Likes

Good progress

I think your best bet with cell balancing is to limit how many cells should be allowed to balance simultaneously with a temp sensor near the resistors should it get too hot in a extreme situation

It was interesting to read about developments :nerd_face: Thanks for documenting!

3 Likes

I always try and breakout these sorts of pins to a test pad even if you dont think you will need them just for situations like this.

Otherwise the boards look great. Did you solder them by hand or did you reflow them? they look very tidy.

To be honest if adding 1 diode is the only change you need to make then that’s pretty good going. Cant wait to see further progress with this. Also Im surprised by just how small the board looks in your photos. Cant wait to have one of these in my board :smile:

1 Like