I put the firmware SVA1000X_V3.2.2.5.1R1.ADS in a USB stick I remember more the procedure to start flashing the device at startup
I managed to go through the HTTP interface to upload the firmware it loads it but an installation failed…
I think that there might be files missing or corrupt.
Can you do a "ls -la" command in the folder where the aladdin executable is (I think it is /usr/bin/siglent or something like that).
Also, please do explain *exactly* what you have done prior to the brick. It must have been caused by something, like an upgrade or so.
/usr/bin/siglent # ls -la
total 13772
drwxrwxrwx 9 1000 1000 1392 Sep 10 20:22 .
drwxrwxrwx 1 1000 232 3204 Jan 1 1970 ..
-rw------- 1 root root 6972 Jan 10 09:18 .ash_history
-rwxrwxrwx 1 root root 13856588 Sep 10 20:00 Aladdin
drwxrwxrwx 8 1000 1000 792 Sep 10 20:01 config
-rwxrwxrwx 1 root root 1078 Sep 10 20:00 config_eth0.sh
drwxrwxrwx 2 1000 1000 1904 Sep 10 20:01 drivers
drwxrwxrwx 3 1000 1000 752 Sep 10 20:01 firmdata0
drwxrwxrwx 2 1000 1000 160 Jan 8 2019 firmdata1
drwxrwxrwx 2 root root 688 Sep 10 20:00 lib
-rwxrwxrwx 1 root root 12068 Sep 10 20:00 lighttpd.conf
drwxrwxrwx 2 1000 1000 232 Jan 8 2019 log
-rwxrwxrwx 1 root root 67085 Sep 10 20:00 php.ini
-rwxrwxrwx 1 root root 2204 Sep 10 20:23 startup_app.sh
-rwxrwxrwx 1 root root 77 Sep 10 20:00 startup_ftp.sh
-rwxrwxrwx 1 root root 482 Sep 10 20:00 startup_vnc.sh
drwxrwxrwx 10 1000 1000 1144 Jan 10 12:38 usr
-rwxrwxrwx 1 root root 490 Sep 10 20:00 vdma_vnc.sh
-rwxrwxrwx 1 root root 29337 Sep 10 20:00 vncserver
-rwxrwxrwx 1 root root 97611 Sep 10 20:00 vsftpd
Before the problem I did absolutely nothing I simply turned on the device and found that it was stuck.
In the command "DMESG" there was this error message what do you think?
[ 1.112430] nand: 256 MiB, SLC, erase size: 128 KiB, page size: 2048, OOB size: 64
[ 1.120023] nand: WARNING: pl353-nand: the ECC used on your system is too weak compared to the one required by the NAND chip
[ 1.131531] Bad block table found at page 131008, version 0x01
[ 1.137807] Bad block table found at page 130944, version 0x01
[ 1.143935] 12 ofpart partitions found on MTD device pl353-nand
[ 1.149785] Creating 12 MTD partitions on "pl353-nand":
And the most important file would be to checksum the alladin executable and validate if it's ok.
If not, a manual replacement could help. If it is ok then I don't think it's easy to identify the cause.
the checksum :
/usr/bin/siglent # md5sum Aladdin
29f1dc880f90a2702d0b6d90ee48a1c6 Aladdin
Oh dear, this looks like a complete mess....
Did the instrument ever work correctly after the SSA->SVA crossflash?
Obviously the versions of the Aladdin applications do not match the kernel object files (.ko) in the drivers/ directory.
At startup, for example, the error "Can't read /usr/bin/siglent/drivers/udc-xilinx.ko ..." appears. This file does not exist (anymore) on my system (firmware 3.2.2.5.1R1).
/usr/bin/siglent # md5sum Aladdin
29f1dc880f90a2702d0b6d90ee48a1c6 Aladdin
But this is the same checksum as yours!?
Kernel Version:
/usr/bin/siglent # uname -a
Linux (none) 3.19.2-omg-xilinx-svn35686 #11 SMP PREEMPT Fri Jan 4 15:28:26 CST 2019 armv7l GNU/Linux
Here are my directory listings:
/usr/bin/siglent # ls -ltra
total 13772
drwxrwxrwx 1 65534 254 3204 Jan 1 1970 ..
drwxrwxrwx 10 65534 65534 904 Jan 1 2000 usr
drwxrwxrwx 2 65534 65534 160 May 7 2021 firmdata1
drwxrwxrwx 2 65534 65534 232 May 7 2021 log
-rwxrwxrwx 1 root root 97611 Dec 30 14:55 vsftpd
-rwxrwxrwx 1 root root 77 Dec 30 14:55 startup_ftp.sh
-rwxrwxrwx 1 root root 1078 Dec 30 14:55 config_eth0.sh
-rwxrwxrwx 1 root root 29337 Dec 30 14:55 vncserver
-rwxrwxrwx 1 root root 482 Dec 30 14:55 startup_vnc.sh
-rwxrwxrwx 1 root root 67085 Dec 30 14:55 php.ini
-rwxrwxrwx 1 root root 12068 Dec 30 14:55 lighttpd.conf
drwxrwxrwx 2 root root 688 Dec 30 14:55 lib
-rwxrwxrwx 1 root root 13856588 Dec 30 14:55 Aladdin
-rwxrwxrwx 1 root root 490 Dec 30 14:55 vdma_vnc.sh
drwxrwxrwx 2 65534 65534 1904 Dec 30 14:56 drivers
drwxrwxrwx 8 65534 65534 704 Dec 30 14:56 config
drwxrwxrwx 3 65534 65534 840 Dec 30 15:08 firmdata0
drwxrwxrwx 9 65534 65534 1392 Jan 4 11:59 .
-rwxrwxrwx 1 root root 2205 Jan 5 21:05 startup_app.sh
-rw------- 1 root root 6126 Jan 10 17:06 .ash_history
/usr/bin/siglent # cd drivers/
/usr/bin/siglent/drivers # ls -ltra
total 552
-rwxrwxrwx 1 65534 65534 17192 May 7 2021 usbtmc.ko
-rwxrwxrwx 1 65534 65534 11629 May 7 2021 usbmisc_imx.ko
-rwxrwxrwx 1 65534 65534 45018 May 7 2021 usbhid.ko
-rwxrwxrwx 1 65534 65534 100267 May 7 2021 usb-storage.ko
-rwxrwxrwx 1 65534 65534 15141 May 7 2021 uinput.ko
-rwxrwxrwx 1 65534 65534 10516 May 7 2021 siglentaxidma.ko
-rwxrwxrwx 1 65534 65534 8864 May 7 2021 siglent_vnc.ko
-rwxrwxrwx 1 65534 65534 20202 May 7 2021 mousedev.ko
-rwxrwxrwx 1 65534 65534 60742 May 7 2021 libcomposite.ko
-rwxrwxrwx 1 65534 65534 288 May 7 2021 insmod_before_app.sh
-rwxrwxrwx 1 65534 65534 740 May 7 2021 insmod_after_app.sh
-rwxrwxrwx 1 65534 65534 21193 May 7 2021 gt9xx.ko
-rwxrwxrwx 1 65534 65534 11406 May 7 2021 gpib.ko
-rwxrwxrwx 1 65534 65534 9904 May 7 2021 ehci-pci.ko
-rwxrwxrwx 1 65534 65534 56724 May 7 2021 ehci-hcd.ko
-rwxrwxrwx 1 65534 65534 5550 May 7 2021 ci_hdrc_zevio.ko
-rwxrwxrwx 1 65534 65534 6990 May 7 2021 ci_hdrc_usb2.ko
-rwxrwxrwx 1 65534 65534 6588 May 7 2021 ci_hdrc_pci.ko
-rwxrwxrwx 1 65534 65534 6623 May 7 2021 ci_hdrc_msm.ko
-rwxrwxrwx 1 65534 65534 10170 May 7 2021 ci_hdrc_imx.ko
-rwxrwxrwx 1 65534 65534 44456 May 7 2021 ci_hdrc.ko
-rwxrwxrwx 1 65534 65534 22747 May 7 2021 ads7846.ko
-rwxrwxrwx 1 65534 65534 189 May 7 2021 .sh
-rwxrwxrwx 1 root root 27844 Dec 30 14:55 g_usbtmc.ko
drwxrwxrwx 2 65534 65534 1904 Dec 30 14:56 .
drwxrwxrwx 9 65534 65534 1392 Jan 4 11:59 ..
After the SSA > SVA cross flash I admit that I did not see big differences in operation because it was pro with all options.
It has worked very well so far the flash was made several months ago.
I am French, I have a little trouble interpreting the instructions that are given on this forum.
Maybe I did something stupid...
Here are my directory listings on my device :
/usr/bin/siglent # uname -a
Linux (none) 3.19.2-omg-xilinx-svn35686 #11 SMP PREEMPT Fri Jan 4 15:28:26 CST 2019 armv7l GNU/Linux
/usr/bin/siglent # ls -ltra
total 13772
drwxrwxrwx 1 1000 232 3204 Jan 1 1970 ..
drwxrwxrwx 2 1000 1000 160 Jan 8 2019 firmdata1
drwxrwxrwx 2 1000 1000 232 Jan 8 2019 log
-rwxrwxrwx 1 root root 97611 Sep 10 20:00 vsftpd
-rwxrwxrwx 1 root root 77 Sep 10 20:00 startup_ftp.sh
-rwxrwxrwx 1 root root 1078 Sep 10 20:00 config_eth0.sh
-rwxrwxrwx 1 root root 29337 Sep 10 20:00 vncserver
-rwxrwxrwx 1 root root 482 Sep 10 20:00 startup_vnc.sh
-rwxrwxrwx 1 root root 12068 Sep 10 20:00 lighttpd.conf
-rwxrwxrwx 1 root root 13856588 Sep 10 20:00 Aladdin
-rwxrwxrwx 1 root root 67085 Sep 10 20:00 php.ini
drwxrwxrwx 2 root root 688 Sep 10 20:00 lib
-rwxrwxrwx 1 root root 490 Sep 10 20:00 vdma_vnc.sh
drwxrwxrwx 2 1000 1000 1904 Sep 10 20:01 drivers
drwxrwxrwx 8 1000 1000 792 Sep 10 20:01 config
drwxrwxrwx 3 1000 1000 752 Sep 10 20:01 firmdata0
drwxrwxrwx 9 1000 1000 1392 Sep 10 20:22 .
-rwxrwxrwx 1 root root 2204 Sep 10 20:23 startup_app.sh
drwxrwxrwx 10 1000 1000 1056 Jan 10 14:11 usr
-rw------- 1 root root 7061 Jan 10 17:28 .ash_history
/usr/bin/siglent/drivers # ls -ltra
total 552
-rwxrwxrwx 1 1000 1000 10516 Jan 8 2019 siglentaxidma.ko
-rwxrwxrwx 1 1000 1000 21193 Jan 8 2019 gt9xx.ko
-rwxrwxrwx 1 1000 1000 11406 Jan 8 2019 gpib.ko
-rwxrwxrwx 1 1000 1000 5550 Jan 8 2019 ci_hdrc_zevio.ko
-rwxrwxrwx 1 1000 1000 6588 Jan 8 2019 ci_hdrc_pci.ko
-rwxrwxrwx 1 1000 1000 44456 Jan 8 2019 ci_hdrc.ko
-rwxrwxrwx 1 1000 1000 17192 Jan 8 2019 usbtmc.ko
-rwxrwxrwx 1 1000 1000 100267 Jan 8 2019 usb-storage.ko
-rwxrwxrwx 1 1000 1000 20202 Jan 8 2019 mousedev.ko
-rwxrwxrwx 1 1000 1000 288 Jan 8 2019 insmod_before_app.sh
-rwxrwxrwx 1 1000 1000 6623 Jan 8 2019 ci_hdrc_msm.ko
-rwxrwxrwx 1 1000 1000 11629 Jan 8 2019 usbmisc_imx.ko
-rwxrwxrwx 1 1000 1000 8864 Jan 8 2019 siglent_vnc.ko
-rwxrwxrwx 1 1000 1000 740 Jan 8 2019 insmod_after_app.sh
-rwxrwxrwx 1 1000 1000 9904 Jan 8 2019 ehci-pci.ko
-rwxrwxrwx 1 1000 1000 56724 Jan 8 2019 ehci-hcd.ko
-rwxrwxrwx 1 1000 1000 10170 Jan 8 2019 ci_hdrc_imx.ko
-rwxrwxrwx 1 1000 1000 45018 Jan 8 2019 usbhid.ko
-rwxrwxrwx 1 1000 1000 60742 Jan 8 2019 libcomposite.ko
-rwxrwxrwx 1 1000 1000 6990 Jan 8 2019 ci_hdrc_usb2.ko
-rwxrwxrwx 1 1000 1000 22747 Jan 8 2019 ads7846.ko
-rwxrwxrwx 1 1000 1000 189 Jan 8 2019 .sh
-rwxrwxrwx 1 1000 1000 15141 Oct 18 2019 uinput.ko
-rwxrwxrwx 1 root root 27844 Sep 10 20:00 g_usbtmc.ko
drwxrwxrwx 2 1000 1000 1904 Sep 10 20:01 .
drwxrwxrwx 9 1000 1000 1392 Sep 10 20:22 ..
Additional infos:
At first I also see the same warnings in the "dmesg":
[ 1.109927] nand: WARNING: pl353-nand: the ECC used on your system is too weak compared to the one required by the NAND chip
[ 1.121444] Bad block table found at page 131008, version 0x01
[ 1.127734] Bad block table found at page 130944, version 0x01
Experiment: kill -9 the Aladdin process and did a successful restart form terminal:
/usr/bin/siglent # ./Aladdin&
/usr/bin/siglent # log init finished
udhcpc: started, v1.26.0.git
Setting IP address 0.0.0.0 on eth0
udhcpc: sending discover
udhcpc: sending select for 192.168.178.171
udhcpc: lease of 192.168.178.171 obtained, lease time 864000
Setting IP address 192.168.178.171 on eth0
Deleting routers
route: SIOCDELRT: No such process
Adding router 192.168.178.1
Recreating /usr/bin/siglent/usr/etc/resolv.conf
Adding DNS server 192.168.178.1
rotationAngle: 0 invertx: false inverty: false
rotationAngle: 0 invertx: false inverty: false
[INFO] /home/share/yangh/aladdin_no_mod/tag5_1/product_aladdin/business/dp_control/module_business/dp_vna/vector_calibrator.cpp 129 msg:vector_calibrator. load_s11_factory_calibration success!!!!!!!!!!!!
[INFO] /home/share/yangh/aladdin_no_mod/tag5_1/product_aladdin/business/dp_control/module_business/dp_vna/vector_calibrator.cpp 135 msg:vector_calibrator. load s21 factory calibration ref data success!!!!!!!!!!!!
[INFO] /home/share/yangh/aladdin_no_mod/tag5_1/product_aladdin/business/dp_control/module_business/dp_vna/vector_calibrator.cpp 168 msg:edison:vector_calibrator::set_cali_kit_file_name kitName=User1,gender is 1645,index = 7
Interestingly, the newer Aladdin also includes an "insmod" statement that references files that do not exist:
/usr/bin/siglent # strings Aladdin | grep insmod
insmod /usr/bin/siglent/drivers/g_usbtmc.ko
insmod /usr/bin/siglent/drivers/udc-core.ko;insmod /usr/bin/siglent/drivers/musb_hdrc.ko;insmod /usr/bin/siglent/drivers/ti81xx.ko
insmod /usr/bin/siglent/drivers/libcomposite.ko;insmod /usr/bin/siglent/drivers/udc-xilinx.ko;
insmod /usr/bin/siglent/drivers/libcomposite.ko;
insmod
/usr/bin/siglent #
/usr/bin/siglent #
/usr/bin/siglent # ls -la /usr/bin/siglent/drivers/g_usbtmc.ko
-rwxrwxrwx 1 root root 27844 Dec 30 14:55 /usr/bin/siglent/drivers/g_usbtmc.ko
/usr/bin/siglent # ls -la /usr/bin/siglent/drivers/udc-core.ko
ls: /usr/bin/siglent/drivers/udc-core.ko: No such file or directory
/usr/bin/siglent # ls -la /usr/bin/siglent/drivers/musb_hdrc.ko
ls: /usr/bin/siglent/drivers/musb_hdrc.ko: No such file or directory
/usr/bin/siglent # ls -la /usr/bin/siglent/drivers/ti81xx.ko
ls: /usr/bin/siglent/drivers/ti81xx.ko: No such file or directory
/usr/bin/siglent # ls -la /usr/bin/siglent/drivers/libcomposite.ko
-rwxrwxrwx 1 65534 65534 60742 May 7 2021 /usr/bin/siglent/drivers/libcomposite.ko
/usr/bin/siglent # ls -la /usr/bin/siglent/drivers/udc-xilinx.ko
ls: /usr/bin/siglent/drivers/udc-xilinx.ko: No such file or directory
/usr/bin/siglent # ls -la /usr/bin/siglent/drivers/libcomposite.ko
-rwxrwxrwx 1 65534 65534 60742 May 7 2021 /usr/bin/siglent/drivers/libcomposite.ko
The files in your drivers/ directory have an older date, but look the same size as mine.
Maybe something messed in your config files?
/usr/bin/siglent/firmdata0/NSP_trends_config_info.xml + NSP_sn_bandwidth.xml
/usr/bin/siglent/config/NSP_config_upgrade_info.xml
the checksum :
/usr/bin/siglent # md5sum Aladdin
29f1dc880f90a2702d0b6d90ee48a1c6 Aladdin
This checksum is correct.
After the SSA > SVA cross flash I admit that I did not see big differences in operation because it was pro with all options.
This is not advisable at all! (
Warning for newcomers)
When you go into a crossflash, you should restore the unit as stock before doing any cross change.
Since the app is OK, I suggest restoring the licensing/model files to "non-pro mode".
Where are the license keys stored?
/usr/bin/siglent/firmdata0/nsp_data_b1?
Good news, The device has come back to life😊
By relaunching Aladdin from the command line, I had access to the interface for about 3 seconds before blocking.
By trying several times in a row and pressing different buttons (I don't know if it's this or something else) I managed to get the analyzer to work normally.
After turning off the device, the problem reappeared, it got stuck.
I started launching Aladdin again once, once the device was up and running, I went to the system menu and made it a Factory reset.
I also set Power On to Def
I'm keeping my fingers crossed, but so far it seems to be fine.
It seems to me when I made the transition from SSA > SVA to have first removed the pro mode to have returned to the original version and then to have done the manipulation, but it goes back a long way.
Maybe something messed in your config files?
/usr/bin/siglent/firmdata0/NSP_trends_config_info.xml + NSP_sn_bandwidth.xml
/usr/bin/siglent/config/NSP_config_upgrade_info.xml
NSP_trends_config_info.xml
<?xml version="1.0" encoding="UTF-8"?>
<nsp_trends_info_root>
<device>
<language>english</language>
<pid>0x1301</pid>
<vid>0xf4ec</vid>
<product_type_1>SVA1032X</product_type_1>
<manufacturer>Siglent</manufacturer>
<Support_Touch_Flag>1</Support_Touch_Flag>
<Support_VXI11_Flag>1</Support_VXI11_Flag>
<file_prefix>CP_</file_prefix>
</device>
</nsp_trends_info_root>
NSP_sn_bandwidth.xml
<?xml version="1.0"?>
<nsp_system_info_root>
<device>
<system_information>
<serial_number>
<chip>0123456789</chip>
</serial_number>
</system_information>
</device>
<serial_number>SSA3PCEQ5R....</serial_number>
<license>
<_3021>
<lic>pykq4w6najjqb352</lic>
<remain>7680</remain>
</_3021>
<_TG>
<lic>sxnfmn3v2pjqv93z</lic>
<remain>7680</remain>
</_TG>
<_tEMI>
<lic>v6p76xetfany7s2p</lic>
<remain>7680</remain>
</_tEMI>
<_tAMK>
<lic>dtf6bh923ns35gze</lic>
<remain>7680</remain>
</_tAMK>
<_tCAT>
<lic>yrszgcmt36wkp84e</lic>
<remain>7680</remain>
</_tCAT>
<_tDMA>
<lic>z2cs4mq2fkbcsbxn</lic>
<remain>7680</remain>
</_tDMA>
<_tAMA>
<lic>3fmu2335p5b3hpja</lic>
<remain>7680</remain>
</_tAMA>
</license>
<nsp_system_info_root>
<device>
<system_information>
<serial_number>
<chip>0123456789</chip>
</serial_number>
</system_information>
</device>
<serial_number>SSA3PCEQ5R....</serial_number>
<license>
<_3021>
<lic>pykq4w6najjqb352</lic>
<remain>7680</remain>
</_3021>
<_TG>
<lic>sxnfmn3v2pjqv93z</lic>
<remain>7680</remain>
</_TG>
<_tEMI>
<lic>v6p76xetfany7s2p</lic>
<remain>7680</remain>
</_tEMI>
<_tAMK>
<lic>dtf6bh923ns35gze</lic>
<remain>7680</remain>
</_tAMK>
<_tCAT>
<lic>yrszgcmt36wkp84e</lic>
<remain>7680</remain>
</_tCAT>
<_tDMA>
<lic>z2cs4mq2fkbcsbxn</lic>
<remain>7680</remain>
</_tDMA>
<_tAMA>
<lic>3fmu2335p5b3hpja</lic>
<remain>7680</remain>
</_tAMA>
</license>
</nsp_system_info_root>
</nsp_system_info_root>
NSP_config_upgrade_info.xml
I corrected<?xml version="1.0" encoding="UTF-8"?>
<nsp_upgrade_info_root>
<device>
<upgrade_static_id>11410</upgrade_static_id>
<upgrade_start_id>11400</upgrade_start_id>
<upgrade_end_id>11499</upgrade_end_id>
</device>
</nsp_upgrade_info_root>
NSP_config_upgrade_info.xml should more look like this:
<?xml version="1.0" encoding="UTF-8"?>
<nsp_upgrade_info_root>
<device>
<upgrade_static_id>11410</upgrade_static_id>
<upgrade_start_id>11400</upgrade_start_id>
<upgrade_end_id>11499</upgrade_end_id>
</device>
</nsp_upgrade_info_root>
NSP_trends_config_info.xml looks ok.
NSP_sn_bandwidth.xml doesn't have this "<license/>" block on my instrument:
<?xml version="1.0"?>
<nsp_system_info_root>
<device>
<system_information>
<serial_number>
<chip>SSA3..........</chip>
</serial_number>
</system_information>
</device>
</nsp_system_info_root>
Finally NSP_system_info.xml:
<?xml version="1.0" encoding="UTF-8"?>
<nsp_system_info_root>
<device>
<system_information>
<serial_number>
<chip>SSA3..........</chip>
</serial_number>
</system_information>
</device>
<Device>
<Mac>74:5b:....</Mac>
</Device>
</nsp_system_info_root>
I had made a small mistake of copying and pasting.
The analyzer always works properly,
thank you all for your support! Signent Europe responded and sent me a procedure for restoring the factory word.
SSA3X Plus USB recovery
Hello,
I redid a manual calibration of the analyzer, it's not too bad I put about fifteen points.
I have the possibility by making an acquisition via Matlab software to recover the 751 points of a curve and to make the difference with a doite.
The correction file is relatively simple to edit, it is simply "frequency", "correction"
How many points do you think I can put in this correction file?
Thank you
I made a correction file with 76 points it seems to work normally.
I had made a small mistake of copying and pasting.
The analyzer always works properly,
thank you all for your support!
Signent Europe responded and sent me a procedure for restoring the factory word.
SSA3X Plus USB recovery
That was the file I was talking about.
I am not sure Siglent is happy that you make it publicly available, though: it could make it harder for others to get the same level of support for other Siglent devices.
How does the recovery process work? Question just in case...
Basically you prepare a booting USB and the firmware is loaded upon start from it. You can then use the running FW to flash a regular FW on the device itself, thus restoring whatever is corrupt on the device's FW.
These files exist for the SSA, SSA-P, SSA-R. Probably there is one for the SVA, too. This one would be great, because it would be a one step crossflash... It might be possible to modify the SSA-P recovery for that effect, but I have not looked into it.
I made a correction file with 76 points it seems to work normally.
Forgive me, I am bit confused:
After recovering you lost your calibration and you had to redo it ?
cheerio
Hi all
If I disassemble the spectrum analyzer and remove the NAND flash and make a full backup with a programmer, will it be enough if something goes wrong during the cross-flashing?
Forgive me, I am bit confused:
After recovering you lost your calibration and you had to redo it ?
It is not a calibration it is just a correction to have a horizontal trace when there is a 50
cap on the entrance
I don't think I've lost the calibration, I hope so