A friend was having a bit of a KonMarie moment and decided to remove some of the technology from her life. One item, which she had only just received, was a Joto. This robotic device is a neat spin on a plotter, except it's a vertical whiteboard. Joto can draw on the board and wipe it too.
What hooked me was its openness. Rudimentary documentation already existed for how to program Joto using gcode, the language of CNC milling devices and 3D printers. Not locking the user into an ecosystem (but providing one anyway) impressed me, so I took it off my friend's hands.
The device itself isn't perfect. You control it via smartphone, but there's only a drawing app at this time, although a lot more is promised. Also there's an issue with ink drying out. Still, never mind, I wanted to whisper sweet gcode to it.
A micro-usb socket is provided for programming and provides a serial connection over USB. Once connected you can send gcode line-by-line and Joto will react. I started to tinker.
Long story short, if you're interested in sending gcode to a Joto, I've come up with some Python 3 scripts to help.
In this repository is a script to manage transmission of gcode and a few other scripts to produce text. These are very much work-in-progress, so check for updates.
For a bit more fun, having figured out how to draw numbers by translating gcode from an application intended for CNC milling, I figured out how to draw a sudoku board:
Here's a speeded up video of it in action:
Now, inevitably, I need to get a Raspberry Pi talking to it.