m8c for iOS/iPadOS — User Guide
m8c is a client for the Dirtywave M8 tracker’s Headless mode. On iPhone/iPad it is primarily used to mirror the M8 screen, and it can also relay input from Bluetooth/USB gamepads and keyboards.
This guide covers day‑to‑day use on iOS/iPadOS. For the desktop app or deeper technical details, see the project on GitHub.
What you need
- Dirtywave M8 Model 1 or 2, running firmware 6.0 or later. Please note that while a headless Teensy build might work with the app, it is not officially supported and might not work as expected.
- iPhone or iPad with a recent iOS/iPadOS version.
- Optional: a Bluetooth or USB keyboard, or a Bluetooth gamepad for remote control.
- Appropriate adapter/cable (e.g. USB‑C, or a Apple Camera Connection Kit + an USB cable for devices with a Lightning port).
Audio on iOS
m8c does not provide built‑in audio routing on iOS/iPadOS. For monitoring, effects, and recording, we recommend using AUM.
Getting started
- Power on your M8.
- Connect the M8 to your iPhone/iPad using a compatible cable/adapter or prepare your Bluetooth HID device (keyboard/gamepad) and pair it in iOS Settings.
- Open the m8c app on your device. The M8 screen should appear when the device is detected.
Note: On iOS/iPadOS, m8c focuses on screen mirroring and input relay. Audio routing and desktop‑style configuration files are not part of the iOS app’s typical workflow.
Controls
m8c forwards input from supported HID devices. You can use a Bluetooth/USB keyboard or a Bluetooth gamepad. Default keyboard mappings mirror the desktop version:
Keyboard
Gamepad
Standard gamepads using iOS game controller profiles generally work. If needed, you can open the in‑app settings overlay and adjust mappings:
- Open settings overlay: Press the controller’s Back/Select button when the program is running without a connected M8.
- Use the D‑pad/left stick to navigate, face buttons to select, and the Back button to go back.
Keyjazz
Keyjazz lets you enter notes using the keyboard (two octaves). Enable/disable with Esc. The layout starts at Z and Q for white keys. Adjust base octave and velocity:
- Num * — increase base octave
- Num / — decrease base octave
- Num + — increase velocity by 10 (Alt for steps of 1)
- Num − — decrease velocity by 10 (Alt for steps of 1)
Note: External keyboards with a numpad provide the best Keyjazz experience; smaller keyboards may not have these keys.
Display and layout
- Rotate your device to switch between portrait and landscape (iPad only). The mirrored screen adapts to the available space.
- On iPadOS, it's possible to run the application windowed.
- If visual glitches appear, press R (or the controller combo Select+Start+Opt+Edit) to reset the display. If no input devices are available, press all the direction keys on the M8 twice to reset the display.
- Consider disabling Auto‑Lock while using m8c to keep the display awake.
No‑controller fallback: If you don’t have a keyboard or controller connected, you can still reset the display by pressing all the direction keys on the M8 twice in the song screen.
Limitations on iOS/iPadOS
- Primary use is screen mirroring and input relay.
- Desktop‑style audio routing and file‑based configuration are not part of the typical iOS flow.
- Not all third‑party controllers expose identical button layouts; adjust in the settings overlay if needed.
Troubleshooting
No device screen appears
- Reconnect the cable/adapter, or power‑cycle the M8.
- Try a different cable/USB adapter if available. If the M8 is connected through a USB hub, try a different hub or a direct connection to the computer.
Keyboard/gamepad input not working
- Ensure the device is paired in iOS Settings and connected before opening m8c.
- Open the settings overlay (hold Back/Select ~2s) and verify mappings.
- Some controllers use non‑standard mappings; remap where possible.
Display glitches
- Use R (or the controller combo Select+Start+Opt+Edit) to reset the display.
- If no input devices are available, press all the direction keys on the M8 twice to reset the display.
Permissions
- Bluetooth: Required for connecting Bluetooth gamepads and some keyboards.
- MIDI/HID access: iOS may request access for connected devices; grant access for proper operation.
Credits & Links
m8c by laamaa. M8 hardware and firmware by Dirtywave
For the full desktop readme, troubleshooting tips, and releases, visit the project page.