• Hello ES! We could use some help to get us past the finish line on building the new knowledgebase for the forum.
    Can you donate? Please see our fundraising page. Thank you!

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

Damn. The VLDC5 resets at 4100 miles! I figured we had 4220 on the bike, so I got ready to unplug the timer when it was close. and next thing I now, it's zero again. So it wasn't an accidental reset.

Oh well. At least I didn't have to run it for 66 hours at a real 62 mph to find out. An all I gotta do is add 4100.


View attachment 378165

@docw009, I forget under what circumstances your VLCD5 reset to zero. On today's ride, my TSDZ2 with LCD3 display passed 4100 miles and did not reset itself.

IMG_2134.jpeg
 
@docw009, I forget under what circumstances your VLCD5 reset to zero. On today's ride, my TSDZ2 with LCD3 display passed 4100 miles and did not reset itself.
The LCD3 has no reset issues that I know about. My problem with them is when a bike falls over, I put a bike in a car, or turn one upside on the handlebars...I get a cracked screen, Probably have broken at least three of them.

I am pretty sure the TSDZ2 controllers don't store the odometer. That's in the display, I believe mbrusa said something about it in this thread.
 
turn one upside on the handlebars...I get a cracked screen,
I modified the handle bar so the only thing I have to do is rotate the mirror horizontal (less than a second) before I flip the bike upside down.
IMG_2137.jpeg

I am pretty sure the TSDZ2 controllers don't store the odometer. That's in the display, I believe mbrusa said something about it in this thread.
I do recall mbrusa say odometer data is stored in the display.
 
Hello, I'm new to this forum, although I've already tried to find solutions on it.
I have a TSDZ2B (with LM35 installed) and an 860C, both flashed with the latest version of OSF (Release Firmware open source TSDZ2-v20.1C.5-update-2-860C · emmebrusa/TSDZ2-Smart-EBike-860C), I flashed the 860C with version V13 because mine is a 1.5G04A60 (see the version in the image of the 860C); I chose this version because the 860C’s original firmware showed “Hardware Version P1.3 / Software Version V8.6 / Date: 08/29/2025.” So I guess that OSF V13 still works on 2026 displays.

I was able to flash the bin file using APT Burn Tools, then I changed some important settings in the menu (battery voltage / cut-off threshold / maximum current, etc.). But when I connect the display to my motor and battery and press the power button, the display turns on and then turns off instantly.

Note that I believe that to flash the OSF onto the screen, I had to connect the bootloader's RX pin to the screen's RX pin and do the same for the TX pins (no pin swapping), because with pin swapping, the flash didn't work. (I used this wiki for the pin mapping I have an 8-pin (motor) to 3-pin (throttle) and 6-pin (display) adapter : Wire 860C 850C to TSDZ2)

Do you have any ideas from where it could come from ? Battery seems fine (new + I tested voltage directly from it).

Thanks in advance.
 

Attachments

  • 860C Version.jpg
    860C Version.jpg
    573 KB · Views: 4
Last edited:
Hi, I have the same display as you. I can confirm that firmware version 13 works perfectly with this display.
Did you handle the wiring modifications between the display and the motor yourself?
What is the original connector on the 860C? Is it the green 5-pin one?
The problem likely stems from the wiring between the motor and the display.
IMG_20260719_191339864_HDR.jpg
 
Hi, I have the same display as you. I can confirm that firmware version 13 works perfectly with this display.
Did you handle the wiring modifications between the display and the motor yourself?
What is the original connector on the 860C? Is it the green 5-pin one?
The problem likely stems from the wiring between the motor and the display.
View attachment 390659
Hello, thanks for this info, the only things I did myself is the temp sensor I added. I got a kit from PSWPower with TSDZ2B + 860C. I have 2 cables from the 860C the female green one (5 pin) is the cable that connects to the control buttons, and there is another one (a male 5 pin but no color) that connects to the adapter. The adapter is a 3 pin (throttle) + 5 pin (screen) to 8 pin (motor) (see image).

Is there a way to test the wiring between motor and display ?adapter.jpg
 
Last edited:
Hello, I'm back a few days later. I tried reinstalling the firmware on the 860C, but it didn't make anything.
I also measured the voltage from the 5 V output to the temperature sensor, it rises to 4.2 V when I press the button, then drops back down to 0 V. I tried disconnecting the temperature sensor, but still no change.

I’m thinking of buying another controller, but I’d like to be sure about the source of the problem before doing anything. Do you have any other ideas?
 
Old question I am currently using the VLCD13 and DZ41 displays, if I program the OSF to give me legal street mode and off road mode options, will it work with these displays. The next question is how, have never got a grip on switching between the modes. If not which display(s) will it work on, 860C?
 
Old question I am currently using the VLCD13 and DZ41 displays, if I program the OSF to give me legal street mode and off road mode options, will it work with these displays. The next question is how, have never got a grip on switching between the modes. If not which display(s) will it work on, 860C?
For VLCD13 and DZ41 displays, I guess your using mbrusa's OSF, there is a paragraph for street / off road mod :


