Jump to content

Question about Device and Device_id


Per S

Recommended Posts

I have now made two new Core modules to add to my previous MIDIO128 with the 16F version. The first one was loaded with MIOS and MIDIO128 with device 0x00. No problems there. The second unit was loaded the same way but with device 0x01. I then was trying some SysEx commands listed in the document

"midio128_sysex_implementation.txt" quoted below:

MIDIO128 SysEx Implementation

=============================

Which Actions are implemented

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Example:

c) F0 00 00 7E 44 <d>3 <b> F7

     Request a block of 256 bytes

        <d> = device number (0-7)

        <b> = block number (00-05)

I tried the above command and it works but only if I have <d> = device number 0. Same result with other commands. Next was to do something more radical. New boot with device id 0x26, MIOS and MIDIO128 with device 0x26. Everything loaded OK. It looks like this:

000676D6   9  --     F0  Buffer:     8 Bytes   System Exclusive

SYSX: F0 00 00 7E 40 26 01 F7

The result with the command above (F0 00 00 7E 44 <d>3 <b> F7 ) yielded the same result, works only if <d> = 0 (zero). Actual command sent:

SYSX: F0 00 00 7E 44 03 01 F7

Now the question: What is the meaning of the device <d> in these commands?

I'm just curious.

Link to comment
Share on other sites

I guess that you are mixing the MIOS device ID with the device ID of the application. They are handled seperately. So, what you need to do is to rebuild the assembler source with  DEFAULT_DEVICE_ID set to 0x01 (<- the application device ID), thereafter you have to convert it to a .syx file with -device_id 0x01 (<- MIOS device ID) for uploading it to the core #1

To increase the confusion, the MIDIO128 device ID hasn't to be changed in main.asm, but in app_defines.h

I think this is something which should be improved in the next release. The application ID could also be derived from the MIOS ID (in the same way like it has been done for MIDIbox SID), so that no recompile is required.

Best Regards, Thorsten.

Link to comment
Share on other sites

OK, that explains it. I did as you suggested (set the MIDO128 device id to 0x01) and at first I thought I saw some strange behavior like the example below, a ping ( F0 00 00 7E 44 <d>F F7) appeared to respond to any <d> device:

00027FCF   9  --     F0  Buffer:     7 Bytes   System Exclusive

SYSX: F0 00 00 7E 44 0F F7

0002A529   9  --     F0  Buffer:     7 Bytes   System Exclusive

SYSX: F0 00 00 7E 44 1F F7

0002C1D8   9  --     F0  Buffer:     7 Bytes   System Exclusive

SYSX: F0 00 00 7E 44 2F F7

00031FD6   9  --     F0  Buffer:     7 Bytes   System Exclusive

SYSX: F0 00 00 7E 44 6F F7

00033E77   9  --     F0  Buffer:     7 Bytes   System Exclusive

SYSX: F0 00 00 7E 44 7F F7

The explanation is that I had the MIDI Merger enabled. Trying another SysEx requesting data worked OK, data showed up only when the correct <d> was used.

Many thanks,

Per S

Link to comment
Share on other sites

  • 2 years later...

I guess that you are mixing the MIOS device ID with the device ID of the application. They are handled seperately. So, what you need to do is to rebuild the assembler source with  DEFAULT_DEVICE_ID set to 0x01 (<- the application device ID), thereafter you have to convert it to a .syx file with -device_id 0x01 (<- MIOS device ID) for uploading it to the core #1

To increase the confusion, the MIDIO128 device ID hasn't to be changed in main.asm, but in app_defines.h

I think this is something which should be improved in the next release. The application ID could also be derived from the MIOS ID (in the same way like it has been done for MIDIbox SID), so that no recompile is required.

Best Regards, Thorsten.

The reason I opened this very old subject again is that it came up in a discussion with another user. He has, like me, several cores with MIDIO128 chained with MIDI Merge enabled. Having separate application ID's is very handy since you can do selective updates of the INI file without having to disconnect anything.

Is this improvement still being considered?

Best Regards,

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...
×
×
  • Create New...