Author Topic: Rigol's New Function Generator and DMM: DG800Pro / 900Pro / DM858  (Read 150387 times)

0 Members and 2 Guests are viewing this topic.

Offline Hovo

  • Newbie
  • Posts: 4
  • Country: de
Re: Rigol's New Function Generator and DMM: DG800Pro / 900Pro / DM858
« Reply #375 on: July 19, 2025, 10:10:02 pm »
Thanks to kuwoyuki, there are already instructions in this thread:

Made a Python crypter/parser for the setup.stp here: https://codeberg.org/kuwoyuki/rigol-setup-crypter. The encryption is just DES-CBC with a somewhat custom key array from the CPU SN.

  • download the crypter https://codeberg.org/kuwoyuki/rigol-setup-crypter
  • install adb
  • connect the AFG to LAN and find its IP address then
  • adb connect IP:55555
  • adb -s IP:55555 pull /rigol/data/setup.stp # pull the setup.stp
  • adb shell -- /rigol/shell/get_cpu_serial_num.sh # read the cpu serial
  • python rigol_setup_crypter.py -d -f setup.stp -k YOUR_CPU_SERIAL -o setup.csv # first decrypt
  • python rigol_setup_crypter.py -p -f setup.csv # parse the file
  • edit the CSV, parse again to check everything you want is set properly, then encrypt:
  • python rigol_setup_crypter.py -e -f setup.csv -k YOUR_CPU_SERIAL -o setup.stp.new
  • adb -s IP:55555 push setup.stp.new /rigol/data/setup.stp # push the new setup.stp
  • adb -s IP:55555 shell -- reboot # reboot

That's it. There are a bit more detailed instructions in the README in the repo. Also special thanks to @gbix for sharing absolutely none of his work.

it's not clear what happens next :python rigol_setup_crypter.py -d -f setup.stp -k YOUR_CPU_SERIAL -o setup.csv  Should I also write this command in adb? Can you explain in more detail to a newbie?
 

Offline Vapor Chamber

  • Newbie
  • Posts: 5
  • Country: de
Re: Rigol's New Function Generator and DMM: DG800Pro / 900Pro / DM858
« Reply #376 on: July 21, 2025, 09:35:20 am »
it's not clear what happens next :python rigol_setup_crypter.py -d -f setup.stp -k YOUR_CPU_SERIAL -o setup.csv  Should I also write this command in adb?...
No, this is a python script.
The adb commands in the list are marked as such.
 
The following users thanked this post: Hovo

Offline DaneLaw

  • Frequent Contributor
  • **
  • Posts: 950
  • Country: dk
Re: Rigol's New Function Generator and DMM: DG800Pro / 900Pro / DM858
« Reply #377 on: July 30, 2025, 02:03:03 pm »
I was able to roll back to the previous firmware revision and so the UI glitch works again.

Thx for the feedback, it would be ideal if that is the case.
Are there others that can validate that and have been able to rollback the firmware, as I do believe Rigol has rollback prevention and something that is quite common these days, so the bootloader checks firmware version compatibility, and won't allow flashing an older firmware once a higher version has been installed.

Was under the presumption its a one-way upgrade path on modern Rigol products, and a path that is enforced to avoid version-conflicts or unsupported features that may break functionality or in our case "exploits" Rigol wanna remove.
saw this notice from [Rigol] in regards to their DGxxxPRO line "downgrade-attempts via USB will result in an Incompatible Firmware error"
As far as I can tell the last signal generator from Rigol that didn't have a strict rollback prevention was the DG1000Z series.
 

Offline xs.over

  • Newbie
  • Posts: 4
  • Country: cn
Re: Rigol's New Function Generator and DMM: DG800Pro / 900Pro / DM858
« Reply #378 on: August 17, 2025, 08:48:31 am »
I used the script that @zrq wrote with some minor changes.

Could you please post here the calibration instruction and updated script?
Thanks in advance.
 

Offline Spirex

  • Contributor
  • Posts: 19
  • Country: ru
Re: Rigol's New Function Generator and DMM: DG800Pro / 900Pro / DM858
« Reply #379 on: September 10, 2025, 04:09:56 pm »
Hi! how can I generate a two-tone signal with frequencies 7.101.000 MHz and 7.102.000 MHz in one channel ?
I need to get two frequencies with a difference of 1 KHz.
This is necessary to set up the RF power amplifier in the SSB mode, for the lowest IMD3.

PS: You can turn on signals on the first and second channel and mix them, but I think there is an option to do this using only one channel. (DG821Pro hack  to DG922Pro).
« Last Edit: September 10, 2025, 04:12:05 pm by Spirex »
 

Offline ZhuraYuk

  • Regular Contributor
  • *
  • Posts: 118
  • Country: ua
Re: Rigol's New Function Generator and DMM: DG800Pro / 900Pro / DM858
« Reply #380 on: September 10, 2025, 06:12:12 pm »
Hi! how can I generate a two-tone signal with frequencies 7.101.000 MHz and 7.102.000 MHz in one channel ?
I need to get two frequencies with a difference of 1 KHz.
This is necessary to set up the RF power amplifier in the SSB mode, for the lowest IMD3.

