Ringo robot had got a big success on kickstater, there were 738 backers totally supported this project about $85,478.
Who is Ringo?
Ringo is a super cute pet robot bug based on the Arduino UNO and packed with goodies including an accelerometer, gyroscope, 6 awesome RGB LEDs (NeoPixel lights), music chirper, and more. Everything you need to bring to life a real personality in a digital pet of your own.
The robot was inspired and co-designed by my 1st grade daughter Hailey and my 3rd grade son Parker, who are both already writing C code. (Check the longer "back story" below!) Ringo grew out of a project intended to build just one robot for my kids but we realized something much greater could be done in producing Ringo for the masses. We hope it will catch the curiosity of young engineers and also have a particular appeal to girls who may not otherwise become interested in coding and technology.
"They see something that looks complicated, and they now look at it with curiosity rather than intimidation."
Hailey and Parker with their Ringos
We have always been interested in the idea of the “digital pet”, and for that matter, any kind of machine or robot that exhibits a personality. That was the real driving force behind the design of Ringo. We wanted to put some really useful parts on a circuit board that is very easy to program, then see what people do with it. We’ve already written code to do much of the heavy lifting for you, and we’ve also written a pile code examples to get you started.
Ringo is suitable for anyone just getting started in programming and robotics all the way up to highly experienced users who may come up with more advanced behaviors. As the Plum Geek website goes live shortly before shipping Ringo to backers, we plan to focus on education and provide lots of written and video examples of how to write code for the robot. We’ll start with simple examples like how to make the motors go and how to make the lights pretty colors. Then we’ll build on these concepts to more complex behaviors. Beginner lessons will show the very basics setting up the Arduino software on your computer and of writing simple code.
A Group Effort
One cool aspect of a robot like Ringo is that he can exhibit millions of possible behaviors, but because the hardware is the same between units, all code written for Ringo can be directly shared with anyone else. The shared code can be uploaded to another Ringo and it will behave in exactly the same way. Once the website goes live we will begin to feature lists of behaviors submitted by the user community. Others will be able to quickly load this example code on their own Ringo for quick entertainment, as well as having the opportunity to learn from the code from others and even customize or expand on it. This is truly the greatest aspect of an open source project!
Design files, schematics, and source materials will be released when Ringo ships to backers. This is a fully open source project.
Ringo was inspired by some of the BEAM robots, particularly the Photopopper Photovore from solarbotics.com. We have built robots from an Arduino in the past by connecting an assortment of various shields and break-out boards that have similar functionality to Ringo, but they weren’t as cute. We thought it was reasonable that we could squeeze all the important bits from our “collection of boards” robots down into something the size of a BEAM type robot. (Google “Beam Robot” and prepare to be amazed!) And so, Ringo was born.
So what about these goodies? Here’s a quick run down.
Based on Arduino UNO: Ringo uses the same microprocessor as the Arduino UNO, and runs at 8 MHz which is adequate for the functions Ringo will be expected to perform. You’ll use the Arduino IDE coding environment to write code for Ringo. He is fully compatible with all the functions and libraries available for the UNO board. We have also written some custom libraries and functions which do the heavy lifting when it comes to dealing with the accelerometer, gyro, and the math associated with calculating movements.
3-Axis Accelerometer: Can be used to sense movement in all 3 axis. Can also be used to determine the orientation of the robot as well tap detection. So you can trigger behaviors when the robot is moved or swatted by your cat. This sensor can be used as a basis to make Ringo travel specific distances, or when moved by an outside force to return to his starting position, etc. The part is a Freescale MMA8451QR1.
3-Axis Gyroscope: Can be used to determine which direction Ringo is facing. It works in all 3 axis, though the flat axis will be most useful as you can determine how far he has turned, or to cause him to turn a specific number of degrees. The part is an ST L3GD20TR.
Six RGB LEDs: Each of these LEDs can create a mix of red, green, and blue which basically allows you to create any color you want by mixing the three values. These are the same lights used in NeoPixel products from Adafruit Industries. (Thanks Limor!!!) The code to control the lights is super simple to use and the lights enable all kinds of expression. Two lights on the top, two on the bottom, and both eyes light up. Bling!
Sound Element: The piezo sound element can create any sort of pings, tones, and chrips you can think of. Can be used to give Ringo a voice as he explores his environment. Can also be used to play musical notes.
Light Sensors: Three sensors can measure ambient light 360 degrees around Ringo, allowing him to respond to light, shadows, etc.
Infrared Light Sources: Three IR light sources are placed pointed 120 degrees apart. They can be enabled individually in any pattern and can be driven together at the same time. This allows creating signals like those from a TV remote to communicate with other Ringo bots or control appliances like your TV. They can also be used together with the Light Sensors to detect objects or movement near Ringo.
38 kHz Receiver: This is a special sensor designed to sense the modulated light signal produced by most TV remote controls. Use the included remote or teach your Ringo to respond to your own remote. Imagine if each time you change a channel on your TV that Ringo dances around your coffee table. Cool!
Edge Sensors: A light sensor and an IR light source are hidden under both of Ringo’s feelers. This allows him to sense edges and follow lines. We’ve had success creating mazes with lines or tape on a desk. What other uses can you come up with?
Charging: Ringo charges his battery automatically whenever plugged into the programming adaptor, or when a USB cable is connected directly to his USB port. (Note the USB port on Ringo does not provide any data communication, it is simply used as charging input). A “charging status” LED is provided so you can see when he has completed charging.
Pager Motors: The tips of the motors contact the running surface, allowing Ringo to skate around your table. Both motors can be controlled independently. They can run forward or backward at variable speed.
Programming Adaptor: The programming adaptor is a go-between for your computer and Ringo.
The prototype Ringo units use a simple brass bar as a motor mount. The motors were attached with 3M VHB tape. The production Ringo units that will be shipped to backers will have a proper and more substantial motor mount. The mount will be made of nickel plated spring steel which will be soldered into locating holes on the circuit board. The production mount will firmly hold the pager motors.
As a stretch-goal, if we are able to raise $15,000 in pledges, we will upgrade the battery in all Ringo robots to a 250 mAh or 300 mAh Lithium Polymer (LiPo) cell resulting in longer run time.
Early Concept Drawings, Proof of Concept
The "Longer" Story Behind Ringo
One day as Parker was about to start the 2nd grade, I wired up an RGB LED to an Arduino board and showed him how he could control the color and blink timing by writing simple instructions. I’ll never forget seeing his eyes the moment it dawned on him that he could actually control this thing. He pushed me aside from the keyboard and spent the next two hours writing color sequences. I explained that the brain inside our robots worked the same way, and that it’s just as easy to control motors and read light sensors.
My daughter Hailey heard this and got involved. She saw how easy it was for Parker to control lights and she wanted to know how to program a robot. She was still in kindergarten, but she had no problem understanding the logic of what the simple programs were doing. My wife and I were amazed at how quickly they were able to pick up the basics, and we knew we needed to go further with this.
I suggested to the kids that we could design our own custom robot from the circuit board up and Hailey was super excited about the idea. I told her if she could help me come up with a good design, that I would have some boards made and I would build one for her. I thought it would be fun to involve her in the creative process.
I'd made her a BEAM robot the year before from a solarbotics.com kit and she had played with it like it was a pet. It suddenly occurred to me that if we were to add a processor and some sensors while keeping the cute "pet" feel, that kids and especially girls would be driven to learn some basic programming as a means of giving it a personality.
I realized we may be onto something that could really help encourage people to take the first steps in learning technology and that this needed to be bigger than just making one robot for my daughter. If we were to create robots with a cost within reach of the average family, and then to create a free educational video series along with them it would be very powerful in showing people of all ages that they really can learn to code, to develop, and to make. This would also be a great way to give back to the open community that got me started in electronics in the first place.
So a year ago we got serious, and today we're off to take the next big step. Thank you for your support, and we would be forever grateful if you would share our project with your friends and other educators on your social media. Two quick clicks of the Twitter and Facebook icons would go so far. :-)
We think robotics are particularly valuable to pique the curiosity of young developers. Being able to control the behavior of this “living” machine has fascinated both of our kids. They have learned to write simple code not because of an interest in programming itself, but rather because it allows them to make the robot do something new. Robotics put users in close contact with the hardware which naturally inspires questions about the basic building blocks and the circuitry itself. This encourages them to understand it is realistic for them to have ideas, then put together the basic components to build their ideas, and finally to write the software to give life to their ideas. They see something that looks complicated, and they now look at it with curiosity rather than intimidation.
The Team behind Plum Geek
The team behind Plum Geek has several years of experience manufacturing and fulfilling large quantities of consumer electronics products for other industries. We have our own assembly equipment and we have much experience with quality assurance, final assembly, packaging, and the various gremlins that sneak into any well laid plan. We have an existing and proven solution for shipping and fulfillment as well.
When designing Ringo, we have been careful to only use parts that are readily available in large quantity with little or no lead time. Presently, there is plenty of stock available in the US for all key components (enough to build over 10,000 Ringo bots as of this writing) so it is unlikely a part will require a long lead time. All critical electronic components will be purchased from reliable sources here in the US.
We will source the printed circuit boards, the motor anchor clip, and all connectors direct from Asia. We have relationships with circuit board companies, several metal stamping companies, and other miscellaneous parts distributors based in Asia. We have worked with these companies over the last couple years and so far, they have been completely reliable.
There is some chance that parts sourced from over seas could be lost or otherwise unusable. This would add some additional time, but as these parts have a relatively low cost, we would still be within budget if some parts needed to be purchased a second time. This is unlikely but it is a risk worth mentioning.
A fulfillment delay could result if one of our assembly machines were to go down and could not be quickly dealt with. We do have relationships with five contract manufacturers here in the US that could pick up the slack should a significant problem arise with our own in-house manufacturing line. Typically these contract manufacturers have about a six to eight week turn around time, so a two month delay is the longest we can imagine if we had to fall back on one of these outside manufacturers. Again this is unlikely, but worth mentioning.
Overall, the Ringo build is well within our normal operating ability and we do not foresee any likely problems or delays that could not be easily dealt with. Of course we will keep backers updated and in the loop throughout the entire process!