loading

Hacking the Rigol DS1052E Oscilloscope with Linux

Featured
Picture of Hacking the Rigol DS1052E Oscilloscope with Linux
I was in the market for an oscilloscope, but I didn't want to spend much.  I found out about Rigol and their line of $300-400 scopes, and was getting ready to buy one.  Then I found a post on how to make your DS1052E, which costs about $400 into a DS1102E, which costs about $700 with a simple firmware modification!  I bought the scope right after, and I received it in the mail today.  It's pretty nice by default, but doubling the bandwidth is always a plus.

The DS1052E has a 50Mhz maximum frequency, but it has exactly the same hardware (as far as the reverse-engineering folks can tell) as the DS1102E, which has a 100Mhz maximum.  This guide will show you how to make the switch very easily using Linux.  You can do it in Windows too, but it's a bit more involved, and Linux makes it really really easy.

I've attached the Rigol user guide for both units, in case you don't have one.

WARNING: It's entirely likely that this completely voids your warranty.  Make sure you know what you're doing - you can brick your scope if you screw anything up.
 
Remove these adsRemove these ads by Signing Up

Step 1: Spec Comparison

Picture of Spec Comparison
Here are the specs of the 2 scope models.  Our test to see if we've succeeded is by looking at the Time Base Range minimum setting - the DS1052E has a 5ns/div setting, where the DS1102E has a 2ns/div setting - a much more accurate view for sure!

Step 2: Get Linux Running

Picture of Get Linux Running
The first step is to get Linux going if you don't already have it.  I use Ubuntu 10.10 as my desktop OS, so I was able to skip this step.  If you don't want to continue running Linux, and just want to get this scope flashed, you can download the Ubuntu LiveCD, burn it, and boot from it.  

Step 3: Change the language if necessary

Picture of Change the language if necessary
IMG_0684.resized.JPG
IMG_0686.resized.JPG
My Rigol booted up into Chinese the first time, and it took me a while to figure out where the menu was to change it to English.  Press the Utility button, then press the second to last menu button over and over until you get to English, then push the Menu On/Off button to go back.

Step 4: Find your firmware version

Picture of Find your firmware version
IMG_0687.resized.JPG
You can find the System Info menu item in the same Utility menu as before, just on the last page.

As you can see in the picture, I've got firmware 02.05.00.00 HardVersion 58. You can get all these details by going into the System Info dialog, pressing CH1 twice, then CH2 twice, then MATH once.  Just be very careful once you do that sequence - apparently you can screw stuff up if you press anything other than RUN/STOP at this point.

Step 5: Prepare the software

Picture of Prepare the software
I used this extremely good forum writeup as a guide for the process.  As more firmware versions come out, the post will be updated, and this instructable might not.  Therefore, in this step, you need to click the link above, and find something resembling the following:

DS1052_to_DS1102.zip

This file contains a collection of different firmwares.  At this point, for my original firmware, I needed the following parts:

02.02.SP2_patched_to_02.05.01.02
02.04.SP1_original

The first one has a hex-edited version of firmware 02.02.SP2 that makes a 02.05 Rigol think it's an upgrade when it's really a downgrade.  You need to downgrade to 02.02.SP2 to enable the modifications we're going to make.  Refer to the forum post for more instructions if you have a different firmware than I have.

I simply put the first firmware on a USB key (02.02.SP2_patched_to_02.05.01.02) in the root.  The key was formatted with FAT16.  Then, I safely ejected the key, put it back in the computer, mounted it, and ran the following:
md5sum DS1000EUpdate.RGL
I compared this to the .md5 file that was also in the directory from the zip file.  They matched.

If they don't match, DO NOT CONTINUE.  YOU WILL PROBABLY BRICK YOUR SCOPE.

Step 6: Load the 02.02 firmware onto the scope

Picture of Load the 02.02 firmware onto the scope
IMG_0701.resized.JPG
  1. Put the key in the scope
  2. It will prompt you to update.  Do it
  3. Once it's complete, it says "Updata successed,please restart", the best message ever.
  4. Push the power button on the top
  5. Unplug the USB key
  6. Push the power button again to turn it on.  You should see the new version in the splash screen.

Step 7: Execute USB commands

Picture of Execute USB commands
IMG_0689.resized.JPG
Now that we're running the old firmware, we can do the traditional hack to change this scope.

I found this post really handy for this step.  Hook up the USB cable to the back of the unit.  Any generic USB cable will do - there's nothing special about it.  I used one from my Arduino :).  Once you have the device connected, make sure using dmesg:

[159486.820070] usb 4-2: new full speed USB device using ohci_hcd and address 11
[159487.214647] usbcore: registered new interface driver usbtmc

