Permalänk
Medlem

Bygga MIDI-keyboard

Nu har jag fått en sån där tossig idé igen

Jag har tidigare bara spelat gitarr med tablatur och har ingen vidare koll på någon form av klaviatur eller ens noter. Så jag tänkte lära mig.

Det känns dock lite onödigt att köpa en komplett synth som ändå snabbt blir omodern när man har tillgång till en fullt fungerande MIDI-synthesizer via judkortet. Jag tänkte därför bygga ett dumt keyboard med MIDI-utgång att koppla till ljudkortet (f.n SB Live).

Jag har beställt en klaviatur från en EL-orgel som är 4 oktaver stor (eller säger man 'lång'?), hur som helst, borde dyka upp med posten på fredag. Tangenterna har två brytare vardera för att kunna mäta anslagshastigheten.

Är det någon som har erfarenhet av detta? Några fallgropar jag ska försöka undvika?

Hur ofta borde man scanna av tangenterna för att det ska vara spelbart? (Avgör ju snabbt vilken µ-controller som kan användas)

Hur vet man vilka noter en MIDI-kod motsvarar? Jag har inte lyckats få tag i någon översättningstabell.

Vilka knappar/kontroller är bra att bygga in förrutom själva klaviaturen? (ex. pitch bend och annat)

Kom nu inte och säg att det är bättre att köpa en färdig. Det är inte alls lika roligt

Jag garanterar inte, under några som helst omständigheter, att inlägget är fritt från fel. Jag har aldrig meckat med MIDI tidigare.
edit: precis...

Visa signatur

Abit AB9 QuadGT | C2D E6320 | vatten | 2x1GB Kingston PC-9600 | XFX 8600GT XXX | OCZ PowerStream 520W

Permalänk

det är bättre att köpa en färdig.
Midi = 512 kanaler.
puh...

Permalänk
Medlem

öhh bygga en egen ? hur hade du tänkt att göra det?

Visa signatur

Keep in mind you should familiarize yourself with what the parameters mean and how they affect you.

Permalänk

Inte värt att bygga en egen, det jag skulle kunna tänka mig att man skulle behöva bygga en midi-encoder/decoder för är om man ska bygga en egen synth. Mmmm... analogsynth *drägglar*

Visa signatur

Intel Core 2 Duo E6000 @ 2.54Ghz | Corsair XMS2 2x512MB 5400C4 | Asus P5B | Radeon X1900XT | Raptor 74GB | 2x WD 320GB| Creative X-Fi
Fujitsu Lifebook P1032 | Transmeta Crusoe 700MHz | 6h Full load

Permalänk
Medlem

Zarwox, lyssna inte till de där lata som säger annat Bygg vad du vill. Du verkar ju vara beredd att göra jobbet, kan dock säga att det kommer att bli jobbigt och en massa pillande men resultatet kommer nog bli bra. Se bara hur de gjorde med de första MIDI borden som kom ut. Jag har tyvärr inte lärt mig allt om detta ännu, går just nu en musikproduktionskurs. Men det finns säkert otaliga sidor om detta ämne.

Undrar varför folk här inte rekommenderar en dator som är färdigt överklockad till folk när de frågar hur man gör?

Visa signatur

E8500, 4GB Corsair, 2x500 Samsung RAID0, 4GB I-Ram, EP43-DS3, 7900GTO, Win7.
AmigaOne G3XE, 1GB, Raptor 150GB, 4GB I-Ram, Radeon 9250 256MB, OS4.1

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av Spawnkilled
det är bättre att köpa en färdig.
Midi = 512 kanaler.
puh...

Ööh...hur tänker du nu?

Om du menar MIDI-kanaler, dvs antalet kanaler per midiport som kan skicka/ta emot midi, så är de 16 st.

Midi-data skickas bytevis. Den högsta biten är (mer eller mindre) alltid till för att indikera om det är en "status byte" eller "controller/data byte". Är högsta biten satt till 1 så är det en "status byte". En "status byte" används bland annat för "note on/off", "aftertouch" och "controller/mode change". De tre högsta bitarna näst efter den högsta indikerar vad som ska göras ("Note on" t.ex.) och de 4 nästkommande indikerar vilken av kanalerna som det ska skickas till.

http://www.ibiblio.org/emusic-l/info-docs-FAQs/MIDI-doc/MIDI-...

Efter detta skickas 1 till 2 "data bytes" som därmed innehåller värdena som ska skickas. Här är högsta biten satt till 0.

http://www.ibiblio.org/emusic-l/info-docs-FAQs/MIDI-doc/MIDI-...

Lite samlad fakta:
http://www.geocities.com/JDPetkov/documents/midi/primer.htm
http://www.ibiblio.org/emusic-l/info-docs-FAQs/MIDI-doc/

//DjDiff

Permalänk
Medlem

Re: Bygga MIDI-keyboard

Citat:

Ursprungligen inskrivet av Zarwox
Jag har beställt en klaviatur från en EL-orgel som är 4 oktaver stor (eller säger man 'lång'?), hur som helst, borde dyka upp med posten på fredag. Tangenterna har två brytare vardera för att kunna mäta anslagshastigheten.

Det är här jag ser problemet, eller iaf svårigheten. Hur mäter klaviatur anslagshastigheten? Mäter de verkligen hastigheten eller använder de sig av en tryckkänslig nedslagsyta som känner av nedslagskraften och därav beräknar velociteten?

Mäter den den verkliga hastigheten med hjälp av sensorer så är tidtagning involverad och om den mäter med trycksensor så är det lite A/D att leka med...

Jag tycker att det verkar krångligare än det är värt, men det är jag det....lycka till...

//DjDiff

Permalänk
Medlem

