Ask HN: Best way to learn robotics with a 10 year old?

hersko | 224 points

My advice as a parent and electrical engineer. Buy kits. Don’t go to electrical engineering. There is nothing interesting there. Only lots of wasted time. Your son is not interested how to calculate resistor’s value in motor control circuit. Your son needs no frustration with failing printed circuit boards. He needs something spectacular what moves (and is visually appealing) and causes light errors to learn from.

My path: Chinese 3 wheel chassis, Arduino and I2C color sensor. Line follower robot to be extended to multiple color sensors. It sounds easy, but it will occupy you with your sine for few weekends. Afterwards you’ll see what part is most interesting for your son. Bigger robot, bigger processor, bigger wheels, more speed, a camera instead of color sensor. Maybe just cool paint.

Good luck with your project!

lnsru | a month ago

Many of these comments are about robotics as it's taught now, focusing on code and cameras and algorithms and motion planning.

As someone who's built both BattleBots and Professional Robotics for work, BattleBots is a great way to get out of equations and hands on fabrication, manufacturing, testing, and scrappiness that is so hard to reach in mechanical and electrical engineering. And unlike FIRST or Lego robots, it's much more open ended and "guardrails off" engineering, which I found really freeing from the tyranny of academic-style competition robotics. You can still incorporate all the sensors and algorithm-stuff (many folks build their own motor controllers like "brushless-rage" or have sensors like Chomp), but if you just love seeing things move and love mechanical design, it's a great thing.

For BattleBots in particular, the easiest way to get into it is to find some guides online for a simple bot[1] with DC motors and a 3D printed body, and just enter it into a local combat robot competition! You'll learn the basics of a motor, speed controller, selecting wheels and other interfaces, as well as designing a chassis and fabricating it. At a competition you get the thrill of the fight, and afterwards you can sweep your robot scraps into a dustpan, make friends with other bot builders and go from there.

[1] A quick search on instructs Les and I found this, though there are many more great robot tutorials: https://www.instructables.com/Naked-Singularity-Beetleweight... . Here is one that overviews all the basic steps in a BattleBots https://www.instructables.com/How-to-design-and-build-a-comb...

potatomaster2 | a month ago

I know that you said you don't want a premade kit and following instructions and this is *close* to that... but I think it might still be a great fit.

Mark Rober has a new product where they ship a new robot every 2 months. They give you the basic instructions on how to build/program it but the idea is that you take that knowledge and then expand on it yourself by adding features. My daughter is still a little too young for it so I haven't used it personally. The biggest issue is that it is a subscription and not a one time purchase.

Here is the link: https://www.crunchlabs.com/products/hack-pack-subscription

And here is a brief video explaining how it expands beyond the normal "premade robot kit." https://www.youtube.com/watch?v=TtdOdUi9b_s

JoblessWonder | a month ago

FIRST (https://www.firstinspires.org/) is a more structured program intended to be organized through schools or similar communities (homeschooling groups, 4H, etc.). I have more experience with the bigger robots intended for high schoolers, but they have programs all the way down to kindergarten.

Doing something similar at home is very possible, and if you are nearby an existing team or program they are usually more than happy to have a conversation with parents about how to get their kids started even if it doesn't mean joining the team.

glasss | a month ago

I was going to recommend

https://en.wikipedia.org/wiki/Lego_Mindstorms

but is is discontinued. In terms of easy of build and programming these were great. This kit is still available

https://education.lego.com/en-us/products/lego-education-spi...

PaulHoule | a month ago

This was how I started with my son, who was also 10. Have him learned Scratch from MIT, learn how logic is constructed in a program Then I got him a couple of Snap Circuit kit. I know you said no kit, but this is just to learn basic circuit and electricity flow. Then we used a Raspberry Pi to learn Python. Once he's comfortable with Python a bit, I set up an environment to program micro controller, specifically the ESP32. I flash Micro Python on there and we started to program some LED string lights. Then control motors with H-Bridges. After that, it's onto robotics and anything we can get our hands on. I repurpose a baseball pitching machine to launch pickleball, with bluetooth connectivity to boot! All with an ESP 32, I can control the speed and rotation of the ball, which the original machine only had one speed and no rotation. It took my son about 2 years to get from zero to building robots. Good luck!

Dnguyen | a month ago

My kid asked me the other day to build him a radio, so I took his request kind of seriously and I showed him an AM radio circuit that we could put together. Then he started screaming and crying because he wants it now. Like in this instant. So I'll do something else instead. He's only 3, so his attention is definitely not like a 10 year old :)

