If you've played with the Cricut expression hardware, you're probably aware of the FreeExpression project, which is an open source firmware for the Cricut Expression and Cake machines. Unfortunately, although I could get it to compile, it never initialized the display, the keyboard didn't work, lots of other things didn't work.

Grbl and Marlin already existed, and there's very little difference between a laser engraver and a vinyl cutter (both have engage head and PWM pressure/intensity). This project details the steps along the way.


Cricut Expression Connect Download


DOWNLOAD 🔥 https://tinurll.com/2yGaD4 🔥



While I'm still not certain the goldenshine/Expression V2 board is an official Cricut offering, I went on to acquire a "bricked" AIR and explore and a mainboard. The MCU on later models appears to be aV850ES/Fx3 MCU provided by Microchip Technology -user-manual-hardware?language=en&r=1055686, which means we could absolutely write some firmware for it, but looking at it, we have only have a few points to interface with the hardware.

There's a ten pin header with cable that looks just like the old keyboard, and a ribbon cable. If they're carrying on the same design, the ribbon activates/controls pressure on the cutting head (which is odd). I won't know where the cable goes until I open up one of mine.

I picked up a "for parts" Expression V2 and took it apart and this machine doesn't even look to be descended from the Expression V1. The truth is, without taking apart a maker or whatever the new ones are, I can't be sure - it could be that Cricut did a cutover to the new model, but this thing feels like a misstep.

