Declan FordJonathon McCormack
Published © GPL3+

Strange Controller Project

We created a ship from the game, F-Zero, that users move and use capacitive touch to be able to control the actual ship in the game.

IntermediateShowcase (no instructions)3 hours380
Strange Controller Project

Things used in this project

Hardware components

Circuit Playground Express
Adafruit Circuit Playground Express
×1
USB-A to Micro-USB Cable
USB-A to Micro-USB Cable
×1
Jumper wires (generic)
Jumper wires (generic)
×1
Cardboard
×1
Aluminum Foil
×1

Software apps and online services

MakeCode
Microsoft MakeCode
SNES Emulator

Story

Read more

Code

Code

JavaScript
input.onGesture(Gesture.TiltDown, function () {
    keyboard.key("S", KeyboardKeyEvent.Down)
    pause(500)
    keyboard.key("S", KeyboardKeyEvent.Up)
})
input.onGesture(Gesture.TiltLeft, function () {
    keyboard.key("D", KeyboardKeyEvent.Down)
    pause(500)
    keyboard.key("D", KeyboardKeyEvent.Up)
})
input.pinA5.onEvent(ButtonEvent.Down, function () {
    keyboard.key("J", KeyboardKeyEvent.Down)
})
input.onGesture(Gesture.TiltRight, function () {
    keyboard.key("A", KeyboardKeyEvent.Down)
    pause(500)
    keyboard.key("A", KeyboardKeyEvent.Up)
})
input.touchA3.onEvent(ButtonEvent.Down, function () {
    keyboard.key("1", KeyboardKeyEvent.Down)
})
input.touchA2.onEvent(ButtonEvent.Down, function () {
    keyboard.key("9", KeyboardKeyEvent.Down)
})
input.pinA5.onEvent(ButtonEvent.Up, function () {
    keyboard.key("J", KeyboardKeyEvent.Up)
})
input.touchA3.onEvent(ButtonEvent.Up, function () {
    keyboard.key("1", KeyboardKeyEvent.Up)
})
input.touchA2.onEvent(ButtonEvent.Up, function () {
    keyboard.key("9", KeyboardKeyEvent.Up)
})
input.onGesture(Gesture.TiltUp, function () {
    keyboard.key("W", KeyboardKeyEvent.Down)
    pause(500)
    keyboard.key("W", KeyboardKeyEvent.Up)
})
input.buttonB.onEvent(ButtonEvent.Down, function () {
    keyboard.key("F", KeyboardKeyEvent.Down)
})
input.buttonA.onEvent(ButtonEvent.Down, function () {
    keyboard.key("G", KeyboardKeyEvent.Down)
})
input.buttonB.onEvent(ButtonEvent.Up, function () {
    keyboard.key("F", KeyboardKeyEvent.Up)
})
input.buttonA.onEvent(ButtonEvent.Up, function () {
    keyboard.key("G", KeyboardKeyEvent.Up)
})

Credits

Declan Ford
4 projects • 0 followers
Jonathon McCormack
4 projects • 2 followers
Student and cosplayer/propmaker

Comments