Subversion Repositories svn.mios


Blame | Last modification | View Log | RSS feed

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<META HTTP-EQUIV="Content-Type" CONTENT="text/html;CHARSET=iso-8859-1">
<LINK REL="stylesheet" TYPE="text/css" HREF="standard.css">
<BODY bgcolor="#ffffff" text="#000000" link="#0000ff" vlink="#000066" alink="#0000ff">
<CENTER><H1>MIOS Hex Upload</H1></CENTER>
<p>The MIOS Hex upload allows hex files for MIOS and MidiBox applications to be upload via SysEx messages. The hex file memory dump will be transmitted in a scrambled form, since the SysEx protocol doesn't allow the transfer of 8-bit values. Instead the whole dump will be sent in 7-bit packages, and converted back by the receiver to 8-bit values.
<p><img src="images/upload_mios.png">

<p>There are two methods for package flow control: A "smart" mode and a "manual" method. The first "smart" mode uses feedback from the core to control the rate of sending packages.

<p>In "this mode, packages are only sent once the previous write acknowlede message is recieved. If an error message is encountered or a bad checksum is received, the previous package is resent. After three failed attempts, the upload process is aborted.

<p><img src="images/upload_flow_control.png">

<p>The manual method will upload each package after a given delay time. Acknowledge and error messages will be displayed but will not have any effect on the upload process.
<p><img src="images/upload_manual.png">

<p>The "Wait for upload request..." option is useful for uploading MIOS updates as the first package must be sent within two seconds of receiving the "Request for Upload" SyxString. An easy way to control this is:

    <li>With the MidiBox hardware turned OFF, load the MIOS hex file by pressing the "Browse" button and selecting the required file, eg "mios_v1_7.hex".<br><br></li>
    <li>Make sure the "Wait for upload request before starting upload request" option is ticked.<br><br></li>
    <li>Select either "Use feedback from core" for smart mode or "Don't use feedback from core" for manual flow control.<br><br></li>
    <li>Press the "Start" button. The upload process will pause while awaiting the "Request for Upload" SyxString<br><br></li>

    <li>Turn the MidiBox hardware ON. Once the upload request is received the upload process will start, ensuring the first package is sent within two seconds.<br><br></li>