Inhoudsopgave:

De Synthfonio - een muziekinstrument voor iedereen: 12 stappen (met afbeeldingen)
De Synthfonio - een muziekinstrument voor iedereen: 12 stappen (met afbeeldingen)

Video: De Synthfonio - een muziekinstrument voor iedereen: 12 stappen (met afbeeldingen)

Video: De Synthfonio - een muziekinstrument voor iedereen: 12 stappen (met afbeeldingen)
Video: Jammy EVO Short Demo: Ableton Live 2024, Juli-
Anonim
Image
Image
Schakelschema
Schakelschema

Ik hou van synthesizers en MIDI-controllers, maar ik ben verschrikkelijk in het bespelen van keyboards. Ik vind het leuk om muziek te schrijven, maar om die muziek daadwerkelijk te kunnen spelen, moet je een instrument hebben leren bespelen. Dat kost tijd. Tijd die veel mensen niet hebben, en die hen meestal ontmoedigt om te blijven oefenen. Ik probeer daar verandering in te brengen. Dit project is een poging om de kloof tussen het "Ik zou graag X leren spelen"-moment en het "Ik vind het leuk om X te spelen"-moment te verkleinen. Ik weet dat de meesten van ons van het laatste droomden, of nog steeds dromen, maar vast kwamen te zitten in het eerste, en ik weet ook dat het moment waarop ik in staat was om mijn eerste vier akkoorden basisliedjes op gitaar uit te voeren en ervan te genieten, het moment was dat ik echt begon het instrument te leren en sindsdien heb ik het nooit opgegeven

Wat dit is

Dit is een eenvoudig te leren instrument, eenvoudig te bedienen, op improvisatie gericht en met een eindeloze mogelijkheid aan geluiden (als een MIDI-controller). Het beschikt over 2 sets toetsen, een om akkoorden en toonsoorten te definiëren, en een andere om de noten daadwerkelijk te spelen. Welk akkoord er ook wordt ingedrukt in de nektoetsen van het instrument, het bepaalt de toonhoogte van de toetsen op het handvat van het instrument, vergelijkbaar met een gitaar, viool en andere snaarinstrumenten; met het toegevoegde voordeel dat dit een slim apparaat is dat de toonladder kan interpreteren die wordt gespeeld vanuit een enkele noten of een paar noten.

Hoe het werkt

Eenvoudig. Wil je een E-akkoord spelen? je drukt gewoon op de E-toets op de nek (zie diagram bij stap 11) en je vuurt alles weg wat je wilt op de hendeltoetsen. Maak je geen zorgen, het zal kloppen. U kunt de handgreeptoetsen gebruiken om akkoorden, melodieën en arpeggio's in elke gewenste toonsoort te spelen, gewoon door op de corresponderende toets op de hals te drukken. Op dezelfde manier zal het indrukken van de A-toets op de nek in combinatie met de C-toets (klein terts van A) een A-mineurtonaliteit activeren voor de handgreeptoetsen.

Hierdoor kan elke speler een 4-akkoordmelodie uitvoeren (de meest populaire muziek is 4-akkoorden), begeleiding of zelfs improvisatie; met niet meer dan een paar vingers in positie.

Dit instrument kan functioneren als MIDI-controller en ik heb een eenvoudige ingebouwde synthesizer ingebouwd om te spelen zonder externe apparatuur. Afhankelijk van het Arduino-bord dat je wilt gebruiken, kan dit project ook werken als een USB MIDI-controller of MIDI over BLE-controller.

Mijn gebruikelijke disclaimers: - Ik ben geen Engelse moedertaalspreker, dus er kunnen fouten zijn gemaakt. - Ik ben ook autodidact in elektronica, codering en muziek, dus nogmaals, er kunnen fouten zijn gemaakt. - Dit is een "instrument voor iedereen" om te bespelen, niet per se om te bouwen. Je hebt een beetje kennis van elektronica en codering nodig om aan dit project te werken.

_

Benodigdheden

