TSDZ2 OSF for all displays, VLCD5-VLCD6-XH18, LCD3, 860C-850C-SW102.

Both ! With "Wait TSDZ2" the motor doesn't start, and with "e6 fatal error" the motor stops.

It's always in the same order : first I get "Wait TSDZ2", then if I disconnect the battery, the screen and motor work for a few seconds to a few minutes, then 'e6 fatal error' and the motor stops.

I tried reflashing the controller and using a VLCD6 display. The behaviour is roughly the same : first the display doesn't turn on, then if I disconnect and reconnect the battery it does turn on and the motor works for a short time, then I get "E07" and the motor stops..

Enabling the 'assist with errors" option doesn't help.
The behavior with VLCD6 is more logical.
If the display does not turn on and it is necessary to disconnect the battery, the BMS probably goes into protection.
Confirmed by E07 overcurrent (I assume you tried the 27.07.2024 update).

There is also an explanation of the two different errors, e6 fatal error and E07 overcurrent.
Up to version 4.4 (860C - SW102),
e6 fatal error only indicated a loss of communication between display and controller,
I have never had reports of this error.

From version 5.0 e6 fatal error also indicates
a battery voltage too low, 9 Volts less than voltage cut-off, in your case less than 33 Volts.
It may be that excessive absorption causes a lowering of the voltage.
The minimum voltage control was also present in previous versions, assistance was missing but without displaying errors.

Even in the version for VLCD6 there is this control and no error is displayed, also the intervention time is longer than the versions for 860C, because before removing the assistance the SOC is saved in eeprom. So E07 overcurent intervenes first.

Having said that, I would do a continuity check on the wires that go from the controller to the motor.
Remove the battery, disconnect the wires from the motor, check with a tester, there must be no resistance between the wires that come out of the controller.
Also check that there is no continuity between the motor terminals and the ground.

A clarification regarding "assist with errors", it only disables the errors caused by the sensors.
 
If the display does not turn on and it is necessary to disconnect the battery, the BMS probably goes into protection.
Confirmed by E07 overcurrent (I assume you tried the 27.07.2024 update)
Yes I used the latest update of both firmwares, as well as the previous ones.

I clamped an ammeter to the battery wire, and turned on and off the VLCD6 (before E07 appeared). The display wouldn't turn on again without disconnecting the battery first, and yet I didn't see any current surge. Same thing with the SW102, exept that e6 fatal error appears almost immediately. So I didn't detect any high current that woulg have triggered the BMS into protection.

With an older version of the SW102 display firmware I get "e6 : comm" error instead of fatal error.

Having said that, I would do a continuity check on the wires that go from the controller to the motor.

Remove the battery, disconnect the wires from the motor, check with a tester, there must be no resistance between the wires that come out of the controller.
Also check that there is no continuity between the motor terminals and the ground.
There is some resistance (forgot to note the value) between the phase wires but it's the same between them all.
There is no continuity between motor and ground.

Today there is some evolution : with VLCD6 display and v20.1C.6-beta, I still need to disconnect the battery everytime I want to turn on the display, but I don't get E07 anymore (at least for the 20km I rode, with several stops). So I'll keep it like that for now and I have a new controller on the way : I prefer playing it safe since that bike is my commuter and taking the metro/bus instead is a bit of a pain..

Thank you for your help and explanations mbrusa !
 
Yes I used the latest update of both firmwares, as well as the previous ones.

I clamped an ammeter to the battery wire, and turned on and off the VLCD6 (before E07 appeared). The display wouldn't turn on again without disconnecting the battery first, and yet I didn't see any current surge. Same thing with the SW102, exept that e6 fatal error appears almost immediately. So I didn't detect any high current that woulg have triggered the BMS into protection.

With an older version of the SW102 display firmware I get "e6 : comm" error instead of fatal error.


There is some resistance (forgot to note the value) between the phase wires but it's the same between them all.
There is no continuity between motor and ground.

Today there is some evolution : with VLCD6 display and v20.1C.6-beta, I still need to disconnect the battery everytime I want to turn on the display, but I don't get E07 anymore (at least for the 20km I rode, with several stops). So I'll keep it like that for now and I have a new controller on the way : I prefer playing it safe since that bike is my commuter and taking the metro/bus instead is a bit of a pain..

Thank you for your help and explanations mbrusa !
An idea to avoid a (probably unlikely) cause for this issue: Reflash the non program tabs (data…) with something known good (maybe mbrusa can provide that?). I am not at my bike & my flashing PC.
 
Hi guys, can you help me to connect SW102 screen instead of VLCD5 6PIN, what wires and how to connect? One screen is already burned) In SW102 goes five wires, and with VLCD5 six, I know that the purple does not need to touch, but with the rest of the problem.
I couldn't find any normal instructions on the Internet, I can send you a photo of the burned screen with the place where the wires are soldered, if it helps.
 
