Author Topic: Rigol DP900 / DP2000 Series Hack -  (Read 17882 times)

0 Members and 1 Guest are viewing this topic.

Offline eebc

  • Newbie
  • Posts: 3
  • Country: us
Re: Rigol DP900 / DP2000 Series Hack -
« Reply #75 on: January 08, 2024, 09:20:29 am »

I just received my unit and it's on firmware .22 unfortunately but I managed to get the test.dll file onto the PSU and it unlocked the usual 3 options. I guess I have to wait for you or someone to port the patch to .22 then. Thanks for looking into it.

If you feel  adventurous, I have the ported the patch from Userli to .22, but haven't tested it yet. I plan to do the update and test on the weekend.
SousaMain original: ec69fba52309f6370ed81c55552c4e08
patched: 5e277fe9ad537a6918ec22ecc696e3f7

I'm all for adventure! And guess what? It works!

The patch file you have attached has some character encoding issues on the filename I think, I had to rename it totally for bspatch to work properly.

Attaching the renamed patch in this reply as well.

Thanks once again Genius!

Hi, I have a DP932U, firmware version 00.01.01.00.22, replaced the test.dll and patched SousaMain with the patch file above. I wasn't able to use the Monitoring function. What was the step missing to enable that? Thanks.
 

Offline Ronnyvs

  • Contributor
  • Posts: 16
  • Country: nl
Re: Rigol DP900 / DP2000 Series Hack -
« Reply #76 on: January 08, 2024, 05:19:44 pm »
I think,

not sure,

The patchfile above was written for the 2031 serie...
 

Offline Phili76

  • Contributor
  • Posts: 12
Re: Rigol DP900 / DP2000 Series Hack -
« Reply #77 on: January 08, 2024, 08:05:49 pm »
* DP2031-1.0.1.zip (443.82 kB - downloaded 32 times.)weird, nothing matches the "CH3:6V/10A" reply.
Found the SwitchCase is missing the 5A and 10A and the slot widget data also.
maybe, :
!loaded ? 0 : slot.model == "32V/3A" || slot.model == "6V/3A" || slot.model == "6V/10A" || slot.model == "6V/5A"? 1 : 2

Don´t know if the instrument is correct, but it´s working with my DP2031.
br
philipp
« Last Edit: January 08, 2024, 08:14:30 pm by Phili76 »
 

Offline Ronnyvs

  • Contributor
  • Posts: 16
  • Country: nl
Re: Rigol DP900 / DP2000 Series Hack -
« Reply #78 on: January 08, 2024, 10:07:17 pm »
Hi Philipp, i think your correct.

It's hard to make something and you can't test it by yourself.
Therefore i uploaded everything including all files, so anybody can edit and modify it.

according to me, one of the main reasons to publish on forums and share knowledge.

so thanks and hopefully other people can also modify, add and upgrade it.

regards,

Ronny
 

Offline eebc

  • Newbie
  • Posts: 3
  • Country: us
Re: Rigol DP900 / DP2000 Series Hack -
« Reply #79 on: January 09, 2024, 07:37:52 am »
I tried to patch the .22 SousaMain with the patch from Userli in reply #4. Now the DP932U got stuck in the boot up screen forever....
Please help if anyone knows how to fix it.

Updates:
I am lucky that WinSCP can still connects to the device. I was able to access the device through ethernet. Glad that I can revert it back to the .22 SousaMain before Patch. I would better wait for some Genius to figure out the hack for enabling monitoring on DP932U with .22 firmware....
« Last Edit: January 09, 2024, 09:23:48 am by eebc »
 

Offline ivantankj

  • Newbie
  • Posts: 8
  • Country: sg
Re: Rigol DP900 / DP2000 Series Hack -
« Reply #80 on: January 09, 2024, 12:56:47 pm »

