Brilliant report - really clear what's happening here, and the video tells the story excellently, thank you.
One thing wasn't clear though - the serial port disconnection. I can't see this happening in the video. Do you get a notification in windows that the USB has disconnected? How do you know it's disconnected?
The good news is that your main problem is very simple to solve: You need to "set home" before any movement will make any sense. If you don't use "set home" to tell the machine where the pen is, then the machine has a kind of weird "default" position, that is miles off the board in some unlikely direction.
When you click "return to home", it tries to run the motors to move the pen from it's default position (20 foot off in some random direction), towards the home point. This is a long way, and takes a long time, so it looks like it's hung, but in fact it's just working away.
Every time you turn the machine on, or reset it, or reconnect the com port, you need to do a "set home" to re-orientate the machine. OR you can do a "set pen position" if you happen to know exactly where the pen is on the board. ("set home" is the same command as "set pen position", but with a pre-set position.)
The other good news is that you've discovered a genuine bug in the wild 🙂
The controller "knows" from the conversation it has with the machine, what kind of firmware is loaded (UNO, MEGA, Polarshield for instance), and only offers features in that it knows that firmware supports. For instance, if you connect to a UNO based machine, it doesn't offer the option to render spiral or sawtooth based pixels, because it knows that machine can't do them.
So! The bug is that the controller thinks that MEGA based machines can draw sawtooth pixels, when in fact they can't. The messages you see "... not recognised" are exactly that, it doesn't recognise the C15 commands.
Now, there's two solutions to this:
1) Fix the controller so it _doesn't_ offer the opportunity to choose options that don't work. I can do this easily, but the work around is just to not use sawtooth.
2) Enable sawtooth in the firmware. I can't remember why it isn't in there already - but I think it was because sawtooth was simply never very good. Not a very impressive style.
Good luck,
sn
|