dgatf / msrc

Multi Sensor for RC with RP2040 - FrSky D, SmartPort, XBUS, SRXL, IBUS, SBUS, Multiplex Sensor Bus, Jeti Ex Bus, Hitec
GNU General Public License v3.0
171 stars 43 forks source link

Analog Temperature Sensor #131

Closed Pablo18011 closed 3 months ago

Pablo18011 commented 3 months ago

Hi, I have connected a 100kNTC and resistor circuit to my RP2040 as per the diagram. I have confirmed this is works in the GUI in debug mode, however when I discover new sensors on my Taranis it only diiscovers Custom sensor EscT 0B70 and this does not output temperature on the Taranis. Can anyone help? I only have the voltage divider circuit and the NTC circuit, the voltage divider circuit works perfectly. The temperature circuit only works in debug mode ie temperture changes on the thermistor output on the debug screen. I want to be able to monitor a glider motor temperature directley on the motor housing and not the ESC. My set up is a RX R9MM using F.Port flex firmware.

dgatf commented 3 months ago

Please post the debug

Pablo18011 commented 3 months ago

Is this what you need? This is with no lipo connected to the voltage sensor circuit. USB. Debug enabled USB (119) Voltage (220): 3.34 Temperature (224): -24.20 USB (119) Voltage (104): 1.31 Temperature (108): -24.46 USB (119) Voltage (104): 2.87 Temperature (108): -24.91 USB (119) Voltage (104): 1.02 Temperature (108): -25.04 USB (119) Voltage (104): 3.19 Temperature (108): -25.15 USB (119) Voltage (104): 2.58 Temperature (108): -25.60 USB (119) Voltage (104): 3.81 Temperature (108): -25.85 USB (119) Voltage (104): 2.13 Temperature (108): -25.93 USB (119) Voltage (104): 2.32 Temperature (108): -25.76 USB (119) Voltage (104): 2.04 Temperature (108): -25.62 USB (119) Voltage (104): 1.58 Temperature (108): -25.50 USB (119) Voltage (104): 3.76 Temperature (108): -25.53 USB (119) Voltage (104): 2.29 Temperature (108): -25.54 USB (119) Voltage (104): 4.24 Temperature (108): -25.93 USB (119) Voltage (104): 1.67 Temperature (108): -25.99 USB (119) Voltage (104): 2.80 Temperature (108): -25.81 USB (119) Voltage (104): 1.34 Temperature (108): -26.28 USB (119)

Thanks

Pablo18011 commented 3 months ago

Rs is a 2K resistor instead of a 10k as the latter would max out at 32C. With a 2k and 100kNTC I have enough range(output) to measure up to 100C. I then planned to use "OffSet" on the radio to give a true temperature reading. I have tested this in debug mode and everthing works fine. Basically I'm trying to measure the temperature of a motor on a glider, so I have warning when it gets over 70C. As it's a pusher prop used for launch, it does not have the cooling advantage of a tractor configuration. Just to be clear, I do see an output on the radio, however it does not change. Thanks again, I hope this helps.

dgatf commented 3 months ago

Msrc is not receiving telemetry requests from the receiver. Check the circuit at pins 0 & 1

Are you receiving RxBt telemetry in your transmitter?

Pablo18011 commented 3 months ago

Thanks, I'll check can get back to you.

Pablo18011 commented 3 months ago

OK I have attached another debug, the previous one I deliberately removed the 5V supply to the RX, this why there was no RxBt telemetry.This time I connected the RP2040 to the GUI and applied Vbat to the Rx R9M and ran debug. My Taranis discovers the sensor EscT 0B70, however there is no variation in displayed "C", when I Offset it to read 20C, it just stays at this value.

