• 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!

TSDZ8 OSF (open source firmware)

It's possible they never worked properly because the Engine Temperature menu wasn't linked to throttle changes. When you fixed the throttle setting link in the code, an error was discovered. I actually noticed similar behavior as the guys above.
 
This is strange because I did not change the code about throttle between version 32 and 33 (for VLCD5 versions).
Changes were related only on the ADC torque (offset and max).
About throttle.
If I set min on 0 - in the technical I got value 35 (motor is going without pushing the throttle). If set 35 - I got value 9 in technical, if set 40 - value 3 in technical, if set 45 - 0 and working well. All without pushing the throttle.

It seems that the value in the technical menu is depends on min value setted in temperature menu. I haven't checked what value I get after pressing the throttle all the way down with the min. setting of 45. Will it be 255? I'll check.

Overall, the throttle works at full range, so it's a nice improvement. Be careful when setting the parameters – if setting them to 0 - after activating off-road mode, the bike propels itself. I saved myself by switching to street mode.

edit:
If I set the max value to 255, I get 163 in the tech menu with the throttle fully depressed. After changing the max value to 200, I get 222 in the tech menu with the throttle fully depressed.
 
Last edited:
About throttle.
If I set min on 0 - in the technical I got value 35 (motor is going without pushing the throttle). If set 35 - I got value 9 in technical, if set 40 - value 3 in technical, if set 45 - 0 and working well. All without pushing the throttle.

It seems that the value in the technical menu is depends on min value setted in temperature menu. I haven't checked what value I get after pressing the throttle all the way down with the min. setting of 45. Will it be 255? I'll check.

Overall, the throttle works at full range, so it's a nice improvement. Be careful when setting the parameters – if setting them to 0 - after activating off-road mode, the bike propels itself. I saved myself by switching to street mode.
About throttle.
If I set min on 0 - in the technical I got value 35 (motor is going without pushing the throttle). If set 35 - I got value 9 in technical, if set 40 - value 3 in technical, if set 45 - 0 and working well. All without pushing the throttle.

It seems that the value in the technical menu is depends on min value setted in temperature menu. I haven't checked what value I get after pressing the throttle all the way down with the min. setting of 45. Will it be 255? I'll check.

Overall, the throttle works at full range, so it's a nice improvement. Be careful when setting the parameters – if setting them to 0 - after activating off-road mode, the bike propels itself. I saved myself by switching to street mode.

edit:
If I set the max value to 255, I get 163 in the tech menu with the throttle fully depressed. After changing the max value to 200, I get 222 in the tech menu with the throttle fully depressed.
In menu Technical, there are 2 info about throttle:
- ADC throttle sensor : this is the raw value provided by the sensor. Even if the range is 0/255, this value should normally always be greater than 0 and lower than 255. The values in this field (min + a small margin and max) have to be filled as min and max in motor temperature menu.
- trottle sensor : this is the value used inside OSF to apply throttle. It is based on the actual ADC throttle value but it is remapped between 0 and 255 based on the min and max values filled in motor temperature. If min and max are correct, this throttle value will vary from 0 (min) up to 255(max).
This is the result of a change in one of the latest version(s) of OSF. Previously, the min and max values were hardcoded and so where not correct for all model of throttle sensor.
 
Last edited:
In menu Technical, there are 2 info about throttle:
- ADC throttle sensor : this is the raw value provided by the sensor. Even if the range is 0/255, this value should normally always be greater than 0 and lower than 255. The values in this field (min + a small margin and max) have to be filled as min and max in motor temperature menu.
- trottle sensor : this is the value used inside OSF to apply throttle. It is based on the actual ADC throttle value but it is remapped between 0 and 255 based on the min and max values filled in motor temperature. If min and max are correct, this throttle value will vary from 0 (min) up to 255(max).
This is the result of a change in one of the latest version(s) of OSF. Previously, the min and max values were hardcoded and so where not correct for all model of throttle sensor.
Only value in Throttle sensor are changing, Adc Throttle all time showing 0. If I full pushed Throttle and motor is running - still ADC shows 0.
If I remember well, in older version ADC shows value (but throttle could not be parameterized correctly).
 
Hi everyone,

I know this forum is mainly about OSF for the TSDZ8, but I’d like to ask if anyone has already been thinking about or testing the TSDZ16 controller in relation to OSF. Do you think it will be another challenge to make this motor customizable to our own preferences?

Also, will flashing the controller require the same J-Link V9 module, or do you see it working differently?

What’s your opinion on this?
 
Only value in Throttle sensor are changing, Adc Throttle all time showing 0. If I full pushed Throttle and motor is running - still ADC shows 0.
If I remember well, in older version ADC shows value (but throttle could not be parameterized correctly).
This is strange. I do not find a bug in OSF. I checked the code and Trottle sensor is always calculated based on ADC throttle sensor. So if Throttle sensor changes, it means that ADC throttle also changes. Furthermore, OSF fill always ADC throttle in the frame that is sent to the display (even if motor temperature does not activate throttle) so ADC throttle should never be 0 (when a throttle sensor is connected to the controller)

