Instructables

Web Controlled EggBot

Featured
Picture of Web Controlled EggBot
Control the original EggBot via Web Browser!

Usually, the EggBot is controlled by Inkscape running on the host computer. To draw an image on an egg, Inkscape sends a bunch of commands via USB. As the EggBot is completely open source, the format of those commands is readily available. This allows us to control the EggBot in "real time", sending individual commands  by clicking buttons in a remote Web-browser.

The computer connected to the EggBot no longer needs Inkscape. Instead, it hosts a small, custom Web service providing an HTML user interface and a simple REST API to change x, y and pen up/down, as well as a separate Web page to set up pen min/max.

Material

  • Egg
  • EggBot, assembled and tested with Inkscape
  • Host computer (WinXP SP2 or higher, Mac & Linux might work with Mono but have not been tested)
  • Client computer, iPad or smart phone with Web-browser
  • Web cam (optional)

Infrastructure
  • Internet access with DHCP, no public IP address needed
 
Remove these adsRemove these ads by Signing Up

Step 1: Get familiar with EggBot commands

Picture of Get familiar with EggBot commands
PuTTY_Echo.png
PuTTY_Serial.png
(This step is mostly educational, but it might provide some extra fun and maybe some insight into how the EggBot works.)

As mentioned before, the EggBot is controlled with commands sent to it via USB. Here we'll try to send individual commands by hand .

The USB driver coming with the EggBot makes it available via serial COM ports. To find the corresponding COM port in Windows, press "<WINDOWS>-R" and type "devmgmt.msc" (without the quotes). Now you should see the "Device Manager" window. Open the "Ports (COM & LPT)" sub-tree and try to find an entry that starts with "USB Serial (UBW-based) communications port (COM...)". Write down the number of the COM port, e.g. "COM24".

In order to manually talk to the EggBot we also have to download a serial communication tool . There are several such tools. Here we'll use PuTTY which is available for free from: http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html

Start PuTTY.exe and configure it as follows: Select the "Terminal" node and set "Local echo" to "Force on". Then select the "Session" node and set the "Connection type" to "Serial". Above the radio buttons a new text box appears. Enter the exact COM port you wrote down before (*). Then, make sure the EggBot is powered and connected via USB and hit "Open" in PuTTY. Now you should see a command window.

To check the connection, type "TP" (which means "toggle pen") in the command window and hit <RETURN> . The command is immediately sent to the EggBot and confirmed with "OK". Then you can try "SM,1000,50,0" to move the X motor and "SM,1000,0,50" to move the Y motor. Another useful command is "EM,0,0" (disable motors). There are many more commands and parameters, but be aware that some of the commands might move the strong motors in unexpected ways that can break or damage the pen arm or one of your fingers. Anyway, the format of the EggBot commands is called "EBBCommands" (for "EiBot Board Commands") and documented here: http://www.schmalzhaus.com/EBB/EBBCommands.html

*) Note that the baud rate of the serial connection does not matter in this case, as the serial COM connection to the EggBot is merely emulated by the USB driver (see also http://www.schmalzhaus.com/UBW/Doc/FAQ.html ).
Bartuss8 months ago
I want to make the same thing with my cnc machine. Good work!
vishalapr2 years ago
Amazing !Rated 5*
tamberg (author)  vishalapr2 years ago
Thanks a lot!
Have a look at my instructable!
zazenergy2 years ago
very cool! Now all your friends can decide what they'd like to see drawn next.
tamberg (author)  zazenergy2 years ago
Exactly! Crowd sourced egg designs FTW. Cheers, tamberg
Pro

Get More Out of Instructables

Already have an Account?

close

PDF Downloads
As a Pro member, you will gain access to download any Instructable in the PDF format. You also have the ability to customize your PDF download.

Upgrade to Pro today!