Click a key to add a new mapping
Press a keyboard key or gamepad button
Failed to connect over Serial.
Are you sure your Teensy is connected and the M8 Headless firmware is loaded?
Make sure that there are no other programs running which may have the serial port open.
On Linux you may also need make sure you have permission to open the serial port (eg. make yourself a member of the dialout
group).
It is also possible there's a bug in this code.
There may be some messages in the developer console that will help with debugging.
Failed to connect with WebUSB.
Are you sure your Teensy is connected and the M8 Headless firmware is loaded?
Connecting with WebUSB is known not to work on Windows or Linux.
Please make sure you are using an up to date version of Chrome or Edge (89+).
Your browser doesn't appear to have Serial or WebUSB support.
These are only currently supported in Chrome and some Chrome-derived browsers.
M8 Display
This is a display for the M8 Headless firmware running on a Teensy 4.1, or a real M8 device.
You can use keyboard and gamepad input or use on-screen controls.
Where possible, the audio output from the M8 is routed to your default audio output device.
Firmware can be installed and updated from the menu.
By default the arrow keys on your keyboard map to the arrow keys on the M8.
Shift is Left Shift, Play is Space, Option is Z, and Edit is X.
These control mappings and other settings can be configured from the menu.
A virtual keyboard from A to ' lets you send MIDI notes.
Use -/= to change octaves and [/] to change velocity.
Now that this page has loaded it will work completely offline.
All settings are stored locally by your browser.
Source code and more details are available at github.com/derkyjadex/M8WebDisplay.
Select a firmware file
Loading file...
The selected file does not appear to be a valid Teensy 4.1 firmware file
Connect your Teensy board and press the little button on the board
The selected device does not appear to be a Teensy 4.1
Ready to flash
Flashing...
There was an error flashing the device. You can try again.
Flashing completed successfully