Edit : I made a test and indeed ADC throttle is always 0. Perhaps the issue is in the 860C display firmware. I will ask mbrusa that maintains it.
 
Last edited:
today I downloaded te software from Github.
I looked at the software and made a hex file, but some things are not clear to me. I stayed close to the given settings, but raised a few a bit.
Hopefully it works, but I will test this later today.
Is there someone that knows all the settings and wants to make something so every setting is explained?

An other question.
I changed the wh of the battery to 2300. That is my small battery, but I have also a 2700wh. Does it mater as I connect the bigger one? It is probably only for the battery indicator or not?
Both are 48v.

Greetings Emiel
 
I changed the wh of the battery to 2300. That is my small battery, but I have also a 2700wh
2,3kWh small? I thought my 1,3kWh is kinda big but I guess to each their own. What's your typical range with the `small` and the big battery?
 
2,3kWh small? I thought my 1,3kWh is kinda big but I guess to each their own. What's your typical range with the `small` and the big battery?
Hard to say. I have ride only 2 long trips with it and the 150km and all in mode 5. About 55% left in the battery. But the last ride was about 110km and I used almost the same. But as i set it in mode 3, I can ride a lot longer. But I never looked at it. I have it, so I can make long rides without to stop to charge my battery as I o on holiday.
It works better than solar panels and no need to charge my batteries. I can do hat as I arrive ad the campsite. Never had to safe battery and always can go full power if needed. But that was with a 1000w hub motor.
 
Hi, I switched from the edk01 display to the sw102 osf display to make testing easier. I loaded the Spider 33.hex version. The motor is mounted on a mountain bike that I use for mountain trails. Today I did a 15 km ride with an altitude difference of 1000 m. Uphill, the motor performs well with regular assistance proportional to the pressure on the pedals. Even if it doesn't reach the power of the original firmware, for my use it works well and I'm satisfied. The only thing is that error 07 (motor overcurrent) came out three times and it happened when on a steep section, to overcome an obstacle, I applied strong pressure on the pedal. After the first time, I increased the overcurrent error relay to 4, but the problem, in a couple of similar situations, occurred again. I don't understand what's causing it because I rode a 1km stretch with a steep incline, and the motor worked fine. As I said, the problem seems to occur when you apply strong, sudden pressure on the pedal. Sorry for the English, but you're using Google Translate. Thanks.
 
Hi, I switched from the edk01 display to the sw102 osf display to make testing easier. I loaded the Spider 33.hex version. The motor is mounted on a mountain bike that I use for mountain trails. Today I did a 15 km ride with an altitude difference of 1000 m. Uphill, the motor performs well with regular assistance proportional to the pressure on the pedals. Even if it doesn't reach the power of the original firmware, for my use it works well and I'm satisfied. The only thing is that error 07 (motor overcurrent) came out three times and it happened when on a steep section, to overcome an obstacle, I applied strong pressure on the pedal. After the first time, I increased the overcurrent error relay to 4, but the problem, in a couple of similar situations, occurred again. I don't understand what's causing it because I rode a 1km stretch with a steep incline, and the motor worked fine. As I said, the problem seems to occur when you apply strong, sudden pressure on the pedal. Sorry for the English, but you're using Google Translate. Thanks.
Check Max current in Battery menu. You have to set max value.
 
Check Max current in Battery menu. You have to set max value.
I'm not sure what you mean. My settings are: bike (power limit 900), battery (max current 20 A), motor (max power 800). So you recommend increasing the max current to the maximum value the battery's BMS can deliver? I read in the manual that the current used is the lower value between the max current and the ratio (max power/motor voltage), and in my case 800/48 = 16.7 A.
 
For better understanding you can set current value e.g. for 5 Amps without changing power settings. And try riding a bike - error 07 will appear after pressing the pedal harder.
 
Battery settings are now set. That is now clear for me. Thank you.

Now i look ad the second tab and I see.
Power assist mode, Torque assist mode, Cadence assist mode and eMTB assist mode.
Power assist mode tells me % Human power max value 500
The Torque and Cadence only max value 254
eMTB value between 21 and 254.

I thought power assist mode would give me a % of what i put in. So as i give 100 w, the motor will give 50% of that as i put the value on 50.
But then i see the torque and cadence assist modes. That made me think that i can split that force between cadence, so how fast i pedal and by the force i give.
So i could lower the Torque and make the cadence higher and the motor will feel more like a Bafang. Where as i lower the Cadence and increase the torque, it feels more like a natural bike. So more input from me, gives more from the motor.

Or am I completely wrong?

But then the eMTB mode is left. So I think that i am completely thinking wrong.