Tack så mycket! Särskillt djdiff. Många informativa länkar. De ska jag kika igenom.
Jag har läst lite om MIDI-grässnittet och det verkar inte alls så krångligt. Det ända jag egentligen är lite fundersam över är vilken MIDI-kod som representerar vilken not/ton. Är det så att varje tangent på klaviaturen motsvarar ett steg så att första tangenten från vänster kanske representerar 0h30 och efterföljande 0h31 osv. Eller är det så att man måste ha en tabell att slå upp koderna i och koppla till respeltive tangent/ton?
[edit] Det här var en bra länk: http://www.ibiblio.org/emusic-l/info-docs-FAQs/MIDI-doc/MIDI-...

Citat:

Ursprungligen inskrivet av djdiff
[klipp]
Hur mäter klaviatur anslagshastigheten? Mäter de verkligen hastigheten eller använder de sig av en tryckkänslig nedslagsyta som känner av nedslagskraften och därav beräknar velociteten?
[klipp]

Vad jag förstår så har man vanligtvis två brytare per tangent. En som är sluten när tangenten är i övre läget (alltså inte nedtryckt) och en som är sluten när tangenten är tryckt i botten.
Vad jag tänkte göra är att hela tiden scanna igenom alla tangenter och vänta på att de övre brytarna ska brytas och sedan mäta hur lång tid det tar innan den nedre brytaren på samma tangent sluts. Med en enkel beräkning får man ju då fram hastigheten. (Omvänt när man ska släppa upp en tangent.) Jag tror det ska funka. Man får ha lite tabeller i RAM för att hålla reda på vilka tangenter som har tryckts ner och när men det ska nog inte vara några problem.

Och ni som påstår att jag ska köpa en färdig maskin, det är ju inget kul! Hade jag tänkt skaffa ett klaviatur med huvudsyfte att spela på kanske det hade varit ett vettigt alternativ, men för mig är byggandet halva nöjet. Jag måste ha en utmaning. Precis som Crusher sa angående överklockning, Varför överklockar man istället för att köpa en färdig maskin? ... därför att det är kul och det är en utmaning (iaf är det så för mig och jag tror många håller med).

Visa signatur

Abit AB9 QuadGT | C2D E6320 | vatten | 2x1GB Kingston PC-9600 | XFX 8600GT XXX | OCZ PowerStream 520W

Permalänk
Medlem

Köp inget du kan bygga själv

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av guardian
Köp inget du kan bygga själv

Kunde inte sagt det bättre

Visa signatur

Abit AB9 QuadGT | C2D E6320 | vatten | 2x1GB Kingston PC-9600 | XFX 8600GT XXX | OCZ PowerStream 520W

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av guardian
Köp inget du kan bygga själv

Håller med dig.
Jag driver mina lärare till vansinne när de hela tiden säger: "...åsså köper ni den här grejen..." Då räcker jag upp handen och säger:"Men det där kan jag löda åt er om ni vill"

Visa signatur

E8500, 4GB Corsair, 2x500 Samsung RAID0, 4GB I-Ram, EP43-DS3, 7900GTO, Win7.
AmigaOne G3XE, 1GB, Raptor 150GB, 4GB I-Ram, Radeon 9250 256MB, OS4.1

Permalänk
Medlem

Hehe det är roligt att driva lite med folk. Framförallt lärare

Dom tror att man inte kan , men dom ska bara veta vad vi kan.

Visa signatur

Keep up the good work

Permalänk
Medlem

Visa signatur

E8500, 4GB Corsair, 2x500 Samsung RAID0, 4GB I-Ram, EP43-DS3, 7900GTO, Win7.
AmigaOne G3XE, 1GB, Raptor 150GB, 4GB I-Ram, Radeon 9250 256MB, OS4.1

Permalänk
Medlem

Nu blir det bygga av!

Jag har fått hem klaviaturer nu som säkert ska gå att få fart på.
Bild 1
Bild 2
(OBS! Stora bilder)

Nu när jag har påsklov så ska jag nog hinna komma en bra bit (hoppas jag...)

Ska börja med att bygga ihop ett interface till mitt µ-datorsystem och testa lite logaritmer. Sedan är det tänkt att hela keyboard till MIDI-konverteringen skall ligga i en lämplig µ-kontroller.

Någon som vet någon bra µ-kontroller med ordentligt med I/O och minst 512bytes RAM?
Jag har kikat på MC68HC908GP eftersom jag har jobbat mycket med Motorolaprocessorer förrut men den verkar vara lite over-kill i det här sammanhanget.

Visa signatur

Abit AB9 QuadGT | C2D E6320 | vatten | 2x1GB Kingston PC-9600 | XFX 8600GT XXX | OCZ PowerStream 520W

Permalänk
Medlem

Wow, hoppas det går bra. Ett tips, tag många bilder och skriv nån typ av dagbok på hur du gör. Sedan kanske det skulle vara ett bra "reportage" för Sweclockers.

Visa signatur

E8500, 4GB Corsair, 2x500 Samsung RAID0, 4GB I-Ram, EP43-DS3, 7900GTO, Win7.
AmigaOne G3XE, 1GB, Raptor 150GB, 4GB I-Ram, Radeon 9250 256MB, OS4.1

Permalänk
Medlem

Lycka till hoppas att det lyckas

Permalänk

Jo, du verkar bestämd på att lyckas, så lycka till. Dock skulle jag ha satsat på att bygga en synthmodul, men men.
Lycka till hur som helst och håll forumet uppdaterat med bilder etc

Visa signatur

Intel Core 2 Duo E6000 @ 2.54Ghz | Corsair XMS2 2x512MB 5400C4 | Asus P5B | Radeon X1900XT | Raptor 74GB | 2x WD 320GB| Creative X-Fi
Fujitsu Lifebook P1032 | Transmeta Crusoe 700MHz | 6h Full load