BMSBattery S-LCD3 <--> S06s serial data protocol?

Get all your technical information about electric bikes here.
Post Reply
x-speed   10 W

10 W
Posts: 67
Joined: Aug 24 2011 4:01am

BMSBattery S-LCD3 <--> S06s serial data protocol?

Post by x-speed » Jul 13 2015 9:06am

Does anybody perhaps know details of the serial data protocol used by the newer bmsbattery S-LCD3, which would allow transfer of those extended "C-Parameters"? This protocol should be equal to that of the latest S-LCD5, but should certainly be different/longer than that of the old S-LCD1.

Or does somebody have the option to binary-log some S-LCD3/5 serial transfer, at least one outgoing transmission from S-LCD3 to S06s/S06p/S12s.. with default C-Parameters, in order to have a valid and safe starting point for trial and error experiments?
I'd expect transfer to happen at 9600/8-N-1 baud as is the case with S-LCD1. Just somehow more bytes than the old protocol with 7 bytes forth + 7 bytes back some 10x per second.



Background: I do not want to have those huge embarrassing displays on a bicycle, particularly on the folding bike. Anyway I already run my own meta controller build since years on power controllers for more sophisticated control and for having a "natural" stealth UI without any need to ever look down on a display, on switches or so - just a Bluetooth option for rare general setup & log tasks.
I do not own a S-LCD3 or S-LCD5 so far, and would never need one - except for possibly extracting that new protocol info.
I'm using a S06s controller, built summer 2014, on a folding bike which should understand not just the S-LCD1 protocol, which I used so far, but the new S-LCD3 protocol as well.
Things work overall. Anyway I just set up the S06s with rather free unlimited settings (as far as possible with S-LCD1 protocol), and everything else is measured/controlled by the metacontroller via the controllers throttle input.
But there are 2 of the C-Parameters which can not be substituted and which I'm eager to screw:

Protocol issues / parameters needed mainly:
* C12 Undervoltage level 0..7 (3bits) : The S06s does undervoltage protection switch off at N*3.0V (30V on a 36V battery) by default, which is rather high! This hides almost some 10% capacity of the modern 10s AlNiCo batteries according to my Smartbms logs and comparison with other controllers doing UV <= 27.5V ! AlNiCo have discharge curves flatter than ICR / Lipo. I had several situations where I missed those 10%.
* C2 Sine Wave Motor Phase Classification Coding Mode 0..7 (3bits): I observed in freewheeling experiments that the S06s (sine wave) consumes significantly more power than the KU63 during freewheeling at the same speed on the same motor&wheel. Some +20% ! I didn't make full load comparisons so far, but would still expect a significant inefficiency of the S06S. It is known that the "firing angle" fine tuning is crucial with efficient sine wave control - small angle errors can produce significant blind currents - its more critical than with rectangle control - and I don't think this angle tuning is possible automatically with hardware as simple as in S06S. Possible this "C2" parameter allows manual tuning of that?

And on another bike with direct drive motor I'd like to play with "C13 ABS brakes of the controller and parameters of anti-charge control" 0..5 (3bits)



emilx   1 mW

1 mW
Posts: 14
Joined: Aug 09 2013 3:00am

Re: BMSBattery S-LCD3 <--> S06s serial data protocol?

Post by emilx » Jul 23 2015 4:49am

Hi x-speed,
I am glad to hear you decoded the lcd-1 protocol and i think it would be a dream come true if we were able set the angle tuning on our controllers.
I intend to buy the lcd-3 and find out how it works, but in the meantime I am stuck with a different problem.
I bought the basic LED panel hoping to get rid of the s06 speed limiter, but I ended up setting the te limit to 6kmh. Is there any chance you could share the lcd-1 protocol? I don't think I have anything I can contribute with in return, but I would gladly do it if I could

fellow   1 kW

1 kW
Posts: 326
Joined: Apr 01 2014 11:04am
Location: Sweden, EU.

Re: BMSBattery S-LCD3 <--> S06s serial data protocol?

Post by fellow » Jul 23 2015 5:25am

It is possible to correct the LVC of S06S controller by locating resistors marked 153 (15kohm) and 122(1.2kohm). Those are simple voltage dividers located close to the LM317 voltage regulator. Maybe not as elegant solution as hacking the communication, but it is tested solution and it works well. More info about S06S LVC is to be found further down on my singnature link page.
My 18S Q100H Frankenstein S06S project is here: http://endless-sphere.com/forums/viewto ... =6&t=68305

x-speed   10 W

10 W
Posts: 67
Joined: Aug 24 2011 4:01am

Re: BMSBattery S-LCD3 <--> S06s serial data protocol?

Post by x-speed » Aug 11 2015 7:09am

