BCD-0o27 BalCCon2k23 Firmware
This post describes how to flash the firmware used at the 2023 BalCCon conference to the BalCCon Cyberdeck 0o27 (BCD-0o27).
Setting up the Toolchain
To flash the BCD-0o27 you need the esptools.py. The esptools.py is a python based, open source, platform independent uitilty to communicate with the ROM bootloader of ESP32-S3 chip which is at the heart of the BCD-0o27. If you haven't yet set esptools up, you can install it with pip:
pip install esptool
This will provide the esptool.py
script to flash (or read the ESP32-S3 chip), the espfuse.py
script to read or burn efuses (which can absolutely brick your cyberdeck) and the espsecure.py
script to manipulate secure boot and flash encryption.
For flashing the firmware, we will only need the esptool.py
. If you need further information or run into trouble, check the espressif homepage on esptool.py.
Flashing the firmware
First, you need to determine the serial port your BCD-0o27 uses. To determine the serial port plug in your cyberdeck using a USB-C cable. On Linux, you can use dmesg
after plugging in the cyberdeck and look for the /dev/...
assigned to it, or you can use lsusb
to list all usb devices and search for your cyberdeck. On a mac, the device will be listed as usbserial with some number. You can just ls /dev/vu.usbserial*
to find the right device. On Windows, open the Device Manager
(by choosing start, then start to type device manager
until the program is shown and the clicking on it). In the Ports
tab you find the right COM port.
To flash the firmware, download the firmware image attached to this post. In the folder where you stored the firmware issue the following command (replace "/dev/cu.usbserial-110" with your device serial port):
esptool.py --chip esp32s3 --port "/dev/cu.usbserial-110" --baud 460800 --before default_reset --after hard_reset write_flash -z 0x0 balccon_2k23.bin
That's it. You have now a fresh install of the firmware you received at BalCCon2k23. Have fun.
Comments ()