THE TIMELINE
~7:12 PM — Freak-out begins.
Fire up LOKLiK IdeaStudio. It won’t see the iCraft. Won’t connect over USB or
Bluetooth, on two different computers. I assume the WinUSB/Zadig driver I used for
the SDRs hosed it. (It didn’t.)
~7:14–8:12 PM — Chasing ghosts.
COM ports shuffling everywhere (11/12/17). Driver scans. The IdeaStudio logs show
it: “connection created successfully,” then the device replies with garbage bytes and every $SN query times out → available devices: []. Mouse is fine.
SDR dongles correctly on WinUSB. The cutter’s CH340 healthy on its own driver.
None of it was the driver.
Power-cycle troubleshooting.
Roller spins, knife plunges up/down, carriage twitches ~1/4″ and quits. No ready
light. Buttons lit. Carriage glides free by hand (belt fine, not seized). Cleaned
the IR home sensor with alcohol — no change.
The real clue: the surge.
Whole-house power surge earlier in the week. PC, miners, both monitors, the laser —
all on the same strip — browned out and recovered. Only the Loklik didn’t. (A
“strip with a breaker” is NOT surge protection, btw. Lesson logged.)
~8:56 PM — Crack it open. It’s an ESP32.
Pop the end caps. ESP32 on a board under a pile of screws. Put esptool on it:
chip alive — ESP32-D0WD-V3, 8MB flash, MAC c0:5d:89:93:0c:84. Pulled a full
8MB backup (loklik_fw_backup.bin). The brain survived the surge.
~9:00–9:30 PM — Find the firmware, ID the damage.
- IdeaStudio gates firmware updates behind device discovery (which is broken) →
chicken-and-egg. Dead end. - Found Loklik’s standalone FlashTool; it downloaded firmware to
com.testingtool.app/resources/esp32/LOKLIK_CRAFTER_2/v01..v08/firmware.bin. - Folder said “CRAFTER_2” but the binary strings said
LOKLiK_iCraft— right
firmware. - Parsed the real partition table (dual-OTA: app at 0x10000, otadata 0xE000,
nvs 0x9000). No flash encryption. - Block-compared my backup vs every version → installed = V03, corrupted in 5 of 24 blocks (~320KB). The surge fried ~320KB of the app. Proof.
~9:33 PM — Flash clean V03.write-flash 0x10000 V03/firmware.bin → Hash verified. Erased otadata. Still dead.
Erased NVS (saved the original first). Still “dead”… or so I thought.
THE REVEAL — miniterm on the serial port.
“OH, IT’S GRBL.”
[MSG:Grbl_ESP32 Ver 1.3a Date 20211103]
[MSG:Using machine:LOKLiK_iCraft]
[MSG:Axis count 3] X/Y/Z = Trinamic TMC2209 over UART
[MSG:Ready]
The Loklik iCraft’s “secret” firmware is grbl_ESP32 — open-source, GPLv3. The
clean V03 flash WORKED — it went from spewing garbage to speaking clean GRBL.
That’s why they lock it behind a login and hide the firmware: it’s free software
with their name on it.
The motor-power gap.
Boot self-test: all three TMC2209s “driver test failed — check motor power.”
ESP32 runs on USB 5V; motors need the 24V rail. Brick measured 23V (healthy).
Reseated/sorted the motor power → FULL XYZ MOTION in gSender. X jogs. It’s ALIVE.
Homing/limit switch: dead (the IR home sensor — surge or knocked loose in the
teardown). Don’t care — homing disabled ($22=0, $21=0), set zero by hand.