[ maxim11 @ 08.04.2013. 09:57 ] @
Želja mi je da uz Vašu pomoć osmislim i finalizujem midi master klavijaturu praktičnu za live nastupe(izbor mikrokontrolera,šeme spajanja,pisanje programa).Zamisao je da klavijatura ima 72 dirke(dugmića).


Uploaded with ImageShack.us
Izbor izlaznog midi kanala na klavijaturi,slanje komande na dva midi kanala istovremeno sa splitovane klavijature,splitovanje klavijature,promenu boja na više modula sa klavijature,kontrolu jačine i modulacije zvuka.Ukoliko neko ima još neki praktičan predlog oko izbora komandi neka predloži.Na više sajtova postoje šeme spajanja uz određene mikrokontrolere uglavnom bez programa i sa delom zamišljenih komandi.Nisam pronašao kompletan projekat sa svim zamišljenim komandama.Ukoliko izvođač na sceni midi master klavijaturom kontroliše aranžer ili solo klavijaturu koja se nalazi na stalku ispred njega nisu mu potrebne sve komande jer ih ima na aranžeru ili solo klavijaturi ali ukoliko midi master klavijaturom želi da kontroliše 2 ili više modula koji se nalaze u rack-u koji je udaljen od njega bez takvih komandi ne može da upravlja njima.Fabričke(skuplje)midi master klavijature poseduju takve mogućnosti za koje ne znam koliko su praktične za live nastupe ali je u njih uglavnom nemoguće ugraditi(kod majstora)dugmetarsku preradu a zadržati sve komande.Znači nije bitno kućište klavijature,dirke,dugmići već samo električna šema spajanja,PCB pločica i program za mikrokontroler(e).Mikrokontrolere tek počinjem da upoznajem,sa elektronikom(teoretski i praktično)se družim 20-tak godina,praktičan rad sa raznim alatima mi nije stran.
[ zica49 @ 08.04.2013. 20:33 ] @
Zasto 72 dugmica? Oktave u pitanju ili nisam dobro razumio sta je napisano..
I malo sam nasikiran tvojom izjavom tek se upoznajem sa elektronikom i odmah na neku "svemirsku" klavijaturu.
[ maxim11 @ 08.04.2013. 21:10 ] @
72 dugmica,dirki,tona zato sto je takav deo sa seme(8x9) koji sam pronasao a najpribliznije je fabrickim klavijaturama sa 76 dirki(6,5 oktava).Danas je moguce kupiti celu klavijaturu sa dirkama koje su izvadjene zbog prerade na dugmetaru ili kompletnu dugmetarsku preradu(bez midi plocice) zato sam i naveo da to nije u razmatranju.Za one koji poznaju problematiku mikrokontrolera to verovatno nije "svemirska" klavijatura a ja se nadam da cu iz ovoga mnogo nauciti.
[ ZAS011 @ 08.04.2013. 22:20 ] @
Onda počni da se upoznaješ sa problematikom mikrokontrolera. počneš od "Blink LED (Hello World)" pa polako prema složenijim stvarima.
Mada mislim da bi bilo bolje da se zabavljaš sa problematikom "crvenih plekova", manje je naporna
[ bogdan.kecman @ 09.04.2013. 00:08 ] @
sto bre ljudi tako negativno prema kolegi koji se ne kratko bavi elektronikom pa bi da udje malo na ovu stranu, uzeo je relativno prost projekat na sebe (midi je obican seriski protokol)

ne kontam kakve veze sa bilo cim ima kolicina dirki, dal ih je 10 ili 200 nema absolutno nikakve razlike

no da se prebacimo u konstruktivni mod

moj savet je ST discovery F4 razvojna plocka (oko 12$ bese kosta?)

faza 1 - setovanje razvojnog sistema
* okaciti plocku na pc
* napraviti neki razvojni alat za rad (cocoox ili true studio ili neki open baziran na eklipsu...)
* istestirati najjedostavniji program - upaliti i ugasiti 4led na plocki, debagirati taj proces real time step by step debagerom

faza2 - komunikacija sa plocom
* spojiti plocu preko seriskog porta nazad na pc (neki ft232rl ili slicno da se usart sa razvojnog alata veze direkt na pc kako bi preko terminala pratili sta se desava na kontroleru)
* napisati jednostavan program koji na seriski port salje neku datu

