NorthSec 2021 badge
Brought to you by the Team badge of NorthSec.
Overview
Thou art most welcome to North Sectoria.
The theme of this edition of the badge is loosely based on the main theme of NorthSec 2021 CTF — the medieval kingdom of North Sectoria. The interface it styled as a simple JRPG with a small number of CTF flags hidden in the game scene and various interfaces.
If you wish to modify the scene layout, use an SVG editor to modify the scene file and rebuild the firmware. The original scene was developed using Inkscape, so any other SVG editors are not officially supported. The coordinate origin must be set to top-left corner of the canvas, so older Inkscape versions may or may not work (not tested.)
Hardware
The NorthSec 2021 badge is based on ESP32 microcontroller which is used to drive several periphery devices:
- 240px by 240px LCD display
- WiFi interface
- NeoPixel RGB LEDs
- six buttons
- a buzzer
The badge is powered through a micro-USB port or through an external battery that can supply between 3.7V and 6V.
If you wish to hack your badge or create a new one based on the hardware. All the information is available here.
Building the firmware
The badge firmware is based on
ESP-IDF v4.3-dev
framework. The exact commit is tracked as a submodule in esp-idf
, and you
can install it with these commands:
git clone https://github.com/nsec/nsec-badge.git
cd nsec-badge/
git submodule update --init
./esp-idf/install.sh
# You need to manually install the Pillow package.
pip install Pillow
The installation procedure for your OS may differ a little, please consult the documentation website if you have any difficulties.
Once the installation is complete you can build the firmware and flash it to the badge:
source esp-idf/export.sh
cd esp32/
idf.py build flash monitor
If for some reason idf.py
is not able to complete the operation, refer to the
ESP-IDF documentation.