Jump to content

idea for new MBHP module!


Duggle
 Share

Recommended Posts

The idea is a MBHP module which interfaces to a standard PC QWERTY keyboard (anyone can get these 2nd hand cheap or free) and produces IIC slave output to connect to IIC bus of 18F MIOS core.

This way a user can have a reletively hugh array of dedicated midi event triggers for very little cost or construction effort. The module plus DIN keyboard socket could be added to many (any?) existing MidiBox.

I imagine that the module would output an array of bits or event messages which the MIOS Core would translate and include in the MIDI output stream. In this way the great diversity of user requirements is satisfied by modifying the MIOS host (the core application).  

The module code itself should not be particularly complex and should not require user customisation.I imagine a Core PCB "stuffed" with a 16F877 would surfice. In fact the layout could be simpler than that of the core.  If customisation is neccessary (it probably isn't) then the module could  itself be MIOS 18F.

The QWERTY keyboard could be spraypainted a new colour and decals or other custom labels to replace the existing key markings.

Possible uses:

Midi Remote - dedicated application shortcuts and functions

Mixer - dedicated per channel buttons (mute, arm, solo, select, etc.)

Instrument - bazaar midi piano accordian (use wireless QWERTY to really rock!)

Edit:

found some tech info here:

http://www.electronic-engineering.ch/microchip/projects/keyboard/v1xx/keyboard_v1xx.html

Infact an adaptation of this 16F84 application would be a highly compact cost effective implementation.

Link to comment
Share on other sites

  • Replies 58
  • Created
  • Last Reply

Top Posters In This Topic

Damned good idea!  

A MBHP Universal-Shortcut-Keyboard-Interface for all kinds of Midievents - a lot of options for every Midibox-Maniac  :D

I got some old PC keyboards too...  ;D  ;D  ;D

...e.g.  Midibox SID controllable by keyboard, a rotary encoder (datawheel, endless pot)  + LCD   :)

I'm highly interested!

-------------

Addendum:

The module code itself should not be particularly complex and should not require user customisation.I imagine a Core PCB "stuffed" with a 16F877 would surfice. In fact the layout could be simpler than that of the core.  If customisation is neccessary (it probably isn't) then the module could  itself be MIOS 18F.

Year - it would be usefull to take the normal MBHP Core Module (with a new "MIDIBox-Keyboard Firmware" for the 16F877 or 18F452) - the Core Module is already tested, available and provides a lot of useful connectors - the LCD-Connector is a nice feature especially for working with a Keyboard ["special funktions" & future options]...

- Lemonhorse

Link to comment
Share on other sites

There a different ways an I idea like this could go.

One approach is to make it a subsystem that is as transparent as possible. This means that it interfaces to an existing Midibox without any modification to the (host) Midibox firmware.

This way all display/setup and other functionality  as to how the keys are used is up to the Midibox firmware as it is currently implemented.

The way I can see of doing this is to have a small say PIC16F84  application scanning the keyboard codes as per the project link above. The PIC then loads a 64bit serial/serial shift register with the keyswitch states which are in turn shifted into MIOS by the normal DIN operation. The 4517 is a low cost dual 64bit serial in/out shift register in DIP16 package.

Link to comment
Share on other sites

would this be possible to implement usig the commodore 64 keyboard?I'm sure more ppl than me have a few lying around after SID Extraction.could even build it into the case, and maby add a few pots and small lcd?just an idea, as i hate to throw things away.....(and since starting my sid project i have actually used some things i kept because "i might be able to use it one day")

Link to comment
Share on other sites

@arumblack: Nope, not without BIG modifications on the C64 keyboard. It's not a IIC device. If you look at your keyboard, there are many cables going to the motherboard. I think it's some multiplexed matrix system or so behind there....

Link to comment
Share on other sites

The keyboard adpator I'm planning at the moment is to accept serial data from a standard PC AT Qwerty and convert it into IIC slave interface for connection to a MIOS core.

It will be based on the low cost PIC16F84 (18pin device),

programmable from a JDM. Once constructed it is unlikely that the firmware will ever need change. All user options and functionality are provided by the MIOS Midibox it is connected to.

If someother exotic keydevice is wanted, I suggest to cut tracks(!) and wire keyboard switches to DIN module(s).

I'll be oherwise very busy for a few weeks, then I expect to implement it quickly. I'll post back here when more news.  

cheers

Link to comment
Share on other sites

  • 2 weeks later...
would this be possible to implement usig the commodore 64 keyboard?I'm sure more ppl than me have a few lying around after SID Extraction.....

Liked the idea so much I made one. :) Had a C64 keyboard leftover from my MBHP_SID project.

