MAX31850K (1-Wire) on STM32G030 issue
Hi guys,
I am struggling for a few days with the MAX31850K (Cold-Junction Compensated, 1-Wire Thermocouple-to-Digital Converters) so I was hoping that some of you might have experienced the same issue.
The chip is soldered on my custom PCB (I am not using a development board/kit) and it is controlled by STM32G030 MCU.
The current results are following:
- Readout of device 64-bit serial number works fine and as expected (it starts with 0x3B.... and this byte exactly tells the device type)
- Every data that I am getting from the device is always correct as I always check the CRC
- The hardware address which is the part of the configuration register within the scratchpad is also ok and the value as expected
The issue is the following: The temperature that I am getting back is always zero, but not only that, there is no error bit set (please check the datasheet page 13, table 2). So, even though I disconnect the probe, at least I shall have the open-circuit bit set, but this never happens. So, the temperature data (first 4 bytes of the scratchpad) are always 0, but the rest of the data is always correct and the CRC is also correct.
So, when you have a second look, you shall see that what I am actually reading out (each time that I request a temperature conversion and read scratchpad) is the default (reset value) of the scratchpad.
Considering the text above, I concluded that the communication with the chip is definitely working ok, so I do not suspect any issues in the 1-wire library, especially because I am using it for years with DS18B20 with no issues at all. I also concluded that initialization, MATCH ROM and SEARCH ROM commands are also working flawlessly and that all data that I receive has a valid CRC so I am really receiving what the device has sent me.
Why in temperature data of the scratchpad there are no error flags set whenever you deliberately create one, I do not know. On the other hand, why always reading all zeroes is also very strange.
Additionally, I have 3 types of K probes, they all work when connected to a multimeter, but nevertheless, even without a probe, the chip is misbehaving.
I tries to google for solution, but unfortunately didn't find anything to help.
I am open for suggestions and ideas. Any idea, how much crazy may sound, could actually help.
P.S.I forgot to mention that MAX31850 is working in external power mode. It is not in parasite power mode.
Cheers!
