Like many unsuspecting victims of deceptive marketing, I was frustrated and disappointed earlier this year.
Upon purchasing a $154 vinyl cutter starter kit from my local art store, I found that it (a) would not work with my Linux computer, (b) prevented me from exactly scaling my input files, (c) only worked with an ad-filled macOS or Android app, and (d) was a brick without being connected to the internet.
Hoping to learn something, I researched further. Web forums from decades ago that this cutter's g-code, sent over Bluetooth, was encrypted-in-flight with a key supplied from a server in Utah, making any kind of honest third-party driver completely impossible to develop. The manufacturer has been doing things like this for decades: banning third-party software suites, blocking them, and even suing people who distribute workarounds.
I was left with only one choice, short of returning it: to remove the brain of the cutter, leaving an empty shell of motor drivers and sensors; to replace its brain with an accessible microcontroller; and using the power of friendship, plus a few modern bits of open-source tooling, to develop a new firmware suite, from scratch, capable of executing G-code fed from an ordinary CAM program such as Inkscape. In a sense, the goal was to build an entirely new cutter from scratch, using just the mechanical shell of the Joy 2.
This effort was ultimately successful. This project documents the steps I took and shows you how to de-cloud your own Joy 2 cutter, if you so have one, by replacing its brain with a Raspberry Pi Pico 2!
While I followed in the footsteps of previous projects, such as TeensyCNC, GRBLhal, CutCutGo, and FreeExpression, this project is self-contained and seems to be the first targeting the Joy 2 and the first using the Raspberry Pi Pico with the Rust language.
Be aware! This project is NOT an advertisement for the Joy 2 device. Unless you have no alternative, I do not recommend you buy one of these devices; instead, spend your money supporting any other company, ideally one which respects its users and allows them to run their own G-code.
This project is not endorsed by Cricut / Provo Craft; I am not affiliated with them. This project does not involve the usage or analysis of ANY Cricut software, especially their detestable Design Space app. It is primarily a forward engineering project to determine how to drive a product that has had its brain removed.
David H. Bronke
simon
Aaron
matt oppenheim