469: Saving the World Is Not a Hobby

Chris and Elecia chat with each other about motor encoder reading methods, conferences coming up, soldering irons, schematic reviews, looking for a new job, and general life. 

Some conferences coming up in the embedded space:

Evil Mad Scientist Laboratories was purchased by Bantam Tools!

Starter soldering irons? It seemed like small pen-style ones were more popular than big soldering stations. See the Adafruit USB C Powered Soldering Iron - Adjustable Temperature Pen-Style - TS80P. Or for much less (but you can write your own firmware!), the Pinecil. And one vote for the RT Soldering Pen on Tindie because it uses Weller RT tips (which are more expensive than the soldering pen but much less expensive than the Weller station that uses the RT tips). 

Embedded Artistry has excellent advice for the role of the firmware in schematic reviews

Adafruit Playgrounds looks like a neat place to write up your project. 

SuperMario optimizations.

Transcript

Nordic Semiconductor empowers wireless innovation, by providing hardware, software, tools and services that allow developers to create the IoT products of tomorrow. Learn more about Nordic Semiconductor at nordicsemi.com, check out the DevAcademy at academy.nordicsemi.com and interact with the Nordic Devzone community at devzone.nordicsemi.com.


468: Designed to Kill All Humans

Anders Nielsen joined us to talk about why the 6502 is the best processor. 

Anders also sells 65uino kits on his store: imania.dk. For more explanation of what they are, how they work, attaching peripherals, and programming in assembly, look at Anders’ YouTube channel @AndersNielsenAA, read his blog on abnielsen.com, or read about it on its Hackaday.io project page.**

We also mentioned Ben Eater’s 6502 Kit, Adrian's Digital Basement - YouTube, and Rodnay Zaks’ Programming the 6502.

** Anders was a two time semi-finalist for the Hackaday Challenge but we didn’t talk about that. Here is his Hackaday page.

Transcript

Memfault is making software the most reliable part of the IoT with its device reliability platform that enables teams to be more proactive with remote debugging, monitoring and OTA update capabilities. Try Memfault's new sandbox demo at demo.memfault.com. Embedded.fm listeners receive 25% off their first-year contract with Memfault by booking a demo here: https://go.memfault.com/demo-request-embedded.

467: Temporary Axolotl

Chris and Elecia talk about cars, fleeting moments of fame, their year, and the sorry state of tools in the embedded space.

Chris became internet famous for asking a car dealership’s chatbot (powered by ChatGPT) to generate Python code for fluid dynamics problems. After this, someone else asked the chatbot to sell a car for $1. 

Pass the Bricks is an organization that takes Lego bricks and turns them into sets for kids who don’t have any. Speaking of re-use, contact the show if you’d like to get in touch with Nelson.

Chris is on 4 tracks on Flavigula’s album Nine Sided Die. He also enjoyed putting together an EMSL Bulbdial clock kit

Elecia will be speaking at the Embedded Online Conference.

Transcript

466: Attacked by a Goose on the Way to the Office

Ralph Hempel spoke with us about the development of Lego Mindstorms from hacking the initial interface to running Debian Linux as well as programming Mindstorms in Python. Happy 25th birthday to Lego Mindstorms!

Pybricks is a MicroPython based coding environment that works across all Lego PoweredUp hubs and on the latest Mindstorms elements. The creators are David Lechner and Laurens Valk.

Ralph was the first person to boot a full Debian Linux distro on the brick, see EV3Dev, a Debian Linux for Lego Mindstorms EV3. 

BrickLink was originally a site for third party resellers of new and used Lego sets and elements. The site was purchased by the Lego Group a few years ago. It's still a great place to buy individual parts - for example a 4 port PoweredUp hub to run the new PyBricks on :-)

ReBrickable is a site dedicated to taking off-the-shelf Lego sets, and creating something new with the set. In particular see the MOCs Designed by LUCAMOCS, fantastic Technic vehicles as well as interesting designs for vehicle subsystems.

Yoshihito ISOGAWA - YouTube is an absolute genius at coming up with practical applications of new LEGO Elements. Ralph recommends his books as “awesome to read”.

LEGO uses 18 Cucumbers to build real Log House 

