Skip to content
🤓 Interface a C64 with an Arduino using Firmata.
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
arduino/StandardFirmataC64 Add Arduino Firmata firmware. Mar 28, 2019
assets Adding demo as LFS Apr 4, 2019
c64 Remove examples folder. Mar 28, 2019
vendor/CBM-FileBrowser_v1.6 Initial Jan 24, 2019
.gitattributes Update .gitattributes Apr 4, 2019
.gitignore Add .DS_Store to ignores Apr 4, 2019 Fix download link. Apr 4, 2019

Interface a C64 with an Arduino using Firmata.

This is a Firmata client implementation for the C64 using the userport at 2400 baud for communications.

C64 Firmata


You'll need:

  • x64
  • Arduino UNO
  • Grove shield, servo, button, LED, potmeter, relay


  • DIY for the Grove stuff
  • A real C64
  • A way to transfer the program to the C64
  • Userport connector
  • Wires between the C64 and the Arduino UNO

Configure x64

Plug in the Arduino, note down the device name of the Arduino (/dev/...). Start x64 and go to the RS232 settings. Set baudrate to 2400 and device to the correct name.

Using a real C64

 N              GND
 M              RX(1)
 B,C            TX(0)

Power up the Arduino using a USB power plug or a power adapter.

What's supported

  • PWM

Disk image

Download firmata.d64

Demo on a real C64

C64 Firmata demo


(c) 2019 Johan Van den Brande

 ( ..)
You can’t perform that action at this time.