OK guys, I finally found what the issue is, or at least kind of where it’s coming from.

As some of you (and myself) suspected, my hot end is not reaching the reported temperature. I previously blamed the low readings on my IR thermometer on not being able to point the laser directly at the hotend, but it seems it was reporting accurate readings (around 95C when klipper reports 200C).

Now, here’s where things get a little weird. At this point, I’ve used multiple thermistors, but swapped in a new one anyways. My board also has a pin for a second extruder thermistor, so I plugged it in to that one and changed the pin in my printer.cfg. No change.

I tried switching the bed and hot end thermistors on the board and in printer.cfg, no change.

I changed the thermistor “sensor type” from “EPCOS 100K B57560G104F” (same as the bed) to “Generic 3950”, no change.

I found an article about tuning your pullup_resistance value. My cfg file did not have this value specified, so I added a line and started with the default of 4700, which made no difference (I’m assuming this value is loaded from the sensor type by default?). I toyed with the values until my thermometer read ~220C when setting the printer to that temp. However, to achieve this I had to adjust the pullup_resistance from 4700 to 13k+ (far beyond what should be needed) which makes klipper report 6C at room temp (print bed reports 27C). Unsurprisingly, I can hand-feed all the filament I want, but the temp reading is only now only accurate at 220C rather than only being accurate at room temp.

The thermistor, I feel, can be removed from the suspect list, as multiple thermistors exhibit identical properties.

I also feel the motherboard can be removed as well; there are three pins for thermistors, all three show accurate readings for the bed but identically inaccurate readings for the nozzle.

This only leaves software/ firmware, which I find incredibly odd for three reasons. For one, the printer was not even shut off in between “working” and “not working”; I successfully completed a print, and without shutting down, updating any configs, changing any settings etc., I swapped out the nozzle, and the printer hasn’t worked since. Second, both the bed and nozzle thermistor are configured exactly the same, so if the nozzle is not set up properly the bed should be wrong too. Finally, Klipper is really straightforward and it’s easy to configure things that commonly need configuring, it doesn’t seem right that a configuration got changed and I’m completely incapable of finding what happened and fixing it.

As a Temporary FixTM, I’m inclined to get a nice reliable probe thermometer, calibrate a pullup resistance value for common print temps, then updating my cfg whenever I want to change temps more than ~5c. This is obviously not even close to an ideal solution, but I don’t know what else to try. Everyone else I’ve seen with this issue has resolved it either through hardware replacement or fixing settings, and I’ve tried all I can with both.

  • bitfucker@programming.dev
    link
    fedilink
    English
    arrow-up
    1
    ·
    7 months ago

    I didn’t follow the saga but, have you tried reflashing the firmware and reinstalling klipper? Also, where did you run klipper from? Did you have a spare sbc to test on? Some incorrect software behaviour could also be a result of hardware failure or malfunction that wasn’t really visible.

    • papalonian@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      7 months ago

      I actually did just try reflashing Klipper to the board yesterday and it didn’t do anything, I haven’t updated Klipper on my Pi in a little while, but I can give it a go when I get home tonight. I do have a spare Pi, but it’s kind of a pain in the ass to rebuild everything on a new system for a high likelihood of not much changing

      • bitfucker@programming.dev
        link
        fedilink
        English
        arrow-up
        1
        ·
        7 months ago

        Yeah, sometimes computer can act normal (boot and everything) but the system has somehow become unstable. Sometimes that means there is improper hardware installation, or in embedded system, something is nearing its end of life due to defect or other myriad of factor.