I just received my unit and it's on firmware .22 unfortunately but I managed to get the test.dll file onto the PSU and it unlocked the usual 3 options. I guess I have to wait for you or someone to port the patch to .22 then. Thanks for looking into it.

If you feel  adventurous, I have the ported the patch from Userli to .22, but haven't tested it yet. I plan to do the update and test on the weekend.
SousaMain original: ec69fba52309f6370ed81c55552c4e08
patched: 5e277fe9ad537a6918ec22ecc696e3f7

I'm all for adventure! And guess what? It works!

The patch file you have attached has some character encoding issues on the filename I think, I had to rename it totally for bspatch to work properly.

Attaching the renamed patch in this reply as well.

Thanks once again Genius!

Hi, I have a DP932U, firmware version 00.01.01.00.22, replaced the test.dll and patched SousaMain with the patch file above. I wasn't able to use the Monitoring function. What was the step missing to enable that? Thanks.


If you use the patch that I’ve attached in the above post and not the one originally from Useli (meant for .21), you should easily access the on screen monitor option after a reboot. Works the first time around for me. Make sure you get a new patched file after patching and rename that to the original SousaMain without any file extensions
 
The following users thanked this post: eebc

Offline eebc

  • Newbie
  • Posts: 3
  • Country: us
Re: Rigol DP900 / DP2000 Series Hack -
« Reply #81 on: January 10, 2024, 06:19:17 am »
Thanks ivantankj, I tried the patch file you posted. That works for the DP932U! Thanks a lot.
 
The following users thanked this post: ivantankj

Offline mm1

  • Newbie
  • Posts: 8
  • Country: ca
Re: Rigol DP900 / DP2000 Series Hack -
« Reply #82 on: February 25, 2024, 11:31:39 am »
Quick note - Rigol Canada has the DP932U on sale at %50 off. $350 cnd seems like good value for the supply. Even if it does has the safety banana plugs......
 
The following users thanked this post: thm_w

Offline mm1

  • Newbie
  • Posts: 8
  • Country: ca
Re: Rigol DP900 / DP2000 Series Hack -
« Reply #83 on: March 01, 2024, 11:17:02 am »
Hi,
Does anyone have the "Monitor" function working ? What is it  ? - I don't see anything in the user manual.
Thanks !
 

Offline thm_w

  • Super Contributor
  • ***
  • Posts: 6389
  • Country: ca
  • Non-expert
Re: Rigol DP900 / DP2000 Series Hack -
« Reply #84 on: March 01, 2024, 10:31:04 pm »
Hi,
Does anyone have the "Monitor" function working ? What is it  ? - I don't see anything in the user manual.
Thanks !

I didn't get the PSU yet but monitor should let you set various logic for over/under voltage over power, etc. and then switch off the output. If its the same as on the DP800 manual: https://beyondmeasure.rigoltech.com/acton/attachment/1579/f-01c1/1/-/-/-/-/DP800%20Datasheet.pdf

Does it open for you at all, or tell you its not licensed or something?
Profile -> Modify profile -> Look and Layout ->  Don't show users' signatures
 

Offline mm1

  • Newbie
  • Posts: 8
  • Country: ca
Re: Rigol DP900 / DP2000 Series Hack -
« Reply #85 on: March 02, 2024, 11:05:09 am »
Hi thm_w,
It says 'Option is not installed, please buy it". Which is interesting as I don't see it's an option for sale. There is over current and over voltage protection, so I'm not sure what other value this would bring.
Cheers !
 

Offline thm_w

  • Super Contributor
  • ***
  • Posts: 6389
  • Country: ca
  • Non-expert
Re: Rigol DP900 / DP2000 Series Hack -
« Reply #86 on: March 12, 2024, 01:01:52 am »
For some reason my PSU would detect the USB key but not show any files on it.
So I used the bootloader to upgrade: Power on, keep pressing the Utility button, screen will show up with four options (Key test, LCD test, Downgrade, Return). Select Downgrade and it should find the GEL file now. Once it finished booting you'll need to go back to Settings, System (first tab) and change the language back to English.

