This post was originally posted on Medium but has since been ported over to my own blog, right here!

Ever since I became a software engineer, I knew I wanted to become more involved with robotics. Whether that was professionally or just for fun, the engaging and fascinating world of robotics always inspired me. After spending just a single night playing around with Sphero’s latest and most advanced robot, BOLT, I have fallen in love all over again and am filled with so many new ideas to bring to life!

Just launched on September 10, BOLT has some awesome features:

  • For software engineers like me, BOLT provides JavaScript support to create custom programs
  • For my local elementary school visits or with individuals interested in coding, Scratch blocks and simple drawing is also supported to create programs
  • It has a beautiful programmable 8x8 LED Matrix that can display colors, text, and animations
  • You can create animations with a built-in Matrix editor in the Sphero Edu app or use some of their pre-built ones
  • BOLT to BOLT infrared communication allows for more advanced movements and a variety of games
  • A built-in compass that allows you to auto-aim your robot
  • Battery life of 2 hours
  • A simple pilot mode to navigate your robot around

Having read their comprehensive JavaScript documentation and perusing their Sphero-built programs, I had the cool idea to have my BOLT say hello in different languages while showing the origin country’s flag. I’ve called it BOLT: Hello Everyone! and have published it publicly so that everyone can download it for their own BOLT robot! It can also be found in the Community Programs catalog within the Sphero Edu app or site. I’ll also go in more depth about creating it in this post!

Lighting Fast Setup

After unboxing, I was impressed with how intuitive and quick setup was. I connected the inductive charger via USB, charged it for a few minutes, downloaded the Sphero Edu app, and authenticated via Google. Within 5 minutes, I was ready to connect to my BOLT via Bluetooth:

Connecting to my BOLT via Bluetooth in the Sphero Edu app

Using the Sphero Edu App

I immediately began designing the different flag animations I wanted to show on the BOLT’s 8x8 LED matrix. I chose the Philippine, German, American, and Spaniard flags to represent the “Hellos” I would have the BOLT speak in Tagalog, Deutsch, English, and Spanish. These are the languages I am most familiar with!

The frame animation editor is incredibly intuitive, comprehensive, and easy to use on the Sphero Edu app! You can choose colors, drag and drop frame order, duplicate frames and much more! It was a blast to use :) And being a software engineer myself, I want to give a big shout out to the design and engineering teams at Sphero Edu who worked on the BOLT and the Sphero Edu app! I would be so proud to have worked on something as clean, functional, and engaging as this!

Creating the last frame of my American flag animation in the app

After creating each flag animation, I was able grab the registerMatrixAnimation JavaScript snippets from the Sphero Edu site as the app quickly syncs my programs to my account. This is great as this code can be cumbersome to write by hand, especially if your frame animations are a bit more complex. Now, the fun begins!

Using JavaScript to write my BOLT: Hello Everyone! Program

Using their JavaScript docs as reference, I wrote a simple program to have my BOLT iterate through my array of “Hellos” and do the following each time:

  1. Spin around in a pleasant way, as if to motion “Hi!”
  2. Play a pre-built Smiley animation that aligned with the spoken “Hello”
  3. Have the translated “Hello” spoken
  4. Play the appropriate flag animation based on which “Hello” was said
  5. Play a fun coin sound from Sphero’s comprehensive sound library
  6. Turn exactly 90 degrees and move forward a bit
  7. Do it all over again until all “Hellos” have been iterated though.
JavaScript support for BOLT programs

To see the code, view the entire helloEveryone.js file on my GitHub!

That’s it! Once my program was ready, I just hit the “Start” button to run it! Here it is in action:

Isn’t that awesome! I’m planning to add more languages soon. And more flag animations!

I had so much fun that I’m already clamoring to get home from work to create more! Overall, I’m extremely happy with the BOLT and Sphero, the extensive support and community that surrounds the product, and the endless possibilities it provides for me to get creative. :) If you are interested in learning more or purchasing one, click here!

Thank you to Sphero and Lola Red for providing me with my own BOLT to review!

Thank you so much for taking the time to read through my article. If you enjoyed it, please let me know in a comment below. Or even better, if you feel this article would be helpful to other devs, please share it to spread the knowledge and love. ♥️

For more from me, be sure to follow my blog. To see what I'm currently up to, follow me on Twitter && Instagram!