-
1Step 1: Pick a board
Braino runs on five off-the-shelf ESP32 touchscreen boards from the "Cheap Yellow Display" family: the 2.8-inch E32R28T-1, the 2.8-inch dual-USB ESP32-2432S028, the 2.8-inch Freenove FNK0104B (capacitive touch), the 3.2-inch E32R32P and the 4-inch E32R40T. If you are not sure, get the 4-inch one: it has the biggest screen. Nothing needs soldering or wiring. The board arrives with the screen and the ESP32 already joined.
-
2Step 2: Plug it into a computer
Use a USB-C cable that carries data. A charge-only cable looks identical and behaves like a dead board. Windows, Mac, Linux and Chromebooks all work. If the board does not show up as a serial port, install the CH340 or CP210x USB-serial driver for your operating system.
-
3Step 3: Install Braino from the browser
Open https://iamankushpandit.github.io/Gume/ in desktop Chrome, Edge or Opera and go to the Install tab. Pick the board that matches yours, then press Install. About a minute later the board reboots into Braino. Phones, tablets, Firefox and Safari cannot do this, because they have no Web Serial.
Pick the board carefully. Two boards sold under the same name can carry different display controllers, and the wrong image gives a blank or wrongly coloured screen, not an error. Check the model printed on the back of the board against the list.
-
4Step 4: First run
The console boots into Profiles. To change settings, pick the Admin profile. A fresh device ships with the admin PIN 0000.
On a resistive screen, calibrate touch once: Settings, then Calibrate, then tap the three targets. Then change the admin PIN: Settings, Admin, Change admin PIN.
-
5Step 5: Add your players
In Profiles, add up to five players. Each one gets their own scores and progress. Guest is always there and deliberately saves nothing. To trim the launcher down to what one player needs, use Profiles, Edit, Games. Only the administrator can change that list.
-
6Step 6: Add a speaker and a battery (optional)
Speaker: most of these boards have a two-pin 1.25 mm speaker socket. A small 1 W 8 ohm or 3 W 4 ohm speaker gives you the full set of game sounds. Without one, Braino plays silently.
Battery: boards with a battery socket take a single-cell 3.7 V lithium battery with a two-pin 1.25 mm plug and charge it over USB. A 3000 mAh pack is the size the printed case has room for. BEFORE PLUGGING ANY BATTERY IN, check that its red wire lines up with the + mark beside the socket. Plugs of the same size are sold wired both ways round, and a reversed battery can damage the board.
The dual-USB ESP32-2432S028 has no battery socket the firmware can use. Run it from a USB charger or a power bank.
-
7Step 7: Print the case (optional)
THIS IS STILL A WORK IN PROGRESS. IF YOU HAVE A BETTER DESIGN PLEASE CONTRIBUTE!
Case files for the 2.8, 3.2 and 4-inch boards are in the repository under cases/, one folder per board: https://github.com/iamankushpandit/Gume/tree/main/cases
The case prints without supports and needs no screws. The board drops into the front tray with the display forward and the USB socket through the side cut-out. The speaker sits behind the grille in the back plate, the battery goes in the free space, and the printed clips hold the two halves together. Braino also runs on the bare board, so a printer is not required.
-
8Step 8: Wi-Fi, two-console play, and building from source (all optional)
Wi-Fi is used for the clock: Settings, Network. Bluetooth is off by default. To play Chess, Go, Backgammon, Sea Battle or Ludo against another console in the room, turn on the Beacon and then Nearby in Settings on both consoles.
To build it yourself, install PlatformIO, then:
git clone https://github.com/iamankushpandit/Gume
cd Gume
pio run -e app -t uploadThat builds for the E32R28T-1. The README lists the environment name for each of the other boards.
Stuck? Ask at https://www.reddit.com/r/gume_braino/ or open an issue, and say which board you bought and what the screen shows.
Ankush Pandit
Discussions
Become a Hackaday.io Member
Create an account to leave a comment. Already have an account? Log In.