Jump to content

MIOS don't want to start


ThomasT
 Share

Recommended Posts

Ok, once again in the international forum:

firmware ist burned, TX and RX seem to work.

hex files are convertet with device id 0x01.

the pic sends

"F0 00 00 7E 01 0F XX F7"

during sysex sending. Whereby XX is the samechecksum like the perl-script printed.

But after power up the PIC sends

"F0 00 00 7E 01 01 F7" again and again.

MIOS seems not to start.

What's wrong?

Link to comment
Share on other sites

You've tried to upload a .syx file which contains SysEx strings for device ID 0x00, but the device ID of your core is 0x01

There is a .hex file in the MIOS release which allows you to generate a new .syx with another device id (use the -device_id option of hex2syx.pl)

Best Regards, Thorsten.

P.S.: this presumption is based on your description in the german board - you wrote that you were not able to upload MIOS, which is required to upload any application...

Link to comment
Share on other sites

>You've tried to upload a .syx file which contains SysEx strings for device ID 0x00, but the device ID of your core is 0x01

How do know this?

It's right. I tried to upload the original syxex file. But after no aknowlegment I got the idea that the device id may be different. (I changed it to 1).

So I converted the mios.hex by using the perl-script with the options "-device_id 0x01 -os_upload" again into a new mios.syx.

Now I got the aknowlegde-Strings while sending sysex (I didn't saw them before writing the first german text, because the windows overlapped and I recognized only the first bytes in midi-ox input monitor, my fault...forget this posting) .

But MIOS will not start. I got the acknowledge-strings I mentionend.  

I have no idea if MIOS was not "installed", will not start or shut down because something is wrong.

I'm debugging a hardwareprototype...the error can be elsewhere...

Btw. The first error was a pice of solder between one oscillator pin and neightbor pin under the PIC, so I didn't noticed it...

Btw. I have no display. Only motorfader and din (one 165).

Link to comment
Share on other sites

After MIOS has been uploaded correctly, you should only see a single Upload Request after reset, sent by the first level bootstrap loader. Is this the case in your setup? Did you also try some ofter, more simple applications? Why not connecting a LCD for debugging?

Best Regards, Thorsten.

Link to comment
Share on other sites

>After MIOS has been uploaded correctly, you should only see a single Upload Request after reset, sent by the first level bootstrap loader. Is this the case in your setup?

No!

As I said I don't know it MIOS is uploladed correctly or crashes.

I got the request from the prim. bootloader after each 2s.

>Did you also try some ofter, more simple applications?

Application would be the next step.

To verify this: If MIOS is uploaded an no application is "installed" what happes than?

>Why not connecting a LCD for debugging?

Ochh...nö...das löt ich jetzt nicht noch da dran. Das wird ekeliges gefummel.

Link to comment
Share on other sites

To verify this: If MIOS is uploaded an no application is "installed" what happes than?

Nothing - the LCD prints "READY." and thats all. No upload request anymore.

But since your core permanently requests for new code, MIOS possibly has not been uploaded correctly and/or crashes. Why? No idea - hope that the LCD data bus pins at port B of the PIC are not tied to ground... the level at pin RB7 must be +5V (the internal pull-up is activated to ensure this), otherwise the core won"t regognize that no LCD is connected.

Otherwise: use the search function of this forum, search in the troubleshooting section for possible errors and how they have been fixed.

Best Regards, Thorsten.

Link to comment
Share on other sites

Steven_C wrote in a thread with the same problem:

I'm probably stating the obvious, but remember that you have to send the sysex for the os within two seconds of receiving the dump request, after you turn the 'box on. Failing that, where are you located? if you have a spare pic, maybe you can post it so someone fairly local can load the os for you?  

Can this be the problem? I thought the two seceond interval is only important when MIOS is already programmed. And since the request came after again and again it shall mean the pic is always ready for MIOS programming.  

I'll check this out.

Link to comment
Share on other sites

>No idea - hope that the LCD data bus pins at port B of the PIC are not tied to ground...

They all are open. But only RB7 and RB6 are connected for programming. So if I want to connect a LCD I had to solder it directly on the pins. PLCC not DIL...

>the level at pin RB7 must be +5V (the internal pull-up is activated to ensure this), otherwise the core won"t regognize that no LCD is connected.

The pin has 0V. Even by connect RB7 to 5V over an 5k resitor. Seems that an internal pull down resistor is activated...

Link to comment
Share on other sites

MIOS uses PORTB as bidirectional port. By default it's configured as output (for writing to a LCD), but sometimes it will be switched to input for polling the busy bit at RB7. I wasn't sure if the timeout mechanism works correctly in the meantime (an older MIOS version had problems when the busy bit was permanently 0), but I just tried it with my own MIDIbox and it works correctly, regardless of the voltage level at RB7.

Another easy test: read out the flash memory with the JDM to check if any - and especially the complete - MIOS code has been uploaded. You can compare it with the .hex file of the mios_v1_3 release. The bootstrap loader is located at a seperate address range from 0x7c00-0x7fff - it should also match with the original release.

Best Regards, Thorsten.

Link to comment
Share on other sites

I wrote you an email on tk@midibox.org.

Something I forgot tomentioned. I did not apply the pull down resistor on pin RB5 during programming.

Its on the JDM bord but the PIC is directly soldered like in the core schematic.  I just soldered 5 wires from the JDM board to a plug. And this I plug directly into JP3 while programming.

The datasheet says it's only important during low voltage programming. I do not need the lvp bit.

Right?

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