As a side note, I didn't have the impression that there is any kind of fan regulation. It seems to always run a the same speed.
Maybe it will speed up when temperature will be higher.
# V03以及之后的硬件版本
if [ "$hdcode_val" -ne 1 ] && [ "$hdcode_val" -ne 2 ]; then
# 配置风扇驱动
echo "insmod /rigol/driver/pwm_fan.ko"
insmod /rigol/driver/pwm_fan.ko
chmod 777 /dev/pwm_fan
fiI sugest to check if this module is loaded with one command:
adb shell lsmod
As a side note, I didn't have the impression that there is any kind of fan regulation. It seems to always run a the same speed.
I haven't heard it change.
I left it one for several hours to dump the SD card image (twice) and all the partitions and while it definitely got hot, the fan noise never changed at all.
Worked perfectly fine using a Ugreen "Nexode Pro" 100W USB PD power supply btw. and from what I can tell, it never used more than 60W (usually 55W or so).
I sugest to check if this module is loaded with one command:
adb shell lsmod
Sorry, I was lazy, but now I tried:
>adb shell lsmod
Module Size Used by
usbtmc_dev 41918 2
libcomposite 60749 1 usbtmc_dev
focaltech_ts 213735 0
8821cu 3514198 0
afe_rms_gpio 2864 0
dac_gpio 3663 1
beeper_gpio 3684 1
spi2afe_gpio 5571 1
xdma 99943 2
pcie_rockchip 20793 0
fpga_gpio 3923 0
spi2pll_gpio 4744 0
motorcomm 17303 0
pwm_fan 8802 2
hdcode_gpio 3046 0-> looks like "pwm_fan" is loaded...
Has anyone tried a 65W supply? Sounds like that would be enough and would be very handy as it's a common power rating, but is below the spec they ask for.
Has anyone tried a 65W supply?
Keep in mind that most USB PD supplies are meant as chargers, not as permanent supplies. I.e. it's not uncommon that they can't keep their specified maximum load for more than 1-2 hours.
E.g. the Nexode Pro 100W that I used is known to drop to 65W after 1-2h under full load (100W). If a 65W supply would drop to e.g. 45W after 2h at 55W, this would mean that the scope would shut down in the middle of usage.
-> it seems safer to use a 100W PD supply just for this safety margin.
Has anyone tried a 65W supply? Sounds like that would be enough and would be very handy as it's a common power rating, but is below the spec they ask for.
Dave measured consumption at nearly 60W so 65W is far too close for comfort. I doubt many power banks are designed to run at 100% for long periods of time.
I'd be looking for at least 80W and preferably 100W.
Was thinking more along the lines of laptop PSUs than power banks - these scopes are portable enough that it would be nice to run off the same PSU as the laptop you are likely also carrying. Most are 65W or so unless you have some awful tank of a laptop.
For fixed use for sure would use something chunkier.
Some 100W USB-PD supplies are pretty small (e.g. the Ugreen Nexode Pro I used). Again, they are also not exactly meant to deliver 100W for multiple hours, but there seems to be enough safety margin to run the MHO98 for several hours.
For fixed use for sure would use something chunkier.
Maybe the one Rigol supplied in the box...?
For fixed use for sure would use something chunkier.
Maybe the one Rigol supplied in the box...? 
Yep - my interest in smaller supplies is so that I can keep the Rigol supplied one on the bench and use something else (e.g. the 65W laptop one I normally carry) when taking advantage of the scope's portability (half the reason I am getting one).
Yep - my interest in smaller supplies is so that I can keep the Rigol supplied one on the bench and use something else (e.g. the 65W laptop one I normally carry) when taking advantage of the scope's portability (half the reason I am getting one).
Same idea here. Besides, it's really somewhat problematic to fit everything including the logic probe and the original power supply in the bag.
But the 100W supply I tried is really not that much bigger compared to a (very small) 65W supply:
... one on the bench and use something else (e.g. the 65W laptop one I normally carry) when taking advantage of the scope's portability
You can try it and see what happens ... but battery chargers are usually OK with less than 100% current, it just means the battery charges slower.
Oscilloscopes? Not so much.
Why not run this directly from a battery pack as with DHO800/900?
I left it one for several hours to dump the SD card image (twice) and all the partitions and while it definitely got hot, the fan noise never changed at all.
Worked perfectly fine using a Ugreen "Nexode Pro" 100W USB PD power supply btw. and from what I can tell, it never used more than 60W (usually 55W or so).
I sugest to check if this module is loaded with one command:
adb shell lsmod
Sorry, I was lazy, but now I tried:
>adb shell lsmod
Module Size Used by
usbtmc_dev 41918 2
libcomposite 60749 1 usbtmc_dev
focaltech_ts 213735 0
8821cu 3514198 0
afe_rms_gpio 2864 0
dac_gpio 3663 1
beeper_gpio 3684 1
spi2afe_gpio 5571 1
xdma 99943 2
pcie_rockchip 20793 0
fpga_gpio 3923 0
spi2pll_gpio 4744 0
motorcomm 17303 0
pwm_fan 8802 2
hdcode_gpio 3046 0-> looks like "pwm_fan" is loaded...
I did quick reverse engineering of this module. Looks like it reads some settings from the DT. And DT can be easily edited (only if You use Linux tho).
Beside of the DT, I suggest to look into /sys to find any files that can be edited to change this module behavior.
Does it load the DT from somewhere easily writable? If so I'll have a poke around when mine arrives. Also interested if there are any tweaks that can be done to the DT to make the damn thing boot faster - was this the case on the DHO8/900, or did that also need app tweaks?
I have a fair bit of experience hacking on device trees on Jetson devices, but have not played with any on other platforms or Android vs straight linux (assuming little difference there though).
It's not in any FS. Just inside Android boot image. You can find it with binwalk and extract it with dd.
I extracted and decompiled DT from the Dave SD card image (attachment).
Part of the decompiled PWM module code:
iVar6 = of_property_read_variable_u32_array
(pdVar11,"cooling-levels",lVar9,(long)iVar5,0);
if (iVar6 < 0) {
dev_err(pdVar1,"Property \'cooling-levels\' cannot be read!\n");
iVar5 = iVar6;
goto LAB_001008a4;
}There is no such entry in DT
From the Linux kernel documentation about it:
...
cooling-levels:
description: PWM duty cycle values corresponding to thermal cooling states.
$ref: /schemas/types.yaml#/definitions/uint32-array
items:
maximum: 255
...
DT can be edited, compiled back and saved into sd card (externally via adb and dd). The problem is with the size of compiled DT - there is no much space available. In such case whole Android boot image has to be extracted and generated again.
Eventually we can lower the size with deleting some entries. Which is not the easiest task to chose what can be deleted and what not so much.
I would think that if Rigol decided to use a static value there, it's best not to mess with it.
The MHO98 gets pretty warm after some time. Even if the fan speed might be optimized for somewhat warmer Asian temperatures, it seems risky to lower it without any kind of temperature regulation in place.
It's somewhat disappointing though that Rigol didn't care about some kind of temperature controlled fan regulation (again).
But yeah, it's not killing me. Everyone who ever sat next to some PC based Agilent/Keysight/LeCroy gear might find the noise level to be pretty low anyway
As You can see in my previous post, it looks like they started doing PWM control and abandoned it later - maybe they were in hurry to release it?
Do the DHO models have fan control?
Do the DHO models have fan control?
Currently only on/off (together with couple other things) and also currently Im working on a way to change it. Actually Im going to make a whole kernel for it, which also will increase performance a lot.
Some GPIO pins are free to use on a PCB - just add a wire and we have PWM to drive the fan speed.
This will not only give less noise, but most importantly, more stable temperature.
You're probably aware already, but the DHO1000 series was reported to have pwm fan control. Just saying, in case you wanted to try similar here on MHO.
Just discovered that 'su' command works ... so its enough to type echo X> /sys/devices/platform/pwm_fan/hwmon/hwmon5/pwm1 , where X is a value from 0 to 255.
I expected this value to be changed by the system periodically but ... it does not seems the case 
I'm monitoring temps with PWM = 100, there is a small increase, the monitored ones are still under 50 °C with a room temp of 18 °C.
You're probably aware already, but the DHO1000 series was reported to have pwm fan control. Just saying, in case you wanted to try similar here on MHO.
It should be easier to copy this part of the DT instead of making new entries. But I don't have MHO to test it - unless somebody will wan't to help with that (with testing).
From a trusty source: Fudan actually got Xilinx's help when making these chip, Fudan now even has some RFSoC clone. And it's not made by TSMC!
My personal guess is: At first, Fudan was trying to reverse engineering Xilinx FPGA then sell it to defense related company in China, but the result wasn't ideal. At the same time, Xilinx also wants to sell FPGA to these companies, but due to obvious reason they can't sell it directly.
Then somehow Fudan convince Xilinx to help them build the clone chip, and now both Xilinx and Fudan make big buck of money out of this, it's basically a win-win deal from company standpoint. 
Note: I don't want to involve politics in this topic
This is extraordinary if true. Xilinx is one of the most important suppliers to US aero/defense industries. Hard to believe they could get even tacit approval for something like this.
From a trusty source: Fudan actually got Xilinx's help when making these chip, Fudan now even has some RFSoC clone. And it's not made by TSMC!
My personal guess is: At first, Fudan was trying to reverse engineering Xilinx FPGA then sell it to defense related company in China, but the result wasn't ideal. At the same time, Xilinx also wants to sell FPGA to these companies, but due to obvious reason they can't sell it directly.
Then somehow Fudan convince Xilinx to help them build the clone chip, and now both Xilinx and Fudan make big buck of money out of this, it's basically a win-win deal from company standpoint. 
Note: I don't want to involve politics in this topic
This is extraordinary if true. Xilinx is one of the most important suppliers to US aero/defense industries. Hard to believe they could get even tacit approval for something like this.
Rigol gives a sh*t to GPL software license conditions. So no surprise they did a copy of Xilinx FPGA.