faza3 - pocetak rada - skeniranje tastature
* spajanje tastature na mcu (ako je rec o 8*9 moze da se iskoristi 8 bita jednog porta za jednu stranu i jedan spi bus za kontrolu 74hc595 koji bi sluzili za skeniranje tastera, mozda je ovde jos bolje koristiti onaj bez latch-a? no ja volim latch :D ..
* slanje na seriski port "sta je procitano sa tastature", dakle sta je stisnuto a sta je otpusteno
* napraviti matricu u memoriji koja predstavlja stanje tastature kako bi se pravilno detektovali prelasci stanja

faza4 - slanje midi karaktera na 2 midi porta
* izgenerisati 2 midi porta na mcu-u (softwerski bitbang npr, ili mozda hw ako moze, ne secam se dal moze, sw moze sigurno)
* poslati random tonove na oba kanala

faza 5 - finalna
* iz faze 3 znamo sta se desava na tastaturi
* iz faze 4 znamo kako da posaljemo ton na midi izlaz
* odraditi "pamet" koja u odnosu na to sta je stisnuto generise sta treba na izlazu

faza6 - siljenje
* dodavanje lcd-a, lampica i ostalih kalakurcija koje sluze za finalnu upotrevljivost masine


e sad, svaka od ovih faza zahteva dosta rada za nekoga ko nije radio sa mcu, za pocetak nabavka stm32f4discovery plocke i setup osnovnog sistema za rad je ono gde mnogi vec odustanu (te zato ovakvi negativni komentari u startu, posto su mnogi vec mnogo puta probali da pomognu al su "ucenici" odustali pre prvog koraka).

umesto stm32f4discovery moze da se koristi i neka druga plocka, na primer nesto bazirano na nekom mnogo pinskom pic24f mada ja vise sa mchip kontrolerima necu da radim nove projekte nikad, to jeste opcija, to je ok 16bitna serija kontrolera pakovana hardwerom, mozda da se koristi neki xmega, ili neki pic32mx (npr UBW32 plocka je odlicna za rad), neki lcp ...

ja bi generalno isao sa nekim 32bitnim core m3 ili sa dva mcu-a, neki core m0 za obradu tastature, enkodera, lampica etc i neki core m3 koji bi radio pamet oko midija - pod uslovom da izlaz treba da bude "audio", u varijanti da izlaz treba da bude midi onda jedan cortex m3 ili cortex m4 vise nego zadovoljava zahteve .. (realno i mnogo mani mcu zadovoljava ali za pocetnika je mnoooogo bolje da ima prostora za rad nego da ga odma zatvore u 8 bita i par kb rama/roma)
[ maxim11 @ 09.04.2013. 08:17 ] @
Izlaz treba da bude samo sa midi komandama bez "audio" signala.Midi komunikacija koliko sam ja uspeo da shvatim se zasniva na slanju tri byte od kojih prvi nosi informaciju o uključivanju note i midi kanalu na kome se šalju informacije


Uploaded with ImageShack.us
ili isključivanju note i midi kanalu


Uploaded with ImageShack.us
drugi i treći byte nose informaciju program (instrument) change (2 bytes),pitch bend (2-3 bytes),Control Change, ie pedal/footswitch (2-3 bytes),kojom jacinom da bude odsvirana nota...


Uploaded with ImageShack.us
[ bogdan.kecman @ 09.04.2013. 08:28 ] @
da, midi signal je vrlo prost seriski signal. da li sprava treba da ima 2 midi izlaza ili na jednom midi izlazu treba da salje vise kanala ?
u bilo kom slucaju ja predlazem stm32vldiscovery ili stm32f4discovery plocku (ova prva je jednostavnija i cip je jeftiniji tako da mozda bolje ona), realno je za posao dovoljan 28 pinski pic24f ali kao pocetniku savetujem vise pinova (40 ili 64 ili vise) i veci mcu (vise rama, vise prostora) ... realno i neki pic18F bi radio posao ali to je bas mucenje, ako bi se radilo sa osmobitnim onda bi ipak za ovaj posao predlozio neki atmega (npr atmega644p)

sve one faze i dalje stoje, poceti naravno sa nabavkom opreme, www.st.com/stm32-discovery plocku sam ja recimo inicijalno kupio preko firme technodis ali mozes da dobavis i preko tagora, sprintela i vecine drugih maloprodaja (technodis zahteva placanje od strane firme, ostali imaju maloprodaju)
[ maxim11 @ 09.04.2013. 09:09 ] @
Midi klavijatura bi trebala da ima 1 midi out i po njemu da šalje sve instrukcije.
Stm32vldiscovery naručen,rok isporuke 15 dana.
[ bogdan.kecman @ 09.04.2013. 11:37 ] @
mozes odma da krenes da razmisljas o razvojnom alatu ...

najjednostavnija free verzija ti je: http://www.atollic.com/index.php/download/truestudio-for-arm

zahteva windoze, ima limite, ali radi

najbolji ide koji postoji je KEIL, ali kosta papreno ( http://www.keil.com/arm/mdk.asp )

mozes bez limita, free da napravis sam sebi okruzenje: na primer: http://www.yagarto.de/
[ ha_23 @ 09.04.2013. 13:08 ] @
I Keil isto ima MDK-Lite verzija limitirana na 32KB. Atollic TrueSTUDIO Lite je limitirana na 32KB (8KB on Cortex za M0).
Keil e stvarno dobar steta sto dosad nije imao code completion no od verzija 4.70 i to se promenilo :)
Release Notes for MDK-ARM Microcontroller Development Kit
Code Completion Keil
[ Odin D. @ 09.04.2013. 14:36 ] @
^
Ako nekog zanima, AtmelStudio je potpuno besplatan i fercera odlicno, bar u onoj mjeri u kojoj sam sam ga ja isprobavao. To nije bilo puno, ali nikad niucem nije zapeo.
Odavno nisam imao slucaj da nakon instalacije nekog IDE ucitam projekat, kliknem na Build i nakon par sekundi dobijem : "Build successful... Errors: 0... Warnings: 0...", kliknem na 'Debug' a ono "Device connected..." i sve radi :). Svaka im cast. Podrzano je sve: assembler, C, C++.
Jest da Atmel nema toliko varijanti cortexa kao npr. ST, ali ono sto ima je sasvim pristojno.

