Difference between revisions of "Patch your Firmware"

From Rigol Homebrew Wiki
Jump to: navigation, search
 
(16 intermediate revisions by one other user not shown)
Line 1: Line 1:
;Sorry, not complete yet...
 
 
Download the Toolchain from
 
https://github.com/krater/rigol-toolchain
 
 
and follow the instructions in the README file...
 
 
 
----
 
 
 
Before you can start to develop your own software, you need a possibility to upload and start it on your Rigol device. Because the original firmware doesn't offers this possibility, we must patch some things to open the door to the memory.  
 
Before you can start to develop your own software, you need a possibility to upload and start it on your Rigol device. Because the original firmware doesn't offers this possibility, we must patch some things to open the door to the memory.  
  
Line 16: Line 6:
 
* A original Rigol firmware image (DS1000EUpdate.RGL) version 02.05.02.00 with a md5sum of 9c28690d8d5a5690b7340fda943f5549.  
 
* A original Rigol firmware image (DS1000EUpdate.RGL) version 02.05.02.00 with a md5sum of 9c28690d8d5a5690b7340fda943f5549.  
  
----
+
The md5sum of the firmware can be verified with the command:
  
 +
md5sum -b DS1000EUpdate.RGL
  
 +
There is a patch script in the examples/rwpatch/ subdirectory of the toolchain.
 +
Copy your firmware image to <toolchain>/examples/rwpatch/DS1000EUpdate.RGL (where <toolchain> is the path where you installed the rigol toolchain), switch to this directory and do a
 +
 
 +
<pre>
 +
make patch
 +
</pre>
  
 +
When all is working correct you get the response:
  
 +
<pre>
 +
...
 +
</pre>
  
Copy your firmware image to examples/rwpatch/DS1000EUpdate.RGL,
+
The resulting firmware should have the md5sum '''3ffccd4edcc70710e010124edec9ee1c'''.
switch to this directory and do a
+
Now you can copy the new firmware image to a usb stick and flash it to your oscilloscope.<br><br>
 
+
 
make patch
+
<span style="color:red;">
 +
{{warning|'''ATTENTION !!!'''
 +
This will possibly void your warranty or damage your oscilloscope.
 +
Make sure your device will work with version 02.05.02.00 of the original firmware BEFORE you flash the image. We are not responsible for any damage happens while you using this software.}}
 +
<br>
 +
 
 +
=== Enjoy the new possibilities ===
 +
 
 +
After the patch the :FFT command of your serial console will no longer work as usual, but you have some new functions:
 +
 
 +
;Read bytes from any memory address:
 +
<pre>
 +
:FFT:xxxxxxxxRcc<return>
  
When you get the Message "Firmware ready to flash.", you can copy the resulting firmware
+
xxxxxxxx: 8 digit hex address
image to a USB stick and flash it to you oscilloscope.
+
cc:       2 digit count of bytes to read
        
+
</pre>
!!! Make sure your oscillsocope will work with version 02.05.02.00 of the firmware !!!
 
!!! BEFORE you flash the image !!!
 
  
 +
;Write a byte to memory:
 +
<pre>
 +
:FFT:xxxxxxxWvv<return>
  
 +
xxxxxxxx: 8 digit hex address
 +
vv:      2 digit value for the byte
 +
</pre>
  
compile firmware example
+
;Call a subroutine:
 +
<pre>
 +
:FFT:xxxxxxxxCdd<return>
  
get firmware image
+
xxxxxxxx: 8 digit hex address
 +
dd:      2 digit dummy
 +
</pre>
  
patch firmware
+
<br>
 +
<span style="color:red;">
 +
{{warning|'''ATTENTION !!!'''
 +
Only use this commands if you really know what you do ! It could delete your calibration infos and firmware. We are not responsible for things you do.}}
 +
<br>
  
upload to scope
 
  
Then:[[Start_Development]]
+
Next step:[[Start_Development]]

Latest revision as of 13:33, 26 June 2012

Before you can start to develop your own software, you need a possibility to upload and start it on your Rigol device. Because the original firmware doesn't offers this possibility, we must patch some things to open the door to the memory.

For this job you need

  • The completly installed Blackfin and Rigol toolchain (follow the instructions here)
  • A installed md5sum tool
  • A original Rigol firmware image (DS1000EUpdate.RGL) version 02.05.02.00 with a md5sum of 9c28690d8d5a5690b7340fda943f5549.

The md5sum of the firmware can be verified with the command:

md5sum -b DS1000EUpdate.RGL

There is a patch script in the examples/rwpatch/ subdirectory of the toolchain. Copy your firmware image to <toolchain>/examples/rwpatch/DS1000EUpdate.RGL (where <toolchain> is the path where you installed the rigol toolchain), switch to this directory and do a

make patch

When all is working correct you get the response:

...

The resulting firmware should have the md5sum 3ffccd4edcc70710e010124edec9ee1c. Now you can copy the new firmware image to a usb stick and flash it to your oscilloscope.

ATTENTION !!!

This will possibly void your warranty or damage your oscilloscope. Make sure your device will work with version 02.05.02.00 of the original firmware BEFORE you flash the image. We are not responsible for any damage happens while you using this software.


Enjoy the new possibilities

After the patch the :FFT command of your serial console will no longer work as usual, but you have some new functions:

Read bytes from any memory address
:FFT:xxxxxxxxRcc<return>

xxxxxxxx: 8 digit hex address
cc:       2 digit count of bytes to read
Write a byte to memory
:FFT:xxxxxxxWvv<return>

xxxxxxxx: 8 digit hex address
vv:       2 digit value for the byte
Call a subroutine
:FFT:xxxxxxxxCdd<return>

xxxxxxxx: 8 digit hex address
dd:       2 digit dummy


ATTENTION !!!

Only use this commands if you really know what you do ! It could delete your calibration infos and firmware. We are not responsible for things you do.



Next step:Start_Development