anyone can help me? MIDI KEYBOARD

i got MIDI keyboard from my friend, inside it looks like this:

http://imageshack.us/g/248/201112041208022.jpg/

What I ned is help with programming and transferring via MIDI (if it’s possible).

Issues:

  • I want to redefine “zero point” for note-on (for now minimal level is +/- 30)

  • redefine modulation wheel

  • add Expression pedal

in future:

  • add Program Change up/down buttons

  • add inputs to get 2 pedals / 2 footswitches / 1 sustain

please help the newbie :slight_smile:

thanks,

Adrian

Welcome to the MIDIbox Forum Adrian :slight_smile:

Looks like a MIDIO128 V2 Project. Can You confirm this? I can only guess.

http://ucapps.de/midio128_v2.html

With V3 You will have a lot more options…

MIDIO128 V3

http://ucapps.de/midio128.html

I know, but for now I have to get rid of what I have…

It’s build on PIC18F452 so I assume it’s old project. It has only MIDI IN and OUT - no USB.

http://www.ucapps.de/mbhp/mbhp_core_v3.jpg - it looks like this one…

Previous owner said that he can give me a LITTLE help, but he sells this keyboard “as is”. So for now I have to solve few very important issues:

  1. doubled PitchBend and Modulation controllers don’t work properly. It looks that value depends on how far joystick AND wheel are moved.

When one is on nominal - values jump 0-max on second controller.

  1. “near zero” values are generated all the time - it’s quite uncomfortable especially when I look on it in my DAW

  2. Sustain pedal generates 0-64 values - it HAS to be 0-127

  3. Aftertouch values jumps between 0 and maximum pressed

  4. minimal Note ON value is more-less 20. So there is no very pianissimo. For now it’s not important but near future I want to recalibrate all the keys to achieve values between 1 and 127.

I don’n know completly what program should I download to have ability to change these bugs - and even more - I totally can’t do it by myself…

I have two friends only who could help me, but one of them lives few hundreads miles from me, and second is previous owner.

I need serious help, because keyboard is great and I want to keep it, but I have to get rid of these bugs.

Can you - or anybody here - help me?

I think it sounds more like a MIDIBox 64?

Best place to start is by reading about the different boards and projects at www.ucapps.de

Bits you need to read will include:

Core board

DIn Board

DOut board

AIn board

How many of those do you have inside this keyboard?

Is there an LCD attached?

What I have inside is:

  • 1 core board

  • 1 MIDI IN-OUT board

  • 2 boards with incoming signals from keyboard

and controls:

  • 1 Roland style PitchBend-Modulation joystick

  • 1 PitchBend wheel

  • 1 Modulation wheel

  • Aftertouch (from keyboard).

What is wrong:

  • Aftertouch values jump between 0 and actual pressure

  • the same for modulation (it looks like lever and wheel are generating values even in “zero” position)

  • the same for pitchbend

What I want to add:

  • Expression pedal

Unfortunatelly I don’t have any idea how to make changes I need, it looks like a magic for me…

I want to learn how to do it, but I desperately need help in first steps with this project.

OK, first step is to read the site, everyone will tell you this.

Have you read anything yet?

Looking at your photos, you don’t seem to have an LCD attached? Can you get one? This would tell you what application is running which would help you.

Where are you located?

Can you post some more pictures of the boards?

What I have inside is:

  • 1 core board

  • 1 MIDI IN-OUT board

  • 2 boards with incoming signals from keyboard

MIDI ports should be located on the core board, so your “MIDI IN-OUT board” is probably just a PCB that holds the physical connectors. “2 boards with incoming signals from keyboard” could be either a DIN/DOUT board setup for a scan matrix, or whatever else. As sparx said, you will have to read up in order to be able to describe properly what setup you have. Only then we can try to help you.

Thanks for replay.

I read ucapps.de and try to understand basics, I’m not (believe me) one of those people, who don’t want to know, just want to get instant answer.

More Photos - I’ll do it in the evening. But there’s nothing more to show. It look like it’s simple project: 88 keys keyboard with dynamic and aftertouch, MIDI IN and OUT, Pitchbend-Modulation lever, PitchBend wheel, Modulation Wheel, Sustain pedal input… no LCD (I will buy one - 2x16 or 2x20 characters?), no more pots or sliders.

I’m from Poland

On photos you can see all the PCB’s inside enclosure. there’s nothing more than one core PCB and two “matrix” PCBs. It looks like they are AIN modules (or DIN modules???), connected stright to keyboard and to Core module.

Get the LCD that is cheapest and can get to you the quickest. (or borrow one)

We need to know what the boards are (Digital In’s or Digital Out’s or Analogue In’s)and the application. Don’t worry, you’ll be able to do it.

adrian4u,

you should start by identifying the ICs that are on the “matrix” PCBs (most probably 74HCxxx - see what the xxx is on yours). Then we know if those are DIN or DOUT boards, or both, or AIN.

Next, you should install MIOS Studio. Connect both MIDI in and out to out and in ports of your computer, tell MIOS Studio which MIDI ports your keyboard is connected to (in case you have more than one MIDI I/O in your system), and see what message you get when you power up your keyboard and press the “Query” button. We are interested in the content of the box that starts with “Operating System: MIOS8”.

You’re right.