The chip at the core of it is S5P2020X01 from Samsung, a system on a chip that drives the TFT display with its touch screen (which I'd still almost bet on being an XPT chip). It sports a winbond flash chip for the graphics (and probably just shovels them onto the screen) and a few others.

I'll be the first to admit, the keyboard made no sense to me. Not that the FreeExpression code failed (sort of, once I switched to the cake version). Sometimes, the obvious isn't obvious (to me). I have said I gave up on the CRV001. I was simply tired of fighting the hardware. But the more I thought about it, the more the keyboard represented an opportunity to examine it and understand how it worked.

The key things we need to know: Power, Ground, a separate pin for STOP, one to enable the LEDs, a clock pin, a data pin, and five data pins numbered 0-4. How does this work? The data pins are mapped to a port and read as a set (0-4) and each corresponds to one row (You probably will note there's an 0-4 numbering on the right side). The two chips are serial to parallel shift registers...and here's how it works.

You raise the data line for a 1, and toggle the clock pin. This makes the 0 output of the top SR turn on, which leads to the LED set, which can then be read. Clock it again, the 1 goes to the second column output and if the switch is on, you'll read it on the corresponding data pin, Keep clocking forward, eventually you can read all 14 columns.

According to the FreeExpression source code, all the dials are PF0, PF1 and PF2 (A0, A1, A2). But no matter what I did, my test sketches came back with nothing but 0 for reading dials. What to do? Break out the multimeter.

There must be multiple revisions of the Expression V1, because the two LEFT dials (speed/pressure) are connected to PF1 and PF2, respectively. PF1...must be set high, and that results in valid ADC data from the two left dials, which I want to be...speed and pressure (adjusting feed rate and laser strength, respectively).

The next stage was a ton of debugging to find out that I literally didn't remember that PORTA and PORTC are pointers, and if one builds logic off a comparison...it's probably good to make sure you're comparing the same thing.

This made the Y axis behave perfectly well, and let me test a few things about how my gcode would work. I have an X limit switch, so the machine would always G28X to home that, but Y is whatever the user says it is. G92 is our friend, letting us SET the positions, so G92 Y0 lets us tell Marlin "Start from right here."

There is no X axis, and I got to looking at the different modules, and realized there's not a ton of difference between Marlin's laser tool (M3, M5) and a cutting head with an "ON" pin and a "PWM" pin for pressure.

That lead me to look closely at the keyboard code in FreeExpression. If I can get the +/-/Ok buttons working, Marlin's three button menu will work, and of course it would be cool to have the arrow buttons on the right hand of the keyboard work to move the axis.

The Cricut steppers are attached to direct transistors. I mean, you can see them on the motherboard, where you'd expect a stepper driver to be. Why do they do this? I have no idea. But Marlin doesn't support such drivers.

Using the same model as the TMC steppers, I created a new driver type (TRANSISTOR) and added a TransStepper class for X and Y, assigned to appropriate ports and using a variant of the same code that FreeExpression used to move the steppers.

I SHOULD have been tackling the steppers. Or the endstops. But what I didn't understand was why the FreeExpression project didn't use the LCD that comes with the hardware. A quick look at the FreeExpression code gave me the pinout for a modified (to use a different LCD) connector, and looking at the OLED code for the cake version, it used SPI in a very simple mode.

Now, a quick look at the cake, expression, CRV001 and expression v2 motherboard said these things were all closely related, and I made a bet that no matter what, they were probably STILL using SPI for the other LCDs.

The Expression V1's screen is yellow on black, basically a black and white LCD. There's simply not enough free pins in the header for it to be running in parallel. It was unlikely to be even a four bit.

With a little trial and error, I hit the right combination, using MegaCore's pin names (PIN_PE7, for example). And the LCD booted up. I now knew that the LCD for the Expression was a U8GLIB_NHD27OLED_BW supported device.

The project picture for this pretty much gives away that I have the LCD working (and in fact, a bunch of this little machine functioning) but I'm entering logs pretty much in the order I tackled problems. I had a bootloader that no longer punched me in the face each time I tried to update (it's in the Files section if you want to pick it up).

Next, I cloned a fresh version of Marlin. There was already an atMega1281 environment, though there were a few problems, and I did the basics of adding a new "board" to Marlin - tacked in a board number, added it to pins.h, and cloned a pins file from an existing 1281 board.

And I faked pretty much ALL the pins. The goal was to get SOMETHING compiling and then move on from there. I did a lot of *bad* things to get it compile, but soon enough it did, and I could hook up a serial monitor and get a view with PINS debugging.

BTW, at this point, I could already see the signs that something was fundamentally wrong in Marlin's fastio, but I didn't know what, or what to do about it.I had a Marlin of sorts running and that was a good foundation.

How did I know we had a problem coming? Because I was fairly certain what the endstop pin was for the X axis, and in Marlin it always showed as open, pin watch didn't show changes, but in test arduino sketches, I could absolutely (correctly) read the endstop.

The Cricut is a cool little cutting machine, aimed at the Craft/Scrapbooking market. It looks like a printer, but is more like a pen plotter. If you saw my previous post, I bought one for my loving wife Diana for her birthday.

Then, there was several of other pieces of software available such as Sure Cuts a Lot, and Make the Cut, which allowed you to use standard True Type fonts on your computer, as well as importing vector graphics from other software to cut your own design of graphics.

But, you are not out of luck just yet, I have worked out (with help from the internet) how to make the Make the Cut program work once again with the Cricut!

You see, Make the Cut uses plugins to interface to the Cricut, and other different Cutting hardware. It seems all the makers have done to make the software incompatible is remove the Cricut driver dll from the application.

Thank you so much for this info. I still have the Demo Version of Make the Cut and Sure Cuts a lot on my laptop. I also found I have the pccplug.dll as well.

The version of my cricut is v.2.3.4 so I think I am also fine there.

Yea, it should be easy to do.

Download the file on the computer with internet, then copy the file to disk

Any disk will do, as long as both computers can read the disk format. usb, dvd and CD should all be fine.

MATT, Could you please let me know where you found thePCCPlugin.dll ? I am looking for a trusted site, or could you possibly email it to me? I would be sooo grateful. Had been looking at the Cricut for months and went out on a whim and bought yesterday only to find this software MTC and SCAL no longer support it.

If you are quick enough you can hit stop before it cuts an x through your work

the software is great and I will buy it after I try a few more things to make sure I can do what I need to do with it.

Matt can you help me find the PCCplugin.dll a friends computer crashed and she need that file. I have been looking but looks as if PC has gotten to the ones I found to be taken down. Any help is appreciated. Thanks.

Thank you so much for this information. I bought my cricut on black Friday last year for a great price and then heard about the third party software only to be disapointed with not being able to use it. i am going to try it today and will post with the results

It worked perfectly. I had a harder time updating the firmware from Cricut then I did getting MTC to cut. If anyone has any issues with the drivers not automatically installing when you connect the cricut to a Win 7 computer. You can find a driver that works online. Cricut did not have an easy to find solution especially since the software claims to only work on XP or Vista 32 operating systems. It does work with win 7 64, just FYI. Thank you so much for the information. I used the trial MTC software first to make sure it worked and it did. Now I will purchase the software. I am one happy camper 152ee80cbc

no smoking signage free download

ffmpeg download m3u8 with headers

download free website background