Gus Workman
banner
gworkman.bsky.social
Gus Workman
@gworkman.bsky.social
Hardware/software engineer currently hacking with #ElixirLang and #Nerves.

Founder of protolux.io - currently available for B2B contracts in Elixir (including Phoenix and Nerves), embedded firmware, and custom PCB design
🦥🕺
October 22, 2025 at 6:31 AM
Here’s some examples of how you would see the bitmapping in a datasheet.

Values can be integers, enums, booleans, signed, unsigned, etc etc. That’s where elixirs binary pattern matching is really powerful! In the end, your code just looks how it is defined in the manufacturers documentation
October 11, 2025 at 2:51 PM
Oh man I got called out in this one 😂

But this is actually a perfect example. Chip designers love putting random config bits in unrelated registers. Adding additional registers requires more transistors, more processing, more verification, etc so they cram it all into as few as possible.
October 11, 2025 at 2:51 PM
Here’s the answer for the 5th one
October 7, 2025 at 6:28 PM
I was soldering a new board design yesterday on what is quite possibly the worst possible table to use for the job - off white with black and grey speckles.

There’s five 0402 resistors (1mm x 0.5mm) in this photo. See if you can find them 😅
October 7, 2025 at 6:10 PM
The name badges have been a hit, but I realized that a lot of folks don't know that I'm doing a workshop using them at @codebeam.bsky.social in November!

The workshop is gonna be lots of fun - includes assembling the hardware, set up a Nerves project, write some drivers, and personalize your badge
September 21, 2025 at 9:46 AM
What a WILD day at #Goatmire! I finally unveiled the surprise that @lawik.bsky.social and I have been cooking up for the last few months - every attendee received a Nerves-powered e-ink name badge!

I had a blast on stage presenting the project and the process of how to design hardware for Nerves
September 10, 2025 at 6:33 PM
I love Phoenix Channels 💜

#Elixir #Nerves
September 5, 2025 at 11:17 AM
The guts of the first prototype. Had to solder on a few bodge wires to make it work. The final version has these issues fixed, and the order has been placed!

#Nerves #Hardware #Electronics
August 7, 2025 at 4:45 PM
A little more context for the goal of this project… coming very soon 👀

feat. the official Nerves shirt by @lawik.bsky.social, from oswag.org!
July 30, 2025 at 3:47 PM
Recipe:

- 1 e-ink display
- one rev of custom PCB
- 1500 mAh of battery
- a splash of #ElixirLang (infused with Nerves)
- a dash of rust(ler)
July 29, 2025 at 4:56 PM
Chilling at the library today. It’s too hot for my brain to function in office or apartment
July 2, 2025 at 2:37 PM
Here's a video of what that looks like. Starts with floating window to run my compile/upload command for Nerves (though that's not necessary, just wanted to show the floating window). Then `Space +d` for warnings in current file, and `Space + D` for warnings in the workspace
June 25, 2025 at 8:16 AM
Booting into an IEx shell on Trellis 🌱

A huge thank you to @fhunleth.bsky.social for putting in a ton of time with debugging!

#ElixirLang #Nerves
June 19, 2025 at 4:52 PM
Here’s what the guts look like. There’s a Raspberry Pi Zero 2W with a Soleil board on top for power management. The eink display came with an SPI driver board, so there’s a bunch of wires soldered directly to connect them

Mechanically it is held together with tape and superglue 😅
May 20, 2025 at 1:18 PM
I had a ton of fun exploring Kraków with this device after the conference. A few pics from the city :)
May 20, 2025 at 1:14 PM
If you saw me last week at ElixirConf, you might have seen my Nerves-powered eink name badge

It can show a couple of static images and take a picture with the camera to display on the screen

Working on putting everything in a GitHub repo this week in case anyone wants to make one of their own!
May 20, 2025 at 1:10 PM
Every time google tries to shove AI down my throat by offering to "polish" my emails, I keep reading it as the noun "Polish", as in the language of Poland.

Which maybe actually would have made a bit of sense for the last couple of days here in Kraków for #ElixirConf?
May 17, 2025 at 2:17 PM
Here's a higher-quality still frame of the board up close. Seriously, the matte solder mask looks great and this might be the sharpest silkscreen I've seen on a PCB 😍
May 12, 2025 at 12:44 PM
Really excited to share this one - I arranged the PCB factory tour in China because I ordered the first production batch of Soleil boards there.

This clip shows me unboxing the boards in the shipping room of the factory. They turned out absolutely great, really impressed with the quality
May 12, 2025 at 12:34 PM
Okay this was a really cool machine that I hadn't seen before. For certain through hole components, there is a machine which will dip the through hole legs into a small well of solder. It's better in some cases because it doesn't require tooling to create a mask for wave soldering
May 10, 2025 at 4:52 AM
This one is called wave soldering, and it is used to solder through hole components (which have "legs" that poke through the PCB)

Basically, the PCB is loaded on a conveyor and slowly moves over a bath of melted solder. The legs drag through the liquid metal, and get soldered to exposed copper pads
May 9, 2025 at 4:04 AM
New clip from my factory tour of a PCB assembly shop in China this past week - showing a pick and place (PNP) machine.

The toolhead on this machine has multiple vacuum nozzles which pick up the tiny components, move them to the correct spot on the PCB, then place and release them
May 8, 2025 at 8:29 PM
Automated optical inspection (AOI) of a circuit board in a PCBA assembly line

This machine detects bad solder joints and flag boards for rework. Critical for quality assurance in PCB assembly
May 6, 2025 at 3:54 PM
After a bunch of debugging, I determined the issue was due to a bad ground connection

`sunxi-fel --list` now outputs the chip ID. @nerves-project.org bringup via uboot and buildroot is next!
May 4, 2025 at 8:12 AM