After that now the PSU reads the USB key (exUDISK or exUDISK2), so maybe some early FW bug.

Summary:
- Updated to .22 (link)
- Backup/rename files
- Login to SSH (root, pw: Rigol001)
- Copy SousaMain from PSU to USB (cp /mnt/app/SousaMain /mnt/exUDISK/)
- Patched SousaMain (bspatch SousaMain SousaMainPatched SousaMain_patch)
- Copied patched SousaMain with SSH
- Copied test.dll with SSH (cp /mnt/exUDISK/test.dll /mnt/app/private)

edit: I will pay if someone wants to patch out the garbage font rigol decided to use for the main display.
« Last Edit: March 12, 2024, 04:46:08 pm by thm_w »
Profile -> Modify profile -> Look and Layout ->  Don't show users' signatures
 

Offline thm_w

  • Super Contributor
  • ***
  • Posts: 6389
  • Country: ca
  • Non-expert
Re: Rigol DP900 / DP2000 Series Hack -
« Reply #87 on: March 15, 2024, 12:06:50 am »
I see the following in /etc/fonts/conf.d:
Code: [Select]
-a----        12/03/2024   4:33 PM              0 10-hinting-slight.conf
-a----        12/03/2024   4:33 PM              0 10-scale-bitmap-fonts.conf
-a----        12/03/2024   4:33 PM              0 20-unhint-small-vera.conf
-a----        12/03/2024   4:33 PM              0 30-metric-aliases.conf
-a----        12/03/2024   4:33 PM              0 30-urw-aliases.conf
-a----        12/03/2024   4:33 PM              0 40-nonlatin.conf
-a----        12/03/2024   4:33 PM              0 45-latin.conf
-a----        12/03/2024   4:33 PM              0 49-sansserif.conf
-a----        12/03/2024   4:33 PM              0 50-user.conf
-a----        12/03/2024   4:33 PM              0 51-local.conf
-a----        12/03/2024   4:33 PM              0 60-latin.conf
-a----        12/03/2024   4:33 PM              0 65-fonts-persian.conf
-a----        12/03/2024   4:33 PM              0 65-nonlatin.conf
-a----        12/03/2024   4:33 PM              0 69-unifont.conf
-a----        12/03/2024   4:33 PM              0 80-delicious.conf
-a----        12/03/2024   4:33 PM              0 90-synthetic.conf

These all look like standard fonts, I don't see custom ones here.

So I went to SousaMain, there are functions that look relevant:
basicUIRefresh ->
dispChanHandler ->
dispChannelData ->
dispDataNum(int param_1,int param_2,int param_3,int param_4,undefined4 param_5) ->
lv_label_set_text(local_24,&local_38);

I assume that is drawing the voltages and currents to the screen.

Search for font gives the following: lv_font_montserrat, lv_font_msyahei, lv_font_msyh, lv_font_numkey, lv_font_rigol, lv_font_simsun. I assume 'lv_font_rigol' is the garbage one.
So it could be possible to: replace the Rigol font directly in memory, change the font being pointed to.

