/max31855

A platform agnostic driver to interface with the MAX31855 (thermocouple digital converter)

Primary LanguageRustApache License 2.0Apache-2.0

max31855

A platform agnostic driver to interface with the MAX31855 (Cold-Junction Compensated Thermocouple-to-Digital Converter)

What works

  • Reading the thermocouple, cold junction reference temperature, fault status bits.
  • Interface to read the hot junction reference in Counts, Fahrenheit, Celsius, and Kelvin.
  • Currently testing with the MAX31855K and a Type K Thermocouple (Using the Sparkfun Thermocouple Breakout)

TODO

  • Add interface for calibrated temperatures (current interface provides raw values from ADC)
  • Additional fault management with the fault status bits. e.g. How to handle interface when faults are present? Partially done, need to pass NAN when fault exists
  • Need to support signed integers (currently using u16. Need to use i16 and handle signed bit correctly).
  • Test on Raspberry Pi (currently testing on the DISCOVERY)
  • Finish read_all interface
  • Perform fault testing (ensure fault bits work correctly)
  • Improve code documentation
  • Setup unit tests
  • Clean up naming (e.g. someetimes it Hot Reference Junction sometimes its temeperature sometimes its thermocouple

Examples

In work

License

Licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.