• Skip to primary navigation
  • Skip to main content
  • Skip to primary sidebar
  • Skip to footer

The Coding Couple

Pair programming is a lifetime commitment.

  • Home
  • Categories
    • Arduino
    • JavaScript
    • Python
    • Raspberry Pi
  • About Us
    • Privacy Policy
  • Contact

I made a Sphere-O-Bot (An EggBot Mod)

April 3, 2019 by Ashley

Sphere-O-Bot | Eggbot Egg drawing robot
Sphere-O-Bot | Eggbot Egg drawing robot

As Easter approaches, I thought building a Sphere-O-Bot (EggBot) would be a fun a STEM related project for the season. I 3D printed the parts for the Sphere-O-Bot, a variant of the original EggBot by Evil Mad Science, and purchased the hardware kit from JJ Robots.

Printing and assembling the EggBot was simple. Getting it to run properly was not (more on that down below).

3D Printing Sphere-O-Bot

3D printed parts to the Sphere-O-Bot
3D printed parts to the Sphere-O-Bot

I used Fillamentum’s Vertigo Galaxy and Sky Blue for the printed parts.

Assembling Sphere-O-Bot

Hardware kit for the Sphere-O-Bots from JJ Robots
Hardware kit for the Sphere-O-Bots from JJ Robots

Assembling the EggBot was pretty straight forward. I purchased the hardware kit from JJ Robots. I might have been able to save a little money sourcing my own parts, but opted for the simplicity of having that work done already. I followed JJ Robot’s online assembly instructions.

If you want to see a few more photos on assembling the drawing bot hop over to my crafty blog, Handmade with Ashley.

Troubleshooting Sphere-O-Bot / EggBot

The main focus of this blog post is sharing my troubleshooting process and what steps I had to take to get the EggBot communicating properly with Inkscape.

EggBot Extension not showing in Inkscape Extensions Submenu

This was a user error that had stumped me briefly. I made a poor assumption about where to save the EggBot files and wasted time in the process.

If you aren’t sure, open the Preferences window in Inkscape. Navigate to the System node in the Tree View and observe the directory path under Inkscape extensions.

Inkscape Preferences dialog window
Inkscape Preferences dialog window

Unable to find EggBot on any Serial Port 🙁 error message

After I verified I could communicate with the EggBot via Arduino’s serial monitor, I tried communicating with it via Inkscape and failed.

Unable to find an Eggbot on any serial port Inkscape EggBot Control error message
Unable to find an Eggbot on any serial port Inkscape EggBot Control error message

Two things ultimately resolved this error:

  1. Hardcoding the Arduino board’s hardware ID in eggbot_scanwin32.py
  2. Installing 32-bit Inkscape

Hardcoding the Arduino board’s hardware ID

Hardcoding the hardware ID is an idea I got after a bunch of googling on the issue. Two Github issues on the error that I found helpful are:

  • Failed to connect to EggBot
  • Unable to find an Eggbot on any serial port 🙁 Error reading serial data

I modified the line that initialized hKey in eggbot_scanwin32.findEiBotBoards() to include a direct reference to the hardware ID I copied from the Device Manager for the Arduino board.

A screenshot of eggbot_scanwin32.py opened in Visual Studio Code
A screenshot of eggbot_scanwin32.py opened in Visual Studio Code

Not sure where to find the Arduino’s hardware ID?

  1. Open the Device Manager
  2. Under the Ports (COM & LPT) node locate the Arduino and double click. (Mine shows up as USB Serial Device) This will open the properties dialog window for the device.
  3. Under the Properties window, go to the Details tab.
  4. On the Details tab, find the Property combo box and select Hardware Ids
  5. The Arduino’s Hardware Id should display in the Value field.

Unfortunately, despite the modification to the code I was still having communication issues.

Installing 32-bit Inkscape

As I was debugging the eggbot.py file, I noticed the program kept failing in eggbot.testSerialPort() on lines related to calls in pyserial. The errors that I was running into were related to incompatibility between 32-bit and 64-bit. I had 64-bit Inkscape installed.

I installed 32- bit Inkscape and ran it and could now successfully communicate with the Eggbot via Inkscape.

Decorating Easter Eggs with the Egg Bot / Sphere-O-Bit