Hi guys, can you help me to connect SW102 screen instead of VLCD5 6PIN, what wires and how to connect? One screen is already burned) In SW102 goes five wires, and with VLCD5 six, I know that the purple does not need to touch, but with the rest of the problem.
I couldn't find any normal instructions on the Internet, I can send you a photo of the burned screen with the place where the wires are soldered, if it helps.
Here you can find the wiring of the 6 pin connector of the controller, and this is the wiring of the SW102 (assuming you got one originally meant for a Bafang motor) :
Capture d’écran 2024-08-08 à 01.37.22.png
"Power Lock" is "Vin" on the page I linked.
Note that you must wire Rx of the display to Tx of the controller, and vice versa.
 
Last edited:
Today I made some attempts and can produce error code E09 everytime. My settings are 500W and a speed limit of 26 km/h (sw from 27.7.2024). If I start pedaling and accelerate to the speed limit while the motor is still assisting, and then just keep going and accelerating, the error E09 appears somewhere between 28 km/h and 29 km/h (might be time after assistance is off or speed...i am not sure). This can happen going downhill or on flat terrain (I can't go uphill fast enough without assistance). If I set the level of assistance to 0, the error does not appear, even if I then turn on assistance to 1 at a speed of 28 km/h and accelerate.". In offroad mode with speed limit set to 35km/h, even when pedaling around 39km/h i was not able to reproduce that error. However if i set offroad limit to same speed (26km/h) error apears in the same way as in the street mode.
Best regards!
This is interesting to me since I just installed the tsdz2 with OSF and am getting E09. Have you tried the inverse of setting your max speed higher in street mode to see if that prevents the error? I am looking for a temporary solution now, while I wait on a update that solves it.

Interestingly, I only get E09 early in my ride, after 15 minutes, and a couple of resets I don't seem to get the error anymore. But the motor does seem sluggish when I am not getting the error.
 
Today I made some attempts and can produce error code E09 everytime. My settings are 500W and a speed limit of 26 km/h (sw from 27.7.2024). If I start pedaling and accelerate to the speed limit while the motor is still assisting, and then just keep going and accelerating, the error E09 appears somewhere between 28 km/h and 29 km/h (might be time after assistance is off or speed...i am not sure). This can happen going downhill or on flat terrain (I can't go uphill fast enough without assistance). If I set the level of assistance to 0, the error does not appear, even if I then turn on assistance to 1 at a speed of 28 km/h and accelerate.". In offroad mode with speed limit set to 35km/h, even when pedaling around 39km/h i was not able to reproduce that error. However if i set offroad limit to same speed (26km/h) error apears in the same way as in the street mode.
Best regards!
This is interesting to me since I just installed the tsdz2 with OSF and am getting E09. Have you tried the inverse of setting your max speed higher in street mode to see if that prevents the error? I am looking for a temporary solution now, while I wait on a update that solves it.

Interestingly, I only get E09 early in my ride, after 15 minutes, and a couple of resets I don't seem to get the error anymore. But the motor does seem sluggish when I am not getting the error.
Today I released a new update that should fix the fake E09 error.
https://github.com/emmebrusa/TSDZ2-Smart-EBike-1/archive/refs/heads/master.zip
I am not able to test it at this time, if anyone can try and confirm that it is fine. Thanks.
 
I installed the new version last night and gave it a quick test this morning. I only biked around for about 10 minutes, but I tested the scenarios that cause E09 previously. Everything ran smoothly without error. I will have an opportunity to test it more extensively on Monday. I will come back with more info if I encounter any new issues, otherwise it seems great, thanks for the quick response!

UPDATE: New version worked great! I finally feel like my tsdz2 is the ebike I was looking for.
 
Last edited:
Trust me to get the only display that no one seems to talk about with tsdz2b. I have the EKD01 display with the 2024 version of tsdz2b. Wondering if any version of this firmware will work with it? I've checked the kit is programmable,or at least I dumped the data on it. Uploaded to this post in case it's of any use.
 

Attachments

  • Tsdz2b-2024-36v-250w-firmware.7z
    11.7 KB · Views: 12
.... tsdz2b. I have the EKD01 display with the 2024 version of tsdz2b. Wondering if any version of this firmware will work with it? ....
If that EKD01 display does work with stock Tsdz2B, there should imho no reason that it doesn't with OSF for stock display and Java configurator.
You only have to fiddle with the right display choice in the settings. But I think if you select the 850C the chance is there that the system will work without problems.

But if that EKD01 was purchased separately, this will indeed not work, because the display also needs to be flashed and isn't supported.
 
Last edited:
I have an older TSDZ2 with 8 pin throttle and and old 860 display. I spliced the VLCD5 connector onto the TDSZ2 motor and connected everything with a 1 to 4 bafang adapter. I bought the 860 with the motor and just never did the mod.

With the Java setup do I select 850 for display? Can someone review my ini file?

Just looking for simply town bike, but I use the throttle for take off. I do touring a few time a year with very steep inclines, but run 34t on the rear when this happens, and I'm considering swapping to 42t.

I'm switching to VLCD5 because the motor seems to over heat if I'm full pedaling for 1 hour or when I'm doing mountain climbs. I have had no real issues though and its been 3 years of riding.

I also ordered some cooling fins and internal mods.

Is 10amp 420 watts safe max or am I being too chicken here?


I have a brand new tsdz2b on my other bike.... if this works out I might mod it as well.
 

Attachments

  • 48VTSDZ2.ini
    793 bytes · Views: 2
If that EKD01 display does work with stock Tsdz2B, there should imho no reason that it doesn't with OSF for stock display and Java configurator.
You only have to fiddle with the right display choice in the settings. But I think if you select the 850C the chance is there that the system will work without problems.

But if that EKD01 was purchased separately, this will indeed not work, because the display also needs to be flashed and isn't supported.
Yeah the display came with the motor. Seemed like the best choice at the time as it had a better IP rating vs the others the seller was selling. Was a bit of a pain mind you, the wire on it is extremely short so had to buy an extension 😭

Thanks for clarifying on the display options. I seen them and then thought it was for them only. Will give stock a go and report back so others know it works or not.
 
After many thousands of miles one of my TSDZ2 motors failed and was unrepairable. As it has been at least 4 if not 5 years since I’ve bought a new TSDZ2 or KT-LCD3 (my favourite display), I’m aware that finding a compatible KT-LCD3 display is 50/50 and possibly even the TSDZ2 might not be straightforward.

Plan is to buy a 48v 500w motor complete with an 860C display. It is advertised as OSF which suggests mbrusa’s software might even be in the 860C. Seems ok?

The SW in these machines written by mbrusa turned a sow’s ear into a silk purse.
 
Hmm looks like it mostly works with the EKD01 display. Just the wattage usage is stuck at 504w for all display types other than VLCD5 where it seems to be linked to torque pressure. As in I stand/apply pressure to the peddles the number goes up.

Guess that gives me a chance to fix it if I learn C. Bit of a learning curve vs JavaScript 😭Saying that I could live without it for now.

Not taken the software for a spin yet. I'm sure I'll love it, if so then I might just get a better display anyway.
 
Today I released a new update that should fix the fake E09 error.
https://github.com/emmebrusa/TSDZ2-Smart-EBike-1/archive/refs/heads/master.zip
I am not able to test it at this time, if anyone can try and confirm that it is fine. Thanks.
I have tested on 3 diffrent motors and it works perfect. The new version no longer shows me the E09 error.

However, I noticed that the power limit in watts is not functioning in this version as it did in v20.1C.2 ("Street power limit" or "Battery power max (W)"). I can only achieve the limit by restricting the current for the battery (battery current max (A) ). This is not an issue, but if someone wants to limit the motor's power, they should use the current limit.

Thank you for the quick response, and amazing work!
 
I have tested on 3 diffrent motors and it works perfect. The new version no longer shows me the E09 error.

However, I noticed that the power limit in watts is not functioning in this version as it did in v20.1C.2 ("Street power limit" or "Battery power max (W)"). I can only achieve the limit by restricting the current for the battery (battery current max (A) ). This is not an issue, but if someone wants to limit the motor's power, they should use the current limit.

Thank you for the quick response, and amazing work!
Great, thanks for the feedback.
But especially for reporting the power limit that no longer works.
I saw that there is a bug to fix, today I have a day available to do it.
 
@mbrusa : I lost a little bit track of things: For which displays is this firmware meant to be? For all std. displays (i.e. xh-18) or for special setups?
I am also confused due to the 'strange' file location:

As always: Thanks for all your work here!!!
Yes it is the version for stock displays, VLCD5, VLCD6, XH18, etc.
After the release of version 6-beta-0, some bugs were reported, which were solved by updating the master version several times.
I had not yet defined a new version, I was waiting for positive feedback on the reported bugs.
I think it is time to release the new beta version.

Release Open source firmware TSDZ2-v20.1C.6-beta-1 VLCD5-VLCD6-XH18

p.s. SDCC version 4.4.0 is required.
 
Last edited:

Hi mbrusa,

Thank you for this new version !
But on my computer with the java configurator, compilation fails (with the same settings as beta-0) :

sdcc: Generating code...
ebike_app.c:226: warning 158: overflow in implicit constant conversion
sdcc: Calling assembler...
sdcc: sdasstm8 -plosgffwy ""../bin\ebike_app".asm"
../bin\ebike_app.asm:10812: Error: <r> relocation error
../bin\ebike_app.asm:11745: Error: <r> relocation error
../bin\ebike_app.asm:12169: Error: <r> relocation error
../bin\ebike_app.asm:14215: Error: <r> relocation error
../bin\ebike_app.asm:15436: Error: <r> relocation error
removing ../bin\ebike_app.rel
make: *** [../bin/ebike_app.rel] Error 1
Build error!!
Press any key to continue . . .

I get the same error even if I use the built in default configuration. The previous configurator (beta-0) works fine with the same parameters.
 
Back
Top