Glitch-Boy, image 1 from its README
1/8
Firmware

Glitch-Boy

Rising54/100

Open firmware for Glitch Boy, the NES and Game Boy video synth and chiptune instrument by Melted Electronics

Glitch-Boy is custom firmware for the Melted Electronics Glitch Boy, by @meltdream. 15 stars on GitHub.

forMelted Electronics Glitch Boy·by@meltdream

Unclaimed. Is this yours? Sign in with GitHub as @meltdream to claim it.

Downloads
0
Stars
15
Forks
0
Commits
3
Last commit
Get the source

No release files yet. Build from source.

Custom license· meltdream/Glitch-Boy·downloads come from the creator’s GitHub releases

3
Commits
0
Releases
3 commits and 0 releases in the last year
Activity · last 12 months

Glitch Boy

Glitch Boy

I'm Martino from Melted Electronics, and I'm excited to finally announce the Glitch Boy: a compact device that turns a retro console into a video synthesizer and chiptune instrument.

Built by intentionally breaking a NES emulator, it's a tool for video artists and creatives, perfect for creating authentic 8-bit glitch aesthetics for visuals, music videos, and video art.

Glitch Boy in use

Load your games from microSD onto the Glitch Boy, then glitch them in real time with onboard controls, or sync the corruptions to music using the audio input or MIDI to create unique visuals.

Glitch Boy on a desk

The Glitch Boy is not only a video synth, but also an 8-bit audio synthesizer: you can play console's sound chip via MIDI, turning it into an authentic chiptune instrument.

The firmware will be open source and hackable, allowing custom mappings, new glitch behaviors, and all kinds of extension.

The device is available in both standalone and Eurorack versions. Output is analog composite video like the original console, with support for both NTSC and PAL.

Glitches

All the glitches are faithful emulations of real hardware mods, corrupting the console's memory state without ever crashing the system.

Each game becomes a new visual palette for the instrument, ready to be remixed and distorted into endless combinations.

Glitched NES games

The Glitch A knob affects the CPU of the NES, creating flickering sprite effects and corrupting the music and sound effects.

The Glitch B knob affects the PPU, the console’s graphics processor, producing corrupted backgrounds and sprites.

The X and Y buttons are meant to control the glitch effects while you play: X turns the current glitch setting on and off, allowing for manual rhythmic performance, while Y glitches the image progressively more with each press, and then decays gradually.

MIDI Control

Turn your keyboard into a game controller: Glitch Boy lets you map any MIDI note to a controller button press.

Playing a game from a MIDI keyboard

The controls on the Glitch Boy can also be automated by sending MIDI notes or controller messages from a sequencer, instrument or your preferred performance software / DAW.

For instance you can control the glitch intensity with a Max/MSP patch, or with an Ableton automation envelope.

Or just send MIDI clock from any external device and synchronize the glitches using it as a reference.

Chiptune Audio Synthesizer

MIDI compatibility means that you can also play the emulated NES sound chip as a proper 4-voice chiptune synth with two pulse channels, one triangle and one noise channel. Each of the four voices can be played independently from a separate MIDI channel.

Chiptune synth

The synth voice parameters, such as pulse duty, volume, envelope, and length, are also controllable via MIDI CC.

The APU - the console "soundcard" - can be glitched even when driving the audio engine with external MIDI, letting you corrupt your own MIDI sequences at will.

Eurorack Friendly

Glitch Boy is compatible with the Eurorack modular standard: you can send CV signals like gates, envelopes and LFOs from your modular gear into the Glitch Boy's CV - A and CV - B inputs to make the glitches evolve in time with your patches.

Glitch Boy in a Eurorack case

The Eurorack Glitch Boy has all the same features and capabilities as the desktop unit, and the circuit board inside is exactly the same, making it possible to switch from desktop to Eurorack simply by changing the panel.

Wireless Controller Support

Glitch Boy is compatible with Xbox-style Bluetooth controllers, Switch controllers and Wiimotes, letting you play and control the glitches without being close to the unit.

Glitch Boy

Specs

Video Output

  • NTSC (Composite Video Output)
  • PAL (Composite Video Output)

Audio

  • 1/8" Mini jack Mono Line Input

MIDI

  • 1/8" Mini MIDI jack (TRS Type A connection)

CV

  • 2x 0-5v CV inputs, 1/8" jack

Storage

  • SD card up to 32 GB (not included)

Standalone dimensions

  • 7.4 x 4.7 x 1.6" / 19 x 12 x 4 cm (including knobs).
  • Powder Coated Aluminum

Eurorack dimensions

  • 16 HP, 6 cm depth

Power requirements: 5v - 0.2A

About Melted Electronics

Melted Electronics is an analog video art brand creating accessible, hands-on tools for glitch artists, performers, and experimental image makers.

We have been in business for 5+ years and shipped several hundreds of glitch machines all over the world, like the Chroma Corruptor, Mutant Enhancer and Strange Loop.

You can find us on Etsy as well.


Firmware

The firmware is an Arduino sketch for the ESP32 in firmware/GlitchBoy/. It runs a NES core (Nofrendo) and a Game Boy / Game Boy Color core (Walnut-CGB).

Building

Arduino ESP32 core 1.0.6, no extra libraries:

arduino-cli compile --fqbn esp32:esp32:esp32 firmware/GlitchBoy

Keep the build path short, long paths break the NimBLE build.

The default video standard and emulator are set at the top of GlitchBoy.ino. Both can also be changed from the System menu on the device.

SD card

Put NES games in a folder called nofrendo and Game Boy / Game Boy Color games in a folder called gameboy. A Games folder is read too. Sub-folders show up in the game list: A opens one, B goes back.

Hardware I/O

Core signal pins

FunctionGPIONotes
Composite video out25DAC1, driven by the I2S0/APLL video path
Audio out2, 12, 18MCP4822 SPI DAC: SCK=2, SDI=12, CS=18; LDAC tied low, SHDN tied high
MIDI in27serial MIDI input
Optional IR receiver0TSOP38238 / TSOP4838 style receiver

Front-panel buttons

ControlGPIO
A19
B26
Select23
Start21
Up4
Down22
Left17
Right16

Analog / CV / audio-reactive inputs

FunctionGPIOADC use
Glitch pot 136ADC1 channel 0
Glitch pot 232ADC1 channel 4
CV input 134ADC1 channel 6
CV input 235ADC1 channel 7
Audio-reactive input39ADC1 channel 3

microSD wiring

FunctionGPIO
SD MISO33
SD MOSI13
SD SCK14
SD CS5

Credits

Glitch Boy started as a fork of Peter Barrett's esp_8_bit. The NES core is Nofrendo by Matthew Conte. The Game Boy core is Walnut-CGB by Mr. Paul, based on Peanut-GB by Mahyar Koshkouei. Game Boy audio is minigb_apu, based on MiniGBS by Alex Baines. The music visualizer is a port of VID PIX PAL by Synthrotek Sound Study Modular.

esp_8_bit is still the name of the NVS namespace. Changing it would wipe saved settings and Bluetooth pairings on existing units.

License

Mixed licenses. LICENSE covers the Glitch Boy files; everything else keeps its own license. The music visualizer is GPL-3.0-or-later, so the firmware as a whole is distributed under GPLv3. See THIRD_PARTY_NOTICES.md, SOURCE_AND_RELINKING_OFFER.md and the texts in licenses/.