If you don't see that, try a different Linux (a newer kernel perhaps?) or check your connections a few times.  I'm using Ubuntu 10.10, and it worked perfectly the first time.  Now, we just need to get our commands straight.  The first command sets the model number.  You should probably leave this line as-is:
echo ":INFO:MODEL DS1102E" | sudo tee /dev/usbtmc0
This second line is where you have some wiggle room. Apparently, the firmware cares what your serial number is, so you have to make it a valid DS1102E serial number. The following was taken from the cited blog post above, and he states it was found in an eBay auction. Your original serial number is on the back sticker on the case in case you ever want to change it back.
echo ":INFO:SERIAL DS1EB11305432" | sudo tee /dev/usbtmc0
There.  That's all you need to do with your computer.  At this point, the scope had locked up on me, so I just unplugged it from the USB and rebooted it.  Then, I went into the System Info and checked the model and serial numbers.  See the picture.

Step 8: Flash an actual DS1102E firmware

Picture of Flash an actual DS1102E firmware
Now that we've gone through all that pain, we have to do one last flash of a working DS1102E firmware to finish the job.  Do it exactly the same as step 4, except this time use the firmware specified in the forum post for your model.  I used 02.04.SP1, which was included with the zip file.  The process is literally exactly the same as step 4, so you can just follow that.

Step 9:

Picture of
Once the update completes and you've restarted the unit, take a look at the System Info.  You should see DS1102E, the serial number you punched in, and firmware 02.04.SP1.  

Step 10: Test it!

Picture of Test it!
Now, let's see if the scope can measure down to 2ns increments!  

Step 11: Update: Acquired my first images!

Picture of Update: Acquired my first images!
Below you can see my test waveform from the probe compensation terminals.  I've also enabled Delayed Scan mode to get both zoomed and full waveforms on the screen.  It's a cool effect.

Step 12: Update: Testing (Not mine)

There was some discussion in the comments that I didn't have enough testing in here.  That's mainly because I don't have a function generator (yet), and I had other results to look at.  There's some true scope enthusiasts who've confirmed this mod works by using a function generator and looking at the maximum analog bandwidth and rise times.  Going through the eevblog forum post gets some good results.  This is a sampling:

Here's an analysis using a sine wave of the analog bandwidth.
Rigol DS1102E 100MHz 1GS/S
Start:100kHz End:117MHz
Notes:Used 16X average. Real Time. Equivalent seems to extend bandwidth. I still have to research the difference between the two.

Rigol DS1052E 50MHz 1GS/S (This is the modded scope)
Start:100kHz End:123MHz
Notes:Used 16X average. Real Time. Equivalent seems to extend bandwidth.
Yes really slightly better then the real DS1102E I went back and forth several times.
Here's it against a 200Mhz Tek and an unmodified unit. Notice how much the waveform looks like the Tek image?
Here's someone measuring a 109Mhz signal with a modified unit.  Looks great!
1-40 of 41Next »
flat5.3 months ago

I changed the fan to a cheap 80cm (Banggood).

I think I used an 18 ohm resistor in series.

Very quiet and cool. Also attached an adhesive heatsink to the 7905 regulator.

Also from Banggood. Very simple mods after you get the case open :-)

hardwarehank (author)  flat5.3 months ago

Awesome! Glad people are taking this even further than I did. Keep up the good work!

richfiles11 months ago

It's so tempting to snag one of these, but I got spoiled by the 4 channel scopes at work, and I do a lot of 3 phase and sequential signal stuff... I am using a Tektronix T932 35 MHz dual channel analog scope... That's older than I am.

I REALLY want to upgrade, but I think I have to force myself to save for 4 channels. Now if Rigol has a 4 channel like this! XD

richfiles11 months ago

That message was a thing of TRUE BEAUTY! I LOLed, HARD!!! XD

Translated to engrish:

The communicated is the positive beautiful product.Laughter strong.

cgrrty11 months ago

太厉害了...

malonph1 year ago

I have firmware 00.04.01.00.02 with HW version 58. Is it still possible to hack the scope?

Yes it is
Analog bandwidth is NOT "maximum frequency".
dougie 103 years ago
I have this scope and i am very happy, bought it from rigol-uk at only £245. see http://www.rigol-uk.co.uk/ds1000e-series-digital-oscilloscope/ not sure how long they will have this offer for...
Nice job man, thats a great mod, definitely worth the time.