Ralph highly recommends Test Driven Development for Embedded C  by James Grenning (who has been on the show: 270: Broccoli is Good Too, 109: Resurrection of Extreme Programming, and 30: Eventually Lightning Strikes).

Origami Simulator and Elecia’s origami generating python code on github

Transcript

Nordic Semiconductor empowers wireless innovation, by providing hardware, software, tools and services that allow developers to create the IoT products of tomorrow. Learn more about Nordic Semiconductor at nordicsemi.com, check out the DevAcademy at academy.nordicsemi.com and interact with the Nordic Devzone community at devzone.nordicsemi.com.

465: Dinosaurs, Pirates, Spaceships

Yanina Bellini Saibene joined us to discuss teaching, localization, barriers to learning coding, and global communities. 

Yani works on Teach Tech Together (https://teachtogether.tech/) with Greg Wilson. It is a fantastic resource if you are learning to teach. It is available in English and Spanish. She also works on The Carpentries which teaches coding and data science skills to researchers worldwide. 

Yani has a site (yabellini.netlify.app) that includes the courses she has online (for free). She is also the community manager of rOpenSci and is part of R-Ladies.

You can find Yani on fosstodon.org/@yabellini.

Transcript

Memfault is making software the most reliable part of the IoT with its device reliability platform that enables teams to be more proactive with remote debugging, monitoring and OTA update capabilities. Try Memfault's new sandbox demo at demo.memfault.com. Embedded.fm listeners receive 25% off their first-year contract with Memfault by booking a demo here: https://go.memfault.com/demo-request-embedded

464: Please Make This Monster Look Scary

Chris and Elecia talk about their favorite processors, their breakfast preferences, large language model ethics, presents, and Eeyore's birthday.

Elecia’s new edition of her book  Making Embedded Systems is finished! (Except for a couple months of tech reviews, updating, copyediting, and drawings.) It will be out in March.

All of the back issues of Byte Magazine

Chris’ radio kit that he mentioned but didn’t name is the QRP Labs QCX+ 5W CW Transceiver.

Different problem solving styles from Three Brown One Blue’s YouTube.

Please do not look directly into the sun.

Transcript

Nordic Semiconductor empowers wireless innovation, by providing hardware, software, tools and services that allow developers to create the IoT products of tomorrow. Learn more about Nordic Semiconductor at nordicsemi.com, check out the DevAcademy at academy.nordicsemi.com and interact with the Nordic Devzone community at devzone.nordicsemi.com.


463: Layers of Band-Aids

Kevin Lannen is an embedded systems engineer making powered wheelchairs safer. This sounded interesting to us.

Kevin works at LUCI Mobility (luci.com). Check out their tear jerker introduction video as well as technical description of over-the-air update concerns on smart wheelchairs. We also talked about the app that goes with the system: LUCI View.

You can find Kevin on Twitter (@kevlan) and LinkedIn.

Go Baby Go - The Adaptive Sports Connection

Transcript

Memfault is making software the most reliable part of the IoT with its device reliability platform that enables teams to be more proactive with remote debugging, monitoring and OTA update capabilities. Try Memfault's new sandbox demo at demo.memfault.com. Embedded.fm listeners receive 25% off their first-year contract with Memfault by booking a demo here: https://go.memfault.com/demo-request-embedded

462: Spontaneously High Performing

Marian Petre spoke to us about her research on how to make software developers better at developing software.

Marian is an Emeritus Professor of the School of Computing & Communications at the Open University in the United Kingdom. She also has a Wikipedia page

The short version of How Expert Programmers Think About Errors is on the NeverWorkInTheory.org page along with other talks about academic studies on software development topics.  

The longer version is a keynote from Strange Loop 2022: "Expert Software Developers' Approach to Error".

This concept as well as many others are summarized in Software Design Decoded: 66 Ways Experts Think (Mit Press) by Marian Petre and Andre van der Hoek (MIT Press, 2016). The book’s website provides an annotated bibliography. Marian has also co-written Software Designers in Action: A Human-Centric Look at Design Work.

She is current conducting inquiries into:

  • Code dreams: This research studies whether software developers dream about coding – and, if so, the nature of those dreams.  Following on from work on software developers’ mental imagery and cognitive processes during programming, this project investigates developers’ experience of coding in their dreams (whatever form that takes), and whether the content of such dreams provides insight into the developers’ design and problem solving.

  • Invisible work that adds value to software development: The notion of ‘invisible work’ – activity that adds value in software development but is often overlooked or undervalued by management and promotion processes – arose repeatedly in discussions at Strange Loop 2022.  Developers asked for evidence they could use to fuel conversations -- and potentially promote change -- in their organisations. This research aims to capture the main categories of ‘invisible work’ identified by developers (e.g., reducing technical debt; improving efficiency; addressing security; development of tools and resources; design discussions; …), and to gather concrete examples of the value that work adds to software.  

Transcript

461: Am I the Cow in This Scenario?

Chris and Elecia discuss the pros and cons of completing one project or starting a dozen. 

Elecia’s 2nd edition of Making Embedded Systems is coming out in March. (Preview is on O’Reilly’s Learning System.) She’s working on a companion repository that is already filled with links and goodies: github.com/eleciawhite/making-embedded-systems

If you’d like to know more about signal processing, check out DSPGuide.com aka The Scientist and Engineer's Guide to Digital Signal Processing By Steven W. Smith, Ph.D. And as noted in last week’s newsletter, there is an interesting overlap between smoothies and the Fourier Transform. 

Giang Vinh Loc used  Charles Lohr’s RISCV on Arduino UNO to boot Linux (in 16 hours). 

We also talked a bit about Greg Wilson’s recent episode with Elecia (Embedded 460: I Don’t Care What Your Math Says).

Transcript

Nordic Semiconductor empowers wireless innovation, by providing hardware, software, tools and services that allow developers to create the IoT products of tomorrow. Learn more about Nordic Semiconductor at nordicsemi.com, check out the DevAcademy at academy.nordicsemi.com and interact with the Nordic Devzone community at devzone.nordicsemi.com.

460: I Don’t Care What Your Math Says

Author, engineer, manager, and professor, Dr. Greg Wilson joined Elecia to talk about teaching, science in computer science, ethics, and policy.

The request for curriculum that started the conversation was the Cost of Change, part of NeverWorkInTheory which summarizes scientific literature about software development. 

Greg is the founder of Software Carpentry, a site that creates curriculum for teaching software concepts (including data and library science). Software Carpentry has great lessons for those who want to learn about software, data, and library science. It is a great site if you are teaching, trying to get someone else to teach, learning, or looking for some guidance on how to do the above. Check out their reading list.

Greg’s site is The Third Bit. Here you can find his books including full copies of several of his books including The Architecture of Open Source Applications, Teaching Tech Together, and most recently Software Design by Example

Transcript

459: Ideas Have to Come From Somewhere

Professor AnnMarie Thomas spoke with us about playful learning through joy,  whimsy, surprise, and meeting new people. 

We also spoke with AnnMarie about how adults can foster an environment that encourages innovation. See more about that (and the interviews of various engineers and makers) in her book Making Makers: Kids, Tools, and the Future of Innovation

You can find AnnMarie on Mastodon: mastodon.social/@AnnMariePT

If you want to know more about squishy circuits, check out AnnMarie’s TED talk: Hands-on science with squishy circuits (or the related book Squishy Circuits (21st Century Skills Innovation Library: Makers as Innovators)).

She is the head of The Playful Learning Lab at the University of St. Thomas where she is a professor of engineering and entrepreneurship

We also talked about the LEGO Foundation. More about that on LearningThroughPlay.com

AnnMarie suggested the cephalopod-centric novel The Mountain in the Sea by Ray Nayler. Elecia countered with The Soul of an Octopus by Sy Montgomery (non-fiction).

And now, a question for you to ponder, what is your most meaningful learning experience?

Transcript

458: Fiddling, DIY, and Cursing

Trond Snekvik spoke with us about developing VSCode extensions and Bluetooth meshes.

Trond is a Staff Software Engineer at Nordic Semiconductor.

Nordic’s Visual Studio Code Extensions include device tree and kconfig support for the Zephyr project as well as tools for nRF Connect. 

Trond’s github page: github.com/trond-snekvik

In 329: At Least 32-Bits, Thank You, Kate Stewart of the Linux Foundation spoke with us about Zephyr in 2020 

Transcript

Thank you to Christopher for providing a picture of what may (or may not) be a troll.

457: Rubber Duck Phase Cancellation

Chris and Elecia chat about their ongoing efforts to create and learn. Then they answer some listener questions. 

Duck quacks do echo but the echoes seem to align in phase so that there is no interruption making the echo sounds like an extension of the quack (Mythbusters episode in which Jamie says “Quack, damn you!”)

Elecia continues to work on Making Embedded Systems, 2nd Edition. The early release copy is available on the O’Reilly Learning System.

Classpert is offering an asynchronous cohort for Elecia’s Making Embedded Systems course.  You'd be going through the class with others and there will be discussions and mentor (and Elecia’s) help on the Discord. No live classes but you get access to the best bits of the previous live classes. Class starts in September.

Tickets are on sale for the tenth annual Hackaday Supercon is Nov 3-5, 2023 in Pasadena, CA. Someone there will be giving out stickers. More details to follow on that front. 

Elecia is enjoying OrigamibyBoice Crease Pattern Class YouTube series. (It is a prereq for The Plant Psychologist’s Origami Design Class.)

Last week’s newsletter (sign up here!) had tidbits about learning the Kalman filter. Some of that came from Elecia’s blog post about it, some were fresh. (More previous newsletters.)

There doesn’t seem to be a good introduction to semantic webs in linguistics. Here is a too-dense article about Semantic Maps as Metrics on Meaning from a Linguistics Discovery Journal.

If you like the show and would like to support the show, we now take Ko-fi donations (https://ko-fi.com/embedded), as well as Patreon and reviews in your favorite podcasting app. 

Transcript

456: Left Right Symmetry of a Banana

Damien George spoke with us about developing with and for MicroPython while Elecia tries not to spill all the secrets about her client.

To start at the beginning, you probably want to check out micropython.org. Wait, no, one step back. Before listening to the show, you probably should read the Wikipedia MicroPython entry because we kind of start in the middle in the show.

You can find the code on github: github.com/micropython/micropython.

The PyBoard can be found on store.micropython.org. It is out of stock but lead time trends show parts may be available soon(ish).

For more about branes, Lie point symmetries  and other physics fun stuff, check out Damien’s list of papers on dpgeorge.net.

Transcript

455: Snaps!

Natalie Friedman joins us to discuss when, where, how, and why robots should wear clothing. Natalie is a PhD candidate at Cornell Tech. 

Natalie’s website is natalie-friedman.com and you can find her papers in the research section. She has an Instagram account: @natalie.victoria.f

AIForGood shows several robots dressed in home, business and social attire.

Roomba cosplaying a mouse (Instructable)

Pepper is an android-ish robot made by SoftBank. There are many clothing lines devoted to dressing it for whatever occasion you need, simply search for Pepper robot clothing. What could go wrong?

Natalie recommended Fashion Is Spinach by Elizabeth Hawes. It is fascinating.

Transcript

454: Printf Hello

Uri Shaked surprises us with a chat about silicon design when we were expecting to talk about a web-based board simulator. 

If you want to try your hand at silicon design, check out Tiny Tapeout, a way to possibly get your design on to real silicon. The digital design guide is a great way to start looking at how chips work.

If you aren’t quite ready for silicon, Wokwi has a Verilog simulator where you can learn to do the digital design. The Verilog Simon Game on Wokwi is amazing. 

Wokwi is a web-Based simulator, simulating processors, boards, and peripherals. You can build a whole system there, from Dancing Servos to 7-Segment display from 30  LCDs and Arduino Mega to Raspberry Pi Pico boards you can program in C when you click More Options on the front page. You can also create your own peripheral using the Chip API. Or learn to use Zephyr on Wokwi.

And now there is Wokwi for VS Code

All that and Wokwi is open source: github.com/urish

Uri recommends reading Relax for the same result by Derek Sivers

Previously on Embedded 396: Untangle the Mess

Transcript

453: Too Dumb to Quit

Nathan Jones has been talking about building command line interfaces, good design practices in C, creating MCU boards, wielding the PIC of destiny, and going beyond Arduino. As we are too lazy to attend the conferences, we asked him to give us the highlights. 

Nathan is giving two conference talks at Crowd Supply’s Teardown 2023 June 23-24 in Portland, Oregon:

He spoke recently at the Embedded Online Conference about Object Oriented Programming (well, really good design practices). He has a related github repository so you can look at the examples for yourself. He also gave a workshop on creating a simple command line interface (another excellent github repo full of examples).

Probably the best place to start is his Embedded for Everyone Wiki where he collects all the bits and pieces you might want to know about getting into embedded systems.

Transcript

452: Numbers on Computers Are Weird

Julia Evans spoke with us about how computers compute. We discussed number representation including floating point as well as Julia’s extensive collection of ‘zines and comics.

Julia’s zines about debugging, managers, Linux commands, and more are available on WizardZines.com. If you want samples, check out the comics section. Also, the experiments (aka playgrounds) are great additions to the zines (and fun on their own), letting you explore without changing your own DNS or removing all the files from your root directory. If you want to check out numbers, look at memory-spy (or from other sites like https://float.exposed/ and https://integer.exposed/)

Julia also has a detailed blog on jvns.ca and active github repositories. She was on Embedded 141: Malevolent and Trying to Trick You.

Sponsorship of this episode by Volta Labs, an MIT spin-off that is developing a novel lab automation platform for genome sequencing. We raised $20 million as part of our Series-A funding and are hiring for several roles related to embedded software. All roles are full-time, 100% onsite in Boston, MA, and require the ability to thrive in an early-stage startup.

  • Senior Firmware Engineer - Design/develop/debug firmware for our instrument platform. Requires strong experience with RTOS, C/C++, ARM-based microcontrollers

  • Tech Lead, Instrument Software - Lead design/development of instrument control software. Requires prior experience as a tech lead and strong experience programming control systems in Python on Linux.

  • Tech Lead, Electrical and Embedded Systems - Lead design/development of electrical subsystems and firmware. Prior experience as a tech lead, strong experience with electrical design / bring-up, and integration between firmware and electromechanical systems.

Transcript

451: From Concept to Launch

Phillip Johnston of Embedded Artistry, Tyler Hoffman of Memfault, and Elecia White discuss the software tasks that tend to fall through the cracks after the device has all its features but before it is in customers' hands. Noah Pendleton of Memfault was the moderator. 

You can see the video on the Embedded YouTube channel or directly from memfault (also see their other panels and webinars).

Memfault’s Slack Channel and Interrupt Blog are both excellent resources for embedded information of all kinds.

Transcript

Information about the panelists


450: Swimming Through Nutritious Slurry

Kari Love joined us to talk about soft robotics, robots in religion, and squishiness.

Kari co-authored Soft Robotics: A DIY Introduction to Squishy, Stretchy, and Flexible Robots. Her website is karimakes.com. She was previously on Embedded 189: The Squishiness Factor

One of the pneumatic drives that we mentioned was a Hackaday Prize Winner: FlowIO. Another was the Soft Robotics Toolkit. However, Kari recommended Amitabh Shrivastava’s Programmable Air (Crowd Supply page for Programmable Air).

Some search terms for getting started with soft robotics: “DIY Jamming gripper”,  “Positive pressure gripper”, and “bendy straw robot joints”. (That last one leads you to the delightful video Make a Robotic Hand with Straws.)

Polysense conductive dye for making sensors out of found objects. (On Hackaday.)

Simulation of Soft Bodies in Real World Applications (for squish and stretch) include SOFA, Abaqus, and DiffPD.

Transcript

An incomplete list of power systems people have used for generating soft robotic motion:

  • Pneumatic - air and vacuum

  • Hydraulic - using liquid

  • Electrical - using currents

  • Thermal - using temperatures

  • Cable control - using motor control

  • Magnetic - using magnets

  • Chemical - using reactions

  • Photonic - using light

  • Biological - using living cells

  • Hybrid systems - multiple sources in tandem

An incomplete list of things people have used to make soft robots:

  • Fabric

  • Silicone or other rubbers

  • Flexible plastic

  • Plastic films

  • Metallic films

  • Paper

  • Carbon fiber

  • Silly Putty

  • Shape-changing alloys

  • Electroactive polymers

  • Liquid metals

  • Gelatin or Gluten

  • Cell tissue