Shawn Hymel
@shawnhymel.bsky.social
π€ 1545
π₯ 814
π 305
Embedded Systems Educator & Course Developer |
#IoT
#EdgeAI
|
https://linktr.ee/shawnhymel
pinned post!
I'm excited to announce my new course! π "IoT Firmware Development with ESP32 and ESP-IDF" is designed to take you beyond Arduino to building professional
#IoT
devices with
#WiFi
, HTTP/HTTPS, MQTT, and SSL/TLS. π
learnembedded.dev/courses/iot-...
#ESP32
#microcontroller
#embedded
#programming
loading . . .
IoT Firmware Development with ESP32 and ESP-IDF
Build Real IoT Devices. Master the Toolchain. Get Certified. Unlock the full potential of the ESP32 by learning how to write production-grade firmware using ...
https://learnembedded.dev/courses/iot-firmware-development-with-esp32-and-esp-idf/
5 months ago
0
12
3
If youβve ever logged data to an SD card or saved files on a
#microcontroller
, you've probably used FatFs without realizing it. As I'm working on a port for it, I'm reminded what a great embedded
#OpenSource
project looks like. π
shawnhymel.com/3113/an-ode-...
#embedded
#programming
#Arduino
4 days ago
3
18
3
Check out the latest edition of Elektor magazine!
@edgeimpulse.com
did a full guest takeover, and I talk about my fun
#AI
toaster project π
#embedded
#maker
#electronics
loading . . .
5 days ago
0
7
1
#FreeRTOS
vs
#Zephyr
is something I hear a lot. The reality is that they're different tools for different jobs. I've written down some of my thoughts after using them both. π
shawnhymel.com/3106/zephyr-...
#embedded
#RTOS
#programming
#microcontroller
loading . . .
Zephyr vs FreeRTOS: How to Choose the Right RTOS for Your Embedded Project - Shawn Hymel
Every time I mention Zephyr, I inevitably get a few responses along the lines of βjust use FreeRTOS.β I admit, FreeRTOS is amazing, but it might not be the
https://shawnhymel.com/3106/zephyr-vs-freertos-how-to-choose-the-right-rtos-for-your-embedded-project/?utm_source=bluesky&utm_medium=social&utm_campaign=general_courses_blog
11 days ago
0
9
2
Final
#ROS
episode is out! I look at how to make ROS control actual, physical hardware. It usually involves creating separate programs to talk directly to the sensors and actuators. Check it out! π
www.youtube.com/watch?v=GIxo...
#robotics
#Arduino
#programming
@openrobotics.bsky.social
loading . . .
Introduction to ROS Part 12: Talking to Microcontrollers
YouTube video by DigiKey
https://www.youtube.com/watch?v=GIxoTWuxcXg
16 days ago
0
6
0
After 20 years in embedded systems, here are the 10 things I wish I knew when I started (#Arduino, hardware, debugging, timing, RTOS, and real projects). π
shawnhymel.com/3100/10-thin...
#embedded
#programming
#microcontroller
#rtos
loading . . .
10 Things I Wish I Knew Before Learning Embedded Systems - Shawn Hymel
As I reflect back on my embedded systems journey for the past 20 years, I'd like to share some of the insights along the way. I figured a "10 things I wish I
https://shawnhymel.com/3100/10-things-i-wish-i-knew-before-learning-embedded-systems/?utm_source=bluesky&utm_medium=social&utm_campaign=general_courses_blog
18 days ago
0
40
11
Quintessential
#Colorado
π
loading . . .
22 days ago
0
5
0
Follow up to last week's
#ROS
video: this time we create a listener and demonstrate how the TF2 library works by making a follower
#robot
in turtlesim. Check it out! π
www.youtube.com/watch?v=4bW7...
#robotics
#Python
#programming
@openrobotics.bsky.social
loading . . .
Introduction to ROS Part 11: TF2 Broadcasters and Listeners | Digikey
YouTube video by DigiKey
https://www.youtube.com/watch?v=4bW7UxwGjl8&list=PLEBQazB0HUySWueUF2zNyrA8LSX3rDvE7&index=11
22 days ago
1
4
0
Iβm reading Cal Newportβs βDeep Work,β which is making me rethink my work habits. What are some of your favorite productivity tips? Check out my full blog post on the psychology of focus: π
shawnhymel.com/3095/how-int...
#productivity
#focus
#programming
#education
loading . . .
How Interruptions Destroy Focus: What Neuroscience Says About Deep Work, Productivity, and Learning - Shawn Hymel
Once or twice per year, I like to read a productivity book to help hone my habits. Iβm currently on Cal Newportβs βDeep Work,β which dives into the psychology
https://shawnhymel.com/3095/how-interruptions-destroy-focus-what-neuroscience-says-about-deep-work-productivity-and-learning/?utm_source=bluesky&utm_medium=social&utm_campaign=general_courses_blog
25 days ago
0
4
0
Learn how to set up a secure Mosquitto MQTT broker on Linux (from installation to TLS encryption) in my latest video! π
shawnhymel.com/3085/how-to-...
#IoT
#MQTT
#Mosquitto
#embedded
loading . . .
How to Use the Mosquitto MQTT Broker (With SSL/TLS) - Shawn Hymel
Mosquitto is a free, open source broker maintained by the Eclipse Foundation. Itβs also intentionally lightweight: Mosquitto focuses solely on MQTT message
https://shawnhymel.com/3085/how-to-use-the-mosquitto-mqtt-broker-with-ssl-tls/?utm_source=bluesky&utm_medium=social&utm_campaign=esp32_iot_course_evergreen
about 1 month ago
0
9
0
Looking for a
#robotics
and
#AI
engineering competition? Check out Intrinsic's "AI for Industry" Challenge! As it turns out, wiring and
#electronics
assembly is quite difficult for robots. You get the chance to solve it!
www.intrinsic.ai/events/ai-fo...
#physicalAI
#engineering
loading . . .
AI for Industry Challenge
Intrinsicβs inaugural βAI for Industry Challengeβ is open to developers and roboticists who want to impact some of the worldβs most intractable, unsolved and valuable problems in electronics manufactu...
https://www.intrinsic.ai/events/ai-for-industry-challenge
about 1 month ago
0
2
0
Today is the day for getting this little bugger working π¦Ύ
#robotics
about 1 month ago
1
6
0
Snagged this gem off eBay π
#FinalFantasy
about 1 month ago
0
3
0
App Lab for the new UNO Q can be quite limiting. If you want to use the more powerful command line (CLI) to transfer and run projects, check out my guide here: π
shawnhymel.com/3074/how-to-...
#embedded
#microcontroller
#Linux
#Python
#maker
@officialarduino.bsky.social
loading . . .
How to Use the Command Line (CLI) With the Arduino UNO Q - Shawn Hymel
If you've been working with the Arduino UNO Q, you've probably noticed that Arduino's official approach pushes you toward using App Lab: a server-based
https://shawnhymel.com/3074/how-to-use-the-command-line-cli-with-the-arduino-uno-q/?utm_source=bluesky&utm_medium=social&utm_campaign=general_courses_blog
about 1 month ago
5
89
11
We hosted a Ghibli watch party last night with some friends (we watched My Neighbor Totoro and Howlβs Moving Castle). I made okonomiyaki, which I havenβt done since college. I even found vegetarian substitutes for everything, and it turned out great β€οΈ
about 1 month ago
5
33
1
Time for another
#ROS
video! In part 9, I cover launch files in both
#Python
and
#XML
. ROS 2 offers a slick launch system to handle spinning up your nodes (with parameters). Check it out! π
www.youtube.com/watch?v=nVZJ...
#robotics
#programming
#ros2
loading . . .
Introduction to ROS Part 9: Launch Files | Teaser
YouTube video by DigiKey
https://www.youtube.com/watch?v=nVZJCV07ED4
about 1 month ago
0
4
0
MQTT is a lightweight messaging protocol widely used in
#IoT
systems. It was originally designed for monitoring oil pipelines over low-bandwidth, unreliable satellite links. Check out my latest blog post and video if you want to learn more about
#MQTT
! π
shawnhymel.com/3046/what-is...
loading . . .
What is MQTT? An Introduction to the Lightweight IoT Messaging Protocol - Shawn Hymel
If youβve worked with Internet of Things (IoT) devices, youβve probably come MQTT. Short for Message Queuing Telemetry Transport, MQTT is one of the most
https://shawnhymel.com/3046/what-is-mqtt-an-introduction-to-the-lightweight-iot-messaging-protocol/?utm_source=bluesky&utm_medium=social&utm_campaign=esp32_iot_course_evergreen
about 2 months ago
2
9
0
If you're interested in
#robotics
and
#AI
research, check out this impressively low-cost leader arm on Kickstarter (useful for collecting training data). The creator invented a new type of magnetic encoder to make it happen!
www.kickstarter.com/projects/del...
loading . . .
Discrete Mechatronic | Delta Track
Compact, low-cost, six-axis, passive leader arm.
https://www.kickstarter.com/projects/deltatrackv1/discrete-mechatronic-delta-track/description
about 2 months ago
0
3
1
Time for another
#ROS
video! In the 8th episode, I cover parameters and how to use them in nodes. Check it out! πππ
www.youtube.com/watch?v=-Thr...
#robotics
#programming
@openrobotics.bsky.social
loading . . .
Introduction to ROS Part 8: Using Parameters to Configure ROS 2 Nodes | DigiKey
YouTube video by DigiKey
https://www.youtube.com/watch?v=-ThrYdw59G4&list=PLEBQazB0HUySWueUF2zNyrA8LSX3rDvE7&index=8
about 2 months ago
0
2
1
At
@hackadayofficial.bsky.social
#Supercon
this year, I gave a workshop on embedded
#Rust
. Some loved the language, some didn't, but everyone enjoyed the experience. Check out my latest blog for a full tutorial + code along with my thoughts on
#embedded
Rust:
shawnhymel.com/3042/embedde...
loading . . .
Embedded Rust Workshop: Reflections from Hackaday Supercon - Shawn Hymel
Every November, hundreds of engineers, makers, and hardware hackers converge in Pasadena, California for Hackaday's annual Supercon, a three-day celebration
https://shawnhymel.com/3042/embedded-rust-workshop-reflections-from-hackaday-supercon/?utm_source=bluesky&utm_medium=social&utm_campaign=general_courses_blog
about 2 months ago
0
8
0
Writing notes by hand has been proven to increase learning and retention over e.g. typing/recording a lecture [Van der Meer & Van der Weel, 2017]. It forces us to slow down and actively engage with the material, as we often need to summarize/paraphrase.
#education
#tech
about 2 months ago
3
11
0
New
#ROS
video πΊ ROS messages require strongly typed, explicit types for the data being passed back and forth. While it comes with some message types out of the box, you can define your own with interfaces. π
www.youtube.com/watch?v=INpG...
#robotics
#programming
#embedded
@openrobotics.bsky.social
about 2 months ago
0
3
0
I had an amazing time at
#Supercon
this past weekend π The workshops and talks were, as always, top-notch, and I certainly enjoyed making new friends and meeting old ones. Keep doing excellent work,
@hackaday-feed.bsky.social
β€οΈ
about 2 months ago
0
8
0
Transport Layer Security (#TLS) is the backbone of secure communication across the internet, and it's crucial for
#IoT
device development, too. In my latest video and blog post, I break down how TLS works. π
shawnhymel.com/3000/what-is...
#CyberSecurity
#InfoSec
#embedded
#programming
#SSL
loading . . .
What Is Transport Layer Security (TLS)? - Shawn Hymel
When you connect to a website over HTTPS, send an email, or push code to GitHub, youβre relying on a cryptographic protocol called Transport Layer Security
https://shawnhymel.com/3000/what-is-transport-layer-security-tls/?utm_source=threads&utm_medium=social&utm_campaign=esp32_iot_course_evergreen
2 months ago
1
5
1
Building the crommeter! All 3 worked and performed the blinky test π There are some mistakes on the board that will be fixed for v02. The RP2350 Stamp worked greatβthank you,
@arturo182.bsky.social
β€οΈ You can find the code and
#PCB
files here:
github.com/ShawnHymel/c...
#maker
#RaspberryPiPico
loading . . .
2 months ago
2
12
1
Happy Halloween! π If anyone is at
#Supercon
, Iβll be dressed as Captain Hammer. βIt's not enough to bash in heads, you've got to bash in minds!β
2 months ago
0
8
0
New issue of
#Make
Magazine is out! If youβre looking for a primer on
#ROS
, definitely check it out π€
www.makershed.com/products/mak...
#maker
#robotics
#programming
loading . . .
2 months ago
0
9
1
New
#ROS
video out πΊπΊπΊ I revisit services (requests and responses) but with C++ this time! Check it out if you're curious about ROS. πππ
www.youtube.com/watch?v=zuwU...
#robotics
#programming
#embedded
#cpp
@openrobotics.bsky.social
loading . . .
Introduction to ROS Part 6: Services, Requests, and Responses with C++ | DigiKey
YouTube video by DigiKey
https://www.youtube.com/watch?v=zuwU5CKMXh4
2 months ago
0
2
0
Running deep learning models on microcontrollers has gained mainstream popularity among silicon vendors and
#firmware
developers. My latest article examines the state of the
#TinyML
runtime offerings in 2025. πππ
shawnhymel.com/2994/deep-le...
#microcontroller
#embedded
#AI
#MachineLearning
loading . . .
Deep Learning on Microcontrollers: The State of Embedded ML in 2025 - Shawn Hymel
Edge AI has been gaining traction, and deploying deep learning models on microcontrollers (MCUs) has evolved from a niche experiment to a mainstream
https://shawnhymel.com/2994/deep-learning-on-microcontrollers-the-state-of-embedded-ml-in-2025/?utm_source=bluesky&utm_medium=social&utm_campaign=general_courses_blog
2 months ago
0
6
1
New toy! Iβm interested to see what the dev experience is like.
#Arduino
2 months ago
1
8
0
New
#ROS
video is out today! While topics are great for the pub/sub model, ROS also supports a client/server model with "services." Check out my tutorial creating custom client and server nodes in
#Python
:
www.youtube.com/watch?v=lxg1...
#robotics
#programming
#embedded
@openrobotics.bsky.social
loading . . .
Introduction to ROS Part 5: Services, Requests, and Responses with Python | DigiKey
YouTube video by DigiKey
https://www.youtube.com/watch?v=lxg1QJw5FgM
2 months ago
0
3
0
New tutorial and video! I show how to build an HTTP client for the
#ESP32
using low-level BSD sockets and ESP-IDF: no high-level libraries, just the core concepts so you can see how it all works. πππ
shawnhymel.com/2983/esp32-h...
#IoT
#embedded
#programming
2 months ago
0
6
1
Time for another
#ROS
video πΊ I revisit nodes, topics, publishers, and subscribers...but with C++ this time. Check it out! πππ
www.youtube.com/watch?v=g4iY...
#robotics
#Cpp
#programming
@openrobotics.bsky.social
loading . . .
Intro to ROS Part 4: Nodes, Topics, Publishers, and Subscribers with C++ | DigiKey
YouTube video by DigiKey
https://www.youtube.com/watch?v=g4iY2EZ1KR8&list=PLEBQazB0HUySWueUF2zNyrA8LSX3rDvE7&index=1
3 months ago
0
4
0
"What skills do I need for edge AI?" is a question I often get.
#EdgeAI
requires a unique blend of
#ML
math,
#Python
for training/optimization, and
#embedded
or
#mobile
development. Check out my full blog post to learn more (and recommended courses): π
shawnhymel.com/2976/how-to-...
#TinyML
loading . . .
How to Get a Job in Edge AI: Essential Skills for 2025 - Shawn Hymel
Edge AI refers to artificial intelligence that runs directly on devices at the "edge" of the network: things like smartphones, smart cameras, industrial
https://shawnhymel.com/2976/how-to-get-a-job-in-edge-ai-essential-skills-for-2025/?utm_source=bluesky&utm_medium=social&utm_campaign=general_courses_blog
3 months ago
0
4
1
Pippin taking a break in the leaves after a rousing round of fetch πΆ
3 months ago
1
18
0
If you are headed to
@hackaday-feed.bsky.social
#Supercon
later this month and you've been curious about
#Rust
, check out my workshop! There are still seats available. You'll get a
#RaspberryPiPico
kit to take home and continue your embedded Rust journey π¦ π
hackaday.io/superconfere...
#embedded
3 months ago
1
13
5
My latest tutorial is out! How to write a custom
#WiFi
driver from scratch on the
#ESP32
using ESP-IDF. It involves a lot of event-driven code! πππ
shawnhymel.com/2967/esp32-c...
#IoT
#microcontroller
#embedded
#programming
#firmware
3 months ago
0
4
1
New
#ROS
video out! In it, I walk through the process of creating custom publisher and subscriber nodes in Python to communicate over topics. Check it out! πππ
www.youtube.com/watch?v=9_Aa...
#robotics
#Python
#programming
@openrobotics.bsky.social
3 months ago
0
55
5
I'm just now learning about
@meshtastic.org
, an open-source project that uses
#LoRa
radios to create off-grid text networks. I wrote a blog post about it and ordered a
@seeedstudio.com
T1000-E to play with at
@hackadayofficial.bsky.social
#Supercon
!
shawnhymel.com/2962/what-is...
#IoT
#embedded
loading . . .
What is Meshtastic? - Shawn Hymel
A few years ago, James Provost built a handheld texting device, based on Arduino, to send short messages over a connected ham radio set. One of my many
https://shawnhymel.com/2962/what-is-meshtastic/?utm_source=bluesky&utm_medium=social&utm_campaign=general_courses_blog
3 months ago
2
13
1
SHOW ME WHAT YOU GOT
3 months ago
1
9
0
Progress!
#PCB
#KiCad
3 months ago
2
27
0
My latest tutorial is out! How to use I2C on the
#ESP32
. I show how to talk to a real TMP102 sensor using
#ESPIDF
(and a virtual TMP105 sensor with
#QEMU
). πππ
shawnhymel.com/2954/esp32-h...
#IoT
#microcontroller
#embedded
#programming
#firmware
3 months ago
0
9
0
It's been YEARS since I've done a board layout. It feels good to use these skills again! πͺ I'm making something fun for
@hackaday-feed.bsky.social
#Supercon
π€ And of course, I have to use
#KiCad
π
#PCB
#SAO
#BadgeLife
3 months ago
0
11
0
New
#ROS
video out today! I go over the basics of topics and services with the command line in ROS 2. Check it out! πππ
www.youtube.com/watch?v=HTIc...
#robotics
#electronics
#programming
#embedded
@openrobotics.bsky.social
4 months ago
0
4
0
Finally figured out how to do bare metal hardware interrupt in embedded
#Rust
π π π I think Iβm gonna stick with Embassyβ¦
#embedded
#microcontroller
#rp2350
#RaspberryPiPico
loading . . .
4 months ago
2
24
0
Kconfig is a powerful tool that's been around for a while, and many
#embedded
frameworks (including ESP-IDF) have adopted it for configuring components. Check out my tutorial and video to see how to use it for your
#ESP32
projects! π
shawnhymel.com/2935/esp32-h...
#IoT
#programming
4 months ago
0
6
0
I'm excited to announce my next video series! If you've been following my feed, you probably know that I was playing around with
#ROS
. Well, here is the first video from all that learning and tinkering: πππ
www.youtube.com/watch?v=mjrx...
#robot
#robotics
#embedded
#programming
#RaspberryPi
loading . . .
Introduction to ROS Part 1: What is the Robot Operating System? | DigiKey
YouTube video by DigiKey
https://www.youtube.com/watch?v=mjrxf8EFSb8
4 months ago
0
6
0
Choosing between a bare-metal approach and a real-time operating system (#RTOS) can be tricky. An RTOS is great for high complexity and strict timing, while simpler projects may benefit from a bare-metal superloop. π
shawnhymel.com/2928/when-to...
#embedded
#embeddedsystems
#Zephyr
#IoT
loading . . .
When to Use an RTOS: An Important Decision for Embedded Projects - Shawn Hymel
The world of embedded systems seems to be composed of two types of developers: those who love real-time operating systems (RTOSs) and those that despise them,
https://shawnhymel.com/2928/when-to-use-an-rtos-an-important-decision-for-embedded-projects/?utm_source=bluesky&utm_medium=social&utm_campaign=general_courses_blog
4 months ago
0
3
0
In
#ESPIDF
, `idf.py build` calls CMake under the hood. Ignoring Kconfig parameters, you can manually build
#ESP32
projects with: cmake -DIDF_TARGET=esp32s3 -G "Ninja" -S . -B build/ cmake --build build/ Check out my full post:
shawnhymel.com/2920/esp32-h...
#IoT
#embedded
4 months ago
0
8
0
I think I understand how the
#RP2350
memory is mapped. If I missed something, let me know!
#RaspberryPi
#RaspberryPiPico
4 months ago
1
12
0
I think I've *finally* wrapped my head around the basic ownership and borrowing rules in
#Rust
. I put together a quick demo here:
gist.github.com/ShawnHymel/e...
. I know there are some esoteric rules I likely missed, but these should be the major ones. Let me know if I missed something!
#programming
loading . . .
Rust ownership and borrowing rules demonstration
Rust ownership and borrowing rules demonstration. GitHub Gist: instantly share code, notes, and snippets.
https://gist.github.com/ShawnHymel/ecbdb3a311d55f420af8bda05defa273
4 months ago
2
7
2
Load more
feeds!
log in