c64matrix_picprogram.JPG

I wrote it for a PIC16F628 (or you can use a 16F84, but the 16F628's are only $2.50 USD), also needed a demultiplexer ( DM74LS138 ) so you can have a 8 by 8 matrix.  This Makes the whole thing very cheap to make.

Here's the matrix that the C64 keyboard uses

http://www.howell1964.freeserve.co.uk/logic/burched/b5_c64_kbd.htm

I don't know MIOS well enough yet, but I'm sure you could do the 8 by 8 matrix on the core module.  You wouldn't even need a multiplexer (unless you wanted to save pins)

Right now I just have the keys mapped to midi notes and patch changes, but I'm thinking of making it more complex.  

I can post more details later if people are interested.

Christopher.

Link to comment
Share on other sites

Hi,

Progress has been made on the PC/AT Keyboard decoder.

A design and firmware will be released to the midibox community in the next few weeks:

Features in development:

1) MIOS interface. IIC 2wire bus interface to MIOS core host.

2) Midiout for use as standalone kbd-midi adaptor.

Possible features for subsequent firmware updates:-

Alternative key mappings with on-the-fly user selection for:  

- different key layouts (exotic European variants)    

- different midiout mappings

3) Midi merger (just insert adpator in midi chain with other control surface/s)

Options (1) and (2) will definetly be included in the first release.

Two hardware configurations are being documented:

-MBHP Core module using PIC16F877

-a custom "mini-core" optimised (for size and construction effort) just for this application using PIC16F876.

Both will use the same firmware.

The firmware for this project is based on foundation programs by Thorsten and others (who will be credited in the release).

I making this post just to let users know of the substantial progress and in light of alternatives being offered.

cheers

Link to comment
Share on other sites

How complicated it would be to add support for a mouse? Or yet better, two mice?

I have demonstrated in few places (this year at Pixelache, and Assembly) a way to utilise an optical mouse to read the movement of a turntable (that is scratching).

My app used second mouse plugged into a USB port, but since Windows allows only one mouse pointer, the mouse is occupied to the scratching limiting the possible UI. So, a midi version would be nice :)

The con with this method is that there will be more latency (compared to the mouse straight at USB port), which is really bad. I'm not sure though how bad the latency would be.

But generally speaking, the optical mouse is really great, since you can use it to read pretty much anything that moves (yeah, you can have a jog wheel big as a your table if you wish ;) .

Link to comment
Share on other sites

Hi Peeps :)

If an optical mouse could be implemented it might be possible to modify a turntable so that if you "scatched" a record it would change it to a midi controller.  So it would be possible to use turntable skills on any midi instument...Come to think of it it would be nice to link that to a scrub function on a sequencer.

If I had the skills to do it myself! :)

Link to comment
Share on other sites

If an optical mouse could be implemented it might be possible to modify a turntable so that if you "scatched" a record it would change it to a midi controller.  So it would be possible to use turntable skills on any midi instument...Come to think of it it would be nice to link that to a scrub function on a sequencer.

Have you seen Final Scratch?  It actually samples a digital record to see how fast its playing and what direction. (by digital i mean digital data cut into vinyl, so if you played the record on a stereo it would sound like garbage.)

Final-Scratch-small.jpg

Here is a review:

http://news.harmony-central.com/Newp/2002/Final-Scratch-Ships.html

The response time on it is amazing.  I'm not into dj'ing but this is a cool toy.

Christopher.

Link to comment
Share on other sites

Another way to skin the cat:

Open up the turntable and conect an encoder to the drive, as long as you have a high torque table should be OK

Now you have a 3 wire conection to a midibox good for scratches, spin backs, whatever?

But you will void your warranty!

LO

Link to comment
Share on other sites

Hi Nerd.  I ve seen final scratch before but it seems really expensive.  People have been using turntable skills on...well turntables for ages.  What would be intresting is if you could use the same skills for manipulating filter cut-offs or envelope attacks.

Hi LO. A high torque turntable?  Hmm.  I wouldnt mind if I couldnt play records on the turntable again because Id be using it as an interface.  Thank you very much LO I'll get researching for a turntable :D

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share


×
×
  • Create New...