PS: You can turn on signals on the first and second channel and mix them, but I think there is an option to do this using only one channel. (DG821Pro hack  to DG922Pro).
This is what chat GPT suggested, I have tried it and it works.

Rigol DG922 Pro — two tones on one channel (7.101 MHz and 7.102 MHz)

Method: use AM with DSSC (double-sideband suppressed carrier). That leaves only two tones at Carrier ± Mod Freq.
Steps (CH1):
Mode: Modulation → AM

Carrier (continuous):
Wave: Sine
Frequency: 7.1015 MHz (midpoint of 7.101 and 7.102)
Amplitude: as needed

Modulation:
Source: Internal
Shape: Sine
Mod Frequency: 500 Hz (half of 1 kHz spacing)
Depth: 100%
DSSC: ON (suppresses the carrier)

Turn CH1 Output ON. Result: two equal tones at 7.101 MHz and 7.102 MHz.

Why it works: AM with DSSC produces sidebands at Carrier ± Mod Frequency and removes the carrier.
 
The following users thanked this post: Spirex

Offline Spirex

  • Contributor
  • Posts: 19
  • Country: ru
Re: Rigol's New Function Generator and DMM: DG800Pro / 900Pro / DM858
« Reply #381 on: September 10, 2025, 06:51:09 pm »
Thank! this really works. :-+

Update:
Although no, there should be two carriers with a difference of 1 kHz, and here modulation occurs. This method is not suitable. :(
« Last Edit: September 10, 2025, 07:32:29 pm by Spirex »
 

Offline ZhuraYuk

  • Regular Contributor
  • *
  • Posts: 118
  • Country: ua
Re: Rigol's New Function Generator and DMM: DG800Pro / 900Pro / DM858
« Reply #382 on: September 10, 2025, 08:21:22 pm »
There are some harmonics because the output of DG821 Pro is made in such way. But I clearly can see two peaks 1kHz spaced.
2658275-0
 

Offline Spirex

  • Contributor
  • Posts: 19
  • Country: ru
Re: Rigol's New Function Generator and DMM: DG800Pro / 900Pro / DM858
« Reply #383 on: September 10, 2025, 08:57:52 pm »
Yes, in fact we see two humps on the spectrum analyzer, but in essence we get a DSB signal, where each hump is modulated by a frequency of 500 Hz. To adjust the IMD3, two pure sine carriers should be supplied, for example 7 MHz, with a difference of about 1 kHz. They should not be modulated.

It's strange that cheaper models could combine signals, but this generator can't.
I'll have to use an adder.
« Last Edit: September 10, 2025, 09:01:22 pm by Spirex »
 

Offline DaneLaw

  • Frequent Contributor
  • **
  • Posts: 950
  • Country: dk
Re: Rigol's New Function Generator and DMM: DG800Pro / 900Pro / DM858
« Reply #384 on: September 10, 2025, 09:39:13 pm »
Chat gives these 4 options at my end..  >:D  (Haven't tested it)
If you want to generate two tones at 7.101 MHz and 7.102 MHz together on a single output channel of the Rigol DG922 Pro, here's how you can do it most effectively:

# Option 1: Use an Arbitrary Waveform ("SUM") Feature (Dual-Tone)

_The DG900 Pro series, which includes the DG922 Pro, supports combining multiple waveform types—including dual-tone, arbitrary waves, and noise—into a single channel signal via SUM waveform or arbitrary sequences

How to proceed via front panel:
Press the Menu button and navigate to waveform types (e.g. Continuous → SUM or Dual-Tone).
Configure it to generate two sine tones: set one at 7.101 MHz and the other at 7.102 MHz, adjusting amplitude/phase as needed.
Enable the output for that channel.
This approach is ideal because you don't need external mixing—both tones will be generated accurately and simultaneously, leveraging the built-in capability of the DG922 Pro.

# Option 2 : Create a Custom Arbitrary Waveform (ARB)

_If the SUM/Dual-Tone feature isn't exposed in your firmware or front panel:
Use PC tools like UltraSigma or SCPI commands to create a custom waveform combining two sine waves.
Generate a digital buffer by summing two sine signals at 7.101 MHz and 7.102 MHz.
Upload this combined waveform via USB or LAN to the DG922 Pro.
- Play it back as an Arbitrary waveform.
Given the device's 16 Mpts/channel memory (expandable to 32 Mpts) and 1.25 GSa/s sampling rate, you can easily achieve clean high-frequency tones
.

# Option 3: Use Both Channels & Combine Externally (Not Ideal)

_Another possibility—if you lack SUM/ARB features—is to generate 7.101 MHz on Channel 1 and 7.102 MHz on Channel 2, then combine the outputs using an external combiner or mixer. However, you've specified you prefer one channel only; plus this could introduce phase or amplitude mismatches, so not ideal for minimizing IMD3.

# Option 4: Programmatically via SCPI

_You can also control the instrument programmatically:
If supported, you might find SCPI commands such as:
:SOUR1:FUNC SUM
:SOUR1:SUM:CHAN1:FREQ 7.101e6
:SOUR1:SUM:CHAN2:FREQ 7.102e6
:SOUR1:VOLT ... etc.
:OUTP1 ON
// end
« Last Edit: September 10, 2025, 09:44:28 pm by DaneLaw »
 
The following users thanked this post: Spirex

Offline Spirex

  • Contributor
  • Posts: 19
  • Country: ru
Re: Rigol's New Function Generator and DMM: DG800Pro / 900Pro / DM858
« Reply #385 on: September 10, 2025, 11:05:13 pm »
The summation function works fine, but up to 1 MHz. :)
 

Offline dfc123dfc

  • Newbie
  • Posts: 5
  • Country: us
Re: Rigol's New Function Generator and DMM: DG800Pro / 900Pro / DM858
« Reply #386 on: October 07, 2025, 06:23:49 am »
I want to share some information about the DG822 Pro generator. Thanks to Kuwoyuki's post, where he explained how to change the generator version, I successfully switched my version from DG822 Pro to DG922 Pro. I tested the Waveform Memory depth — it also increased and works perfectly.

I converted a song into ARB format, and it plays successfully. The length of the song turned out to be 10M points and sample rate 44.1 kHz. The song, 3 minutes and 51 seconds long, fit completely to generator.
I also tested a 10-minute-long song, which had a length of 27M points and an ARB file size of 52 megabytes. The generator played it back without any issues.

I’m attaching screenshots of the generator and the oscilloscope. I'm also attaching the song in ARB format for anyone interested in testing it  :)
       How do you convert this song? Is there any code I can refer to? :) :) :) :) :)
 