How do you like that unit in general? Does the quality feel lacking or is it sufficiently well made? I'd like to hear your thoughts on the device.
hardwarehank (author)  mattthegamer4634 years ago
Having used Agilents a bit in College (I'm CS by trade, not EE, but I had a couple EE classes), this probably doesn't quite compare, but it's still a bargain at $300. The unit is pretty heavy (maybe 8 lbs?), knobs are well-made, it's responsive, I like the button layout, the menus are fine. But I haven't tested it thoroughly - it's my first scope, and I'm a EE novice, but there's a pretty large community that seems to like this scope. I wish I could give you a more detailed response :).

I really like that it's so low-profile - it's not deep like most of the scopes I've seen. It's about the size of a small shoebox. I think it's a great scope for a beginner, but if one had more stringent requirements, they should look elsewhere and spend more.

Thanks for reading!
"The unit is pretty heavy"

lol wut? It's light compared to my old analog scope! For something like this, lighter is better.
I have the Rigol scope at home and another similarly-priced Chinese scope at work (JingCe), and the Rigol is much better. Better build quality, memory size, and firmware.
I have the same scope, but I wouldn't upgrade until I finally get to the >50MHz level with my hacking.

Overall its a very nice scope. Big, glowing buttons, easy to navigate interface, and long list of features.

One problem: I'm coming from using university-level HP Analog oscilloscopes, so I was a bit spoiled with the near instant Auto-Scale times. The Rigol takes about 2-3 seconds to lock onto a signal, which once again wasn't a deal-breaker for me, just something I missed when switching from analog to DSO.

I suggest playing with it first if it is within your budget. Like many other tools, you get what you pay for. I wish I had ~10k to buy an HP/Agilent, but I don't so I had to go for this.

My 2 cents.
hardwarehank (author)  SuperSonik4 years ago
Yeah I noticed the AUTO is a little slow, but at this point, I really don't mind. I agree with SuperSonik 100%.
Quote "This guide will show you how to make the switch very easily using Linux. You can do it in Windows too, but it's a bit more involved, and Linux makes it really really easy."

Linux always makes things easier :)  And free too.
"Linux always makes things easier"

I totally, 100% disagree with this. Linux makes a few techy things easier, but most things that people want to do with their computers are much much harder.

Run Windows as your main OS, because it works well, is easy to use, and is actually compatible with the hardware it was shipped with, and then run Linux in a virtual machine for the few times you need it. It will work reasonably well with the virtual hardware, while it's pretty much guaranteed not to work with your real hardware.
hardwarehank (author)  moebuspcgold4 years ago
Everything except 3D gaming... and TurboTax :P

But otherwise, yeah I'm a huge advocate of Linux. Thanks!
raybent4 years ago
I've had one of these for a year or so. I installed this mod and it works great. I tested the frequency response with a signal generator. It rolled off (3dB) at 119 MHz. It "wriggled around" a bit before that, but that was where it took the dive. For comparison, I applied the same test to a Tektronix TDS3014 100 MHz DSO. It quit at around 120 MHz. Is it my imagination, or does the FFT function have more features now? Such as cursor position to ID frequency indicated.
Ray the old guy
hardwarehank (author)  raybent4 years ago
Thank you very much, Ray. I'm glad to hear it basically matched the Tek's performance. I haven't used the FFT function, so I can't confirm or deny any feature addition :).
polossatik4 years ago
Glad you liked my "changing the rigol DS1052E to DS1102E using USB , the dummy guide " ...
i'll add a trackback to this for Linux users,
aldo IMHO I think it might be a bit safer to use a windows pc for this stuff...
and it's not that a win pc is very hard to come by :)
And by the way, there is no need to have a "real" 1102E serial number, as note in my guide, simply use your serial and change the 5the letter D in to a B
hardwarehank (author)  polossatik4 years ago
Interesting - thanks!
hardwarehank (author)  polossatik4 years ago
Thanks for the trackback! Windows PCs are very hard to come by in my house, and amongst every one of my friends. Everyone I know either has an Apple (where this method should work with very slight modifications) or Linux.

I don't see what would be any safer in Windows - the USB driver in Linux is absolutely fine :). It seems like since there's so many more steps in Windows there'd be more to screw up. Here, it's just 2 commands - no software to download and install, etc. But, whatever floats your boat!

Thanks for writing up those instructions - I couldn't have done this without them.
vsurducan4 years ago
Ok, so you have changed the firmware.
How did you check than indeed the scope is measuring correct an input rectangular signal of saying 80MHz?
Meaning that you have the right rising and falling edges?