-Een Arduino: elke Arduino zou moeten werken. Ik raad een bord aan met USB-mogelijkheden, zoals de op ATmega32U4 gebaseerde borden (leonardo, micro, enz.), zodat je dit project als een USB MIDI-controller kunt gebruiken. Ik gebruikte een MKR1010, omdat deze ook bluetooth-mogelijkheden heeft en een secundaire hardware seriële poort.

-ATmega328 op een breadboard (optioneel): Dit is voor de geïntegreerde synth. Je zou een goed UNO-bord kunnen gebruiken, maar ik ging voor een eenvoudiger systeem.

- Multiplexermodules: 2 ervan, een voor de hendeltoetsen en een andere voor de nektoetsen.

- Batterijladermodule: ik raad iets aan zoals dat op de link, omdat het een overlaad- / ontladingsbeveiliging heeft.

-18650 batterij

-Voltage Step-up Elevator module: Voorzichtig hiermee! Zorg ervoor dat de module die u kiest ingangsspanningen aankan die lager zijn dan 5v. Batterijladermodules leveren meestal ongeveer 4v, en als u die spanning op een stepup-module voert die niet geschikt is voor die spanning, kunt u problemen krijgen. Ik gebruikte een module die minimaal een ingangsspanning van 5v nodig had, en ik bakte mijn arduino. (alle projecten voor het hergebruiken, recyclen van een gefrituurd bord? Laat een reactie achter)

-1/4 Vrouwelijke audio-aansluiting

-10k stereopotentiometer

-10k potentiometer (x2)

-x2-schakelaars: ik raad deze aan, maar elke schakelaar die zijn positie behoudt, is voldoende.

-x14 Toetsschakelaars: Voor de neksleutels.

-x9 Eindschakelaars: hendeltoetsen (7) en transponeerschakelaars (2)

-1k ohm weerstand

-x2 220 ohm weerstand (als je 5v MIDI-uitgang maakt)

-33 ohm en 10 ohm weerstanden (als je 3.3v MIDI-uitgang maakt)

-Kleine breadboards: zoveel als je wilt! Ik bouw alles op 170-punts breadboards.

-Jumperdraden: je kunt er niet genoeg van hebben

Waarom twee gescheiden Arduino's?: Ja, het zou mogelijk moeten zijn om een enkele schets te schrijven met een digitale synth, met USB MIDI, MIDI over BLE en reguliere MIDI-functies, op hetzelfde bord. Het zou moeten, misschien is het dat wel, maar ik kon het niet. Het ding is; de meeste synthbibliotheken zijn gemaakt voor de ATmega328, die geen USB-mogelijkheden heeft. Aan de andere kant doen de weinige op ATmega32U4 gebaseerde boards (USB-mogelijkheden) die synthbibliotheken draaien, dit met problemen. Vergeet MIDI over BLE, daar heb je zoiets als een MKR1010 voor nodig (voor zover ik heb gelezen, doet een hm-10-module geen MIDI), maar de MKR-familie gebruikt een andere architectuur en zal niet eens compileer schetsen met een van de synthbibliotheken die ik online heb gevonden. Het zijn dus twee gescheiden microcontrollers voor mij. Het moederbord doet alle detectie-, interpretatie- en midi-dingen; en een tweede voor de geïntegreerde synth, die alleen midi-gegevens van de hoofdsynth leest en geluid produceert. Enkele arduino-versie (optioneel): Ja, als je niet echt geïnteresseerd bent in sommige functionaliteiten die ik nodig had, zou je deze kunnen gebruiken slechts één bord. Bijvoorbeeld een enkele ATmega32U4 als USB MIDI-controller met de minste buggy-synthbibliotheek die je erop kunt gebruiken (geen MIDI BLE echter), of een enkele ATmega328 met elke gewenste synth-bibliotheek (geen USB MIDI).

Stap 1: Bedradingsschema

Hier is het volledige diagram van het project. Onthoud dat je geen MKR-bord hoeft te gebruiken, de meeste borden zullen werken, je moet alleen op de hoogte zijn van de mogelijkheden die elk bord heeft (USB-compatibel, BLE-compatibel, enz.), en de spanning naar de vin-pin aanpassen. Laten we nu elke sectie in meer detail bekijken:

