Jump to content

PIC ID


anakin
 Share

Recommended Posts

Hi,

from http://www.ucapps.de/mios_bootstrap_newbies.html

if multiple cores are connected to a single MIDI port in parallel or in a chain, each core should get it's unique device ID, so that the upload tool can address the code to the right receiver. The device ID is part of the ID header, which can only be modified during the flash programming of the bootstrap loader, or with the change_id application.

The device ID selected in the upload window must match with the device ID of the core which should response to the transfer.

This means in other words: after the MIOS device ID has been modified by the change_id application, the ID in the MIOS Studio Upload Window has to be changed as well, so that it matches with the new ID value.

So long only one MIDIbox is connected to the MIDI port, it's save to use device ID 00. A project where different device IDs are required is the MIDIbox SID (the master gets the ID 00, the slaves the IDs 01, 02 and 03)

Especially MIDIbox SID users will notice the problem, that the MIDI Outs of the slaves are not connected to the PC (only the MIDI Out of the master core). Accordingly, the upload tool of MIOS studio won't continue after the first code block has been transfered, since it doesn't get a response.

There are two adequate solutions to overcome this:

the Newbie method: plug the slave PIC into the master core socket and program it in the same way like you did for the master PIC. Only differences: you have to pick another .hex file, and you need to change the device ID. This has the advantage, that you can also ensure that the software is installed properly with the master core/SID as a "reference".

Best Regards, Thorsten.

Link to comment
Share on other sites

About the "connected to one MIDI port" thing.  Suppose I have an MBFM whos PIC ID is 0x00.  Then I have an MBSEQ also with a PIC ID of 0x00 plugged into the MBFM's OUT port.  Is this permitted?  Or does the restriction apply only to devices that have multiple cores inside them?

Link to comment
Share on other sites

It's better to use different IDs, regardless if the MIDIboxes are chained or connected in parallel. This saves you from uploading the wrong firmware.

E.g., one time (after a bootloader update) it happened that I uploaded the MBSID firmware into MBFM, as a result all BankStick were reformatted and all my new patches got lost. :-(

The probability for such an handling error is lower, when you have to select the right device ID before uploading a firmware.

Another point is, that MIOS reply strings won't be forwarded by a MIDIbox which is assigned to the same ID. So, you wouldn't be able to update a firmware without changing the MIDI cabling.

Best Regards, Thorsten.

Link to comment
Share on other sites

This might be a totally lame idea, or indeed, since I've not done any searching, (it's not been a good day, and I'm very tired), it might have been discussed already, but what about declaring a standard set of MIDIbox ID's?

Let all the 'usual' versions (SID, FM, Seq, 64 etc), have their own default ID. People doing 'specials' could alter as required.

Another thought, especially in the 'protection of IP' line: If all of us chipped in a $1, it might possible to raise the $200 annual fee, and get MIDIbox it's own MIDI SysEx ID code, though I guess keeping 7DH (Non-Commercial), is enough.

I can sympathise with Thorsten with the upload blues:- I once managed it with a motherboard, due to a badly labelled file on the FIC's ftp site, I had to do the dodgy 'hot plug' trick to get it reloaded.

Link to comment
Share on other sites

I already considered this, but at the end I came to the conclusion that standard IDs for different applications would only reduce the flexibility. For example, for MIOS uploads it is required to use the same SysEx header, only the device ID makes the difference. But what, if somebody runs two or more MIDIboxes with the same firmware? So, an additional ID would be required anyhow.

For configuration data (e.g. MB64 setup, MBFM/MBSID patches, MBSEQ sequences) I'm using a different header, so here we have a clear differentation.

A SysEx ID change to a dedicated (confirmed) MIDIbox SysEx ID sounds attractive, but a lot of firmwares and tools would have to be changed. I'm not sure if this is worth the effort...

Best Regards, Thorsten.

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...