Skip to content

DEF CON 34 talks are here: 354 talks, summarized and searchable.

Browse DEF CON 34

Behind the Badge - SAOv3 and Open Sourcing the Aerospace Village ISS Badge

LilyAdamRobertKevin

Where

Aerospace Village
DEF CON 34

Duration

26 min

Presents SAOv3, a draft add-on standard for conference badges, plus open-source OLED animation tooling that removes screen tearing.

Summary

The Rare Circuits team, who have built the Aerospace Village badges for several years, follow up on last year's Charlie add-on. Charlie adds audio, airband and FM reception, and a black-and-white OLED to a host badge. The team explains that Charlie was an early version of a new add-on standard they call SAO v3. Under that standard, a host badge can recognize an add-on through its name and vendor and product IDs, and an add-on can declare interfaces such as LEDs, sensors or a speaker that accepts streamed audio. Firmware updates through a bootloader are also planned, though the details are still open.

The middle of the talk covers the display work. Driving a commodity SSD1306 OLED fast over SPI and DMA caused severe screen tearing, because the panel gives no timing feedback. The team found that the charge pump's switching rate follows the controller's internal oscillator. Undocumented hardware test commands force a steady pulse pattern, which allowed pixel-synchronized four-level greyscale. They warned that this only works on genuine SSD1306 parts, since many modules are clones.

The talk closes with ANSM, an animation state machine that uses script books, loops and random jumps. The UI was prototyped in a simulator before firmware existed. Next steps include a public SAO v3 draft, feedback through a Discord server, open-sourced tools and reference implementations, and dev kits. Developers can reuse the standard, the animation framework and the display timing approach.

Materials

Related talks