I'm hoping someone will help an old Aspie with what is probably an over literal interpretation of what is required for using the python script.
Pretty please?
Am I correct in understanding that upon turning on the scope:
1) I get my Scope ID from Utility -> System Setting -> System Status
2) I use those 16 characters, sans '-' dashes, using only lower case, and enter them into the python hashing script - replacing the value of the SCOPEID variable
3) I do /NOT/ put in my /ACTUAL/ model (SDS2104X+) but instead use the base model id of 'SDS2000X+' in the appropriate variable again in the python script
4) On the scope, under Utility -> Options I select the option 'SDS_2000XP_4BW02' and enter - first - the key value for 100M, all in lower case, then hit 'Install'?
I ask because I get an error dialog saying 'Invalid Data' every time.
My data is as follows, with the last four digits obfuscated for obvious reasons.
scope_id = "0040-001b-3da1-...."
serial_no = "SDS2PCBQ4R...."
model_no = "SDS2104X+"
software_version = "1.3.5R7"
uboot_versio = "5.0"
fpga_version = "2020-04-26"
cpld_version = "03"
hardware_version = "02-00"
Thank you to anyone willing to read this for your time, my apologies but I have read through the different threads in what I believe is a careful manner but I'm clearly being an idiot.
That's pretty well correct. The only thing you need to edit in that script is the scope-id exactly as you described. Unfortunately, that script has been set to read only so any edits are simply ignored when you hit the run button. The only way now is to copy the content of that script file to another locally stored empty *.py file on your system and run it from a locally installed python interpreter. I'm not sure whether the imported hashlib on line 1 is a special library or just a standard one included with all recent versions of the Python interpreter.
I'm running Linux Mint 17.1 and, in common with most Linux distros, Python is one of the many programming packages pre-installed on the system. Unfortunately for me, I've never knowingly run any python scripts (perl, yes since I use get_iplayer) so I landed up floundering around, trying to get my copy of that script to run. I even thought to redirect any output to a text file but it remained stubbornly empty after it ran with a ton of errors displayed on the console. TBH, it was late in my day (4:30 am!) so I wasn't too surprised with only an hour's worth of 'learning python' under my belt.
BTW, you might want to switch the digits 5 and 7 round in the software version you just posted.
John
Thank you SO very much for taking the time to reply John. I'm a software developer actually, so the python is cool for me.
At present, the options menu item 'SDS_2000XP_4BW02' which is last on the list has no value - just 'optional'. Is that what your's had - what you expect me to see before I enter any keys?
I have tried starting with 100M and 200M to no avail. Can you/anyone confirm that I should not be using my 'real' product model with the code, but only 'SDS2000X+' exactly as typed there?
I'm sorry but I also didn't follow your suggestion to swap the 5 and the 7 - the system status screen definitely says 1.3.5R7 but I assume I'm being thick?
Thank you again so very much indeed!
ed
Here's a complete list of all the firmware versions to date. As you can see, ver 1.3.5R7 is not in that list, hence my assumption of a transcription error in your post.
Version Compatibility
Source Version
Object Version
Compatibility
1.3.5R10
1.3.7R5
Tested
1.3.5R5
1.3.7R5
Tested
1.3.5R3
1.3.7R5
Tested
1.3.5R5
1.3.5R10
Tested
1.3.5R3
1.3.5R10
Tested
1.3.5R3
1.3.5R5
Tested
When I applied the keygen hacks the first time round (whilst the script could still be edited and run), that was a month or two back and I wasn't taking notes so my recollection is now a little hazy. However, having worked backwards from the 500MHz option before hitting the, afaicr, 200MHz option which would actually accept a licence key, the next BW option was the 350MHz one which I applied the licence key to, followed finally by the 500MHz option, at which point, the BW option disappears from the list. The current BW state now being identified by the change of model number to SDS2504X plus.
My own options list now includes the two new options, "SENT" and "MANC" listed as Temporary with remaining times set to 30. All the other applied options, except the BW one, are listed as applied with XX in the remaining times column.
The "4BW02" looks like the 200MHz option to me (ISTR having to infer which of the BW options in the generated licence keys list was required for the displayed BW option and apply it to change the displayed BW option to the next higher one and "Rinse and repeat" until no more BW options were displayed after applying the 500MHz licence key.
It looks to me as though it's still waiting to accept a valid license key to upgrade from the existing 100MHz BW to the next available BW option of 200MHz. If you're doing this for the first time with that script, you'll just keep seeing "Invalid Licence key" every time you use the 200MHz licence key on that generated list since it's simply the result of the preset 0000000000000000 value already displayed for the scope-id variable.
The only way round the blockage is to copy and paste the contents of that script file into an empty *.py file stored on a local disk drive which will let you edit the scope-id variable with your actual scope-id. Actually, that's not strictly true. It seems you can get the script to run remotely by signing up (apparently, you can get away with using a fake email address) but if you can run run a correctly edited copy on your own machine, why give them the satisfaction of forcing you to sign up, even if it is with a fake email address?
Keep the model number as shown in the script. It's only the scope-id that needs to be entered to generate a set of valid license keys for your scope.
BTW, if you do manage to successfully run that script locally, please let us know. I'd appreciate an "Idiot's Guide" to doing likewise. However, I've already asked this favour from steve1515 in response to his posting here:
https://www.eevblog.com/forum/testgear/siglent-sds2000x-plus-coming/msg3323244/#msg3323244 Just let me know first before launching into producing an idiot's guide.
[EDIT 2020-11-13 15:38 UTC] Don't bother, Elasia kindly provided the solution. I merely copied and pasted my already prepared local copy of the original script over the hello world example script and copied and pasted the results straight back to my empty report.txt file. I only wanted the last two items and the license keys worked!
John