sgt | a month ago

This isn't quite what you asked for, but as a kid who grew up on Lego Mindstorms I would have loved to have Spintronics back then:

https://upperstory.com/en/spintronics/

This is more about learning about electicity in a tangible physical way, using puzzles to learn -- so it's maybe a level lower than your intent, but it is for kids 8 and up and seems like even adults could learn quite a bit from it.

It's really hard to describe though - I strongly recommend watching the video at that link or at least looking at a picture.

astroid | a month ago

I’ve been a middle school and high school robotics coach for a number of years. I think VEX robotics makes the best products to teach kids of any age robotics.

https://www.vexrobotics.com/

You buy a relatively affordable kit of parts, but then you are free to assemble and program the bit in whatever way imaginable.

VEX annually comes out with new games and challenges for your robot to be able to complete. There are teams and clubs across the US, and it’s an all around great program.

I’m looking forward to my kids being old enough to build and compete, It’s a blast for kids and adults!

mknapper1 | a month ago

If you don’t have time to join a league, you can buy Spike Prime sets directly. It comes with hour-long lessons that you can walk through at your own pace. It’s been excellent for my 7 year old, she has no problem with it.

https://education.lego.com/en-us/products/lego-education-spi...

fintler | a month ago

Plugging my own robot: Blossom is an open-source social robot made from 3D-printed or lasercut parts and a crocheted / knit cover.

https://github.com/hrc2/blossom-public

It's basically a floating head that others have customized with more functionality (e.g. cameras, microphones, screens, control with a phone) for research applications in human-robot interaction (education, telepresence, an assistant for ADHD task-focusing and CBT). We ran ~90 minute bot-building workshops for middle schoolers; they all successfully completed their robots and seemed to enjoy the hands-on experience.

psychomugs | a month ago

You might consider something like the Lego Mindstorms robotics kit.

It gives you an accessible starting point, but is a fully featured programming language and has a variety of sensors, motors, etc which can be made into increasingly complex and diverse robots.

floor2 | a month ago

> but i know nothing of electrical engineering or robotics.

A few words of advice from someone who has been dabbling for a decade or so, but never really managed more than some half baked prototypes and a few kit builds. You need to consider these three trade offs: time, skill, and money.

