MAX31855(9)

πŸ“¦
version 2.9.4 Β· 4 versions
, in ubuntu resolute, ubuntu stonking

πŸ’– MAX31855(9) β€” the HAL Component glow-up πŸ’–

okay bestie, sit down, we're learning about max31855 today and honestly? it's giving ✨temperature diva✨. this one lives in the HAL Component section of the manual, so you already know it's a real-time legend. no cap.


🌸 NAME 🌸

max31855 β€” support for the MAX31855 Thermocouple-to-Digital converter, using bitbanged spi. yes. bit*banged*. we said what we said. πŸ’…


✨ SYNOPSIS ✨

loadrt max31855 [count=N|names=name1[,name2...]] [personality=P1,P2,...]

that's the whole vibe right there. load it, name it, give it a personality (literally, there's a personality param, we'll get there).


πŸ¦‹ DESCRIPTION πŸ¦‹

so this component needs at least 3 pins to bitbang the spi protocol. like, minimum. three. it's not asking for much. example time, bestie:

loadrt max31855 personality=1

setp hm2_6i25.0.gpio.023.is_output true
setp hm2_6i25.0.gpio.024.is_output true

net spi.clk.in    hm2_6i25.0.gpio.023.out     max31855.0.clk.out
net spi.cs.in     hm2_6i25.0.gpio.024.out     max31855.0.cs.out
net spi.data0.in  hm2_6i25.0.gpio.033.in_not  max31855.0.data.0.in

addf max31855.0.bitbang-spi servo-thread

look at that wiring glow-up. observed. πŸ”₯

now the tea β˜• β€” the MAX31855 itself supports a range of -270C to 1800C, but linearization data is only available for the -200C to 1350C range. beyond that? raw temperature gets returned. so if you're out there past 1350C, the numbers stop being cute and start being feral.

temperature pins are provided for readings in Celsius, Fahrenheit and Kelvin β€” trio energy, we love a multilingual icon 🌈. temperature values are not updated while a fault condition is present. remember that. fr fr.

and the personality parameter? that's how you tell it how many sensors you've got. multiple sensors share the clk and cs pins, but each one connects to its own discrete data input pin. and the ceiling? a maximum of 15 sensors are supported. fifteen. that's your limit, don't push it. πŸ’€


πŸŽ€ FUNCTIONS πŸŽ€

  • max31855.N.bitbang-spi β€” requires a floating-point thread. it's high maintenance like that, and honestly? deserved.

πŸ‘‘ PINS πŸ‘‘

  • max31855.N.data.M.in bit in (M=0..( personality & 0xf )) β€” pin(s) connected to data out. the data girlies. 🩷
  • max31855.N.cs.out bit out β€” pin connected to cs. pulled low to shift data, pulled high for data refresh. so it's lowkey the on/off switch of the whole situationship. πŸŽ€
  • max31855.N.clk.out bit out β€” pin connected to clk. the heartbeat. the metronome. the main character. ⏰
  • max31855.N.temp-celsius.M float out (M=0..( personality & 0xf )) β€” temperature output values in Celsius. πŸ‡¨πŸ‡¦ energy
  • max31855.N.temp-fahrenheit.M float out (M=0..( personality & 0xf )) β€” temperature in Fahrenheit. πŸ‡ΊπŸ‡Έ energy
  • max31855.N.temp-kelvin.M float out (M=0..( personality & 0xf )) β€” temperature in Kelvin. 🧊 science girlie energy
  • max31855.N.fault.M bit out (M=0..( personality & 0xf )) β€” fault condition detected. the alarm bell, the red flag, the 🚩
  • max31855.N.fault-flags.M u32 out (M=0..( personality & 0xf )) β€” fault flags: 0x1 = open sensor, 0x2 short to gnd, 0x3 short to vcc. three ways to be broken, pick your fighter πŸ’€

note that every single one of those M ranges is literally written as M=0..( personality & 0xf ) β€” that's the exact mask, don't come for me, that's what the page says and we're keeping it. πŸ’…


πŸ’œ AUTHOR πŸ’œ

Joseph Calderon β€” the actual genius behind this component. put some respect on the name. 🫢


🌈 LICENSE 🌈

GPL β€” free as in freedom, share the love, etc etc. πŸ’–


and that's the whole page, bestie. this was MAX31855(9), straight out of the LinuxCNC Documentation, dated 2026-03-17. go forth and bitbang your spi responsibly. mwah. πŸ’‹βœ¨πŸ’…

πŸ“¦ where this page comes from