MIDI-integratie voor digitale orgels: Componenten & Handleiding
Onderdelen en benodigdheden
| Arduino Mega 2560 | × | 1 |
| DIN MIDI-stekker (5-pins, 180°) | × | 1 |
| Weerstand 220 Ω (voor MIDI-out) | × | 1 |
| USB-A naar B kabel (programmeren/voeding) | × | 1 |
| AWM-kabel (10-adrig) voor matrix-/bus-aansluiting | × | 1 |
| Manchetstiftjes 40-polig (0,1″ raster) | × | 1 |
| Schuifpotmeter 10 kΩ lineair (voor expressiepedaal) | × | 1 |
| IDC-socket (optioneel) voor loskoppelbare kabelmontage | × | 1 |
| Man/Man jumper wires (optioneel) bij IDC-sockets | × | 1 |
Benodigde tools
- Solderbout
- Loode (loodvrij)
- Soldeervloeistof
- Kabelschroder
- Zijtang
- Platte tang
Apps en online services
- Arduino IDE
Over dit project
Deze handleiding laat zien hoe je een oude orgelconsole ombouwt zodat de manualen (handklavieren) en pedaal MIDI-berichten uitzenden via één Arduino Mega. De originele klankgeneratie wordt overgeslagen; de schakelaars van de toetsen worden direct uitgelezen.
- De originele toetsenschakeling werkt na deze aanpassing niet meer.
- In oude orgels zitten componenten die gevaarlijke spanningen kunnen dragen. Werk altijd met de netstekker eruit en alleen als je ervaring hebt met elektronica. Twijfel je? Raadpleeg een gekwalificeerd monteur.
- Oude componenten zijn vaak slijtagegevoelig. Aanpassingen zijn op eigen risico; de auteur aanvaardt geen aansprakelijkheid voor schade aan orgel, apparatuur of personen.
Stap 1: Onderzoek de orgel
- Toetsentype bepalen: De code ondersteunt twee architecturen:
- Gematrixte toetsenborden: Discrete schakelaars met diodes in een rij/kolom-matrix (bijv. 6×11 voor manualen, 6×7 voor pedaal).
- Bus-toetsenborden: Alle schakelaars van een toets delen een gemeenschappelijke bus; diodes zijn wel nodig per schakelaar.
- Schakelaartype meten: Meet met een multimeter of de toetsen Normaal Open (NO) of Normaal Gesloten (NC) zijn. De voorbeeldorgel had NO voor manualen, NC voor pedaal. Pas de code aan bij afwijkend type.
- Toegang en montage: Bepaal hoe je bij de contacten komt en waar de Arduino + MIDI-stekker gemonteerd kunnen worden. Vaak moet je een gat boren voor de DIN-stekker en een voedingsaansluiting voorzien (bijv. 3-polige stekker naar interne voeding).
- Matrixafmetingen: De voorbeeldorgel had 2 manualen van 6×11 en een pedaal van 6×7. Als jouw orgel een 8×8 matrix heeft, moet je of de code/herdraaien aanpassen, of de matrix ombouwen naar 6×11.
Stap 2: Monteer de Arduino
Gebruik de meegeleverde montageplaatje met kleine houtschroeven (#4) en machine schroeven. Plaats de Arduino eerst zodat je de kabellengtes kunt inschatten. Voorzie ook de voeding (USB of 5 V via de voedingspoort).
Stap 3: Kabels voorbereiden
Gematrixte toetsenborden
Elk handklavier heeft 61 toetsen. In het voorbeeld: 6 rijen (elke 6e schakelaar verbonden) en 11 kolommen (manualen) of 7 (pedaal). Knip voor elke rij en kolom een lengte AWM-kabel die van de contacten naar de Arduino loopt, met ruime marge. Strip de uiteinden.
Bus-toetsenborden
Verdeel het toetsenbord over 6 AWM-kabels (10 aders elk) + 1 losse draad voor de 61e toets. Strip alle uiteinden.
Stap 4: Kabeluiteinden solderen op manchetlabels
Zowel voor matrix als bus: soldeer de juiste kabeladern op de manchetlabels (of gebruik schroefklemmen). Zorg voor strakke, geïsoleerde verbindingen.
Stap 5: Overige kabeluide solderen op de schakelaars
Gematrixte toetsenborden
- Bestaande draden verwijderen (desolderen/afknippen). Behoud de rij-draden tussen schakelaars; verwijder alleen de draden naar de oorspronkelijke computer.
- Kolommen: als er al diodes zitten, koppel de diode-eind van de oorspronkelijke computer los en soldeer je eigen kolomdraad aan. Gebruik kabelbinders voor nette routering.
- Pedaal: het frontpaneel met reed-schakelaars moet vaak gedemonteerd worden om kabels door te voeren.
Bus-toetsenborden
Solder aan de niet-bus-zijde van elke schakelaar een diode (kathode/negatieve kant richting de schakelaar), en soldeer de anode van de diode aan één van de 10 aders in de kabel. Herhaal voor alle 61 toetsen over de 6 kabels.
Stap 6: MIDI-stekker aansluiten
Solder de 220 Ω weerstand aan pin 5 van de DIN-stekker (MIDI-out data). De andere kant van de weerstand gaat naar TX1 (pin 18) van de Arduino Mega. Pin 4 van de DIN-stekker gaat naar 5 V, pin 2 naar GND. Pins 1 en 3 blijven onverbonden.
Stap 7: Manchetlabels op Arduino steken
Stek alle manchetlabels in de juiste pinnen volgens het schema. Tip: IDC-sockets + man/man jumpers maken herverkabeling makkelijker tijdens ontwikkeling.
Stap 8: Software uploaden
- Sluit USB-kabel aan, open Arduino IDE.
- Kies de juiste sketch: Matrixed of Bussed.
- Nieuwe sketch aanmaken, code plakken, board/poort selecteren, Upload drukken.
Stap 9: Testen
- Sluit MIDI-interface aan op PC, verbind orgel MIDI-out met interface-in.
- Gebruik MIDI-monitoringsoftware (bijv. MIDI-OX, Hairless MIDI, of DAW) om te controleren of elke toets/pedaal de juiste
Note On(bij indrukken) enNote Off(bij loslaten) stuurt. - Voor standalone gebruik: 5 V voeding op de Arduino (via USB-lader of interne 5 V).
Code
Twee complete sketches worden geleverd. Kies degene die bij jouw toetsenbordarchitectuur past.
1. Matrixed Keyboard Code (6×11 manualen + 6×7 pedaal + 2 expressiepedalen)
Deze sketch scant drie matrices (toetsenbord A, B, C) via rij/kolom-multiplexing met interne pull-ups. Toetsen worden afgedempt (debounced) door statusvergelijking met lastA/B/C arrays. MIDI-kanaal 1, 2 en 3 worden gebruikt. Expressiepedalen op A0/A1 sturen CC#11 op kanaal 6/7.
De volledige code is te lang voor hier; zie de originele projectpagina voor het complete bestand. Belangrijkste structuur:
setup(): pinnen initialiseren, Serial op 31250 baud (MIDI-snelheid).loop(): rijen achtereen laag trekken, kolommen inlezen, status vergelijken,MidiSend()aanroepen bij wijziging.- Pedaal (toetsenbord C) heeft geïnverteerde logica voor NC-schakelaars.
MidiSend(cmd, note, vel)schrijft 3 bytes naar Serial1.
2. Bussed Keyboard Code (4× 61-toets bussen + 3 expressiepedalen)
Deze versie scant vier bussen (A, B, C, D) via 4 kolompinnen (A9–A12) die achtereen laag getrokken worden. Alle 61 toetsen per bus delen dezelfde 61 rij-pinnen (2–53, A0–A8). Diodes op de schakelaars voorkomen ghosting. Drie expressiepedalen op A13–A15 sturen CC#11 op kanaal 6, 7, 8.
Ook deze code is uitgebreid; download het volledige bestand van de projectpagina. Belangrijkste punten:
- Pin 13 (onboard LED) moet voor betrouwbaarheid uitgeschakeld worden (LED fysiek verwijderen of vernietigen).
- Werkt minder betrouwbaar met fosforbronzen busstaven; overweeg dan 12 V keying (niet ondersteund door dit project).
- Inclusief uitgebreide commentaar voor inversie van NC-schakelaars (uitgecommentarieerd).
Expressiepedaal-hardware (voor schuifpotmeters)
Een zelfgemaakte beugel koppelt de pedaalbeweging aan een lineaire schuifpotmeter:
- Bevestiging aan pedaal: Een "L"-beugel (bouwmarkt) op een bestaande of nieuwe borggat met machinebout + borgmoer + 2 ringetjes (teflon-ring voor gladde draaiing).
- Stang: 1/4″ aluminiumstang met oogbout (JB Weld) aan de potmeterzijde, meubilairbeugel aan de pedaalzijde.
- Potmeterbeugel: Twee acrylaatplaten (3″×4,5″ en 3″×0,5″) met JB Weld gelamineerd, potmeter ertussen. Onderste plaat op meubilairscharnier gemonteerd aan orgelvloer.
- Gleufbus: PTFE-blok (3/4″ dik) met 1/4″ gat voor de stang, geschoven op acrylaatbeugel.
- Alle bouten/moeren #4, boormachine, zaag, schroevendraaiers, kwast, schroefklemmen benodigd.
Zie de gedetailleerde stappen in de originele handleiding (bijgewerkt 9 dec. 2021) voor exacte maten en montagevolgende.
Schema's
- Matrix-schema: 6×11 matrix voor manualen, 6×7 voor pedaal, met diode-richting en potmeter-aansluitingen.
- Bus-schema: 4 bussen van 61 toetsen, gedeelde rij-pinnen, 4 kolompinnen, 3 potmeter-ingangen.
Laatste opmerking
De Arduino Project Hub stuurt geen notificaties bij reacties. Voor snellere hulp: post je vraag op het bijbehorende forumbericht (link in oorspronkelijke project).
Productieproces
- Strategisch blauwdruk voor succesvolle digitale transformatie
- Eclipse Ditto 1.0 – Het Device-as-a-Service-platform voor Digital Twin-ontwikkeling
- Top 3 Digitale Productietrends Die 2020 Vormgeven
- Invar 36 Componenten: Materialen, Eigenschappen en Betrouwbare Inkoop
- Digitale snijoplossingen voor de tapijtindustrie – OMNI CNC
- ISO 26262 Certificering Bereiken voor Automotive Software Componenten
- Robuuste Cloud-Gebaseerde Software-updates voor IoT-apparaten
- Digital Asset Management meesteren: Een uitgebreide strategie voor data-gedreven asset excellentie
- UL's Uitgebreide Testen voor Vlamvertragende Kunststofcomponenten
- Vier Bewijste Technieken voor het Lijmen van Kunststofcomponenten
- Geavanceerd Glasvezel-gevuld PET voor Superieure Auto-exterieuronderdelen