Bubo-2T Steampunk companion bot 4 February 2023 4 minute read By Kevin McAleer Share this article on Table of Contents What is Bubo-2TInspirationFeaturesBill of MaterialsDownload the STLS and print todayGalleryCodeBubo-2TVirtual environment Tags robot steampunk companion bot 3D Printing Code Repo View Code Repository on GitHub
What is Bubo-2T Bubo-2T is a robotic owl made in the Steampunk style. Inspiration Bubo was the name of the clockwork owl in the 1981 movie Clash of the Titans. It was animated by Ray Harryhousen. I’ve take inspiration from other movies characters such as the Nautilus from the movie 20,000 leagues under the sea. I was also inspired by Tick Tock - the clockwork tin man from the movie Return to Oz. My other inspiration are creators of companion robots such as Alex Glow and her Archie robot, Jorvon Moss, and also creators of wearable tech such as Naomi Wu and Sophy Wong. Bubo-2T features advanced AI and machine learning, and can detect hand gestures made in front of it. Features 2 large eyes that open and close using 2 servers, one per eye Opening and closing mouth Each eye contains an Neopixel ring that is animated via a Raspberry Pi Pico The Pico is also connected via UART to a Raspberry Pi 4 2Gb One of the eyes also contains a Raspberry Pi Camera 3 Wide module The camera module enables the user to strike a pose, the hand gestures are detected and the camera will take a picture and tweet it to Twitter or Toot it to Mastodon (thats what the 2T or tooty means). Bill of Materials Item Description Qty Cost Pico Raspberry Pico 1 £6.30 RPI4 Raspberry Pi 4 2Gb 1 £79.50 NeoPixel Rings Adafruit 12 pixel Neopixel ring lights 2 £9.30 Servos DS-929MG 3 £9.60 M2 & M3 nuts and bolts Box of screws and nuts, various lengths 1 £9.99 Camera Raspberry Pi Camera Module 3 Wide 1 £36.90 Download the STLS and print today Download the files and start printing out your own Bubo today. face.stl back.stl body.stl bottom.stl base.stl base_mirror.stl eye_piece.stl lower_arm.stl lower_eyelid.stl lower_arm_mirror.stl mouth_arm.stl mouth.stl plaque upper_arm upper_eyelid upper_arm_mirror Gallery Code Here is the link to the Github repository: https://github.com/kevinmcaleer/bubo-2t The code for this project is made up of a couple of parts: hands.py - Demos the hand gesture recognition using a Raspberry Pi camera module 3 toot_randomiser.py - Demos how to randomise messages for Tweets or Toots toot.py - Sends messages to twitter (requires and app being setup in the Twitter Devleopment site) Bubo-2T This is a fun project, to create a companion robot that will take photos based on a hand gesture. It will then tweet or toot out the picture, with a randomly selected message. I’ve created the toot_randomiser.py because Twitter will think that there has been a mistake if the same message is tweeted multiple times, and I intend to walk round with this robot at the Makers Central event where people can pose for pictures, make the hand gesture, which it will then Toot out. To follow along with this project, you’ll need a Raspberry Pi (I’m using the 4, 8gb model), running on the latest Raspberry Pi OS (I’m using the 64bit version). There is a bug or issue with the new camera library libcamera2 and OpenCV & CVZone, so to work around this instead of running python hand.py we have to use libcamerify python hand.py and that seems to fix it. Virtual environment You’ll need to create a new virtual environment for Python using the command: python3 -m venv venv Then type: source venv\bin\activate This will enable the environment. Once in the environment you can install all the prerequisites using the command: pip install -r requirements.txt The toot.py code will do the actually tweeting of messages using the tweepy library.