Newline2020/Badge

From HSG Wiki
Revision as of 15:12, 7 December 2019 by Qwaxys (talk | contribs) (Getting started)
Jump to: navigation, search

<< Newline2020


Current idea: a PCB somewhat similar to the GameBoy Advance that acts as a shield for the TTGO T-Display

Why? Because for a small batch this will be the easiest to produce. We'll do the soldering ourselves. It also gives you the option to recycle the ESP instead of being stuck with our badge.

Contact qwaxys for questions.

He'll inform with badge.team to see if we can run their firmware.

We'll help:

- Anus (@badge.team) 
- Renze (@badge.team) 
- ON8LTE (WB)

Jasper is creating the first version of the PCB.

Sponsors:

- qwaxys
- LilyGO ( 50% of the TTGO T-Display )
- N0b0t
- you?
- 0x20?

Current target is 50-100 pieces to hand out for free.

First PCB will have touch buttons, 2 shoulder buttons, a piezo buzzer, some LED's and a connector for the MFRC522 (over I2C)

Getting started? The ESP module is available on Aliexpress and Amazon

Goals:

☑ Get some sample modules
☑ Get them working with Arduino IDE (as plan B)
☑ Get Badge.team firmware running on the badge
☑ Running python from the console over serial
☐ Running python from a file on the module
☐ Get the menu working
☐ Get the apps repo working
☐ Hackathon @ HSG for some apps
☐ ...

Getting started

Building the firmware

Get the code and all requirements, then build

git clone https://github.com/badgeteam/ESP32-platform-firmware.git

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

cd ESP32-platform-firmware/

git submodule update --init --recursive

unzip -p toolchain/xtensa-esp32-elf-linux64.zip xtensa-esp32-elf-linux64-1.22.0-80-g6c4433a-5.2.0.tar | tar xv

cp firmware/configs/ttgo_tdisplay_defconfig firmware/sdkconfig

./build.sh 

Flashing the module

For every module, run:

sudo ./erase.sh 

sudo ./flash.sh 

Your TTGO-T-display should now run micropython.

Connecting over serial

Use your favorite serial program to connect with a speed of 9600.

You can test the screen with:

import display
display.drawText(0,0,"Hello\nWorld!",0x00aa00,"permanentmarker36")
display.flush()