Stap 2: Bedradingsschema: MIDI-controller en multiplexers

Bedradingsschema: MIDI-controller en multiplexers
Bedradingsschema: MIDI-controller en multiplexers
Bedradingsschema: MIDI-controller en multiplexers
Bedradingsschema: MIDI-controller en multiplexers

-Ik heb bijna alle pinnen gedeeld tussen beide multiplexers, om het aantal gebruikte Arduino-pinnen nog meer te verminderen. Echt, alleen de signaalpinnen van elke multiplexermodule hoeven hun eigen speciale Arduino-pin te hebben. Deze opstelling veroorzaakt geen problemen of interferentie tussen de toetsen, omdat de werking van de schets lineair is en de arduino slechts één invoer tegelijk controleert. Wat de andere multiplexer ook doet, of de andere ingangspin ontvangt tijdens deze controle, wordt genegeerd.

-De twee schakelaars met het label Transposing Switches zijn limietschakelaars die worden geactiveerd door de hendel door het schuifgat van de hoofdbehuizing te schuiven (zie "de hendel" en "de body" stappen voor meer details) en ze transponeren alle hendelnoten een octaaf omhoog of omlaag.

-Voor volumeregeling heb ik een stereopotentiometer gebruikt, omdat we twee soorten volumes moeten regelen: analoog (geïntegreerde synth) en MIDI.

-Het MIDI-uitgangscircuit heeft weerstanden die geschikt zijn voor de 3,3v-uitgang van mijn MKR-bord. Als u een 5v-bord gebruikt, moet u uw weerstand wijzigen volgens het MIDI-diagram in de tweede afbeelding.

Stap 3: Bedradingsschema: de synthesizer

Bedradingsschema: de Synthesizer
Bedradingsschema: de Synthesizer

-De verbinding met OSC2 op de ATmega328 gaat (via een condensator) naar massa op digitale pin 5. Ik deed dit voor het gemak, zodat alles mooi strak op het breadboard past. Als u overweegt hetzelfde te doen, zorg er dan voor dat u pin 5 altijd als invoer aangeeft en nooit als uitvoer.

-De synthbibliotheek die ik heb gekozen, voert geluid uit vanaf pin 11, zoals weergegeven in mijn diagram. Niet alle bibliotheken zullen die pin gebruiken, zorg ervoor dat u deze dienovereenkomstig wijzigt. Ik zou echter altijd aanraden om de weerstand en doppen als filters te gebruiken.

-Ik heb een schakelaar toegevoegd aan de 5v die wordt geleverd door het moederbord, zodat ik de ATmega uit kan zetten en batterijvermogen kan sparen terwijl ik het instrument als MIDI-controller gebruik.

Stap 4: Bedradingsschema: Stroombron

Bedradingsschema: Stroombron
Bedradingsschema: Stroombron

-Ik weet het, alle MKR-kaarten hebben een geïntegreerd Li-Po-laadcircuit. Het punt is dat ik nergens in het land waar ik woon (Chili, Zuid-Amerika) (betaalbare) lipo-batterijen met de benodigde specificaties kon vinden en ook had ik de oplaadmodule en een paar 18650-batterijen al liggen, dus ik pakte ze op. Bovendien denk ik dat de meeste mensen dit project zullen proberen met meer in de handel verkrijgbare boards, die meestal geen oplaadcircuit hebben.

-Nogmaals, zorg ervoor dat de module die u kiest voor het verhogen van de batterijspanning, in staat is om ingangsspanningen te nemen die lager zijn dan 5v. Batterijladermodules leveren meestal ongeveer 4v, en als u die spanning op een step-upmodule voert die niet geschikt is voor die spanning, kunt u uw bord bakken. Ik deed. Twee keer, voordat ik dit wist.):

-Ik raad aan om de schakelaar vóór de spanningsverhogingsmodule te plaatsen, niet erna. Ik begrijp niet zo goed hoe dit werkt, maar ik meet de stroom op beide opties (schakelaar voor en na) en bij het plaatsen van de schakelaar na de spanningslift heb ik een beetje stroom gemeten die uit de batterij lekt, zelfs toen de schakelaar was uit.