For 860C I also read the manual and if my memory isn't broken, you can switch between those two mods and even add a shortcut ?

Same, try to find the info on the manual to be sure you can easily switch between those two mods.
 
  • Like
Reactions: dgc
Just reprogrammed the controller and the VLCD13 is now displaying error 1, 2, 3 and 4, I was using a later version of the OSF, no problem, will reload the previous version back in which I have used on all my bikes, which has worked for years, what's the phrase, if it's not broken don't fix it. Ho hum. May look at the 860C manual as I have already programmed one and have a display cable that suits it.
 
Hi guys

Has anyone had to replace the speed sensor connector (from the controller) and can tell me which color changes to which if the color is different?

Controller:
White
Green
Orange
Brown
Burgundy
Black

Sensor extension (connector)

Yellow
Green
Red
Brown
Orange
Black
 
Hi guys

Has anyone had to replace the speed sensor connector (from the controller) and can tell me which color changes to which if the color is different?

Controller:
White
Green
Orange
Brown
Burgundy
Black

Sensor extension (connector)

Yellow
Green
Red
Brown
Orange
Black
I don't have the direct answer but if you have a multimeter I guess you could try a continuity test between the pin of the connector and the cable that goes out of this new connector, then you use the pin out on this link, but the pin out isn't fully helpful at first glance

 
Subject: Power drop-off at 100% PWM, independent of wheel speed — ERPS ceiling theory, looking for inputHi all,

Greetings,

Looking for feedback on a power drop-off I've been chasing on my TSDZ2 OSF (v20.1C.5-update-2, 860C display). Posting my diagnostic steps in case others have hit this, and to see if anyone (especially @mbrusa or @dzid26) can confirm or correct my read.

Symptom: In Power Assist, once motor PWM hits 100%, power drops off noticeably — even though battery current stays well under my configured max. Happens at pedal cadence in the 70s–90s RPM depending on gear.

Ruled out:

  • Battery current cap — well under max when it happens
  • Wheel speed limit — drop-off is independent of wheel speed, doesn't correlate with a fixed km/h
  • Field weakening — toggling on/off made zero difference
  • Voltage sag — only ~0.2V under load
Working theory: At the point of drop-off, raw ERPS reads ~400–430. MOTOR_SPEED_FIELD_WEAKENING_MIN in main.h is set to 490 ERPS — so field weakening can't engage yet at the point where PWM saturates and power starts falling. That would explain both the drop-off and why toggling FW did nothing (the code path was never being reached).

I also checked whether the "Cut PWM above speed limit (by dzid26)" changelog item might be related — traced it to the actual commit, and it's a wheel-speed/cadence smoothing fix, unrelated to this.

Question: Does lowering MOTOR_SPEED_FIELD_WEAKENING_MIN (toward 400–420) sound reasonable to test, or is 490 set for a reason I'm missing?

Setup: 48V, cooling mods installed, urban paved trails, 5 assist levels, max deceleration 100 (IGH).

Thanks — happy to share display logs if useful.

On a separate note — huge thanks to mbrusa and everyone who's contributed to this project over the years. This firmware has completely transformed what these motors are capable of, and threads like this one are a big part of why. Really appreciate the work.
 
I just took the plunche, because the stock firmware was way to powerfull in LVL1 for my city bike. I really tuned down the powers and accelleration. Now it really feels like "ECO" in LVL 1. So far I am pleased with the OSF and emmebrusa files with the EKD01. Only some ghost speed when powering on for a few seconds. I have the latest stock N22 firmware in the EDK01
Update: I tuned it even more and installed the throttle. Pretty happy still, although there is one thing that is bothering me. The speedometer on the ekd01 is 2km off. I set the correct circumference (2180mm measured it by drawing chalk on the ground and make a full revolution and measuring from the chalk). Also changed the diameter in the ekd01 but still the speed is +/- 2 km to fast on the display. The gps says 23 km/h and the speedometer says 25 km/h. Seems like anything I set on the ekd01 display is not set in the end.... Anybody have a solution for this?
 
The speedometer on the ekd01 is 2km off. I set the correct circumference (2180mm measured it by drawing chalk on the ground and make a full revolution and measuring from the chalk).
Did you do the roll out test with weight on the bike? Tire compresses compared to doing it static, and reported speed can be a few percent off,
 
We are all into using the OSF to reprogram the TSDZ2(B) controllers, but can I download a copy the OSF that I have current running on my e-bike if so how?
 
We are all into using the OSF to reprogram the TSDZ2(B) controllers, but can I download a copy the OSF that I have current running on my e-bike if so how?

We can extract the firmware files using the visual programmer tool. Those can be written into another motor. This includes the original factory firmware, but one has to make sure the device type. i.e. STM8S105x4 (original) or STM8S105x6 (osf) is correct. I don't know if it's possible for us to recover the configuration data used in an OSF write, I bet mbrusa could inspect the files and identify the specific numbers.
 
Back
Top