I’m trying to set up my system to have 2 thermocouples that are reading the EGT and coolant temp respectively for an I.C.E.
They are Sparkfun MCP9600 I2C thermocouples. There are 2 of them going into a pixhawk orange cube+. They are going into the I2C port named I2C2 on the board. They go into a I2C splitter that is connected to that port.
I set one of the thermocouples to the parameters shown below and it works correctly when i tell the HUD to display user items for ESC1_temp:
On the second TC i’ve tried numerous configurations and none of them are working. As per sparkfun’s instructions I have severed the address connector to set it to 0x67 which translates to an address of 103.
However when I power cycle the system, it resets the temp2_addr to 96, the same as temp1.
https://learn.sparkfun.com/tutorials/sparkfun-qwiic-thermocouple-hookup-guide
Any help on getting both thermocouples working on the system together would be appreciated. Oddly enough they were both showing up once. but when I went to test it, it stopped working. I have already swapped each of the TCs into the other boards and they are both independently confirmed to work on the Temp1 sensor. Just not both of them on 2 separate readouts.
Any help is appreciated
I am trying to get a temperature sensor working with no luck. I am using the adafruit MCP9600. I built custom firmware for my matek H743 wing V3 as well as my cube black so I could enable temp1 and set it up exactly like you have in the picture.
My issue is the same as yours. The default address is 96 and when i try to change it, it always resets back to 96. In my case 0x67 is the default address for my sensor.
Did you ever figure out how to stop it from changing back to 96?
How do you translate the 2 digit i2c address to arduplanes single digit nomenclature?
Still no fix here.
But its translated from hexidecimal to normal numbers. You can ask chatgpt or google a hexadecimal converter
I appreciate the response. I did eventually figure out that the i2c addresses are hexadecimal and found some converters online (but now I see you just multiply by 16 and add) to convert to decimal. Learn something new every day lol.
I linked your post in an ardupilot fb group and the dev that wrote the temp sensor code saw it and said he would take a look. This was yesterday maybe, so I can follow up in a few days to see if he made any progress.
I did see somewhere that you can use Lua scripting to get sensors that work with an Arduino to feed the data to your autopilot. I’m not sure if you will get the data on an OSD like I want, but you could at least have it on your ground station.
I am too limited in time and mental horsepower to dive into this sadly, but maybe if it is my only route…
Thank you for reaching out to them on FB! Hopefully they come back with a good answer. I’ve looked into lua scripts and just like you I don’t have the bandwidth or mental power to dive into that endeavor.