feketehegyi
100 W
- Joined
- Jul 11, 2018
- Messages
- 117
Trying out my Android app as LCD Display, connected via Bluetooth to Motor Controller.
[youtube]OW_DBxg3iwI[/youtube]
[youtube]OW_DBxg3iwI[/youtube]
I have another idea: I think silicon ics have operation temperature up to about 125c. And 8nside the motor, we have 3 of them, the hall sensors!!! So, maybe the have the functionality to detect high temp and disable their outputs and on that way the hall sensor signals would have an invalid sequence and the firmware detects by simple not driving the mosfets on that situation...AZUR said:Maybe someone who has contacts with the TSDZ2 factory can ask if the motor (or controller) has any internal temperature sensors.
casainho said:Yes, I now want to do what other systems implement: motor temperature reading and motor power reducing after certain temperature.pawepie said:the LCD3 is able to read temperature values...though I don't know how exactly. Perhaps adding in a temperature probe and cutting off/reducing the maximum power when it reaches a certain level?
I have a tank thermometer sensor I affixed into the motor casing with silicone caulk, but I haven't been cranking up the amps so haven't been monitoring the temperature for a while. It's a very manual process though (will attach photos when I am back home)
I thought the motor temperature was used because of nylon gears but now I understand that is also very important to avoid expressive demagnetization.
Also, I wounder if my nylon gear did fail because also of higher temperature - I remember I was riding at max power for long time when it failed.
I would like to seee your photos. I need to find a sensor and glue to the motor. Also maybe connecting to some free header pin on the motor controller (in the limit, to throttle connection).
So, motor controller can reduce the power as temperature increases. On LCD3 we should se the temperature as also define the start and end value of temperature, like: 65 degrees at start temperature and 75 at end value, where at middle (linear ramp) 70c, the power to motor would be cut in half/50%.
feketehegyi said:Trying out my Android app as LCD Display, connected via Bluetooth to Motor Controller.
This is very impressive !feketehegyi said:Trying out my Android app as LCD Display, connected via Bluetooth to Motor Controller...
That may work, ..and i have another idea.casainho said:I have another idea: I think silicon ics have operation temperature up to about 125c. And 8nside the motor, we have 3 of them, the hall sensors!!! So, maybe the have the functionality to detect high temp and disable their outputs and on that way the hall sensor signals would have an invalid sequence and the firmware detects by simple not driving the mosfets on that situation...
jbalat said:Thats pretty cool, can you control any of the settings on the motor like max amps, HVC and LVC ?
It uses currently the factory stock firmware. You only need to make/buy a male connector and put it into the LCD cable connector coming from the motor. I switch on the motor by shorting two pins there, and using for the communication the RX, TX, GND.Hillhater said:This is very impressive !
A few questions if i may..
What firmware/software mods and settings are needed to use this app.
How is the blutooth module connected to the controller
Could this be extended to log data for later download or analysis ? (Distance, speed, amps volts etc).
Thanks again.
HH
Thank you! Well, yes that's the target.Hillhater said:Excellent Feketehegyl !
So once you have the BT module, the Arduino and laptop are eliminated. ?
Is it possible to pick up the connection from the controller via the spare leg of the "Y" connector on the speed sensor cable (i believe all the pin connections are replicated from the controller )
And would we then be able to retain the original display/controls ?![]()
But did you also say this could be a hard wire UsB link, direct from the controller connection, to a smart phone... ( or tablet ?)
Better to be connected to the motor controller, because it is the one that will control the motor current that is the source for the heating. Also the temperature value can flow to LCD3 just like all other data.pawepie said:I haven't looked at the the LCD3 schematic for any further info..but potentially the internal one could also be extended to the casing.
feketehegyi said:It uses currently the factory stock firmware. You only need to make/buy a male connector and put it into the LCD cable connector coming from the motor. I switch on the motor by shorting two pins there, and using for the communication the RX, TX, GND.Hillhater said:This is very impressive !
A few questions if i may..
What firmware/software mods and settings are needed to use this app.
How is the blutooth module connected to the controller
Could this be extended to log data for later download or analysis ? (Distance, speed, amps volts etc).
Thanks again.
HH
As my ordered HC05 BT module has not arrived yet I use the following workaround for Bluetooth communication
(RX, TX, GND) goes into Arduino -> Arduino is connected to my Laptop -> Laptop makes exchange on Arduino's serial with its Bluetooth's channel.
> Android phone is connected to laptop's Bluetooth.
Yes, it is absolutely the best way to log data - however that's not implemented yet.
When I said an idea, I mean an idea of how TSDZ2 motor controller implements max temperature protection!!Hillhater said:That may work, ..and i have another idea.casainho said:I have another idea: I think silicon ics have operation temperature up to about 125c. And 8nside the motor, we have 3 of them, the hall sensors!!! So, maybe the have the functionality to detect high temp and disable their outputs and on that way the hall sensor signals would have an invalid sequence and the firmware detects by simple not driving the mosfets on that situation...
I know what you mean!!John and Cecil said:Also it probably makes a differnece as to what rpm range you are running. I always run my motor in at least the top 80% of the rpm range for a given gear. I do not have a way of monitoring engine power output but I suspect riding this way reduces power output. It must because my 2ah battery lasts a long time (5 miles) and I am even undercharging it by about 2 volts.
I think if you are running this motor in lower rpm ranges then it would probably be wise to back off the amps. I think perhaps you can raise them a bit if you are always running in the upper rpm range though.
phase_current = battery_current/ PWM_duty_cycle;
if ((ui8_adc_battery_current > ui8_adc_target_battery_max_current) || // battery max current, reduce duty_cycle
(ui8_adc_motor_phase_current > ui8_adc_target_motor_phase_max_current)) // motor max phase current, reduce duty_cycle
{
if (ui8_duty_cycle > 0)
{
ui8_duty_cycle--;
}
}
#define ADC_MOTOR_PHASE_CURRENT_MAX 48 // 48 units = 30 amps
Good work!feketehegyi said:It uses currently the factory stock firmware. You only need to make/buy a male connector and put it into the LCD cable connector coming from the motor. I switch on the motor by shorting two pins there, and using for the communication the RX, TX, GND.Hillhater said:This is very impressive !
A few questions if i may..
What firmware/software mods and settings are needed to use this app.
How is the blutooth module connected to the controller
Could this be extended to log data for later download or analysis ? (Distance, speed, amps volts etc).
Thanks again.
HH
As my ordered HC05 BT module has not arrived yet I use the following workaround for Bluetooth communication
(RX, TX, GND) goes into Arduino -> Arduino is connected to my Laptop -> Laptop makes exchange on Arduino's serial with its Bluetooth's channel.
> Android phone is connected to laptop's Bluetooth.
Yes, it is absolutely the best way to log data - however that's not implemented yet.
Hi Grant,..Welcome to the "'sphere " !!ThreeOnBoard said:Hi all,
I have had the TSDZ2 for nearly two years (maybe 5000kms) on my Kona Fire Mountain with no issues. Recently as I began from a stop I heard a snapping sound and now the crank turns quite easily and the TSDZ2's gears don't engage. It appears that the electric motor is still working but it's not turning something it should. I inspected the gears and found no obvious issues. The blue gear looked fine. I removed the casing from the other side and couldn't see any obvious issues.
Does anyone have a suggestion as to what has happened or how to troubleshoot it? Could it be something within the internal motor? Could it be a bearing?
Thanks in advance,
Grant
So, my plan for the bluetooth module is to have these parts:Hillhater said:So once you have the BT module, the Arduino and laptop are eliminated. ?
Thank you! I'll build into data log functionality. Probably a "CSV" format which can be transformed by the user to any other format.AZUR said:Good work!feketehegyi said:It uses currently the factory stock firmware. You only need to make/buy a male connector and put it into the LCD cable connector coming from the motor. I switch on the motor by shorting two pins there, and using for the communication the RX, TX, GND.Hillhater said:This is very impressive !
A few questions if i may..
What firmware/software mods and settings are needed to use this app.
How is the blutooth module connected to the controller
Could this be extended to log data for later download or analysis ? (Distance, speed, amps volts etc).
Thanks again.
HH
As my ordered HC05 BT module has not arrived yet I use the following workaround for Bluetooth communication
(RX, TX, GND) goes into Arduino -> Arduino is connected to my Laptop -> Laptop makes exchange on Arduino's serial with its Bluetooth's channel.
> Android phone is connected to laptop's Bluetooth.
Yes, it is absolutely the best way to log data - however that's not implemented yet.
It would be good to have the log file in the garmin .fit format.
In this file format we can upload the files either for strava or another program to store those files.
I have all my log files since 2006 in the sporttracks program,in my computer from zonefivesoftware.com.
Thanks
I think you can go even further by making your app to also be able to turn on and off the TSDZ2 power. As I shared before, Stancecoke did a Bluetooth module that can also turn on and off TSDZ2 power: https://opensourceebikefirmware.bitbucket.io/development/Motor_controllers--BMSBattery_S_series--Bluetooh--DIY_Bluetooth_module.htmlfeketehegyi said:It's written that the HC05 module works on 3.3v TTL. But the Motor controller works on 5v TTL, so the level shifter is needed. Also a 5v and a 3.3v power source is needed therefore I plan to buy such 2 regulators.
They cost together approximately 5EUR or 5.8USD. Then a switch max 1EUR, and a poor man's cable connector for 0EUR.
For this latter I assume can the extension cable used as well: https://www.eco-ebike.com/collectio...oducts/extension-cable-for-tsdz2-speed-sensor We'd only need the male part of this. Unfortunately this kind of cable connector is rarity.
Then pack all those things together and attach to the frame and plug into the LCD cable connector - and use my android app as LCD display via bluetooth. So, this's my next plan to try out.
Wow, yes that can be again an interesting upgrade. However I plan now to turn it on by a manual switch and later we'll see this upgrade.casainho said:If your app could turn on and off the TSDZ2 power, then you could easily add a security layer, just like KT-LCD3 does: turn on the motor controller only if user inserts the correct password!