MIDI Gameport till USB, planering och tips? [Färdigt]

Elektronikrelaterade (på komponentnivå) frågor och funderingar.
Fredrik79
Inlägg: 173
Blev medlem: 18 februari 2012, 00:03:19

MIDI Gameport till USB, planering och tips? [Färdigt]

Inlägg av Fredrik79 »

hej igen.

Kommit framåt en hel del med mina byggen, använt min Logikbaserade pic-programmerare nu för att konstruera en pickit2-kompatibel USBprogrammerare som faktiskt funkar klockrent. :)

i Mitt nästa projekt tänkte jag att jag skulle skrämma liv i en gammal creative blasterkeys midi-keyboard jag har liggande. Den har midikontakter och en db15, och tar även strömmen från gameportkontakten (vilket gör själva midi-kontakten ganska meningslös om man ändå måste ha en joystickport för att den ska funka, ingen annan kontakt för ström existerar)

Min tanke här är alltså att koppla midi-signalen från keyboarden till UART på en pic18F2550 eller pic18F4550 och basera den på microchips exempelkod för midi. Jag tänker enbart använda MIDI in på datorsidan, har dock sett i specifikationen att logiken är strömbaserad, inte spänningsbaserad, min fråga är då, gäller detta även gameportvarianten? Eller kan jag skippa optokopplaren om jag använder det gränssnittet istället för midiporten? Strömmen kommer ju ändå att komma från USB-porten, så oroar mig inte för potentialskillnader etc.

Googlat en hel del, men de projekt jag hittat är antingen joystick via gameport, eller midi via midiport, inte midi via gameport med pic.
Senast redigerad av Fredrik79 27 mars 2012, 23:57:35, redigerad totalt 1 gång.
Användarvisningsbild
JimmyAndersson
Inlägg: 26680
Blev medlem: 6 augusti 2005, 21:23:33
Ort: Oskarshamn (En bit utanför)
Kontakt:

Re: MIDI Gameport till USB, planering och tips?

Inlägg av JimmyAndersson »

Kul med ett MIDI-relaterat projekt. :)


Optokopplarna används i de här fallen inte pga potentialskillnaden,
utan för att isolera datorns elektronik från MIDI-elektroniken.
Dvs för att slippa att fel på t.ex parallellporten skulle kunna drabba keyboardens MIDI-ingång.

Optokopplaren gör det även lättare att få rätt nivåer på MIDI-signalen,
så jag tycker att det är onödigt att spara in på den.


Att du inte hittar några projekt som använder en PIC-krets är troligen för att det inte är så vanligt med den lösningen.
De flesta använder bara en FTDI-krets och en optokopplare,
eller köper något färdigt, även om det kan kännas som en tråkigare lösning förstås. :)

Har du någon plan för hur du ska lösa det hela i datorns mjukvara?
I de flesta program så kan man inte välja en serieport (COM-port) utan behöver något program/drivrutin
som tolkar den som en MIDI-port. Det här gäller oavsett om du använder en PIC-krets eller FTDI-krets.
Fredrik79
Inlägg: 173
Blev medlem: 18 februari 2012, 00:03:19

Re: MIDI Gameport till USB, planering och tips?

Inlägg av Fredrik79 »

Jo, sett att de använder dem för att få ut spänningsbaserad signal istället för den strömbaserade som midi normalt används med. Det jag funderade på var om spelportsgränssnittet skiljer sig på den punkten från MIDI-utgångarna och därmed inte var lika nödvändigt. Mer bekvämlighet att slippa vänta på en beställning än att spara en tjuga. ;)

På datorsidan har jag helt enkelt tänkt lösa det med att följa standard för USB MIDI device, så att den går på den inbyggda drivrutinen i windows. Finns ett exempel i Microchip application Libraries som skickar ut en MIDI-sekvens vid knapptryckning, tänkte basera mitt projekt på den.

Alltid varit intresserad av MIDI då jag även är musiker, tar det här som ett första steg att eventuellt bygga en MIDIBox framöver. :)
Användarvisningsbild
JimmyAndersson
Inlägg: 26680
Blev medlem: 6 augusti 2005, 21:23:33
Ort: Oskarshamn (En bit utanför)
Kontakt:

Re: MIDI Gameport till USB, planering och tips?

Inlägg av JimmyAndersson »

Aha! Hm, jag känner igen mig i de tankarna. :D


Nu förstår jag hur du menade. Det står ju i rubriken, men det kopplade inte riktigt först. :oops:
Jag är inte helt säker, men jag har för mig att gameporten är spänningsstyrd.