Jedini problemcic je sto Atmel nema tih jeftinih kitova poput ST-Discovery serije, ali J-Link educational verzija kosta 50€ (ista kao i 6 puta skuplja "regularna@ verzija, osim sto je moralnim spregama ogranicena na okolukucnu upotrebu, ako na nekog te sprege uopste djeluju), pa moze nesto da se iznabada na protoboard... A J-Link radi u Atmel Stuidiu 1/1 bez ikakvih dodatnih akrobacija (SAM-ICE je nista drugo nego rebrandirani J-Link u plavoj boji, kosta ~100€, ali mislim da je ogranicen samo na Atmel chipove, dok J-Link programira sve ARM-ove svih proizvodjaca...)
[ bogdan.kecman @ 09.04.2013. 15:59 ] @
Citat:
ha_23:
Keil e stvarno dobar steta sto dosad nije imao code completion no od verzija 4.70 i to se promenilo :)


gde iskopa 4.7 ja imam neki 4.01
[ ha_23 @ 09.04.2013. 17:28 ] @
Citat:
bogdan.kecman: gde iskopa 4.7 ja imam neki 4.01


Ja imam 4.53, ovoj 4.70 sam slucajno nasao nisam ga probao.
Ti si spomenao Atolic pa proverio sam tekovne verzije Atolic i Keil tako sam naisao na 4.70 :)
Evo LINK video prezentacija za Code Completion.
[ mikikg @ 09.04.2013. 18:12 ] @
Samo ukratko ofo faze 3 koju je Bogdan spomenu, to sa skeniranjem tastature mozda izgleda prosto ali obicno ispadne drasticno slozenije.
Za "dugmetaru" ne znam, ali kod klasicnih klavijatura osim detekcije da je dirka/taster pritisnut postoji i funkcija merenje jacine pritiska, tkz dinamicka klavijatura. To je i mehanicki i programski zahtevno.
Verujem da sa ovim spomenutim MCU nece biti problema ali je veoma bitno vreme odziva, to mora da bude sto je moguce brze (sto manji "lag"), red manji od par mili sekundi, muzicarima je poznata ta problematika.
Sa tehnicke strane pitanje da li da se ide na shift-registe ili neko drugo resenje. Veoma je bitno da interna logika bezuslovno detektuje pritiskanje tastera ma koliko brzo muzicar pritisnuo dirku. Tek oko samih tastera je pitanje kako to resiti ...

Moj matori je to pravio svojevremeno sa PIC isto za dugmetaru nekom liku, znam da su se oko toga mlatili jako dugo ...
[ bogdan.kecman @ 09.04.2013. 18:22 ] @
zato ja rekoh arm a ne neki 12c508 ili 16f84 :D
[ zica49 @ 09.04.2013. 20:54 ] @
Eh sta je se nekada novaca zaradilo sa tim 12C508/509 playstation..palete i palete konzola..
[ bogdan.kecman @ 09.04.2013. 21:01 ] @
video sam stotine kontrolera, nekim provaljivao operande, svasta sam propustio kroz sake - samo 2 kontrolera ocima ne mogu da vidim, 16F84 i 12C508
[ yugaja @ 10.04.2013. 11:49 ] @
Citat:
mikikg: Samo ukratko ofo faze 3 koju je Bogdan spomenu, to sa skeniranjem tastature mozda izgleda prosto ali obicno ispadne drasticno slozenije.
Za "dugmetaru" ne znam, ali kod klasicnih klavijatura osim detekcije da je dirka/taster pritisnut postoji i funkcija merenje jacine pritiska, tkz dinamicka klavijatura. To je i mehanicki i programski zahtevno.
Verujem da sa ovim spomenutim MCU nece biti problema ali je veoma bitno vreme odziva, to mora da bude sto je moguce brze (sto manji "lag"), red manji od par mili sekundi, muzicarima je poznata ta problematika.
Sa tehnicke strane pitanje da li da se ide na shift-registe ili neko drugo resenje. Veoma je bitno da interna logika bezuslovno detektuje pritiskanje tastera ma koliko brzo muzicar pritisnuo dirku. Tek oko samih tastera je pitanje kako to resiti ...

Moj matori je to pravio svojevremeno sa PIC isto za dugmetaru nekom liku, znam da su se oko toga mlatili jako dugo ...



Samo kratko oko "dinamicke klavijature":
Tu postoje dva, tri pojma: velocity, after touch i displacement il' tako nesto mrzi me sad da trazim kako se tacno zove ovaj treci.

Posto je tu najveci problem mehanika, treba videti kakva je ta klavijatura donor i ne izmisljati nista preko toga (verovatno ce u najboljem slucaju imati samo velocitu control - ono sa po dva tastera po tipki...) Slazem se da skeniranje mora da radi ko metak. Verovatno ce se trositi poseban MCU samo za to, ali o5 navise zavisi od toga da li je klavijatura "dinamicka" ili ne.

EDIT: Evo kako je to reseno na jednoj matoroj 'talijanskoj makini

[ bogdan.kecman @ 10.04.2013. 13:07 ] @
nema potrebe toliko komplikovati semu, to je iz vremena vrlo spore digitalije, danas 74ahc595 na 25C na 3.3V radi na 120MHz, ako oces -40 do +80C moras da se zadovoljis sa 60MHz ... obzirom da je brzina periferije na arm-u realno limitirana na 50MHz mozemo uzeti to za brzinu na kojoj se skenira tastura... adkle tih 100 tastera sa po 2 prekidaca, to je 200 prekidaca to znaci da ce svaki taster biti ocitan 300000 puta u sekundi ako citamo jedan po jedan, a citacemo 8 po 8 sto znaci 2.4 miliona puta u sekundi !!!