Sory I had no time for answer, I had “hard days nights, when I was working like a dog”…

For now, I have MIOS Studio already, I wait for LCD - one question - If I understood the description, I have to find 2x16 LCD? not 2x20?

For my suggestions above you do not need an LCD at all.

Whether you get a 2x16 or 2x20 does not matter much - I would go for the 2x20 if costs were comparable, because there is more screen space. If that screen space is actually used depends of the software running on your MIDIbox, which is still unknown…

for now I know that inside is CORE on PIC, DIN and DOUT only, I have code for this keyboard, compiler and loader, but still it’s black magic for me :-/

I can send you code, compiler etc if you would like to see it.[kompiler.rar](< base_url >/applications/core/interface/file/attachment.php?id=9422)[sm_16x16_fatar_88wood_V2009.rar](< base_url >/applications/core/interface/file/attachment.php?id=9421)

anyone would help me?

I buy Polish vodka :slight_smile:

Next, you should install MIOS Studio. Connect both MIDI in and out to out and in ports of your computer, tell MIOS Studio which MIDI ports your keyboard is connected to (in case you have more than one MIDI I/O in your system), and see what message you get when you power up your keyboard and press the “Query” button. We are interested in the content of the box that starts with “Operating System: MIOS8”.

I have been trying to give you some support and point you in the right directions, but it seems you prefer to ignore these hints. You should probably consider dropping the whole project and turn to the guy who sold you this stuff. :sad:

Believe me, I started to read uCApps a week ago - just maybe I’m not patient enough.

Thank you for help, give me few more days - I wait for some stuff coming after Christmas - LCD, cables, etc…

And I’ll let myself gto write here, ok? :wink:

sm_16x16_fatar_88wood_V2009.rar

That code is based on Thorsten’s experimental fast switch matrix demonstration project. A few people have gotten things sort of working based on it but it has never advanced to the point of being a solid project.

I’m not sure but MIDIO128 v3 might include support for a switch matrix. If it does, switching to that project probably would be a good idea. There will be more people who can help if you are using a mainstream project. [[Edit: I just looked and MIDIO128 v3 uses a different Core board. I wouldn’t switch the Core for now since you have something that is basically working.]]

The biggest challenge is to get switch matrix code that handles velocity sensitivity. CuBase has reported the greatest success in this area and your code is probably based on his efforts.

Unfortunately what you are trying to do is not a beginner project. This type of thing presents challenges even to more experienced MidiBox users. You need to be very patient as you climb a steep learning curve. You probably will need to do several things that are less than all you want to do just to learn. One beauty of MidiBox is that it is easy to replace the software so you can start with easier, less functional software and then build on it.

This type of project should be discussed under “Midification” where it is slightly more likely that people with experience in this type of project will notice you. This area is for questions about assembly language programming. You might have those types of questions along the way but you are asking bigger questions right now.

Your first step is to be able to build the code you have, without changes, and successfully load it on the MidiBox. Have you done that yet?

  1. Sustain pedal generates 0-64 values - it HAS to be 0-127

Your second step, the first one where you will actually make a change, is to find the sm_fast.inc file and then find this section of that file:

COL_12_other

	movlw	0x0f

	cpfseq	SM_BUTTON_ROW

	goto	SEND_PRG_CH

SUSTAIN_PROCEDURE

	movf SM_CH_STATUS, W

	addlw	0xb0

	movwf	MIDI_EVNT0

        movlw	0x40

	movwf	MIDI_EVNT1

        movlw	0x01

	CPFSEQ	MIOS_PARAMETER2

	goto	SEND_SUSTAIN_40

	movlw	0x00

	goto	SEND_SUSTAIN

SEND_SUSTAIN_40

	movlw	0x40

SEND_SUSTAIN

	movwf	MIDI_EVNT_VALUE

	call	MIDI_EVNT_Send	

	return

Under SEND_SUSTAIN_40 change “movlw 0x40” to “movlw 0x7f”.

Build and load the project. Test your sustain pedal. If it now sends 127 when pressed, you can do the following cleanup:

change “goto SEND_SUSTAIN_40” to “goto SEND_SUSTAIN_7F”

change “SEND_SUSTAIN_40” to “SEND_SUSTAIN_7F”

These two changes don’t affect how the project works. They are just to keep the code clear.

Congratulations! You’ve just taken the first step up the mountain. Have a glass of Polish vodka.

Thanks, I’ve was thinking it’s just a simple setup with Sustain, somewhere in code (setting min and max value).

About a project - in a fact this is projest from CuBase I think (I don’t know if this guy is present on this forum, but I can suppose that this is the person.

He told me he had problems with this project, tears blood and sweat. Project is almost done, most irritating things are PitchBend, Modulation, AfterTouch. While PB and MOD wheels are doubled, so they go crazy if one PB is set to “0” and second is higher/lower; AT just acts like sending impulses of “0” and “actual” value.

I will try to record it at home.

Jim,

Keyboard project is operational, with some bugs I described above: main issues are PB, MOD and AT controllers. I would like to change Velocity response too (for now it starts from value +/- 20 instead of 1), but in this point it’s not as important, because it works good as it is.

Thank you very much for help in finding Sustain lines, Now I have to make changes in code, compile it and load to CORE. Which one MIDI Studio should I to use? this one in attachement (few post above) or this one from uCApps download?