Offline Alexan

  • Contributor
  • Posts: 31
  • Country: by
Re: Rigol's New Function Generator and DMM: DG800Pro / 900Pro / DM858
« Reply #387 on: December 05, 2025, 06:21:35 pm »
I bought the 902 Pro supposedly unlocked to the 922 Pro, but other than the sine wave up to 200 MHz, nothing else changed. All other limitations remained the same as the 902 Pro. The frequency response photo shows that the amplitude drops -1 dB when going from 70-80 MHz. The last photo shows the frequency response sweep from 1 kHz to 100 MHz.
« Last Edit: December 05, 2025, 11:37:57 pm by Alexan »
 

Offline DaneLaw

  • Frequent Contributor
  • **
  • Posts: 950
  • Country: dk
 

Offline Alexan

  • Contributor
  • Posts: 31
  • Country: by
Re: Rigol's New Function Generator and DMM: DG800Pro / 900Pro / DM858
« Reply #389 on: Yesterday at 02:45:28 pm »
Firmware version 00.02.00. Also, for some reason, ARB memory is not activated.
 

Offline kuwoyuki

  • Newbie
  • Posts: 7
  • Country: cz
Re: Rigol's New Function Generator and DMM: DG800Pro / 900Pro / DM858
« Reply #390 on: Yesterday at 07:40:26 pm »
Firmware version 00.02.00. Also, for some reason, ARB memory is not activated.
What's the output of:
Code: [Select]
$ python rigol_setup_crypter.py -p -f setup.csv
Did you adjust the frequency limits? And for arb memory, change "DEF" to "MEM".
Here's the output of mine for reference:
Code: [Select]
$ ./rigol_setup_crypter.py -p -f ../databackup/data/setup.stp.decrypted

CSV header:
Manufacturer,InstrModel,InstrSN,CalibrationDate,SineMaxFreq,SquareMaxFreq,RampMaxFreq,PulseMaxFreq,ArbMaxFreq,HarmonicMaxFreq,MinFreq,HarmonicMinFreq,ARMSerial,MaxChannels,ArbWaveLenLicense,ArbWaveLenValidTime,DuoChanChannelValidTime
RIGOL TECHNOLOGIES,DG922 Pro,DG8P123456789,2023-11-11,200000000000000,60000000000000,5000000000000,50000000000000,50000000000000,100000000000000,1,1000,4b97ef24e77c4aeb933b,2,MEM,Forever,Forever

Instrument Information:
  Manufacturer: RIGOL TECHNOLOGIES
  Model: DG922 Pro
  Serial Number: DG8P123456789
  Calibration Date: 2023-11-11
  ARM CPU Serial: 4b97ef24e77c4aeb933b
  Max Channels: 2

Frequency Specifications:
  Sine Max Frequency: 200000000000000 (200.000000 MHz)
  Square Max Frequency: 60000000000000 (60.000000 MHz)
  Ramp Max Frequency: 5000000000000 (5.000000 MHz)
  Pulse Max Frequency: 50000000000000 (50.000000 MHz)
  Arb Max Frequency: 50000000000000 (50.000000 MHz)
  Harmonic Max Frequency: 100000000000000 (100.000000 MHz)
  Min Frequency: 1 (1.000000e-12 MHz)
  Harmonic Min Frequency: 1000 (1.000000e-09 MHz)

Licensing Information:
  Arb Wavelength License: MEM (Memory Depth License)
  Arb Wavelength Valid Time: Forever (Active (No Expiration))
  Duo Channel Valid Time: Forever (Active (No Expiration))
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf