Skip to content

nsec/badge-conf-2023

Repository files navigation

Nsec 2023 Conference Badge Firmware

Hardware

The 2023 Conference badge is loosely based on the Arduino UNO design with an ATmega328PB microcontroller and the following devices:

The badge is powered through a USB-C port or through 3 AAA batteries.

Building

The firmware is based on the Arduino framework using the MiniCore core. The build system uses PlatformIO to easily manage the dependencies.

You can install it on Debian / Ubuntu in a python virtualenv with these commands:

sudo apt install python3-virtualenv

virtualenv .venv
. .venv/bin/activate

pip install platformio

The installation procedure for your OS may differ a little, please consult the PlatformIO documentation if you have any difficulties.

Once the installation is complete you can build the firmware:

pio run

Flashing

Flashing the firmware requires an AVR compatible programmer, the cheapest available one we could find is the USBasp which can be found for 10$ to 20$ on Amazon or other retailers.

If the badge is factory fresh, you need to set the fuses once with this command:

pio run -t fuses

Then flash the firmware with this command:

pio run -t upload

Pre-built firmware

If you don't want to make any modifications and just want to flash the firmware that was used during the conference, you just need to install AVRDUDE and flash the 'binary/firmware.hex' file.

On Debian / Ubuntu:

sudo apt install avrdude

# Set the fuses
avrdude -e -p atmega328pb -c usbasp -B 10 -U lock:w:0x0f:m -U hfuse:w:0xde:m -U lfuse:w:0xff:m -U efuse:w:0xfd:m

# Flash the firmware
avrdude -e -p atmega328pb -c usbasp -B 3Mhz -U "flash:w:binary/firmware.hex:i"

Enjoy.

About

NorthSec Conference badge firmware

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published