Stap 5: Het code-idee

De code voert eenvoudig een constante controle uit van alle hendeltoetsen totdat een treffer wordt gedetecteerd. Als dat het geval is, controleert het de toetsen die in de nek worden ingedrukt en interpreteert het de houding die wordt gemaakt en dus de muziektonaliteit (als er geen toets in de nek wordt ingedrukt, blijft de laatste tonaliteitsset behouden). Dit bepaalt welke noot de ingedrukte hendeltoets zal produceren. Ten slotte worden de twee transponeerschakelaars aangevinkt om de noot een octaaf hoger, octaaf lager of standaardoctaaf te transponeren; waardoor het instrument een bereik van 3 octaven heeft. Op basis van al deze variabelen produceert de Synthfonio het bijbehorende midi-commando.

Wat betreft de synth-code, doe wat ik deed, en kopieer en plak gewoon onbeschaamd de "midi in"-voorbeeldschets van de synth-bibliotheek die het beste bij je behoeften past. Hier zijn enkele aanbevelingen: -The_synth-Mozzi-poly-synth-Noodle-Synth

Oh, als je de MIDI- en synth-functionaliteiten in hetzelfde bord wilt integreren, raad ik het soort schets aan dat op deze link wordt beschreven.

Stap 6: De code

Allereerst heb je de volgende bibliotheken nodig:MIDI-bibliotheek:

Als je een USB-compatibel bord of de MKR 1010 gaat gebruiken, kun je ook met deze bibliotheken experimenteren: MIDI USB: https://github.com/tigoe/SoundExamples/blob/master…MIDI over BLE:

#erbij betrekken

