about the author Known worldwide for his LEGO MINDSTORMS creations Daniele Benedettelli has been collaborating with The LEGO Group in testing and developing LEGO MINDSTORMS MINDSTORMS products for the last 12 years In 2012 he was hired as an external programmer for LEGO Education and he developed the programs for the LEGO MINDSTORMS Education EV3 Core Set models He is the author of Creating Cool LEGO MINDSTORMS NXT Robots Apress 2008 LEGO MINDSTORMS NXT Thinking Thinking Robots No Starch Press 2010 and The LEGO MINDSTORMS EV3 Laboratory No Starch Press 2013 As a freelance LEGO designer Daniele creates models based on LEGO Education Education products for companies that run after-school and enrichment programs He also creates complex working models of industrial automation plants for large multinational companies such as CEA Technologies Reply and ABB Robotics He has participated in many LEGO events and he’s been invited to give lectures and hold workshops in many countries Currently Daniele works as a tenured high school robotics teacher in Tuscany Italy His YouTube channel boasts millions of views and his creations have been featured on many TV shows around the globe You can learn more about his work at his website https robotics benedettelli com and his Facebook page http www facebook com robotics benedettelli about the technical reviewer Xander Soldaat is a former Mindstorms Community Partner for LEGO MINDSTORMS MINDSTORMS He was an IT infrastructure architect and engineer for 18 years before becoming a full-time software engineer first for Robomatter and currently for VEX Robotics For the past five years he has been working on developing firmware firmware and programming environments for various robotics platforms in the field of education In his spare time he likes to tinker with robots and 3D printing as well as assemble and paint wargaming miniatures vi
acknowledgments When a new LEGO product like LEGO BOOST comes out it’s hard to resist writing a new book about it but man it’s tough work There are many people I need to thank for making this possible First thanks to my extraordinarily patient wife Lucia for bearing with me and understanding that after all sometimes I work with LEGO toys rather than just play with them Thanks to our lovely Maria Sole who helped crash-test all the robots in this book with her chubby little hands Thanks to Marco Agostini a smart kid who helped me test the book’s content content and gave me ideas for future projects Also thanks to Beatrice Grasso a bright creative girl for her suggestions on how to make the building instructions clearer Thanks to the No Starch Press team especially to Bill Pollock for opening his door when I come knocking with a new idea and to Annie Choi and Meg Sneeringer for their support reviews and suggestions A big thanks to Xander Soldaat a long-time LEGO colleague who is as sound and serious technical reviewer as he is a witty friend when hanging out in person or remotely A huge thanks to all the LDraw community members who developed the bits and tools to create high-quality building instructions Special thanks to master builder and book author Philippe Hurbain Philo a master in modeling 3D LEGO elements to Roland Melkert for his awesome LDCad software to Travis Cobbs for creating LDView and to Trevor Sandy for his work on developing LPub3D built from the ashes of Kevin Clague’s original software Thanks to my dear photographer friend Francesco Rossi http www fr-ph com for the great photo on the book’s cover Francesco this time it was easy wasn’t it vii
To Lucia with love
brief contents your LEGO BOOST creative toolbox it’s me MARIO getting around with Motor blocks introduction xv parT i programming basics 3 chapter 1 7 chapter 2 chapter 3 21 chapter 4 moving your robot precisely 31 repeating actions with loops 43 chapter 5 Hi I’m an explorer chapter 6 47 chapter 7 detecting colors 57 parT ii intermediate techniques a line-following robot 67 chapter 8 following walls 79 chapter 9 chapter 10 a voice-activated robot 89 chapter 11 taking a look around 101 121 chapter 12 playing darts chapter 13 building techniques 137 parT iii brickpecker chapter 14 BrickPecker a Brick-Sorting Bird 163 chapter 15 programming BrickPecker 187 parT iv cyboT chapter 16 building CYBOT chapter 17 programming CYBOT 197 225 experiment answer key 239 index 249 ix