> Whee. Undocumented formats, bad firmware, lack of sane error messages. And did I mention crazy interfaces? The embroidery machine itself shows up as a USB storage device when you connect it, except it for some reason takes about half a minute to calm down enough to be mounted. And forget about the embroidery card reader/writer - that one needs some magic USB driver too.
Sounds like something that needs to be fixed by a few righteously spiteful open source developers, which is maybe a bit too on-the-nose given the author of the blog :)
You haven't seen a weird file format until you've dealt with one of other embroidery formats, .dst. It's literally converted from an old paper tape format so it's like 21 bits per row, each bit indicates part of the length of the stitch so a 1 in place 0 means 1mm, place 1 means 3mm, then 9mm, -1, etc. The original format was holes in the tape and they just kept that idea for the past decades. You add all the 1s to see how long the stitch is. I had to write a converter in Go as my first Go project to integrate into a larger project and it was a trip.
Then it was taken up 7 years later and a bug fixed, found by afl. I wonder if it's in the kernel git so it was run automatically, or someone ran afl specifically on it
If you've seen one operate, they run incredibly fast with very precise stepper motor control. It's certainly not Linux at the lower level.
I dealt with Tajima machines back around 1999-2000 and I'm pretty sure the systems have just been step-evolved from that point onward. No Linux in sight.
Sounds like something that needs to be fixed by a few righteously spiteful open source developers, which is maybe a bit too on-the-nose given the author of the blog :)