Time: If you have a lot of time, you can learn what you need to learn to build a robot. Learn 3d modeling/printing to make a chassis (my local library has a 3d printer if you don't want to buy one). Learn how to piece together microcontrollers, motor controllers, BMS, and sensors, etc... And learn how to program everything to work together.

Skill: If you already are pretty good building things, programming, etc... you can leverage those skills. For a robot chassis, it can be done with things around your house, but you need to have the skills and a bit of creativity to make a good one. If you know the arduino ecosystem pretty well, you can pretty easily put together a prototype board, etc...

Money: You can buy a prebuilt chassis, or a board that has integrated motor controllers and BMS, etc... This will save you time and you will probably end up with a nicer end product than what you could build yourself. Of course the more you lean into this, the closer you are getting to a kit build robot. And FWIW, a kit robot is probably going to be cheaper than mixing and matching prebuilt components + some DIY.

Also, it kinda depends on what you want to do. Do you just want a little robot that drives around the house (cheap and easy). Or maybe does some line following (also easy). Or do you want a self-balancing robot, or a robot arm (a bit harder and more money). Or something really fancy like a self landing model rocket or a self driving lawn mower (expensive and difficult). You will probably want to start with the easy stuff first, just so you can get a feel for it. And then move up the difficulty ladder from there. But from my experience the time/skill/money trade off goes up fairly exponentially. Getting a half baked prototype for a simple rover is a weekend long project. But doing something really sophisticated or polished is months/years of effort (unless you want to drop some coin to speed things up). It is a fun hobby, but it does require a bit of investment before you start getting impressive results. If you think you and your kid are up for it, then dive right in. But if you think this might be more of a short term curiosity, then a kit or something similar is probably your best bet.

qqqwerty | a month ago

Battle bots are not exactly robotics, they’re RC cars with extra servo channels. Personally I find them boring compared to FPV, but the entry is pretty much the same - watch YouTube tutorials. You could find a book but anything you’d find there would be outdated, unless you need the absolute basics like Kirchhoff's circuit laws - which are as useful for building stuff as set theory is useful for writing wrappers for REST APIs.. just don’t connect negative to positive and you should be fine:)

You might learn Fusion if you want to 3D model the chassis - again, everything is on Youtube.

Good luck!

05 | a month ago

If NHRL is what you want to do then checking out an r/c airplane club and asking questions may be a way to get started. That's going to give you an idea on how transmitters, receivers with multiple channels and servos/speed controllers work.

Once you understand how transmitters/receivers work and what servos and speed controllers do then you can construct a chassis. The speed controllers would drive the motors moving the robot around and then a servo could open the valve on a flame thrower or something...

They key is understanding the radio control tech first.

chasd00 | a month ago

Well, I was where you were 15 years go, said kid now is a robotics engineer.

First off, are they interested in the mechanical engineering and fabrication challenges? Or more interested in the behavior and controls challenges? Because you may chose a different path. At one point I regarded battle-bots as just an RC car with a bad attitude. But I have to admit that there are a lot of interesting mechanical design challenges to be solved. Melonee Wise did battle bots... and went on to co-found Fetch and is now CTO at Agility, so it can certainly lead to interesting things.

If more interested in behavior and controls challenges, then maybe you don't want to go the competition route at all, but want to make up a "challenge" and build a robot to target that. Like build a robot that can patrol your house, and take pictures of all the doors. Kind of a "security robot" (but not really all that useful) but I guarantee you will learn a lot attempting that. (In fact, that is probably too much for a first challenge.)

Lego Mindstorms has a lot going for it, but ultimately becomes limiting. Definitely not a bad place to start with a 10yo, but expect to move on.

Pololu and SparkFun have a lot of interesting modules, Pololu last I looked also had some basic platforms that make a good place to start. Also, depending on where you live there may be a good robotics club to join.

dbcurtis | a month ago

My 8yo daughter and I have been using a pile of relatively cheap BBC Micro:Bit boards to do simple robotics, electronics (motor controllers, screens) and RC fun.

What makes it better than (eg) Micropython on cheaper hardware the Blocks programming language. She had some experience with Scratch before and the libraries for this are great. The built in led matrix and sensors are useful and the radio is nippy enough for remote HCI.

There are quite a lot of accessories available from a few different manufacturers. These can minimise build time and let you focus on programming, but you can DIY. I think there's even a Lego breakout.

I will add, this has been a gateway hobby for me. While she's learning, I'm learning and I'm using my C and Python experience to have fun with really cut down boards. It's fun but you end up making a hell of a lot of "oh it's just £10 for a pack of motor controllers, MOSFETs, resistors, caps, etc etc etc." It's endless.

oliwarner | a month ago

Find a FIRST Lego League (RLL) team for the kid.

Maybe buy Lego Mindstorms and Lego Technics for home and when the kid runs out of ideas, give them challenges like a line-following robot or a FLL course.

Then move to a FreeNove Ultimate Sarter Kit. I prefer the Arduino Uno based kits, but the ESP32 kits have their place as well.

RecycledEle | a month ago

It depends on how deep you are able and willing to go. Getting 'something' to work is not that difficult, especially when all you end up with is essentially a remote controlled car.

But as soon as you actually want to build the thing you need to work out what your end goal is, how it is physically put together (lets call that the chassis), how it is going to mechanically move, how you are going to drive that movement and how you are going to control that driving method, and then how abstract it needs to do (are you telling it what to do, or telling it what end goal to pursue?).

Starting with Lego, or perhaps meccano will let you build the physical thing, maybe even have it move with a remote control. You'd get the plastic (Lego) or metal (Meccano) parts as-is and you build whatever you want. Add a two motors and you can drive wheels and steering. Add a receiver and a remote and you have your remote controlled vehicle.

Edit: fischertechnik is another brand that makes parts you can assemble in whatever way you want (some random YouTube Hit: https://www.youtube.com/watch?v=yVzK3VaYxS8 ), it apparently has something that also lets you go to PLC levels of robots controllers: https://www.rapidonline.com/fischertechnik-robo-tx-controlle... . This is of course not what you'd pick if you also wanted to build the entire controller.

But when you don't want that plastic or metal ready made, and you don't want modules that deal with motors or controllers for you, you now also need to learn some metal working, electronics (microcontrollers, RF transceivers, power management), and software (those microcontrollers won't program themselves).

Maybe starting with a kit isn't such a bad idea, and then going up a level at a time (i.e. tackle some of the software, or maybe mechanics) and getting to see the results of your work is a good thing, rather than trying to learn everything at once.

oneplane | a month ago

I have been there and this is what I finally settled to. If he starting from complete newbie (no programming background etc), I would suggest start by learning programming only in well controlled environment. Be it python, MIT scratch (for start) or even Basic. Together with this you can try simulated robotics with something like Roboacademy[1]. It is a simulated robot, that you program with very simple instructions to solve pretty amazing problems.

The reason I say is this. Robotics is at the juncture of programming, electronics and mechanics. Learning robotics from zero is learning all of these 3 simultaneously and in a frustrating way. It is frustrating because, real world stuff breaks/faulty parts, misaligned parts, buggy firmware etc. Suppose you want to give a simple instruction move forward 3 seconds, turn right, move forward 2 seconds, but real world stuff has misaligned wheels, it wont turn exactly 90 degrees, it varies between servors/motors of the same model/make, there is jitter etc etc. So many fine-tuning and adjustments you have to make in the real world, and that takes focus and interest away from the creative fun part.

So my suggestion would be learn programming, learn a bit of electronics with age appropriate kits etc, before combining them to robotics.

[1] https://www.robomindacademy.com

meekaaku | a month ago

Robotics is sexy and there's no reason not to dive in, but I'd suggest also learning some of the fundamentals. Learning how control algorithms work is incredibly important and I'm thinking you could probably find some examples of building a simple application for a PID controller where your kid can directly manipulate the values and see how it responds. You don't need to go really deep into the math necessarily, just objective of each parameter and how they influence the behavior of the system.

jcims | a month ago

Modern robotics with deep learning/imitation learning is surprisingly accessible. The low-cost robot arm I used in this project is very easy to 3D print and assemble: https://github.com/trzy/robot-arm

An iPhone app is used to teleoperate the arm and gather examples of an action. You then train the model and deploy it and the arm performs the actions based on current camera input and joint angle state.

trzy | a month ago

Depending on what you want to do, Bowler Studio is something you might want to play with.

It's a FOSS robotics software toolkit; you can model the entire robot and simulate nearly every aspect (including physics and servos and whatnot). Using it you can design, test, print, and assemble in a relatively nice fashion.

I mostly use BowlerStudio for 3D printing CAD stuff, but it does a lot, and since it's free I think it's worth playing with.

tombert | a month ago

The Lego Boost set is quite a nice set. It comes with three servo's and a color/distance sensor. The scratch like programming tools are nice and accessible and not that limited. However you can also flash micropython on the controller with PyBricks. Then you can pair it with other Lego hubs and a remote over bluetooth.

This setup gives you pretty much all the possibilities of Mindstorms at a small fraction of the investment

tda | a month ago

Buy one of the kits at Pololu Robotics, it was the first robot I ever built when I was in grade school 25 years ago, and set me off on a great trajectory to design and build robots, medical devices, and all kinds of hardware professionally.

https://www.pololu.com/category/2/robot-kits

iancmceachern | a month ago

Regarding programming environments, I highly recommend MicroBlocks(https://microblocks.fun/). I was a big MicroPython fan before, and since switching to MicroBlocks, I've never looked back.

If your child has experience with Scratch, then MicroBlocks will make him feel very familiar.

alan_russell | a month ago

So as someone who teaches robotics to middle school Students, FIRST lego is still the best program for kids. If you would like to learn CAD, EE, 3D printing, and microcontrollers, then certainly go the battle bots route. However, this will be a steep learning curve for your son and he may get frustrated. With FIRST, he will move from FLL to FRC in late middle school which has much more open road. He will also learn to work as a part of a team and solve problems in concert with peers which is different than a father son team. FLL is intense and almost a year round pursuit. Find a good home school team for him to join and he’ll get the best experience.

timst4 | a month ago

Since you are a starting out from zero a sumo robot would be a good choice. It is a well known quantity at this point with lots of parts, simple rules, and very focused on the battle aspect. You can build two at once and program them against each other.

I’d do a web search for “sumobot arduino” and go from there.

pryelluw | a month ago

A few months ago, I saw this documentary about maze-solving robots that really impressed me: https://youtu.be/ZMQbHMgK2rw?feature=shared This might be an interesting use case.

kromnomo | a month ago

They've pivoted away from the consumer market heavily, but you can grab some used LittleBits systems to get the initial absolute basics. Gizmos & Gadgets would be ideal but you could potentially get away with their star wars kit (which people seem desperate to get rid of) and one of their programming boards (microbit and Arduino)

You could then pivot from this by reusing the code you've already done and switch over to custom circuitry.

Am not sure how it compares to Mindstorm but I'd suspect they haven't held their value used in the same way as Lego products tend to.

JansjoFromIkea | a month ago

Don’t forget to also cover safety :)

carterschonwald | a month ago

The LEGO Technic Motor Kit is the best introduction.

A snap-together kit built RC car is the best way to teach servo control, motor ESC, and basic battery handling concepts.

3d printer kits like Voron or Prusa is the best way to learn stepper motor motion platforms. The FreeCAD/CAM workflow is identical most CNC gcode based machines.

The cheapest introduction to electronics theory is a Ham radio license. This will answer how RF remote controllers work, and develop an intuition about EE design.

Get a bulk pack of Arduino hobby boards, resister pack, and LEDs. This allows you to bring together all these bits to solve robotics problems.

Building a turtle bot is super easy with the above skills.

Remember to have fun, =3

Joel_Mckay | a month ago

I've been looking for robots recently that work with Scratch.

I found one called VinciBot that looks kind of interesting - https://www.youtube.com/watch?v=BftyB954_r4 I like the fact it can draw (it doesn't look like it can pick up the pen by default though, but it appears to have a motor inside that you can attach Lego components to).

I installed their android app to have a little look at it.

anfractuosity | a month ago

We did computers and a 10 year old via raspberry pis and Lego. The pis give you a full operating system with WiFi and scratch plus gpio pins, plus a well developed catalogue of peripherals and community. Step one is to blink a LED, step two, drive a hobby servo off a gpio pin. Step three add more servos including continuous rotation ones with wheels. Step four: buy a 3D printer and print specialist Lego bits. All with a sob for a tenner.

Peteragain | a month ago

Take a look at the Finch robot: https://www.birdbraintechnologies.com/products/finch-robot-2.... Version 2.0 has really evolved and is quite nice.

tbensky | a month ago

Play "Turing Complete"! It gives a very intuitive understanding about how electronics become computers, but the best part is that you basically make the entire thing from scratch. Just completed it and had a blast

bitterblotter | a month ago

I found this[1] from Team Witchdoctor which seems to be exactly what i want but it's very expensive at $300.

[1] https://shop.teamwitchdoctor.com/products/camp-witch-doctor

hersko | a month ago

Found this which seems pretty cool and uses very inexpensive components: https://www.instructables.com/How-to-Build-a-Battebot-With-C...

hersko | a month ago
[deleted]
| a month ago

Do you have a Makerspace/Hackspace near you? There will be people there with a ton of knowledge and experience you can learn from and ask questions, and they'll also have equipment you can use.

darreninthenet | a month ago

There's a bunch of cheap kits on sites like AliExpress. I'd personally would love to just sit down and assemble a bunch of mini robots while learning eletronics and micro controllers

atum47 | a month ago

A good starting point is to learn the Logo programming language, get comfortable with that. It is not robotics but it helps to develop core skills.

Then maybe robotics kits and such.

29athrowaway | a month ago

Idk if it's still around or not but Lego Mindstorms I think it was called was the gateway into my robotics interest as a kid.

junon | a month ago

Get the school to start a Vex Robotics competition team. My son has been in it for 3 years in middle school and he is absolutely hooked.

97s | a month ago

Try out https://circuitmess.com. They have great kits.

plurby | a month ago

Checkout out Edison: https://meetedison.com/

fach | a month ago

Consider seeing if your local school or community has a FIRST lego robotics team.

Suppafly | a month ago
[deleted]
| a month ago

Together is the best way.

I prefer to learn how everything works and build something custom instead of just buying a premade kit and following instructions.

Together is probably your child’s preference. A premade kit goes straight to the building phase. And kits are something they can undertake theirself as they pursue independence in two or three years.

You are launching a person. Good luck.

brudgers | a month ago

do you want to build one or does your son want to build one?

b20000 | a month ago

get a - roomba create 3 for 400 - arm built of dynamixel servos for 200 - camera for 100-500 (stereoscopic will set you back but its worth it) - nvidia jetson nano orin nx (500)

for about 2k, you can make a robot that can clean your house and is probably smarter than a dog/cat

awahab92 | a month ago