Archive of the former Yahoo!Groups mailing list: Homebrew PCBs

previous by date index next by date
previous in topic topic list next in topic

Subject: Re: [Homebrew_PCBs] Re: Produce Quick & Cheap PCBs with a CNC paper cutter

From: David Mitchell <gossiphog@...>
Date: 2012-06-22

Getting the Cricut machine to talk HPGL is a project I was working on
for several months last year. I based my work on an extension of the
"Freecut" firmware written for the Cricut Personal.

(see https://github.com/Arlet/Freecut)

I've ported it to the Cricut Create, and it does indeed speak a few
HPGL-like commands, but the place where I've gotten stuck is with
flow-control. My plan was to support the commands that other vinyl
cutters support (like the Black Cat, Roland, or US Cutter). This
firmware does require re-flashing the unit via ICSP programmer
connected through the cartridge port, which also irretrievably
overwrites the original firmware.

The Cricut has a FTDI chip on it providing the USB interface to the PC
which (from my understand) transparently converts XON/XOFF signals
from the onboard processor into USB flow control signals that the PC
obeys.

Unfortunately, the serial library I used (Fleury) does not support
software flow control, so unless you type your commands very slowly
into a terminal window, the machine skips most of them. The hardware
flow control lines on the FTDI are not connected to the Cricut's
processor, so this is not an option.

I started a private google group a while back with the purpose of
collaborating on it, but unfortunately noone else has taken up the
project since I got bored of it and moved on. I would love to find
someone with more motivation and a little better C skill than I to
finally solve the flow control problem. (see
https://groups.google.com/d/forum/ccfwhack).

Another idea I had that might be simpler to implement is a PC
parallel-port adapter to Cricut cartridge adapter cable, sending
encoded stepper control signals directly from PC to cricut via 1 mbps
SPI, and a thin firmware on the cricut that would obey those signals.
The PC would run something like LinuxCNC, using a custom configuration
for the parallel port driver.

I don't believe the USB interface is capable of fast enough throughput
to handle direct stepper phase control, but step-direction commands
might work. (flow control would still be an issue).

Here's a page linking to photos of the Cricut Personal, Expression,
and cartridge hardware. They control the stepper windings directly
rather than with dedicated stepper driver hardware. Cutting pressure
is via PWM to a voice coil in the cutter solenoid.

http://www.built-to-spec.com/cricutwiki/index.php?title=Main_Page

I have several Expressions as well, which have the same processor as
the Create, but will need some additional code changes to support the
larger screen, additional keyboard buttons, and larger cutting area.

Anyhow, if you're seriously interested, join the list above. I can
potentially provide some dev hardware as well.

-David


On Fri, Jun 22, 2012 at 7:43 AM, jeremy youngs <jcyoungs76@...> wrote:
> linuxcnc outputs step/dir directly and is configurable and needs no signal
> conditioning before a l293/97 etc. conditioning or coding is only necessary
> for microprocessors. i have three sla7086 printer stepper setting on my
> bench now that run just fine
>
> On Fri, Jun 22, 2012 at 7:36 AM, Tony Smith <ajsmith1968@...> wrote:
>
>> ∗∗
>>
>>
>> > LinuxCNC (or anything else for that matter) won't talk to the CriCut,
>> you'd have
>> > to add your drivers and bypass all the electronics. Most of these things
>> use some
>> > form of HPGL, or mangled a bit to provide security (presumably that's how
>> it
>> > was reverse engineered).
>> >
>> > not necessarily true some printers run a simpl l293, 278 or 298 that will
>> directly
>> > communicate with lcnc, i know ive built them, however if your machine is
>> > operated via microprocessor without the source code it will not work as
>> you
>> > say. This is why i said the pinout was necessary as if it has enable
>> input
>> , or bus
>> > line it probably will not work, if it has simple step and direction
>> inputs
>> as per the
>> > ic mebtioned above I could make it work. I say try it the only thing he
>> has to lose
>> > is some time.
>>
>> Well, what I meant was there will be some electronics before the stepper
>> drivers (293 etc), that converts the HPGL (or whatever) to Step &
>> Direction.
>> Some use weird driver chips simply replacing the lot is easier than
>> figuring
>> it out.
>>
>> You can't just plug it in as it and expect it to work.
>>
>> Tony
>>
>>
>>
>
>
>
> --
> jeremy youngs
>
>
> [Non-text portions of this message have been removed]
>
>
>
> ------------------------------------
>
> Be sure to visit the group home and check for new Links, Files, and Photos:
> http://groups.yahoo.com/group/Homebrew_PCBsYahoo! Groups Links
>
>
>