Intressant med "USB MIDI device"!
Jag har funderat lite på att göra MIDI-grejer till USB-porten mm, men inte satt mig in i hur man gjorde med drivrutinen,
så det var kul att få veta att det är så pass smidigt.

Det senaste MIDI-projektet jag gjorde var en kontroller till vocodern EHX V256
för att kunna komma åt lite mer godis som finns under skalet. Från början var
det bara tänkt för att kunna "flytta" bypass-knappen, men det råkade skena iväg lite.. :)
(Nu är det på väg att bli ett pedalbord för att kunna koppla in/ur insert-effekter på mixern
och styra lite grejer på synthar.)
Fredrik79
Inlägg: 173
Blev medlem: 18 februari 2012, 00:03:19

Re: MIDI Gameport till USB, planering och tips?

Inlägg av Fredrik79 »

Jag får helt enkelt testa att logga datan från picen (låter inte helt bra att kalla den så. hehe), handlar ju bara om c.a 5mA, så gör ju inte så mycket om det nu skulle vara fel typ av data.

Jo, det verkar inte så körigt att få till det hela, dock är koden från microchip ganska full med grejer man kan städa bort. (Samma källfiler till alla demo boards och #ifdef-block), men är ju programmerare, inte ingenjör, så känner mig mer bekväm i att experimentera med kod. :)
ToPNoTCH
Inlägg: 5282
Blev medlem: 21 december 2009, 17:59:48

Re: MIDI Gameport till USB, planering och tips?

Inlägg av ToPNoTCH »

Ett av mina tidiga PIC projekt var en 10 kanals MIDI mixer.

336 byte assembler.

Det var busenkelt vill jag minnas.
Fredrik79
Inlägg: 173
Blev medlem: 18 februari 2012, 00:03:19

Re: MIDI Gameport till USB, planering och tips?

Inlägg av Fredrik79 »

Jo, är USB-biten som är den stora delen när det gäller koden. Rätt descriptor + stack, men ska nog lösa sig. Håller på och konstruerar en PICDEM FS USB-klon för att kunna jobba med mina USB-projekt på ett enklare sätt. får se när den är klar.
Fredrik79
Inlägg: 173
Blev medlem: 18 februari 2012, 00:03:19

Re: MIDI Gameport till USB, planering och tips?

Inlägg av Fredrik79 »

Gjort lite framsteg nu, så här kommer uppdatering.

Kopplade upp en pic16f628A till en lcd och en db15 för att koppla på min keyboard. får ut datan på lcdn, och den verkar relativt konsekvent (anslagskänslig, så lite variation blir det), verkar gå utmärkt att köra utan optokopplare på gränssnittet för spelporten. Sitter i studion större delen av dagen imorgon och lägger gitarr på mitt bands kommande skiva, men förhoppningsvis hinner jag greja lite med projektet efter.

Nästa steg är alltså att koppla in en pic18F2550, Vänta in 3 seriella bytes keypress/keyrelease/aftertouch, och skicka som 32 bit via usb, mycket mer än så bör det inte vara för att få det att funka. :) Fördelen med en relativt gammal "dum" midikeyboard. den skickar inte mer än de 3 olika kommandon, varav alla är 3 stycken 8-bitsvärden var.
Fredrik79
Inlägg: 173
Blev medlem: 18 februari 2012, 00:03:19

Re: MIDI Gameport till USB, planering och tips?

Inlägg av Fredrik79 »

Klar med projektet, allt funkar kanon. :)

Min gamla keyboard återupplivad och numera USB istället för gameport. Funkade bra att basera koden på Microchip Application Libraries. ändrade i huvudsak bara main.c, ändrade även namnet från MIDI Example till "FP(mina initialer) Gameport MIDI" i descriptorfilen, förutom att initiera usart och läsa av 3 byte åt gången i 31250 baud som jag skickar vidare via USB tog jag mest bort kod för olika demoboards, använder picdem fs usb i koden, men har en pic18f2550 istället, som ju dock är kodkompatibel med pic18f4550 som sitter på tidigare nämnda board.

Den har även HID bootloader som med en jumper kortsluten på kortet tillåter uppdatering av firmware. Kanske inte är extremt imponerande projekt, men jag är grymt nöjd! nybörjare som man är. :)
Användarvisningsbild
JimmyAndersson
Inlägg: 26680
Blev medlem: 6 augusti 2005, 21:23:33
Ort: Oskarshamn (En bit utanför)
Kontakt:

Re: MIDI Gameport till USB, planering och tips? [Färdigt]

Inlägg av JimmyAndersson »

Kul! Grattis! :) :tumupp:
Skriv svar