Repository navigation
v0.14.0 - Hardware tab, hardware notifications, print pictures, printing from the farm
Pre-releaseUpgrading: update from Mainsail or Fluidd (or git pull), then restart Klipper (FIRMWARE_RESTART, never while printing): the macros changed, for the HOME=1 fix below. If you installed the notifications or the farm, Moonraker restarts the klipper-auto-eject service by itself after the update; run install.sh --farm (or --push) once more so nginx accepts large files for Send it from the farm. Nothing changes in the slicer, and your settings are kept.
بالعربية: تبويب العتاد مع تحذيراته على الموبايل، وصور المطبوعات في القوائم والمزرعة، والطباعة من المزرعة من أي مكان، وتذكير الصيانة والتقرير اليومي، وتصميم أنظف لصفحتي الإعدادات والعتاد، وإصلاح توقف الطابعة بخطأ "Timer too close" مع HOME=1. الشرح في docs/ar.
Tested: the HOME=1 fix in the macro simulator, with a new test that fails without it; the new search for the spot to home Z at picked the same spot as the old one on 300 random beds, and on a BTT CB2 it takes 27 ms instead of 124 ms for 2 parts and 99 ms instead of 1457 ms for 30. On a real Voron Trident 450 the eject then homed Z at the new spot and finished. The Hardware tab ran against that Voron (CB2, a Kraken and a CAN toolhead) and against the demo; the hardware warnings were checked against its live data with no false alarm. The farm's cameras were checked on the Voron. All the tests pass, with Jinja2 2.11 and 3.1.
Added
- A cleaner Settings page: the sections at the side with how many you have set in each,
Only my changes, every control in one column, and only your own values marked. - Hardware opens with a tile for each part (boards, motors, each heater, the computer, the
camera) that says how it is and takes you to it; board and computer figures in small boxes; the
explanations folded under About these figures. - The farm's cameras show a new picture as soon as the last has arrived (at most one a second)
instead of every 4 s, and a tap opens one large and live. - The print queue's Add files picks a file by its picture, with a search, as on Check a
file. While the bed cools, Overview says the time it pushes at the latest (cool_timeout). - A setting changed while the bed is being cleared now says it waits for the end of the eject:
Klipper takes no command until then. Before, nothing showed, and each click sent it again. - A Hardware tab in the web page: everything Klipper and Moonraker tell about the machine, live,
with a line at the top that says whether all is normal. Boards: each MCU's chip, link (USB,
CAN, serial), load, round trip, resent and corrupt bytes, firmware and temperature, and the CAN
bus state. Heaters: temperature, target, power and the last ten minutes, with a warning when
one cannot hold its target at full power. Fans: speed and turns per minute, with a warning when
one with a speed sensor stops. Computer: processor use and temperature, memory, storage,
network errors, low voltage on a Raspberry Pi. Sensors, the camera, and the prints that
stopped with an error. The extruder shows its flow (mm³/s) and the highest so far, as it
turns too slowly for StallGuard. With the page closed, the notification service watches the serious
ones (a fan with a speed sensor that stopped, driver warnings, a hot motor, a board link resending
data, an unhealthy CAN bus, a heater that cannot hold its target, the computer too hot or short of
voltage, memory or storage) and sends each once to the phones, opening the Hardware tab; each
phone can turn them off. Every motor with a TMC driver (X, Y, every Z motor and every
extruder), live once a second: moving, holding or off; its current; its StallGuard reading with
the last ten minutes as a line (TMC2130, 2240, 2660 and 5160 report it); its driver's warnings
(overheating, shorts, a dropped supply, an open coil); and the motor's own temperature from a
thermistor named after it (temperature_sensor motor_x,motor_aon CoreXY…). A line at the top
says whether all motors are normal, from the warnings and temperatures only: StallGuard also drops
at low speed, so it raises no alarm. Read only; shown only when Klipper has TMC drivers. - Pictures of the prints: the files in Check a file, the print queue, the farm cards and
the farm's Print dialog show the picture the slicer put in the G-code (OrcaSlicer,
PrusaSlicer, SuperSlicer, Cura with Create Thumbnail), with the print time, filament, height
and material. Check a file opens with a large picture and everything the file says about the
print; Overview shows the picture of the print on the bed. A black part on the dark page, or
a white one on the light page, gets a backdrop that shows it. Lists read each file only when it
comes into view. Other farm printers' pictures come through the farm printer, which keeps them
in memory. - Maintenance reminders in the farm: every 100 to 1000 hours of printing, per printer, from
Moonraker's print history. The card counts them (Maintenance: 450 / 1000 h), a notification
comes once when it is due, and Maintenance done starts again from zero. - A daily report of the farm to the phones, at a time you choose: today's prints that ended
well and stopped, the printers printing and needing you, the hours printed, and the maintenance
due. Tapping it opens the farm. - Print from the farm, from anywhere: a free printer's card has Print: pick one of its
G-code files, or send it one from the phone or computer (Send it, Send it and print,
with progress). Printing cards have Pause, Resume and Cancel the print. All of it goes
through the farm printer, so it works away from the printers' network without Tailscale on the
other printers. The farm refuses to start a print on a busy printer or on one with parts on its
bed. Uploads are kept on the card, not in memory, while they go on (install.sh --farmor
--pushupdates the nginx file for large files).
Fixed
AUTO_EJECT HOME=1could stop the printer with "Timer too close". After a nozzle probe waits
for the nozzle to cool, the part fan was switched off and the spot to home Z at was worked out
before that fan command went out; on a slower printer computer that took up to 1.5 s (Klipper
allows 0.25). The fan command is now sent first, and the search is 5 to 20 times faster: under
0.1 s for 30 parts on a BTT CB2.- In the farm, Open did not work from a phone away from the printers' network: it opened the
printer's local address. When the page is opened through Tailscale, it now opens the printer's
Tailscale address, found by its network card, if that printer has Tailscale; without it, Open
says Open (on its network) instead of a link that does not open.