MIDI_CREATE_DEFAULT_INSTANCE(); #include CD74HC4067 my_mux(4, 3, 2, 1); // maak een nieuw CD74HC4067-object met zijn vier controlepinnen #define mux_handle_pin 5 // definieer een pin om te delen met de kanalen van de handle-multiplexer #define mux_neck_pin 0 // definieer een pin om te delen met de kanalen van de nekmultiplexer // transponeerschakelaars definiëren #define transposeUp 7 #define transposeDown 6 byte neckKeysNumbers = {12, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11}; byte fingersAmount = 0; byte nekKeyHolded = {0, 0, 0}; byte wortel = 48; byte kleine derde; bytehandleKeyNote = {0, 48, 50, 52, 53, 55, 57, 59}; bytehandleKeyNoteSent = {0, 0, 0, 0, 0, 0, 0, 0}; int octaaf = 0; void setup () { pinMode (LED_BUILTIN, OUTPUT); MIDI.begin(1); // Start MIDI en luister naar kanaal 1 pinMode (mux_handle_pin, INPUT_PULLUP); pinMode (mux_neck_pin, INPUT_PULLUP); pinMode (omhoog transponeren, INPUT_PULLUP); pinMode (omlaag transponeren, INPUT_PULLUP); } void loop() {//For-Loop om elke toets (1-7) op de HANDLE te controleren. for (byte i = 1; i < 8; i++) { my_mux.channel(i); // elke toets controleren via de multiplexer // als een schakelaar (toets) wordt ingedrukt en als de status van de toets "niet is ingedrukt" if ((digitalRead (mux_handle_pin) == LOW) && (handleKeyNoteSent==0)) {vertraging Microseconden (2400); // For-Loop om de 12 toetsen (0-11) op de HALS te controleren. for (byte k = 0; k 0)) {MIDI.sendNoteOff(handleKeyNoteSent, 0, 1); // Stop de notitie handleKeyNoteSent = 0; // definieer het als "niet verzonden" vertraging (18); } } } // Deze functie neemt de gedetecteerde neksleutel en op basis daarvan stelt // het nummer van de grondtoon in (in MIDI), // amd stelt ook het nummer in van de noot die de kleine terts ongeldig zou zijn rootSetting() { schakelaar (neckKeyHolded [0]) { geval 12: root = 47; kleine derde = 3; pauze; geval 1: wortel = 48; kleine derde = 4; pauze; geval 2: wortel = 49; kleine derde = 5; pauze; geval 3: wortel = 50; kleine derde = 6; pauze; geval 4: wortel = 51; kleine derde = 7; pauze; geval 5: wortel = 52; kleine derde = 8; pauze; geval 6: wortel = 53; kleine derde = 9; pauze; geval 7: wortel = 54; kleine derde = 10; pauze; geval 8: wortel = 55; kleine derde = 11; pauze; geval 9: wortel = 56; kleine derde = 12; pauze; geval 10: wortel = 57; minorThird = 1; pauze; geval 11: wortel = 58; kleine derde = 2; pauze; standaard: wortel = 48; kleine derde = 4; pauze; } } // Deze functie stelt de daadwerkelijke noot in die de hande-toets zal spelen. // het controleert eerst of het transponeren omschakelt, en transponeert het een octaaf omhoog of omlaag indien nodig, // het controleert dan of het aantal vingers in positie overeenkomt met een majeur- of mineurakkoord (1 of 2 vingers). // Ten slotte, als er 2 vingers in positie worden gedetecteerd, wordt gecontroleerd of de tweede vingers zich op // de overeenkomstige kleine terts bevinden. Zo niet, dan wordt de 2e vinger genegeerd en wordt het akkoord // geïnterpreteerd als een majeur akkoord. Als de 2e vinger inderdaad een kleine terts speelt, definieert de functie // de noten die de handgreeptoetsen zullen uitvoeren. void keyConstructor () {if (digitalRead (transposeUp) == LAAG) {octaaf = 12; } else if (digitalRead (transposeDown) == LAAG) {octaaf = -12; } else { octaaf = 0; } // majeur toonladder if (neckKeyHolded [1] == 0) { handleKeyNote [1] = grondtoon + octaaf; handleKeyNote[2] = grondtoon + octaaf + 2; handleKeyNote[3] = grondtoon + octaaf + 4; handleKeyNote[4] = grondtoon + octaaf + 5; handleKeyNote[5] = grondtoon + octaaf + 7; handleKeyNote[6] = grondtoon + octaaf + 9; handleKeyNote[7] = grondtoon + octaaf + 11; } // mineur toonladder if (neckKeyHolded [1] == minorThird) { handleKeyNote [1] = grondtoon + octaaf; handleKeyNote[2] = grondtoon + octaaf + 2; handleKeyNote[3] = grondtoon + octaaf + 3; handleKeyNote[4] = grondtoon + octaaf + 5; handleKeyNote[5] = grondtoon + octaaf + 7; handleKeyNote[6] = grondtoon + octaaf + 8; handleKeyNote[7] = grondtoon + octaaf + 11; } }

Stap 7: Het instrument (behuizing)

Het instrument (behuizing)
Het instrument (behuizing)
Het instrument (behuizing)
Het instrument (behuizing)

Zoals altijd heb ik niet echt volledige en gedetailleerde ontwerpplannen en afmetingen van het project. Ik maakte veranderingen, aanpassingen en ontwerp het ding door het hele proces van het daadwerkelijk bouwen ervan. En de meeste van deze veranderingen waren gebaseerd op de materialen en componenten die ik op dat moment bij de hand had.

Dat gezegd hebbende, heb ik bij deze gelegenheid veel meer inhoud en informatie over het ontwerpproces dan in eerdere projecten, omdat ik 3D-printen en lasersnijdiensten heb gebruikt om veel van de onderdelen te maken. Ik was gewoon niet van plan om al het MDF-meten en snijden te doen dat ik op mijn laatste machine deed. Ik heb het bestand bijgevoegd dat ik heb ontworpen voor het lasersnijden van de meeste onderdelen, en het 3D-model van het instrument. Houd er rekening mee dat al deze bestanden grotendeels hetzelfde zijn als wat ik heb gebouwd, maar er zijn verschillen, omdat ik veel wijzigingen heb aangebracht na het originele lasersnijden en 3D-modellering. Gebruik deze bestanden als uitgangspunt voor uw project, niet als de definitieve sjabloon.