One more thing.
As I use defoult settings tsdz8, the motor power max value goes to 500. I have set it to 1100, or is it better to set it lower? I noticed today that my motor gives over 1000w and I didn't flash the firmware I made in the Configurator.

I turned on, startup assist.

Wheel surcumfeerence I used the 26 inch number, but I am thinking to lower that a tiny bit from 2050 to 2020 and see what it does with my speed on the display. I now have a higher speed on my display than on my gps and as i ride 52 tot 53kmh, I see about 50 to 51 on my gps. Or is this a set value and must I follow that 2050?
 
Learning more and more. I just found out that the different modes can be selected in the pulldown menu.
Next thing is testing.
I did noting with the calibration settings, but i will do that as i start testing.
Also going to test the different modes to see what i like the most.
 
i tried this osf out recently in eMTB mode and it does not work whatsoever, lots of error 7's for days, regardless of settings

it was easy to reproduce by using high settings like 1000W+ max power, and 21A + battery current, in eMTB mode when I go up a hill and pedal hard, error 7

i switched to hybrid mode, i got a couple error 7's but only 2 instances of the error over 27 miles, I was pedaling hard and hit a rock one time, and the other time i think i shifted it under load into a higher gear when i was throttling. SO, It seems like a sudden shock load on the motor can cause it to throw an error 7. (even when the battery amps and max power watts shouldn't allow it to get anywhere near the 31amp hardcoded max value that triggers the error 7)

I'm also not sure my TSDZ8 motor that I got in a kit from Powallon is measuring the current properly with the OSF?? not sure if there are different shunt resistors in different batches of motors?? Or what that might be related to? but when I configure it to 1100W, it will do about 900W max on my watt meter. The peak amps are always 2A or 3A less on my amp meter than I set in the configurator. It seems like it throws the error 7 because the firmware THINKS the amps are above 31Amps, but it seems like the measurement itself might be faulty, because my amp meter never shows anywhere near 31 amps, I think the most i have seen on my watt meter with OSF was like 1000W peak.

It seems like there is potentially a bug with the "TSDZ8" motor dropdown option in the java configurator. When I start up the configurator, and load my settings which were previously saved for TSDZ8 motor type, it always reverts back to TSDZ2 motor type in the dropdown for some reason, like the value isn't being saved, or the dropdown is buggy in some way. I havent actually double checked in the file to see what it's saving but i always select TSDZ8 and save it like that. And it reverts back to TSDZ2 for some reason
 
In OSF for the 860C display, I’ve experienced error 07 several times, usually during sudden acceleration or when there’s a power surge while climbing a hill. In those cases, the motor cuts out completely, and the bike comes to a stop.
 
"Hello. I'm having a really hard time with this.

I'm trying to run the JavaConfigurator.jar file with Java to configure the settings for my environment and then compile it into a hex file. But for some reason, the file isn't being created correctly. When it does get created, it's only a 3KB file.

It's really difficult because I'm jumping into this without knowing much.

I managed to flash my Bafang UART type display (from B02N-U to EKD01 UART), and the screen now appears without any errors. However, now I'm stuck and can't create the HEX file.

Could you please help me? What am I missing? My motor is a TSDZ8."
 
"Hello. I'm having a really hard time with this.

I'm trying to run the JavaConfigurator.jar file with Java to configure the settings for my environment and then compile it into a hex file. But for some reason, the file isn't being created correctly. When it does get created, it's only a 3KB file.

It's really difficult because I'm jumping into this without knowing much.

I managed to flash my Bafang UART type display (from B02N-U to EKD01 UART), and the screen now appears without any errors. However, now I'm stuck and can't create the HEX file.

Could you please help me? What am I missing? My motor is a TSDZ8."

you flash the OSF HEX file with production programming to clear the flash,

then flash the configuration file on top of it with manual programming, So it saves the configuration and retains the osf

Its normal for the configuration HEX file to only be 3KB
 
In OSF for the 860C display, I’ve experience error 07 several times, usually during sudden acceleration or when there’s a power surge while climbing a hill. In those cases, the motor cuts out completely, and the bike comes to a stop.
I had the same problem bit increasing overcurrent delay helped
 
you flash the OSF HEX file with production programming to clear the flash,

then flash the configuration file on top of it with manual programming, So it saves the configuration and retains the osf

Its normal for the configuration HEX file to only be 3KB
Thank you very much for your answers. I see how it's done now. I'm embarrassed by my lack of knowledge.

So, does this mean I should first flash the file OSF_TSDZ8_VLCD5_KATANA_V00_01_33.hex, and then flash the TSDZ8_config.hex file over it?

I have updated the display firmware again with the file EKD01_UART_TSE_N22_bin. However, it is still not working. The main screen shows error code E02, but when I check the error list in the menu, errors E00 through E04 are all displayed.

What should I do now? Please help.

Thank you.
 
Back
Top