ja sam inicijalno rekao coveku da bi ja radio to sa dva mcu-a, jedan za skeniranje tastature (neki cm0) i sa glavnim koji bi radio sve ostalo, ali obzirom da ovaj glavni realno nece raditi nista onda nema potrebe, sve sto glavni mcu treba da uradi je da posalje seriski par karaktera na midi port i to je to, nema "generisanja tona" sto je neka matematika .. tako da jedan mcu treba da zavrsava sve bez problema .. jedan spi port da kontrolise shiftere, jedan 8bitni data port da cita bus sa tastature i vozi misko
[ mikikg @ 10.04.2013. 14:37 ] @
Treba probati i pogledati neka gotova DIY resenja. Izgleda prosto ali sigurno ce tu nesto da pravi problem posebno kod dinamicke tastature. Takodje sto @yugaja kaze, vrlo je bitno kakva je "donor" tastatura. Nisu to klasicni prekidaci (mikro prekidaci), obicno se stavljaju oni gumeno-grafitni tasteri koji kao sto znamo menjaju otpor a to je kljucna stvar jer muzicar moze pritusniti dirku ali posle jacinom pritiska odreduje jacinu tona i bez pustanja dirke! Da li to moze tek tako da se detektuje za digitalnim kolima? Pre ce biti da se tu ide na varijantu sa multipleksiranim A/D (koliko se secam po MIDI standardu ima 128 nivoa jacine). Dalje, brzina scana, to sa par MHz ce biti vrlo nezgodno, ne zaboravite da je ta klavijatura (dugmetara) bar duzine pola metra, klasicna i preko metar, idealno kao antena ... vrlo nezgodna problematika kada se sve to uzme u obzir ...

[Ovu poruku je menjao mikikg dana 10.04.2013. u 15:53 GMT+1]
[ yugaja @ 10.04.2013. 15:44 ] @
Bas zanimljiva tema. Ne mogu za sebe da kazem da dovoljno poznajem problematiku klavijatura, znam samo ono sto sam video i/ili kopao po netu kad mi je trebalo. Muzika i sve oko nje je samo hobi.

Elem ono sto sam do sada video (sto o5 ne mora nista da znaci, jer kazem nisam serviser ) je da se najcesce radi samo tzv velocity sensing. To se koliko-toliko lako implementira sa dva gumirana obicna "tastera" na razlicitim rastojanjima od tacke vesanja dirke, pa postoji merljiv vremenski razmak izmedju "on" stanja, kako se cini u zavisnosti od toga koliko brzo (jelte velocity) pritisnemo dirku. Tako imas osecaj dinamicke klavijature; kad jace lupis veca je brzina . Eto i to se dodaje na konto brzine skeniranja tastera tih 128 nivoa il' realno koji bit manje...

Kod after toucha o5 ima dve varijante svaka tipka ima svoj after touch ili jedan zajednicki za celu klavijaturu. Na onom ketronu iz seme je tako: zajednicki pressure sensing za celu klavijaturu. To zna da bude sasvim dovoljno.

[ bogdan.kecman @ 10.04.2013. 17:13 ] @
Citat:
mikikg: obicno se stavljaju oni gumeno-grafitni tasteri koji kao sto znamo menjaju otpor a to je kljucna stvar jer muzicar moze pritusniti dirku ali posle jacinom pritiska odreduje jacinu tona i bez pustanja dirke! Da li to moze tek tako da se detektuje za digitalnim kolima?


da li si nekad merio koliko menjaju otpor :D zaboravi na AD i multipleksiranje, to je zanemarljivo, drugo tu sitnu promenu kako bi poslao preko midija ? promenis glasnocu, posaljes ton, vratis glasnocu? ne radi to tako .. na analognoj tastaturi koja bi generisala zvuk bi mozda tu mogao da pravis neki feedback i eventualno zavijas, menjas sitno glasnocu, sa midijem jedino mozes da pricas o brzini i to je to a to se sa 2 tastera resava. guma se tu koristi samo zbog trajnosti

a inace sto se gotovih DYI resenja tice svi oni bit boxovi sekvenceri i ekipa cak ne koriste ni 2 tastera vec obicne gumenjake koje citaju cisto digitalno pritisao brzo udario ili pipno potpuno je isti izlaz, kada uzimaju gotove tastature pa se kace sa njih, po tasteru koriste samo jedan senzor a ne oba posto im je velocity nebitan ... ja sam skroz u fazonu da treba da se pokupi signal sa oba senzora (mislim da original sema koju je covek stavio ima vec 2 senzora na svakom tasteru i po diodu na svakom)
[ Odin D. @ 10.04.2013. 17:40 ] @
Citat:
bogdan.kecman:  drugo tu sitnu promenu kako bi poslao preko midija ? promenis glasnocu, posaljes ton, vratis glasnocu? ne radi to tako ..