USB. Debug enabled USB (137) Smartport (202) < 7E 71 Smartport (128) < 7E 71 Smartport (128) < 7E 71 Smartport. Sensor (228) > 10 0 9 68 4 0 0 7A Smartport (128) < 7E 71 Smartport. Sensor (244) > 10 70 B 0 0 0 0 74 Smartport (128) < 7E 71 Smartport (128) < 7E 71 Smartport (128) < 7E 71 Smartport (128) < 7E 71 Voltage (220): 11.37 Temperature (224): -23.63 USB (137) Smartport (128) < 7E 71 Smartport (128) < 7E 71 Smartport (128) < 7E 71 Smartport. Sensor (106) > 10 0 9 71 4 0 0 71 Smartport (128) < 7E 71 Smartport. Sensor (122) > 10 70 B 0 0 0 0 74 Smartport (128) < 7E 71 Smartport (128) < 7E 71 Smartport (128) < 7E 71 Smartport (128) < 7E 71 Voltage (104): 11.28 Temperature (108): -23.88 USB (137) Smartport (128) < 7E 71 Smartport (128) < 7E 71 Smartport (128) < 7E 71 Smartport. Sensor (102) > 10 0 9 68 4 0 0 7A Smartport (128) < 7E 71 Smartport. Sensor (122) > 10 70 B 0 0 0 0 74 Smartport (128) < 7E 71 Smartport (128) < 7E 71 Smartport (128) < 7E 71 Smartport (128) < 7E 71 Voltage (104): 11.58 Temperature (108): -24.19 USB (137) Smartport (128) < 7E 71 Smartport (128) < 7E 71 Smartport (128) < 7E 71 Smartport. Sensor (102) > 10 0 9 86 4 0 0 5C Smartport (128) < 7E 71 Smartport. Sensor (122) > 10 70 B 0 0 0 0 74 Smartport (128) < 7E 71 Smartport (128) < 7E 71 Smartport (128) < 7E 71 Smartport (128) < 7E 71 Voltage (104): 11.36 Temperature (108): -24.57 USB (137) Smartport (128) < 7E 71 Smartport (128) < 7E 71 Smartport (128) < 7E 71 Smartport. Sensor (102) > 10 0 9 70 4 0 0 72 Smartport (128) < 7E 71 Smartport. Sensor (122) > 10 70 B 0 0 0 0 74 Smartport (128) < 7E 71 Smartport (128) < 7E 71 Smartport (128) < 7E 71 Smartport (128) < 7E 71 Voltage (104): 11.27 Temperature (108): -24.76 USB (137) Smartport (128) < 7E 71 Smartport (128) < 7E 71 Smartport (128) < 7E 71 Smartport. Sensor (102) > 10 0 9 67 4 0 0 7B Smartport (128) < 7E 71 Smartport. Sensor (122) > 10 70 B 0 0 0 0 74 Smartport (128) < 7E 71 Smartport (128) < 7E 71 Smartport (128) < 7E 71 Smartport (128) < 7E 71 Voltage (104): 11.28 Temperature (108): -24.69 USB (137) Smartport (128) < 7E 71 Smartport (128) < 7E 71 Smartport (128) < 7E 71 Smartport. Sensor (102) > 10 0 9 68 4 0 0 7A Smartport (128) < 7E 71 Smartport. Sensor (122) > 10 70 B 0 0 0 0 74 Smartport (128) < 7E 71 Smartport (128) < 7E 71 Smartport (128) < 7E 71 Smartport (128) < 7E 71 Voltage (104): 11.37 Temperature (108): -24.75 USB (137) Smartport (128) < 7E 71 Smartport (128) < 7E 71 Smartport (128) < 7E 71 Smartport. Sensor (102) > 10 0 9 71 4 0 0 71 Smartport (128) < 7E 71 Smartport. Sensor (122) > 10 70 B 0 0 0 0 74 Smartport (128) < 7E 71 Smartport (128) < 7E 71 Smartport (128) < 7E 71 Smartport (128) < 7E 71 Voltage (104): 11.69 Temperature (108): -25.03 USB (137) Smartport (128) < 7E 71 Smartport (126) < 7E 71 Smartport (126) < 7E 71 Smartport. Sensor (102) > 10 0 9 91 4 0 0 51 Smartport (126) < 7E 71 Smartport. Sensor (122) > 10 70 B 0 0 0 0 74 Smartport (126) < 7E 71 Smartport (126) < 7E 71 Smartport (126) < 7E 71 Smartport (126) < 7E 71 Voltage (104): 11.37 Temperature (108): -25.02 USB (137) Smartport (126) < 7E 71 Smartport (126) < 7E 71 Smartport (126) < 7E 71 Smartport. Sensor (102) > 10 0 9 71 4 0 0 71 Smartport (126) < 7E 71 Smartport. Sensor (122) > 10 70 B 0 0 0 0 74 Smartport (126) < 7E 71 Smartport (126) < 7E 71 Smartport (126) < 7E 71 Smartport (126) < 7E 71 Voltage (104): 11.32 Temperature (108): -24.80 USB (137) Smartport (126) < 7E 71 Smartport (126) < 7E 71 Smartport (126) < 7E 71 Smartport. Sensor (102) > 10 0 9 6C 4 0 0 76 Smartport (126) < 7E 71 Smartport. Sensor (122) > 10 70 B 0 0 0 0 74 Smartport (126) < 7E 71 Smartport (126) < 7E 71 Smartport (126) < 7E 71 Smartport (126) < 7E 71 Voltage (104): 11.28 Temperature (108): -24.95 USB (137) Smartport (126) < 7E 71 Smartport (126) < 7E 71 Smartport (126) < 7E 71 Smartport. Sensor (102) > 10 0 9 68 4 0 0 7A Smartport (126) < 7E 71 Smartport. Sensor (122) > 10 70 B 0 0 0 0 74 Smartport (126) < 7E 71 Smartport (126) < 7E 71 Smartport (126) < 7E 71 Smartport (126) < 7E 71 Voltage (104): 11.27 Temperature (108): -24.96 USB (137) Smartport (126) < 7E 71 Smartport (126) < 7E 71 Smartport (126) < 7E 71 Smartport. Sensor (102) > 10 0 9 67 4 0 0 7B Smartport (126) < 7E 71 Smartport. Sensor (122) > 10 70 B 0 0 0 0 74 Smartport (126) < 7E 71 Smartport (126) < 7E 71 Smartport (126) < 7E 71 Smartport (126) < 7E 71 Voltage (104): 11.67 Temperature (108): -24.75 USB (137) Smartport (126) < 7E 71 Smartport (126) < 7E 71 Smartport (126) < 7E 71 Smartport. Sensor (102) > 10 0 9 8F 4 0 0 53 Smartport (126) < 7E 71 Smartport. Sensor (122) > 10 70 B 0 0 0 0 74 Smartport (126) < 7E 71 Smartport (126) < 7E 71 Smartport (126) < 7E 71 Smartport (126) < 7E 71 Voltage (104): 11.62 Temperature (108): -25.28 USB (137) Smartport (126) < 7E 71 Smartport (126) < 7E 71 Smartport (126) < 7E 71 Smartport. Sensor (102) > 10 0 9 8A 4 0 0 58 Smartport (126) < 7E 71 Smartport. Sensor (122) > 10 70 B 0 0 0 0 74 Smartport (126) < 7E 71 Smartport (126) < 7E 71 Smartport (126) < 7E 71 Smartport (120) < 7E 71 Voltage (104): 11.57 Temperature (108): -25.46 USB (137) Smartport (120) < 7E 71 Smartport (120) < 7E 71 Smartport (120) < 7E 71 Smartport. Sensor (102) > 10 0 9 85 4 0 0 5D Smartport (120) < 7E 71 Smartport. Sensor (122) > 10 70 B 0 0 0 0 74 Smartport (120) < 7E 71 Smartport (120) < 7E 71 Smartport (120) < 7E 71 Smartport (120) < 7E 71 Voltage (104): 11.33 Temperature (108): -25.37 USB (137) Smartport (120) < 7E 71 Smartport (120) < 7E 71 Smartport (120) < 7E 71 Smartport. Sensor (102) > 10 0 9 6D 4 0 0 75 Smartport (120) < 7E 71 Smartport. Sensor (122) > 10 70 B 0 0 0 0 74 Smartport (120) < 7E 71 Smartport (120) < 7E 71 Smartport (120) < 7E 71 Smartport (120) < 7E 71 Voltage (104): 11.28 Temperature (108): -25.31 USB (137) Smartport (120) < 7E 71 Smartport (120) < 7E 71 Smartport (120) < 7E 71 Smartport. Sensor (102) > 10 0 9 68 4 0 0 7A Smartport (120) < 7E 71 Smartport. Sensor (122) > 10 70 B 0 0 0 0 74 Smartport (120) < 7E 71 Smartport (120) < 7E 71 Smartport (120) < 7E 71 Smartport (120) < 7E 71 Voltage (104): 11.65 Temperature (108): -24.83 USB (137) Smartport (120) < 7E 71 Smartport (120) < 7E 71 Smartport (120) < 7E 71 Smartport. Sensor (102) > 10 0 9 8D 4 0 0 55 Smartport (120) < 7E 71 Smartport. Sensor (122) > 10 70 B 0 0 0 0 74 Smartport (120) < 7E 71 Smartport (120) < 7E 71 Smartport (120) < 7E 71 Smartport (120) < 7E 71 Voltage (104): 11.37 Temperature (108): -24.86 USB (137) Smartport (120) < 7E 71 Smartport (120) < 7E 71 Smartport (120) < 7E 71 Smartport. Sensor (102) > 10 0 9 71 4 0 0 71 Smartport (120) < 7E 71 Smartport. Sensor (122) > 10 70 B 0 0 0 0 74 Smartport (120) < 7E 71 Smartport (120) < 7E 71 Smartport (120) < 7E 71 Smartport (120) < 7E 71 Voltage (104): 11.61 Temperature (108): -32.04 USB (137) Smartport (120) < 7E 71 Smartport (120) < 7E 71 Smartport (120) < 7E 71 Smartport. Sensor (102) > 10 0 9 89 4 0 0 59 Smartport (120) < 7E 71 Smartport. Sensor (122) > 10 70 B 0 0 0 0 74 Smartport (120) < 7E 71 Smartport (120) < 7E 71 Smartport (120) < 7E 71 Smartport (120) < 7E 71 Voltage (104): 11.37 Temperature (108): -30.25 USB (137) Smartport (120) < 7E 71 Smartport (120) < 7E 71 Smartport (120) < 7E 71 Smartport. Sensor (102) > 10 0 9 71 4 0 0 71 Smartport (120) < 7E 71 Smartport. Sensor (122) > 10 70 B 0 0 0 0 74 Smartport (120) < 7E 71 Smartport (120) < 7E 71 Smartport (120) < 7E 71 Smartport (120) < 7E 71 Voltage (104): 11.31 Temperature (108): -28.97 USB (137) Smartport (120) < 7E 71 Smartport (120) < 7E 71 Smartport (120) < 7E 71 Smartport. Sensor (102) > 10 0 9 6B 4 0 0 77 Smartport (120) < 7E 71 Smartport. Sensor (122) > 10 70 B 0 0 0 0 74 Smartport (120) < 7E 71 Smartport (120) < 7E 71 Smartport (120) < 7E 71 Smartport (120) < 7E 71 Voltage (104): 11.62 Temperature (108): -28.25 USB (137)