thank you, keep working!
hardwarehank (author)  vsurducan4 years ago
I sourced several other guides in making this instructable, and there have been several independent test results that have confirmed this does work. In fact, I saw one that showed the modified 1052 beating an actual 1102 in bandwidth (sorry, I tried to find this page again, but I can't).

I'll see if I can make a function generator for square at 80-100mhz. Thanks for the idea!
Manufacturing an 80MHz function generator can be a nice project.
However you need at least two different scopes (or two firmware loaded on the same hardware), else you will not be able to compare the results.

Rigol looks a nice scope. I'm playing with scopes since about 20 years (I've started with vacuum tubes scopes, now I'm using a Tektronix MSO4104, which btw is worse than old and real scopes), and can tell that the analog bandwidth is everything in a digital scope. With other words, is unlikely two different bandwith scopes have the same hardware in the input stage (high impedance amplifier and D2A converter) and just a different firmware. That is a stupid way of thinking for the scope designer. Usually even the hardware is the same, the cip used for D2A conversion is much slower on lower bandwidth scope.

That's why, if I'll be in your place I'll be very circumspect about the real effect obtained.
hardwarehank (author)  vsurducan4 years ago
There's some writeups on hardware teardowns of the scopes, and from the sounds of it, they've shown no discernable differences. In a way, it kind of makes sense from an engineering standpoint - if your main cost is research and development, just make one product and neuter it, but don't tell anyone. Usually this works great, but if anyone ever finds out, your more expensive model will sell less of the time (but for each of those sales, you're probably selling a cheaper one, and you have the added advantage of selling to a growing DIY community like this one that will choose Rigol since the scope can be modified).

Remember the Chevy Nova? You could get a lot of the same V8 engines offered in the Corvette, but at a much lower cost. Sure, you're not making as much per engine, but you're opening yourself up to a whole new market. At this point, most electronics hobbyists either don't have a scope or are buying used equipment since new scopes cost a fortune. This is one of the first decent and cheap new scopes. Also, since doing this modification voids the warranty, that reduces their cost even more.

So, I'm just saying, it's not necessarily bad business (or a "stupid way of thinking for the scope designer") to neuter a good product.
You may have right, I'm agree with your point. I'm also appreciate your work.
But, I'm an old designer involved in mixed, analog and RF design, and the way you're describing (which could be correct in those weird times) it hasn't any logic for me .

You have to prove that your modified scope works as expected. Find a way and please do it for yourself, not for me.

Is not enough to show a nice screen, borrow (from your school lab) a real signal generator, a real scope and test your modified scope. Show the differences of the rising and falling edges (measured between 10% and 90% amplitude as the standard require) within your scope and the reference scope.

best wishes,
hardwarehank (author)  vsurducan4 years ago
See Tazzz's comment with the YouTube link - he shows a before and after rise time measurement.
Tazzz4 years ago
Someone has a great youtube video on how do this hack, just search for oscilloscope hack.
hardwarehank (author)  Tazzz4 years ago
Yeah - the main difference between doing it now and in most (all?) of the videos is they locked out the method in all newer firmware than 02.02. That makes it a little trickier, so that's why I wrote up the structable. Maybe I can link to some of the inspirational videos in here though...
http://www.youtube.com/watch?v=R2dGKcMtAvg

hardwarehank (author)  Tazzz4 years ago
Thanks, Tazzz. That explains the process pretty well! This was the video that originally led me to buying the scope. Thanks for posting!
Fred826644 years ago
YES ! Linux to the rescue for fee Windows would of charged you two testes and an arm for this kind of software hack
carlos66ba4 years ago
Nice write up! Anyone knows whether there is a similar cheap unit but which digitizes at 10 or 12 bits instead of only 8?
Do you want a scope, or a DAQ ?
Why would you need that?
hailster4 years ago
One of my customers gave me a DS1052 to use on a temporary test fixture. Overall I'm impressed with the scope and highly considering buying one for myself at home. There are a couple things I don't like about them but overall I think they are great scopes for the price. I use the digital filtering a lot to help clean up noisy signals.

Once I pick one up for at home I'll be doing this upgrade.
gomibakou4 years ago
I have this oscilloscope, without upgrade -all upgrade is a risky and i don't need 100mhz for now- anyway i have all the files and instructions to upgrade it in the future ;).
I'm very happy with this tool, it's well finished, with specifications as a Tektronic DS101x equivalent serie -i don't remember the exact model-.

I think it's a good investment: low price and good quality.

I only find a problem: the fan is a little noisy, not annoying but... well but it's really easy to change.

The upgrade shouldn't avoid the specificatiosn because the ADC, and other componens are overrated to such frecuency. In fact, there's a picture of Rigol website with the same rigol DS1052E labelled with 100mhz !!!!

http://www.rigolna.com/products/digital-oscilloscopes/ds1000e/

Check the "view large image" and you'll see the model with the 100Mhz in the upper label over the screen. Hahaha
1-40 of 41Next »