New TSDZ2 Open Source firmware with Bluetooth interface

Last week my VLCD5 display got stolen, I bought another VLCD5 display (2nd hand) but it's not plug and play.

My working setup was: TSDZ2 36V, VLCD5 6pin. VLCD5 firmware 3.7
I bought a VLCD5 48V 8 Pin. VLCD5 firmware 5.0

I was thinking I could just hotswap the displays, since they have the same 6pin connector, but that doesn't work for me, the motor doesn't give support:
The bike powers on, and I'm able to navigate through the VLCD5 menu.
The battery indication is wrong; While my battery is 95% full it only shows 1 bar.
There is no support, the motor is off (feels like it, no noise etc.)

- Is the VLCD5 not swappable between 36V 6pin and 48V 8pin?
- Is the difference in firmware causing the issue?
- Is it normal that 1 of the pogo pins isn't connected?

I opened my display and the connector, and noticed that the first pogo pin is not connected to the cable (attached image:"the pad left to the green wire).

I also attached a picture of the VLCD5 pcb, and the pinout of the 48V 8 pin connector (female).


I hope you guys know more.
 

Attachments

  • IMG_20230815_180000.jpg
    IMG_20230815_180000.jpg
    174.9 KB · Views: 28
  • IMG_20230815_185621.jpg
    IMG_20230815_185621.jpg
    189.3 KB · Views: 28
  • Untitled.png
    Untitled.png
    107.7 KB · Views: 28
Last edited:
Hello everyone,
currently i'm running the bluetooth version of the casainho's mod, but i would like to try the mspider one.
Someone has a tsdz2-esp32 pcb to sell? I'm from italy!
Is it possible to use the temperature sensor without plugging it to the esp32 pcb and leaving it plugged to the throttle slot on motor controller?
Thank you!!!
 
temperature sensor without plugging it to the esp32 pcb and leaving it plugged to the throttle slot on motor controller?

Yes, you can leave it connected to the throttle input (can be selected within the android app).
 
Is also possible to not use a screen?

No, you need the display. First of all for turning the system on. You could use a switch for that. But you had to change the software too.
(I made it completely different, use ESP32 boards with display.)
 
No, you need the display. First of all for turning the system on. You could use a switch for that. But you had to change the software too.
(I made it completely different, use ESP32 boards with display.)
Ah ok, thank you so much!
 
Hi,
I have been looking into this project but until reading this forum I didn't realise the firmware was different from the main open source firmware for the TSDZ2.
I have now collected all the bits together to carry out the modification but I am using the hybrid mode from the main OSF as my daily driver.
On closer inspection I can't see this mode listed on the esp32 mode wiki.
Can anyone advise me if this mode is available on the esp32 firmware? And whether there are any other major differences between the firmware versions.
I have carried out a torque sensor calibration on OSF is this translatable to the ESP firmware?
Just want to get my head around the differences before I actually slice and dice!

Thanks in advance for anyone's input.
 
Hi, I just connected my 8-pin set with pcb v4 for the first time (with vcld5 display), and I installed the temperature sensor. I uploaded tsdz2- v16.hex to the controller to pcb TSDZ2-ESP32-Mainv1.2.1.zip, switched it and programmed it in option byte to enabled. Generally, everything works, app works, but unfortunately when I go to update, both in tsdz2 and esp32, I get the error "permission request failed ota cannot be done" what am I doing wrong or what should I change now? I also have a second problem, it shows a very high speed, e.g. 120 km/h and jumps to e.g. 60/99 km/h even though I drive about 25-30...
 
Hi, I just connected my 8-pin set with pcb v4 for the first time (with vcld5 display), and I installed the temperature sensor. I uploaded tsdz2- v16.hex to the controller to pcb TSDZ2-ESP32-Mainv1.2.1.zip, switched it and programmed it in option byte to enabled. Generally, everything works, app works, but unfortunately when I go to update, both in tsdz2 and esp32, I get the error "permission request failed ota cannot be done" what am I doing wrong or what should I change now? I also have a second problem, it shows a very high speed, e.g. 120 km/h and jumps to e.g. 60/99 km/h even though I drive about 25-30...
In the last Android apk the OTA update is broken.
Revert to 2.1.12 version to do the OTA update, then you can return to the last version (2.2.0).
I have already a new Android version with the bug fixed and i will publish the new apk on the github project page
About the speed problem, probably the sensor and the magnet are too close or too far.
 
In the last Android apk the OTA update is broken.
Revert to 2.1.12 version to do the OTA update, then you can return to the last version (2.2.0).
I have already a new Android version with the bug fixed and i will publish the new apk on the github project page
About the speed problem, probably the sensor and the magnet are too close
 
Hi, I've been doing alot of reading over the past few weeks, I've just registered and this is my first post on ES.
I started off reading the main TSDZ2 thread and waded through the first 130 or so pages, I then saw Mbrusa's thread and via that thread found this one and have read all 19 pages, I thank you for keeping this thread tidy it is appreciated.

This Android app version of the OSF is the best solution for myself, however, before ordering a motor and parts I'd appreciate some confirmation on a couple of matters that are brought up pretty frequently and so I apologise to those who may find it yawn worthy.

A high cadence ability is pretty high on my 'Would Like' list and it was always my intention to run a 36V motor with a 48V battery to get an increase in RPM(ability), I'm happy to sacrifice a little power for this increase in RPM. With the refinements made to the OSF and in particular the 'field weakening' to increase RPM's is there still an advantage to overvolting the 36V motor, or is the 48V motor just as suitable for an RPM increase? I should mention that I do not plan to use 52V batteries.

Second matter is displays, ideally I'd like an SW102, these are now available from suppliers already flashed for TSDZ2 does this mean they are now suitable for use with this Firmware, or is it limited to the VLCD5?
 
Hi, I've been doing alot of reading over the past few weeks, I've just registered and this is my first post on ES.
I started off reading the main TSDZ2 thread and waded through the first 130 or so pages, I then saw Mbrusa's thread and via that thread found this one and have read all 19 pages, I thank you for keeping this thread tidy it is appreciated.

This Android app version of the OSF is the best solution for myself, however, before ordering a motor and parts I'd appreciate some confirmation on a couple of matters that are brought up pretty frequently and so I apologise to those who may find it yawn worthy.

A high cadence ability is pretty high on my 'Would Like' list and it was always my intention to run a 36V motor with a 48V battery to get an increase in RPM(ability), I'm happy to sacrifice a little power for this increase in RPM. With the refinements made to the OSF and in particular the 'field weakening' to increase RPM's is there still an advantage to overvolting the 36V motor, or is the 48V motor just as suitable for an RPM increase? I should mention that I do not plan to use 52V batteries.

Second matter is displays, ideally I'd like an SW102, these are now available from suppliers already flashed for TSDZ2 does this mean they are now suitable for use with this Firmware, or is it limited to the VLCD5?
For high cadence, in my opinion, the best solution is a 36v motor with 48v battery. In this configuration the motor will be able to provide high power even at high cadence with better efficiency than a motor with a standard battery of the same voltage using field weakening.

This firmware uses the OEM protocol for the display, and if this SW102 works with the OEM firmware it should also work with this firmware.
 
Last edited:
For high cadence, in my opinion, the best solution is a 36v motor with 48v battery. In this configuration the motor will be able to provide high power even at high cadence with better efficiency than a motor with a standard battery of the same voltage using field weakening.

This firmware uses the OEM protocol for the display, and if this SW102 works with the OEM firmware it should also work with this firmware.
Thanks you for your opinion, its exactly what I was after, I shall give the SW102 a try and hope it works and live with the VLCD5 if it does not.
Thanks for all the effort you and anyone else has put in to this project.
 
WOW
I had the cards made in March 2021 then I didn't find the time to assemble everything
Now that I'm taking my bike back to go to work I've rediscovered the project and decided to assemble everything.
Really great project.
I've only had a couple of problems, I'll report them for reference.
1) The voltage of my programmer for the ESP32 is too low, so after installing the FW I had to use an external power supply to check the correct functioning of the board via serial.
2) I made a mistake connecting the RX/TX cables between the LCD and ESP32, it worked but the app showed the red triangle indicating connection problems with the LCD, with the cables reversed everything is ok