fellow wrote:It is possible to correct the LVC of S06S controller by locating resistors marked 153 (15kohm) and 122(1.2kohm).
I'll consider that as last option, when I don't get a data log - the latter would provide many more options in addition.
Its not overly urgent; and also want avoid to open and solder the controller again just for that. Its always a rather tricky task mechanically - with µC/wiring/BT-connector and some bypass resistors (for overheat reduction) already fiddled into this extremely small controller, and with that wobbly isolation of case vs FET.
emilx wrote: I bought the basic LED panel hoping to get rid of the s06 speed limiter, but I ended up setting the te limit to 6kmh.
I don't know the LED panel directly, and whats involved specially regarding such problem and possibly special protocol.
Strange: How can you set the limit to 6kmh at all with just S-LED ? Minimum nominal speed limit is 10kmh (when wheel + magnet number settings are correct) and the minimum is certainly not a preset. Maybe there is another problem with the hardware?
Reading the LED ad description I think you'd need a special copy process from a S-LCD1 to change the speedlimit setting etc in the LED (or order it with reasonable setting). Otherwise as soon as the LED is connected with high probability things are changed again back - if its a setting problem at all.

When you deal with the serial interface:
What data string is the LED sending out periodically e.g.? (yellow cable vs black=GND, TTL 5V, baud 9600/8-n-1)
Is there a special packet sent from the LED when you press "ON/OFF" + "MODE" simultaneously for 5 seconds? (Copy operation)

If you obtain a S-LCD3 anyway: There is obviously a option in the settings to configure it using the old S-LCD1 protocol, which should also allow copying from S-LCD3 to S-LED.

fellow   1 kW

1 kW
Posts: 326
Joined: Apr 01 2014 11:04am
Location: Sweden, EU.

Re: BMSBattery S-LCD3 <--> S06s serial data protocol?

Post by fellow » Sep 14 2015 5:12pm

Are there any news on this subject? Is it possible to get rid of the speed limit (34km/h in 26") when used without the display? By the way, does S06S have regen function (with or without the LCD)?
My 18S Q100H Frankenstein S06S project is here: http://endless-sphere.com/forums/viewto ... =6&t=68305

x-speed   10 W

10 W
Posts: 67
Joined: Aug 24 2011 4:01am

Re: BMSBattery S-LCD3 <--> S06s serial data protocol?

Post by x-speed » Aug 07 2016 5:48am

fellow wrote:Are there any news on this subject? Is it possible to get rid of the speed limit (34km/h in 26") when used without the display? By the way, does S06S have regen function (with or without the LCD)?
Do you really observe a fall back to a lower (digital) speed limit after removing the display? I cannot confirm such behavior. The S06S should retain permanently (beyond OFF+ON) the speed limit of the display, which was active last.
Max limit is 10 + 63 = 73 km/h with correct wheel size set. (A very very old variant of the protocol must have allowed max 10 + 31 (5bits) = 41km/h unless tweaking wheel size setting)


Regarding the C-parameter functions & protocol: Is Nobody out there with a S-LCD3, S-LCD5 (or KT-LCD3 and ...) who could record some serial data sent out before and after a parameter change (of e.g. C12 or C2) by the display on the yellow cable vs black/GND - simple 9600/8-n-1 Baud, TTL 5V ?


x-speed   10 W

10 W
Posts: 67
Joined: Aug 24 2011 4:01am

Re: BMSBattery S-LCD3 <--> S06s serial data protocol?

Post by x-speed » Aug 07 2016 9:28am

Thanks a lot! He obviously decoded quite everything. I'll see if it works.

casainho   10 GW

10 GW
Posts: 4379
Joined: Feb 14 2011 2:43pm

Re: BMSBattery S-LCD3 <--> S06s serial data protocol?

Post by casainho » Apr 30 2017 1:50pm

x-speed wrote:* C2 Sine Wave Motor Phase Classification Coding Mode 0..7 (3bits): I observed in freewheeling experiments that the S06s (sine wave) consumes significantly more power than the KU63 during freewheeling at the same speed on the same motor&wheel. Some +20% ! I didn't make full load comparisons so far, but would still expect a significant inefficiency of the S06S. It is known that the "firing angle" fine tuning is crucial with efficient sine wave control - small angle errors can produce significant blind currents - its more critical than with rectangle control - and I don't think this angle tuning is possible automatically with hardware as simple as in S06S. Possible this "C2" parameter allows manual tuning of that?
I am starting develop OpenSource firmware for S series controllers of BMSBattery, please join the efforts and then we will be able to add advanced features not available on original controller: https://endless-sphere.com/forums/viewt ... =2&t=87870

I developed FOC firmware for electric unicycles. S06S should not be able to do FOC but we should try to do the best possible to optimize motor power usage. Without FOC, the "firing angle", we need to find ways to improve it. I know it should change with motor speed and I also believe it change with motor load. Maybe we can profile a motor for different speeds and loads...
- TSDZ2 FAQ: issues and repairs, etc
- TSDZ2 OpenSource firmware

Developer of the Flexible OpenSource firmware for EBikes: TSDZ2 mid drive motor, KT motor controllers and displays: Bafang 850C color, SW102 Bluetooth and KT-LCD3.

If you like my work, please consider making a donation. I am being using the donations to buy needed resources for my developments. My paypal: casainho AT gmail.com.

Post Reply