Let alstublieft ook op de annotaties die ik bij de foto's heb geschreven in de volgende stappen

Stap 8: Het instrument: nek

Image
Image
Het instrument: nek
Het instrument: nek
Het instrument: nek
Het instrument: nek
Het instrument: nek
Het instrument: nek

Dit zijn in wezen een paar lange lasergesneden MDF-stukken die op elkaar zijn gestapeld om een nek te creëren die dik genoeg is, met voldoende ruimte aan de binnenkant voor de toetsschakelaars (nektoetsen) en de multiplexermodule. En ook 14 stuks lasergesneden MDF-plaat in de vorm van pianotoetsen om de schakelaars te bedekken. De schakelaars zijn op perfboard gemonteerd en aangesloten op de multiplexer.

Stap 9: Het instrument: handvat

Image
Image
Het instrument: handvat
Het instrument: handvat
Het instrument: handvat
Het instrument: handvat

Dit was voor mij het moeilijkste. Ik weet niet of ik dit deel helemaal oplos, maar het werkt in ieder geval redelijk goed voor de hand. Het heeft 7 schakelaars via een multiplexer en kan door het gat in de behuizing van het instrument schuiven. Ik zal het niet proberen te beschrijven, dus hier zijn de foto's …

Stap 10: Het instrument: lichaam

Image
Image
Het instrument: lichaam
Het instrument: lichaam
Het instrument: lichaam
Het instrument: lichaam

Dit is het eenvoudigste van alle onderdelen, alleen een lasergesneden doos in een vorm die lijkt op een muziekinstrument. Ik dacht er zelfs aan om een sigarenkistje te gebruiken, maar als ik ging lasersnijden, kon ik net zo goed iets moois lasersnijden. De belangrijkste kenmerken die het lichaam moet hebben, zijn eerst alle gaten voor de benodigde connectoren, aansluitingen, enz. (plus één om draden naar het nekcircuit te voeren); een groter gat bovenaan waar de handgreep doorheen kan schuiven (zoals getoond in de eerste video en foto's), en tot slot de twee transponeringsschakelaars die aan elk uiteinde van het schuifgat zijn geplaatst om de beweging van de handgreep te detecteren (zie de tweede video en alle annotaties op de foto's).

Stap 11: Hoe het te spelen?

Hoe het te spelen?
Hoe het te spelen?
Hoe het te spelen?
Hoe het te spelen?

Akkoorden spelen

Laten we proberen enkele eenvoudige mineur- en majeurakkoorden te spelen, zoals uitgelegd aan het begin in het gedeelte 'Hoe het werkt'. Kortom, elke toets die u in de nek indrukt, geeft u de majeurtoonladder van die noot op de hendeltoetsen. Ook als je 3 toetsen optelt (naar het handvat toe) en die toets indrukt, terwijl je de originele ingedrukt houdt, heb je nog steeds een toonladder van die originele noot op de handvattoetsen, maar deze keer zal het een mineurtoonladder zijn. Muzikaal geschoolde lezers zullen begrijpen (veel beter dan ik, in feite) dat het indrukken van de exacte derde toets vanaf elke noot hetzelfde is als het spelen van de kleine terts.

Als je het gevoel hebt dat 7 noten niet genoeg voor je zijn, kun je eenvoudig de hele hendel omhoog of omlaag schuiven door het schuifgat van het hoofdgedeelte, en je hebt dezelfde 7 noten één octaaf hoger of lager.

Akkoorden spelen (uitleg voor beginners)