Sphere-O-bot in action
Sphere-O-bot in action
Robo Car Poli and Lightening McQueen drawn on plastic eggs with the Eggbot
Robo Car Poli and Lightening McQueen drawn on plastic eggs with the Eggbot
Eggbot drawing vs How the image looks in Inkscape
Eggbot drawing vs How the image looks in Inkscape
Close up of the Robo Car Poli and Lightening McQueen EggBot drawings
Close up of the Robo Car Poli and Lightening McQueen EggBot drawings

Watch a demo of the Eggbot down below:

CLICK HERE to check out some of our other Arduino projects.

FIND US ONLINE!

  • Instagram: @thecodingcouple
  • Twitter: @thecodingcouple
  • GitHub: @thecodingcouple

Related Posts

  • How to watermark images with Python and Pillow (PIL)How to watermark images with Python and Pillow (PIL)
  • Creation Crate Month 2: An Arduino Powered Memory GameCreation Crate Month 2: An Arduino Powered Memory Game
  • Tinkering Around with Adafruit’s PyBadge LCTinkering Around with Adafruit’s PyBadge LC
  • Using WSL on Corporate VPNUsing WSL on Corporate VPN
  • Creation Crate Month 3: An Arduino Powered Distance DetectorCreation Crate Month 3: An Arduino Powered Distance Detector
  • 3 JavaScript Gotchas for the C# Developer3 JavaScript Gotchas for the C# Developer

Filed Under: Arduino, Debugging, Python

Previous Post: « AdaBox 005: Break for Pi | Adafruit Subscription Box
Next Post: Tinkering Around with Adafruit’s PyBadge LC »

Primary Sidebar

Social Media

  • GitHub
  • Instagram
  • Twitter
  • YouTube

Recent Posts

  • Pokémon Color Picker | A web app built with HTML/CSS + JavaScript
  • Pokéball Single DIV CSS Drawing | Tutorial
  • Error: [🍍]: “getActivePinia()” was called but there was no active Pinia
  • Trijam #261 Game Jam Diary: One Wrong Move
  • Using WSL on Corporate VPN

Recent Comments

  • Lizzy on Creation Crate Month 2: An Arduino Powered Memory Game
  • Ashley Grenon on Creation Crate Month 2: An Arduino Powered Memory Game
  • Lizzy on Creation Crate Month 2: An Arduino Powered Memory Game
  • kelly on Creation Crate Month 2: An Arduino Powered Memory Game
  • Ashley on Creation Crate Month 3: An Arduino Powered Distance Detector

Follow us on Instagram!

This error message is only visible to WordPress admins

Error: No feed found.

Please go to the Instagram Feed settings page to create a feed.

Categories

  • Arduino
  • Conferences
  • Debugging
  • Game Jams
  • HTML and CSS
  • JavaScript
  • Programming Languages
  • Python
  • Raspberry Pi
  • Today I Learned

Archives

  • May 2024
  • April 2024
  • March 2024
  • May 2022
  • December 2021
  • May 2021
  • March 2020
  • January 2020
  • December 2019
  • November 2019
  • October 2019
  • June 2019
  • April 2019
  • September 2017
  • April 2017
  • August 2016
  • July 2016
  • June 2016
  • May 2016
  • April 2016
  • March 2016
  • April 2015
  • January 2015

Tags

adafruit arduino brackets c# code smell codestock coding standards conventions creation crate debugging developer devspace electronics es6 es2015 game development game jam gotcha hackathon hoisting html html5 javascript led naming conventions nintendo phaser pluralsight pokemon programmer python raspberry pi retro retropie scope self improvement single div single div drawing subscription box TIL today I learned troubleshooting vue vuejs windbg

Footer

About Us

We are the Coding Couple.  Two people who met in college and decided they wanted to pair program for the rest of their ...

Read More »

Most Recent Posts

Pokémon Color Picker | A web app built with HTML/CSS + JavaScript

Pokéball Single DIV CSS Drawing | Tutorial

Error: [🍍]: “getActivePinia()” was called but there was no active Pinia

Trijam #261 Game Jam Diary: One Wrong Move

Social Media

  • GitHub
  • Instagram
  • Twitter
  • YouTube

Copyright Notice

© The Coding Couple, 2015 – 2023. Excerpts and links may be used, provided that full and clear credit is given to The Coding Couple with appropriate and specific direction to the original content.

Copyright © 2025 · Foodie Pro Theme by Shay Bocks · Built on the Genesis Framework · Powered by WordPress