Skip to content

An ESP32-based project for reading/writing GameCube controller signals and sending them over a network.

Notifications You must be signed in to change notification settings

bschwind/remote-cube

Folders and files

NameName
Last commit message
Last commit date

Latest commit

f4236de · Sep 12, 2021

History

45 Commits
Sep 5, 2021
Sep 5, 2021
Sep 5, 2021
Jul 28, 2021
Jul 30, 2021
Jul 28, 2021
Jul 30, 2021
Sep 5, 2021
Aug 28, 2021
Jul 30, 2021
Sep 5, 2021

Repository files navigation

Remote Cube

An ESP32-based project for reading/writing GameCube controller signals and sending them over a network.

Status: It works! Use make menuconfig to define whether the ESP32 is a "client" (sending controller data) or a "server" (receiving and playing back controller data). The server needs a listening port specified, and the client needs a target IP + port to send to. Currently only UDP is used. This has been tested with a RISC-V ESP32 C3 as the "client" and a plain dual-core ESP32 as the "server".

This project has been confirmed to work on first-party controller adapters. Third-party adapters have given some trouble in the past, they need to be tested again.

Clone

  • Use the --recursive flag when cloning to pick up the ESP-IDF

Dependencies

  • ESP-IDF Tools
    • cd esp-idf
    • export IDF_GITHUB_ASSETS="dl.espressif.com/github_assets"
    • ./install.sh

Configure

$ make menuconfig

Build

$ make -j8 # Or pick your favorite parallel number

Run (and see serial output)

$ make -j8 flash monitor

Monitor Serial Output

$ make monitor

Exit with Ctrl + ].

Erase Flash

$ make erase_flash

Code Format


clang-format is used for code formatting.

$ make format

About

An ESP32-based project for reading/writing GameCube controller signals and sending them over a network.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published