SkillAgentSearch skills...

C64uRemote

No description available

Install / Use

/learn @ReadyOS-C64/C64uRemote
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

C64 Ultimate Remote Using M5Stack M5Stick

Small handheld remote firmware for the M5Stack M5StickC Plus2 that controls a C64 Ultimate over its REST API.

This project is part of the ReadyOS project: https://readyos.notion.site

Features

  • Full-screen Commodore logo home screen with demo-style effects
  • Soft reset and hard reset actions for the C64 Ultimate
  • C64 Ultimate on-screen menu trigger from the device
  • CPU speed read and set support through the REST API
  • Connection and authentication test screen
  • Status screen for Wi-Fi, target reachability, auth state, host, and CPU speed
  • Simple button-driven UI designed for the M5StickC Plus2 screen

Configuration

Create a local .env file in the project root using .env.example as the starting point.

Example:

C64U_WIFI_SSID=YOUR_WIFI_SSID
C64U_WIFI_PASSWORD=YOUR_WIFI_PASSWORD
C64U_TARGET_HOST=10.0.0.9
C64U_TARGET_PASSWORD=karl

The deploy script reads .env and generates src/build_env.h locally at build time. .env and src/build_env.h are ignored and should not be committed.

C64 Ultimate Setup

The target C64 Ultimate needs the REST API enabled and reachable on your LAN.

Required on the C64 Ultimate side:

  • enable the REST API / web API support
  • set a REST password if you want authenticated control
  • make sure the device IP address on your LAN matches C64U_TARGET_HOST
  • make sure the password matches C64U_TARGET_PASSWORD

This app expects to talk to the C64 Ultimate over HTTP on your local network and uses the configured password for authenticated API calls.

Build and Flash

./scripts/setup.sh
./scripts/deploy.sh
./scripts/deploy.sh --build-only
./scripts/deploy.sh --port /dev/cu.usbserial-XXXX

Build Stack

This project currently builds with the following stack:

  • macOS development environment
  • Python 3 with a local virtualenv created by ./scripts/setup.sh
  • PlatformIO 6.x
  • Espressif32 platform 6.7.0
  • Arduino framework for ESP32 2.0.16
  • M5Unified 0.2.13
  • M5GFX 0.2.19
  • M5Stack M5StickC Plus2 target board

VS Code is optional but convenient; the scripts are enough to build and flash from the terminal.

Hardware / Software

  • M5Stack M5StickC Plus2
  • PlatformIO
  • VS Code
  • M5Unified

Planned Next Version

A more capable follow-up version is planned for the M5Dial.

The idea for that version is to use:

  • the dial itself for CPU speed control
  • touchscreen buttons for common actions
  • stored macros for repeated workflows such as loading a config, running a .d64, loading a binary into REU, and then launching an app
  • remembering recently loaded items and common last-used targets
  • richer navigation of the C64 Ultimate file and menu system so loading content directly from the handheld becomes practical
  • an on-device settings UI for editing Wi-Fi credentials and the C64 Ultimate host/password instead of relying only on build-time .env values, while still allowing sensible hard-coded defaults

License

MIT. See LICENSE.

View on GitHub
GitHub Stars7
CategoryDevelopment
Updated15d ago
Forks0

Languages

C++

Security Score

80/100

Audited on Mar 21, 2026

No findings