Badge Team Firmware for SHA2017, Disobey2019 and HackerHotel2019
Branch: master
Clone or download
Latest commit 9878be7 Feb 18, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
auto-flasher @ c57842e
components Merge pull request #63 from badgeteam/basvs-physical-pathn Feb 15, 2019
demo_stuff :D Feb 2, 2019
esp-adf @ c0668bd code cleanup mixer_ctl; let audio.play_mp3_*() return a boolean Feb 12, 2019
esp-idf @ cfe1082 Disable modules by default + esp-idf as gitmodule Feb 3, 2019
examples @ a530f7f
main Cleanup and bugfixes: removed bpp, added our old I2C driver to uPytho… Feb 10, 2019
micropython-lib @ 16074f1 Switch to my own micropython-lib branch Feb 8, 2019
service_examples Add the service examples again :-) Feb 15, 2019
tools move from old pictures.c to new imgv2_*.c May 9, 2017
ugfx @ 50b87c4
xtensa-esp32-elf @ a55582b xtensa-esp32-elf as submodule again part two Feb 12, 2019
.gitignore
.gitmodules xtensa-esp32-elf as submodule again Feb 12, 2019
.travis.yml
CHANGELOG.md Changelog updated Aug 20, 2017
CONTRIBUTING.md Add contributing guide Aug 1, 2017
Doxyfile attempt on adding some documentation; add Doxyfile Jun 24, 2017
LICENSE Add support for SHA-style fonts (fixes #11) May 27, 2017
Makefile
README.md Fix badge -> ugfx Feb 15, 2019
build.sh
erase.sh Last minute fix Feb 9, 2019
fastbuild.sh
flash.sh
mpy_cross.sh :D Feb 3, 2019
partitions-16MB-hh.csv Fix partition alignment Feb 9, 2019
partitions-16MB-sha-bpp.csv Cleanup and bugfixes: removed bpp, added our old I2C driver to uPytho… Feb 10, 2019
partitions-16MB-sha.csv
partitions-4MB-sha.csv Cleanup and bugfixes: removed bpp, added our old I2C driver to uPytho… Feb 10, 2019
renze-sdkconfig-hackerhotel
sdkconfig.defaults I should probably do this more often :-) Feb 9, 2019
sdkconfig.hackerhotel Added sdkconfig.hackerhotel Feb 15, 2019
set_env.sh Add helper scripts for building Feb 3, 2019
submodules.sh xtensa-esp32-elf as submodule again part two Feb 12, 2019

README.md

Badge team ESP32 Firmware

This repository contains the firmware for the SHA2017 badge, the Hackerhotel badge and the Disobey badge.

Resources

Copyright (C) 2017-2019 Badge team. Using Espressif Audio Development Framework Copyright (C) 2018 Espressif Systems. Based on template application for Espressif IoT Development Framework (ESP-IDF). Copyright (C) 2016 Espressif Systems, licensed under the Apache License 2.0 as described in the file LICENSE.

Codacy Badge Build Status

Build instructions

To build the basic firmware:

  • make menuconfig
  • make

Debian prerequisites

sudo apt-get install libncurses5-dev flex bison gperf python-serial libffi-dev libsdl2-dev libmbedtls-dev perl

Compiling and flashing

git submodule update --init --recursive
source set_env.sh
make defconfig
make -j5

Optional configuration

make menuconfig

Interacting via serial

make monitor

Building on OSX

First you have to replace the linux toolchain:

  • download the mac toolchain from this page
  • rename the linux toolchain: mv xtensa-esp32-elf xtensa-esp32-elf-linux
  • untar the mac toolchain: tar zxf ~/Downloads/xtensa-esp32-elf-osx-1.22.0-61-gab8375a-5.2.0.tar.gz

Then install the CP2102 usbserial driver

In the sdkconfig file change this line:

CONFIG_ESPTOOLPY_PORT="/dev/tty.SLAB_USBtoUART"

MicroPython

import badge
badge.eink_init()
badge.display_picture(0,-1)
import ugfx
ugfx.init()
ugfx.demo("HACKING")
ugfx.clear(ugfx.BLACK)
ugfx.thickline(1,1,100,100,ugfx.WHITE,10,5)
ugfx.box(30,30,50,50,ugfx.WHITE)
ugfx.string(150,25,"STILL","Roboto_BlackItalic24",ugfx.WHITE)
ugfx.string(130,50,"Hacking","PermanentMarker22",ugfx.WHITE)
len = ugfx.get_string_width("Hacking","PermanentMarker22")
ugfx.line(130, 72, 144 + len, 72, ugfx.WHITE)
ugfx.line(140 + len, 52, 140 + len, 70, ugfx.WHITE)
ugfx.string(140,75,"Anyway","Roboto_BlackItalic24",ugfx.WHITE)
ugfx.flush()

More info on the MicroPython badge features