Može bit' da se time bavi audio-sintisajzer koji prima te midi poruke: ako je primio midi notu sa nekom novom jačinom, pri čemu je tu istu notu primio ranije, a da u međuvremenu nije primio poruku da je ta dirka puštena - onda on sam (vjerovatno) softverski zavija u skladu sa situacijom...
[ mikikg @ 10.04.2013. 23:19 ] @
Stvarno ne znam te sitne detalje kako bas MIDI radi ali uzmite za poredjenje samo klasican klavir ili elektricni piano, oni osim klvijature imaju i nozne pedale ili prostija varijanta samo volume pedala a sve to moze da se salje preko MIDI kao informacija u "realnom vremenu". Isto cesto klavijature imaju i onu rucicu (programski programibilnu) kojom se zadaje vibrato ili se menja pitch, volume itd ...
[ bogdan.kecman @ 10.04.2013. 23:50 ] @
uzmi probaj neku midi klavijaturu i udaraj po jednom tasteru i lagano ga pipkaj i sve izmedju, evo ja sam pre 2h probao jedan poskup, salje na midi glasan ton ili stisen ton i to je to, nema nista izmedju, zato i rade skoro sve sa 2 senzora, ako se okinu brzo znaci da je "udaren" ako se okinu sa vecim razmakom znaci da je tisi ton, ima dodatna fora za vibrato senzor koji ide ispod tastature i vazi za celu tastaturu ... sto se pedale tice to nema veze sa tasterima, ja kapiram da ce ta sprava imati bar 2-3 "tockica" koja ce imati vise od jednog polozaja jeli tako da ce analogni ulazi svakako morati da se koriste, ali nikako za same tastere na tastaturi
[ yugaja @ 11.04.2013. 08:09 ] @
Ne znam koliko ima DIY projekata i kakve su im mogucnosti, ali znam da ima service manuals za gomilu klavijatura da se nadje vrlo lako (npr na elektrotanya).

Inace proverio sam sinoc, kao i Bogdan, na mojim makinama: na ketronu, matoroj DX11 i na nazovi entry level klavijaturi PSR295.

Postoji gradacija od, sigurno ne 128 nivoa, al' vise od 2 svakako na svakoj od ovih klavijatura. Ova "igracka" PSR ima XG ton generator koji se sasvim lepo ponasa na npr zvuku klavira, flaute trube, sax... tako da efekat nije prost volume nego bas taj expression Mada je to druga tema: kako se velocity info sa midi kanala dalje obradjuje u generatoru.


Poz!!
[ bogdan.kecman @ 11.04.2013. 08:24 ] @
kapiram da sa megahercom citanja date sa ta dva senzora moze da se uvati nekoliko nivoa za velocity sigurno ... sad moglo bi da se budzne neko analogno kolce koje bi davalo u zavisnosti od brzine (prvi raste drugi frizne rast) neki analogni izlaz ali brzo snekirati 100 tastera adc-om je samoubistvo
[ yugaja @ 11.04.2013. 08:49 ] @
hehe inace setih se sada, posto je pomenuta i dugmetara pasuljara, verovatno ce biti trilera... kad god sam bio u prilici da razgovaram sa ljudima koji sviraju narodnjake i da ih smaram o klavijaturi, bezmalo su svi drzali ovaj feature iskljucen jer ih nervira, smara i sl.. Kapiram da to zavisi od samog muzicara najvise, ali verovatno ima neceg i u vrsti muzike koju sviras, bez ikakvog omalovazavanja...
Prosto negde je uvek fortissimo, kum tako 'oce :)

[ bogdan.kecman @ 11.04.2013. 08:53 ] @
kada su cisto digitalne sprave u pitanju, posebno kada ima sors firmware-a bude lako promeniti takve stvari :D
[ maxim11 @ 11.04.2013. 09:17 ] @
Donor klavijatura yamaha psr-330,61 klavirna dirka sa dva kontakta po dirci,sanyo lc7985na sa lcd displejom(ukoliko je upotrebljivo),mikroprekidači,kutija.Na šemi koju sam postavio očitava se 8 kontakta po grupi,na šemi koju je postavio @yugaja očitava se 8x2 kontakta po grupi na donor klavijaturi se očitava 6x2 kontakta po grupi.Kakva je razlika(šta je praktičnije,bolje) u rasporedu očitavanja po grupama?

[Ovu poruku je menjao maxim11 dana 11.04.2013. u 11:21 GMT+1]
[ acho @ 11.04.2013. 09:26 ] @
He, sad ste me podsetili davnog projekta kada sam pravio midi klavijaturu, okačio sam ga na AVRfreaks (link). ATMEGA88 je bio čini mi se, sa par šift registara za dodatne IO (siromašan student bejah). 128 dirki, velocity (pun 7-bitni) i par analognih ulaza (mod, pitch i 4 programabilna čini mi se). Tajming je bio kritičan, trebalo je skenirati 256 kontakata za par desetina mikrosekundi, sa svim dekodovanjem, pa slanjem preko fifo u UART itd., beše zanimljivo. Danas bi sigurno bilo lakše sa modernijim i bržim kontrolerima.
[ goran_68 @ 11.04.2013. 20:19 ] @
Može i multipleks ADC ukoliko je neophodno detektovati više nivoa na jednoj dirki. Tastaturu podeliš u grupe dirki a svakoj grupi dodeliš poseban MCU. Za N grupa, N "malih" MCU, jedna clock i N data linija ka glavnom MCU a on na MIDI.
[ bogdan.kecman @ 12.04.2013. 22:15 ] @
za te pare mozes i da uzmes tastaturu koja vec radi i da je koristis
[ goran_68 @ 13.04.2013. 01:49 ] @
Pa cenim da bi jedan "mali budjavi" mogao da gleda 8 dirki. A oni su jeftini.
[ mikikg @ 13.04.2013. 03:35 ] @
Hehe, ali "dugmetare" ili "pasuljare" koliko znam jos uvek ne pravi Korg, Roland, Yamaha, Kurzweil i ekipa :) Tako da potrositi po 1-3E za MCU po grupi i nije toliko strasno. Odplati se to sve od nekoliko "kumovih" pesmica :))) Zato je i postaljvljac teme krenuo u samogradnju ...

Mnogi muzicari koji su navikli na harmonike dugmetare zale sto nemaju i takve MIDI spravice, tako da to posle moze i jos dodatno da se stancuje i prodaje :) ... Dobra je to ideja (mislim generalno na projekat), a dal upotrebiti MCU po grupi treba razmotriti i videti sta se sa tim dobija i da li ima tehnicke/programske prednosti u odnosu na druge pristupe.

[Ovu poruku je menjao mikikg dana 13.04.2013. u 04:57 GMT+1]
[ acho @ 13.04.2013. 09:19 ] @
Mislim da je upotreba više od jednog kontrolera za ovako nešto overkill, više će se napatiti oko komunikacije između pojedinačnih scan-kontrolera i glavnog. Zadatak je prilično jednostavan, skeniraj-pošalji. Čak i ako hoće da implementira full-range velocity.
Što se tiče aftertouch-a koliko se sećam postoje note aftertouch i channel aftertouch (channel pressure). Prvi je skupo za implementirati, mali broj kontrolera ga i ima, a i većina uređaja ni ne reaguje na te poruke. Drugi je lak i više je mehanički nego softverski problem. Maxim11 nije rekao, ili sam prevideo, kako bi koristio klavijaturu? Ako je za eksperimentisanje sa zvukovima mnogo važnije će mu biti da ima što više potenciometara i programabilnih tastera.
[ maxim11 @ 13.04.2013. 10:16 ] @
Naveo sam u prvom postu,ideja je da master klavijatura(klavirna ili dugmetarska)bude upotrebljiva za live nastupe.Praktična prvenstveno za izvođače koji njome žele da upravljaju sa više modula koji su udaljeni(smešteni u rack).Master klavijatura treba da obezbedi:
izbor(promena)izlaznog midi kanala(podesiće više modula da primaju midi signal na različitim midi kanalima)
izbor(promena)boja na modulu koji je odabran izlaznim midi kanalom
kontrola jacine zvuka na audio izlazu modula
displej na kome će biti ispisan izlazni midi kanal i redni broj izabrane boje na modulu
[ bogdan.kecman @ 14.04.2013. 01:15 ] @
znaci tebe brzina udaranja po tastaturi ni ne zanima, bitno ti je da detektujes stisak na taster, da imas meni da odaberes na ekranu kanal i opciju (boju) za taj kanal, da imas tocak za volume i to je to ... to je vise manje pdim
[ maxim11 @ 14.04.2013. 09:24 ] @
Zanimaju me obe opcije.Dugmetarske prerade koje rade domaći majstori su uglavnom sa jednim kontaktom po tonu tako da kod njih nije moguće ostvariti dinamiku,postoje neke dugmetarske prerade(elka)koje imaju dva kontakta po tonu kod kojih je moguće ostvariti dinamiku i uglavnom svaka klavirna tastatura ima dva kontakta po tonu.
Prva opcija bez dinamike je jednostavnija pa bih voleo da prvo nju završim a u sledećoj fazi da proširim prvi projekat i dodam dinamiku.
[ Odin D. @ 14.04.2013. 11:18 ] @
^ Ako se radi o tome da postoje tastature koje ti "mehanički" odgovaraju, a u suštini ti fali samo ta dodatna funkcionalnost u vidu biranja pojedinačnih kanala i njihovih podešavanja... onda ti se uopšte ne isplati pravljenje čitave tastature, mislim finansijski.

Umjesto toga napravi samo neki control-box koji će na sebi imati potrebne kontrole i displej. Taj box treba samo da presreće "originalne" MIDI poruke od bilo koje tastature, prepravi ih onako kako ti već treba i te prepravljene poruke pošalje dalje. Pošto se radi o relativno jednostavnim prepravkama, latency ne bi trebalo ni da osjetiš.
To ti je sto puta brže, jeftinije i elegantnije, a tako ćeš moći da koristiš i bilo koju tastaturu.
[ maxim11 @ 14.04.2013. 11:54 ] @
Tastature(prerade)koje postoje su uglavnom izvađene iz neke klavijature koja je bila prerađena na dugmetaru i uglavnom su bez midi pločice tako da je poterbno uraditi kompletnu midi pločicu sa ostalim pratećim komandama.
[ Odin D. @ 14.04.2013. 12:24 ] @
Pa šta je problem da se i ta elektronika, tj. "midi pločica" izvadi i upotrebi zajedno sa tom preradom?
Čak šta više - može se uzeti elektronika iz bilo koje druge klavijature koja ima jednak ili veći broj tastera.

Znaš li koji se to tasteri (dugmići) koriste u tim preradama? Kako se zovu, gdje se nabavljaju?

[Ovu poruku je menjao Odin D. dana 14.04.2013. u 13:35 GMT+1]
[ ZAS011 @ 14.04.2013. 13:24 ] @
@maxim11:
Ajde ti polako kreni sa tvojim projektom pa da pomažemo kada zapne. Teoretisanje nam samo haba tastature.
Ako nešto hoćeš da praviš, POČNI.
[ maxim11 @ 15.04.2013. 06:33 ] @
@ZAS011
U 8-om postu piše:Stm32vldiscovery naručen,rok isporuke 15 dana.
U 29-om postu piše:Donor klavijatura yamaha psr-330,61 klavirna dirka sa dva kontakta po dirci,sanyo lc7985na sa lcd displejom(ukoliko je upotrebljivo),mikroprekidači,kutija.
Naručio sam ploču,kupio sam donor klavijaturu,čitam literaturu koju mi je prosledio @bogdan.kecman i čekam da stigne ploča.
@Odin D.
Dugmetarske prerade se rade na više načina:
-kompjuterski tasteri,uglavnom se koriste chery tasteri(zalemljeni na ploču)na koje je direktno zalepljeno dugme
-polu mehanička,dugme preko polugice ostvaruje pritisak na kompjuterski taster zalemljen na ploču
-mehanička,mehanika kao na harmonici ostvaruje kontakt preko opruga
-mehanička,mehanika kao na harmonici ostvaruje kontakt preko foto senzora
Neke prerade koje se prodaju nemaju midi pločicu.
[ alternator14 @ 08.11.2015. 16:46 ] @
Zdravo svima
Nov sam na forumu i interesuje me da li neko ima semu proverene midi plocice sa mikrokontrolerom i HEX-om na koju bi mogla da se poveze dugmetarska tastatura i preko midi prikljucka prikljuci na aranzer Korg PA50 ili bilo koju klavijaturu?
Unapred zahvalan.