Pablo18011 commented 3 months ago

This is my circuit below, all I added is a 100K NTC and 2K as per the circuit in the GUI

RP2040-Zero-NTC

dgatf commented 3 months ago

MSRC is not sending negative values for smartport. If a telemetry value is less than 0, it sends 0.

This should be fixed with the updated binary.

Let me know if this fixes the issue.

Pablo18011 commented 3 months ago

Thanks you so much for your time, I will test and get back to you :)

Pablo18011 commented 3 months ago

OK, a quick test and that's working, I'm now getting a C reading change on my Taranis radio, awesome! I have attached a debug, it's bouncing around a bit and I need to play around with the Offset, but it's working... Thanks again...

USB. Debug enabled USB (137) Smartport (200) < 7E 71 Temperature (222): -27.85 Voltage (220): 11.28 Smartport (130) < 7E 71 Smartport. Sensor (228) > 10 0 9 68 4 0 0 7A Smartport (130) < 7E 71 Smartport. Sensor (244) > 10 70 B E4 FF FF FF 8F Smartport (130) < 7E 71 Smartport (130) < 7E 71 Smartport (130) < 7E 71 Smartport (130) < 7E 71 Smartport (130) < 7E 71 Temperature (110): -26.91 Voltage (108): 11.29 USB (137) Smartport (130) < 7E 71 Temperature (110): -26.56 Voltage (108): 11.32 Smartport (130) < 7E 71 Smartport. Sensor (108) > 10 0 9 6C 4 0 0 76 Smartport (130) < 7E 71 Smartport. Sensor (122) > 10 70 B E5 FF FF FF 8E Smartport (130) < 7E 71 Smartport (130) < 7E 71 Smartport (130) < 7E 71 Smartport (130) < 7E 71 Smartport (130) < 7E 71 Temperature (110): -26.28 USB (137) Smartport (130) < 7E 71 Voltage (108): 11.27 Temperature (110): -25.83 Smartport (130) < 7E 71 Smartport. Sensor (108) > 10 0 9 67 4 0 0 7B Smartport (130) < 7E 71 Smartport. Sensor (122) > 10 70 B E6 FF FF FF 8D Smartport (130) < 7E 71 Smartport (130) < 7E 71 Smartport (130) < 7E 71 Smartport (130) < 7E 71 Smartport (130) < 7E 71 Voltage (108): 11.26 Temperature (110): -25.91 USB (137) Smartport (130) < 7E 71 Voltage (108): 11.30 Smartport (130) < 7E 71 Smartport. Sensor (108) > 10 0 9 6A 4 0 0 78 Smartport (130) < 7E 71 Smartport. Sensor (122) > 10 70 B E6 FF FF FF 8D Smartport (130) < 7E 71 Smartport (130) < 7E 71 Smartport (130) < 7E 71 Smartport (130) < 7E 71 Smartport (130) < 7E 71 Temperature (110): -25.84 Voltage (108): 11.61 USB (137) Smartport (130) < 7E 71 Temperature (110): -24.99 Voltage (108): 11.77 Smartport (130) < 7E 71 Smartport. Sensor (108) > 10 0 9 99 4 0 0 49 Smartport (130) < 7E 71 Smartport. Sensor (122) > 10 70 B E7 FF FF FF 8C Smartport (130) < 7E 71 Smartport (130) < 7E 71 Smartport (130) < 7E 71 Smartport (130) < 7E 71 Smartport (130) < 7E 71 Voltage (108): 11.28 Temperature (110): -24.38 USB (137) Smartport (130) < 7E 71 Voltage (108): 11.27 Temperature (110): -24.28 Smartport (126) < 7E 71 Smartport. Sensor (106) > 10 0 9 67 4 0 0 7B Smartport (126) < 7E 71 Smartport. Sensor (122) > 10 70 B E8 FF FF FF 8B Smartport (126) < 7E 71 Smartport (126) < 7E 71 Smartport (126) < 7E 71 Smartport (126) < 7E 71 Voltage (108): 11.27 Temperature (110): -24.41 Smartport (126) < 7E 71 USB (137) Smartport (126) < 7E 71 Temperature (110): -24.40 Voltage (108): 11.28 Smartport (126) < 7E 71 Smartport. Sensor (106) > 10 0 9 68 4 0 0 7A Smartport (126) < 7E 71 Smartport. Sensor (120) > 10 70 B E8 FF FF FF 8B Smartport (126) < 7E 71 Smartport (126) < 7E 71 Smartport (126) < 7E 71 Smartport (126) < 7E 71 Temperature (110): -23.31 Voltage (108): 11.72 USB (137) Smartport (126) < 7E 71 Smartport (122) < 7E 71 Temperature (110): -23.11 Voltage (108): 11.27 Smartport (122) < 7E 71 Smartport. Sensor (106) > 10 0 9 67 4 0 0 7B Smartport (122) < 7E 71 Smartport. Sensor (120) > 10 70 B E9 FF FF FF 8A Smartport (122) < 7E 71 Smartport (122) < 7E 71 Smartport (122) < 7E 71 Smartport (122) < 7E 71 Voltage (108): 11.74 Temperature (110): -23.13 USB (137) Smartport (122) < 7E 71 Smartport (122) < 7E 71 Voltage (108): 11.27 Temperature (110): -23.82 Smartport (122) < 7E 71 Smartport. Sensor (106) > 10 0 9 67 4 0 0 7B Smartport (122) < 7E 71 Smartport. Sensor (120) > 10 70 B E8 FF FF FF 8B Smartport (122) < 7E 71 Smartport (122) < 7E 71 Smartport (122) < 7E 71 Smartport (122) < 7E 71 Voltage (108): 11.72 Temperature (110): -23.62 USB (137) Smartport (122) < 7E 71 Smartport (122) < 7E 71 Temperature (110): -23.87 Voltage (108): 11.30 Smartport (122) < 7E 71 Smartport. Sensor (100) > 10 0 9 6A 4 0 0 78 Smartport (122) < 7E 71 Smartport. Sensor (120) > 10 70 B E8 FF FF FF 8B Smartport (122) < 7E 71 Smartport (122) < 7E 71 Smartport (122) < 7E 71 Smartport (122) < 7E 71 Temperature (110): -23.37 Voltage (108): 11.29 USB (137) Smartport (122) < 7E 71 Smartport (122) < 7E 71 Temperature (110): -22.97 Voltage (108): 11.35 Smartport (122) < 7E 71 Smartport. Sensor (100) > 10 0 9 6F 4 0 0 73 Smartport (122) < 7E 71 Smartport. Sensor (120) > 10 70 B E9 FF FF FF 8A Smartport (122) < 7E 71 Smartport (122) < 7E 71 Smartport (122) < 7E 71 Smartport (122) < 7E 71 Voltage (108): 11.36 Temperature (110): -22.82 USB (137) Smartport (122) < 7E 71 Smartport (122) < 7E 71 Voltage (108): 11.71 Temperature (110): -23.84 Smartport (122) < 7E 71 Smartport. Sensor (100) > 10 0 9 93 4 0 0 4F Smartport (122) < 7E 71 Smartport. Sensor (120) > 10 70 B E8 FF FF FF 8B Smartport (122) < 7E 71 Smartport (122) < 7E 71 Smartport (122) < 7E 71 Smartport (122) < 7E 71 Voltage (108): 11.30 Temperature (110): -23.63 USB (137) Smartport (122) < 7E 71 Smartport (122) < 7E 71 Temperature (110): -23.88 Voltage (108): 11.27 Smartport (122) < 7E 71 Smartport. Sensor (100) > 10 0 9 67 4 0 0 7B Smartport (122) < 7E 71 Smartport. Sensor (120) > 10 70 B E8 FF FF FF 8B Smartport (122) < 7E 71 Smartport (122) < 7E 71 Smartport (122) < 7E 71 Smartport (122) < 7E 71 Temperature (110): -24.08 Voltage (108): 11.27 USB (137) Smartport (122) < 7E 71 Smartport (122) < 7E 71 Temperature (110): -24.03 Voltage (108): 11.34 Smartport (122) < 7E 71 Smartport. Sensor (100) > 10 0 9 6E 4 0 0 74 Smartport (122) < 7E 71 Smartport. Sensor (120) > 10 70 B E8 FF FF FF 8B Smartport (122) < 7E 71 Smartport (122) < 7E 71 Smartport (122) < 7E 71 Smartport (122) < 7E 71 Voltage (108): 11.76 Temperature (110): -24.21 USB (137) Smartport (122) < 7E 71 Smartport (122) < 7E 71 Voltage (108): 11.28 Temperature (110): -23.48 Smartport (122) < 7E 71 Smartport. Sensor (100) > 10 0 9 68 4 0 0 7A Smartport (122) < 7E 71 Smartport. Sensor (120) > 10 70 B E9 FF FF FF 8A Smartport (122) < 7E 71 Smartport (122) < 7E 71 Smartport (122) < 7E 71 Smartport (122) < 7E 71 Voltage (108): 11.28 Temperature (110): -23.24 USB (137) Smartport (122) < 7E 71 Smartport (122) < 7E 71 Temperature (110): -24.18 Voltage (108): 11.28

dgatf commented 3 months ago

Great.

Added to main branch with commit 58b602145d09a89a8d9fe3656d04932c7bc4e5d9

Binary updated.

dgatf commented 3 months ago

it's bouncing around a bit

To avoid that, you can increase the averaging elements for temperature from msrc_gui.

average

Pablo18011 commented 2 months ago

I have increased it to 10 and that has settled it down. I will experiment over next few days and run the motor up with a larger prop and gauge the read out with a infrared thermonitor on the motor and compare output on the radio.It's exactly what I needed to monitor a pusher plane motor to keep it in the green and avoid burning out a motor or damaging the magnets. Thanks again for the help, much appreciated :)