Trying the second approach:
There is a function in dispChanInit, "lv_label_create" which initializes using two of the rigol fonts: lv_font_rigol_36 + lv_font_rigol_55:
Code: [Select]
        0016afc0 31 df 01 eb     bl         lv_label_create                                  undefined lv_label_create()
        0016afc4 00 20 a0 e1     cpy        r2,r0
        0016afc8 c4 35 0e e3     movw       r3,#0xe5c4
        0016afcc 83 3e 40 e3     movt       r3,#0xe83
        0016afd0 30 20 83 e5     str        r2,[r3,#0x30]=>stCHxView[48]
        0016afd4 c4 35 0e e3     movw       r3,#0xe5c4
        0016afd8 83 3e 40 e3     movt       r3,#0xe83
        0016afdc 30 00 93 e5     ldr        r0,[r3,#0x30]=>stCHxView[48]
        0016afe0 90 3c 0a e3     movw       r3,#0x7460                                       //Set small font
        0016afe4 6b 31 40 e3     movt       r3=>lv_font_rigol_36,#0x16b
        0016afe8 00 20 a0 e3     mov        r2,#0x0
        0016afec 00 10 a0 e3     mov        r1,#0x0
...
        0016aee4 b0 35 07 e3     movw       r3,#0x75b0                               //Set large font
        0016aee8 6b 31 40 e3     movt       r3=>lv_font_rigol_55,#0x16b

Replacing 0x16b7460 with 0x0168ac90 (montserrat_36) should be ok, but there is no other 55 size font for the large digits.

edit: it did change the font but only when the channel was opened, so obviously I'm editing in the wrong area. Also the font was much wider, but we do have horizontal space so it could be shifted to the left a bit.
« Last Edit: March 15, 2024, 12:58:52 am by thm_w »
Profile -> Modify profile -> Look and Layout ->  Don't show users' signatures
 

Offline thm_w

  • Super Contributor
  • ***
  • Posts: 6389
  • Country: ca
  • Non-expert
Re: Rigol DP900 / DP2000 Series Hack -
« Reply #88 on: March 16, 2024, 12:59:20 am »
OK this is the correct location for the main voltage/current font of all three channels:

Code: [Select]
        00164df0 b0 35 07 e3     movw       channel,#0x75b0
        00164df4 6b 31 40 e3     movt       channel=>lv_font_rigol_55,#0x16b

Original font:


If I replace with 0x016b7738 lv_font_simsun_40 it looks like this:


WAY better but bit small. The bad thing is there is no way to scale, I think you can only choose an existing font size. So replacing the Rigol font might be the better option.


To test out:
- File -> Export Program -> SousaMain from Ghidra to USB key (original file)
- Plug USB in scope
- Navigate to /mnt/exUDISK or /mnt/exUDISK2 and check your patched file is there
- Run: pidof SousaMain
- Run: kill *pidhere* ; ./SousaMain_patched
Profile -> Modify profile -> Look and Layout ->  Don't show users' signatures
 

Offline deano76

  • Newbie
  • Posts: 4
  • Country: gb
Re: Rigol DP900 / DP2000 Series Hack -
« Reply #89 on: March 26, 2024, 08:22:28 pm »
Hi

Has anyone managed to get the monitoring patch working on the DP932E?

D
 

Offline thm_w

  • Super Contributor
  • ***
  • Posts: 6389
  • Country: ca
  • Non-expert
Re: Rigol DP900 / DP2000 Series Hack -
« Reply #90 on: March 26, 2024, 08:45:45 pm »
Hi

Has anyone managed to get the monitoring patch working on the DP932E?

What problem are you having? It should be the same steps as for DP932U as outlined above.
Profile -> Modify profile -> Look and Layout ->  Don't show users' signatures
 

Offline deano76

  • Newbie
  • Posts: 4
  • Country: gb
Re: Rigol DP900 / DP2000 Series Hack -
« Reply #91 on: March 28, 2024, 05:09:40 pm »
test.ddl works fine, but using the .22 patch it flashes a message about not available and then back to "Option not installed, please buy it".

I'm applying the patch using multipatch on my Mac. Seems to apply the patch fine. I'm SCP the file over rm SousaMain and replacing with the patched file. Checked the file permissions and they are the same as the original SousaMain.

Any ideas what I'm missing?
 

Offline deano76

  • Newbie
  • Posts: 4
  • Country: gb
Re: Rigol DP900 / DP2000 Series Hack -
« Reply #92 on: March 30, 2024, 08:02:32 pm »
Simple fix. Reading the serial number on the back I realised the first letter was a G not a C. Works perfectly.
 
The following users thanked this post: thm_w


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf