Corrected temperature reading from CAN in MIT mode #4
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
When trying the demo scripts using an AK60-6-V1.1 connected via a PEAK CAN UBS converter, all demo scripts gave an overtemperature error.
Looking into it more closely it seems that the temperature data is not scaled or anything after reading it from CAN, where most other values are transformed using the uint_to_float.
Page 39 of the TMotor manual specifies the limits for the messages in Servo mode, but for MIT mode this is not explicitly mentioned.
TMotor Manual
For my setup the limit values of 0 to 100 seem to give a decent reading of the room temperature upon startup of the motor.
I have also asked this question to TMotor. In their response they indicated that the temperature protection limit should be 140 degrees celcius and the temperature reading should just be substracted by 40 to obtain the temperature, which in my case results in an unrealistically low temperature for the room.
TMotor Manual Chinese