Great mspider65!!!!
 
Last week my VLCD5 display got stolen, I bought another VLCD5 display (2nd hand) but it's not plug and play.

My working setup was: TSDZ2 36V, VLCD5 6pin. VLCD5 firmware 3.7
I bought a VLCD5 48V 8 Pin. VLCD5 firmware 5.0

I was thinking I could just hotswap the displays, since they have the same 6pin connector, but that doesn't work for me, the motor doesn't give support:
The bike powers on, and I'm able to navigate through the VLCD5 menu.
The battery indication is wrong; While my battery is 95% full it only shows 1 bar.
There is no support, the motor is off (feels like it, no noise etc.)

- Is the VLCD5 not swappable between 36V 6pin and 48V 8pin?
- Is the difference in firmware causing the issue?
- Is it normal that 1 of the pogo pins isn't connected?

I opened my display and the connector, and noticed that the first pogo pin is not connected to the cable (attached image:"the pad left to the green wire).

I also attached a picture of the VLCD5 pcb, and the pinout of the 48V 8 pin connector (female).


I hope you guys know more.
But you ave installed the ESP32 board + custom fw ?
In case, have you any message on android app ?
The display is not specific for voltage supply, only one model
 
Just a question
After switching on, on the Android app I have the "legal" icon active
even though on the XH18 display, the limit is set at 45Km/h
If I override via app, the icon only turns gray after I select "LCD master",
the other options don't work.
After this operation, all other state changes work correctly.
 
Yes
My adapter is an FT232 by DSD TECH, clear plastic case
There is a mod to resolve the problem ? Maybe a cap on 3.3V line out ?
 
Ok, not fixed but note the cause

I added capacitors from 47microFarad to 4700microFarad but when the antenna is connected the "Brownout detector has been activated" loop still starts

Without the antenna everything seems fine

FT232 mod.jpeg
 
Last edited:
Now, after I have already mounted one, closed the engine and checked that everything works,
I am programming another ESP32 board for another engine and I am thinking
that perhaps it could be useful to also have the serial cables exit the engine case,
in order to being able to debug without having to reopen anything
 
My adapter is an FT232 by DSD TECH, clear plastic case
There is a mod to resolve the problem ? Maybe a cap on 3.3V line out ?

That does not really help. According to the FT232 datasheet only 50mA can be drawn - which is not enough for a save ESP32 supply.
 
Just got round to ordering the PCB's from PCBway, the newest V4 update version. they have come back to me with a query as follows;

After checking your file, we found that there is via on pad in picture showing, may I know whether we
should fill with resin or not
1. Fill with resin, the cost of pcb will increase and it will be good for assembly
2.Without resin, when you solder SMD components on pad, then paster will be
easy leak out from pad


I have said to go ahead with resin.
Not confirmed yet, so I thought I would check with a grown up.
 
I wanted to try to set the "torque adc offset fix" parameter which,
from what I understand, serves to influence the attack sensitivity
of the engine based on the values read by the torque sensor.
I understood that a negative value would sensitize it and a positive
value would delay it, but only positive values can be entered in the app.
Has anyone tried ?

1698677377150.png

Page 3 of this config manual:
 
Back
Top