Akkoorden zijn twee of meer noten die samen worden gespeeld. Denk aan een pianist of een gitarist die een aantal noten (pianotoetsen of gitaarsnaren) één keer tegelijk speelt en ze laat klinken, ze zingen er een kleine frase over, en dan slaan ze een andere reeks noten aan en zingen een andere frase. Ze spelen akkoorden en zingen een melodie. Dit is de essentie van elk basisnummer. Dus, hoe doen we dit op de Synthfonio? eenvoudig. Wil je een E-akkoord spelen? je drukt gewoon op de E-toets in de nek en je vuurt alles weg wat je wilt op de hendeltoetsen. Maak je geen zorgen, het zal gestemd zijn. Hoe zit het met mineurakkoorden? (akkoorden waarvan de naam eindigt op de letter "m", zoals Am, Em, G#m, C#m, enz.) Laten we een A mineur akkoord (Am) spelen. We drukken op de A-toets (zie het bijgevoegde schema) maar we tellen ook drie toetsen op (in de richting van het handvat) en we drukken ook op die toets (in dit geval een C). Dit verandert effectief het A-akkoord in een Am-akkoord (A mineur).

Een nummer afspelen

Zoals sommigen misschien al weten, zijn er heel veel liedjes met 4 akkoorden, meestal opgebouwd uit eenvoudige majeur- en mineurakkoorden. Perfect. We googlen "de-nummer-titel akkoorden", vinden degene die we willen (hier zijn een paar eenvoudige en eenvoudige voorbeelden). Als een akkoord een majeur is, drukken we gewoon op die ene toets op de nek van de Synthfonio en spelen alles wat je voelt in het handvat. Als er een mineurakkoord in het nummer verschijnt, drukken we gewoon op de corresponderende toets en de derde toets omhoog, en we zijn klaar. Dat is het. U kunt de handgreeptoetsen gebruiken om akkoorden te spelen en erover te zingen, of voor het spelen van melodieën, arpeggio's, enz.

Ik ben momenteel bezig om ook vergrote en verminderde akkoorden op te nemen, door een derde vinger in positie te plaatsen, of zelfs alleen de twee vingers waarbij de tweede de vergrote of verminderde kwint bepaalt.

Dit is een werk in uitvoering project. Blijf ondertussen gewoon spelen, experimenteren en plezier maken. Ik accepteer suggesties (:

Verschillende schalen

Momenteel genereren de handgreeptoetsen de 1e tot 7e noten van de aangegeven toonladder. Ik heb deze configuratie in deze instructable gebruikt om het gemakkelijk te begrijpen te maken. Maar dit kan eenvoudig worden gewijzigd om een andere schaal te genereren door de functie keyConstructor() aan te passen. Ik gebruik eigenlijk een pentatonische configuratie voor het handvat, omdat ik de grondtoon één octaaf hoger kan hebben in dezelfde schuifpositie van het handvat. In de huidige configuratie moet u de hendel omhoog of omlaag schuiven om een noot in een ander octaaf te krijgen.

Stap 12: Mogelijke wijzigingen

Zoals ik in het begin al zei, heb ik geprobeerd deze tutorial zo eenvoudig mogelijk te houden en het project terug te brengen tot de meest basale vorm. Daarom heb ik enkele functies weggelaten die ik heb toegevoegd (of van plan ben toe te voegen) op mijn eigen Synthfonio, hier zijn er een paar:

-MIDI over BLE: als je een MKR WIFI 1010-bord hebt, is dit vrij eenvoudig in te bouwen. Deze bibliotheek heeft een zeer ongecompliceerd midi-voorbeeld. Je kunt de midi-commando's uit die bibliotheek toevoegen aan de reguliere MIDI-commando's die door de schets van de Synthfonio worden aangeroepen. Of, om de batterij te sparen, voeg een schakelaar toe om de bluetooth-functionaliteiten alleen te activeren wanneer dat nodig is (het gebruik van arduino's interrupts en een auto-reset systeem zoals dit zou een leuk idee zijn).

-PitchBend: hoewel geen van de synth-bibliotheken MIDI-pitchbend-commando's kan beheren, kunt u ze met de MIDI-bibliotheek verzenden. Het gaat erom te beslissen hoe het te beheersen. Elke potentiometer zou prima moeten werken, maar ik denk aan interessantere alternatieven, zoals sensoren! nabijheid, licht, enz.

Instrumentwedstrijd
Instrumentwedstrijd
Instrumentwedstrijd
Instrumentwedstrijd

Tweede prijs in de instrumentenwedstrijd

Aanbevolen: