TIP: Click on subject to list as thread! ANSI
echo: rberrypi
to: FOLDEROL
from: ALISTER
date: 2019-09-04 20:20:00
subject: Re: Standalone MIDI

On Wed, 04 Sep 2019 12:27:53 +0100, Folderol wrote:

> On Wed, 04 Sep 2019 10:34:21 GMT Alister 
> wrote:
>
>>On Tue, 03 Sep 2019 13:06:58 -0400, Dennis Lee Bieber wrote:
>>
>>> On Tue, 3 Sep 2019 07:39:14 -0400, "J.B. Wood"
>>>  declaimed the following:
>>>
>>>>Hello, all.  Just thought I'd revisit this topic since it's been a
>>>>while.  Has anyone ever constructed a Pi-based standalone 1-2 channel
>>>>MIDI sequencer?  By standalone I mean it has an integral display and
>>>>required pushbuttons/rotary knob for device control.
>>>>
>>>  What do you intend to show on the display?
>>>
>>>  What type of control do you envision? (If you visualize a one/two
>>> octave keyboard, you then have to specify how many notes in parallel
>>> -- one note at a time can use a simple row/column keyboard scan -- but
>>> when you go beyond two notes such a matrix can generate ghost key
>>> presses; avoiding ghosts requires a linear matrix, which means LOTS of
>>> GPIOs -- a 1x24 would need 24 GPIOs to detect key presses, while a 4x4
>>> is only using 8 GPIOs for 16 keys)
>>
>>Not Necessarily so. To eliminate ghosting you simply need a diode on
>>each switch (how do you think a quality computer keyboard manages N Key
>>rollover?).
>>16 io pins gets you 8*8 = 64 keys so a full piano (81 keys if i remember
>>correctly) still only requires 9 by 9.
>>
>>
> You need more than that to allow for various switches/selectors etc.
> Also you need to scan the matrix as fast as possible, preferably in the
> tens of microseconds range. However, just to make it 'interesting' you
> should include some form of debounce mechanism.
> Been there, done that, T shirt worn out!

figures quoted were a minimum obviously the matrix can be made as large
as possible.
microseconds for a full scan is massively overkill a 10mS scan time would
equal 100 scans a second more than enough for human interaction.

My original job was with a manufacturer of custom industrial keyboards so
I am fully aware of the need to debounce a 6mS delay when a change was
detected was considered more than adequate.

another option would be to only recognise a change after 2 consecutive
scans which would still be more than acceptable performance with the
above 100hz scan frequency.



--
American by birth; Texan by the grace of God.

--- SoupGate-Win32 v1.05
* Origin: Agency HUB, Dunedin - New Zealand | FidoUsenet Gateway (3:770/3)

SOURCE: echomail via QWK@docsplace.org

Email questions or comments to sysop@ipingthereforeiam.com
All parts of this website painstakingly hand-crafted in the U.S.A.!
IPTIA BBS/MUD/Terminal/Game Server List, © 2025 IPTIA Consulting™.