Hi again,
For a TDS6154C with SN B010620 and Options 4M, ST, SM, RTE, JA3, PTD it is:
PS C:\Users\
?\
?\python\tek-ssc-master> C:\Python27\python .\gen.py TDS6154B B010620 08 44 00 00 00 00 80 00 28 00 00 00 00 00 00 00 00 00 (thus string ends in this case with 18 Zero's).
X3URE-768T6-LSDKG-DZ2KE-L2GUZ-6K6J4-FVZ4L-NQ6G4-923A
In general can the number of Zero's or F's be reduced to make it work. This is a Scope dependent Trial and Error Procedure.
Succes,
Calibrationfixture
Hi again,
For a TDS6154C with SN B010620 and Options 4M, ST, SM, RTE, JA3, PTD it is:
PS C:\Users\?\?\python\tek-ssc-master> C:\Python27\python gen.py TDS6154B B010620 08 44 00 00 00 00 80 00 28 00 00 00 00 00 00 00 00 00 (thus string ends in this case with 18 Zero's).
X3URE-768T6-LSDKG-DZ2KE-L2GUZ-6K6J4-FVZ4L-NQ6G4-923A
In general can the number of Zero's or F's be reduced to make it work. This is a Scope dependent Trial and Error Procedure.
Succes,
Calibrationfixture
This format should work and is much simpler:
DZSMA-M6GKW-46MHA-MKSSS-CADDB-YDSE
Hi tv84,
Or:
NHA5C-M5FLG-T2BTA-TEAAJ-AAAAA-EASC
There is a slight discrepancy in the UID.
It is namely a real TDS6154C on eBay.com. It is a pity that there is no Follow-up from Ko. I didn't have a TDS6000C Series on hand, thus evaluations are appreciated..
Calibrationfixture
There is a slight discrepancy in the UID.
It is namely a real TDS6154C on eBay.com. It is a pity that there is no Follow-up from Ko. I didn't have a TDS6000C Series on hand, thus evaluations are appreciated..
Just for reference:
Your license would work in a 6154C but it's not "officially" correct as it's oversized.
I attach a picture that graphically shows what I'm saying. The last license is the correct/official license for the UID/options combo that you were creating.
Pay attention to the blue color bytes...
Hi tv84,
Thank you for your reply. I know that the Option Mask String I provided was too long but Ko asked for:
I know the relations.
However the generated code is not accepted with the scope.
I think the cause is for the incorrect length of option mask or similar problem which I have experienced for TDS5034B.
Do you have any examples of option code for TDS6254C?
In the past I created working Option Keys for a real DPO7254, DPO72004 and TDS7404B. To enable all possible Options I experienced then that the string for a TDS7404B can be shorter than those for the DPO7254 and DPO72004 and observed slight UID differences between DSA and DPO Models. I don't know how to create "officially" correct Keys. You are invited
Calibrationfixture
I don't know how to create "officially" correct Keys. You are invited
It could be nitpicking but I've seen occasions where it had some repercussions (long time...). From memory: the public keygen code has some shortcomings and one of them is not always generating the shortest license code possible (assuming 0x1C as the minimum qualifying size for the bitmask). Sometimes, I suspect this can lead to buffer overruns when loading the license, because the scope app is not expecting further bytes in its buffer.
But there are plenty of examples where even Tek's official "STD" licenses have a huge bitmask (with lots of bits enabled) although this type of option is a 0-bit bitmask option, so the license should have a 0x1C length bitmask with no bit activated. It kind of shows that even Tek has different keygen implementations (for different models/factories
), some of them more loosely implemented.
Also if UID are different (even if just in 1 bit) then we should be talking different devices. Usually applies for the B and C models...
Sorry for my newbie question, but what are the differences between the 5000 and 5000B series. I was told there's a difference between the two series. I've compared the datasheets and I could only find minor differences in the scope part. Most of the differences I found were in the CPU board or PC motherboard.
Tektronix did offer an upgrade kit for the TDS, but they didn't include the tds5000 only the tds5000b series. My guess is that the tds5000 was past it's service life. Are there significant differences that would make it impossible to upgrade my damaged motherboard to the Advantech one mentioned in the upgrade kit?
Specification-wise they're virtually identical. Most notably, the B series has double the record length and comes with a newer computer (still running W2k though). There may be extra Java applications and trigger options supported as well, I'm not too familiar with those. It's basically the same thing.
Internally it's an update of the older design and is technically a different product. Although the improvements are incremental, parts and software from one generation are not interchangeable with the other.
Because the instrument was built as an integrated system, altering the qualified configuration is risky. You may trip up on hacks and bugs that laid dormant or were deemed not worth fixing, like the PCI error or some more insidious crash that happens 0.001% of the time. Proceed at your own risk.
Sorry for delaying my response.
I tried to make code, but I haven't succeeded the correct code yet.
My serial number is B010492 which is also displayed on the option installation dialog.
The generated option keys of geb.py which I inputed into my osc are;
-------------------------------------
(py27) C:\tektronix\tek_options\tool>python gen.py TDS6154B B010492 084400000000800028000000000000000000 (18 digits as your explanation)
X3UNE-6N4T2-QQHRF-Q988Y-Q9H99-49QN7-E8966-8L5HZ-Z8RA
(py27) C:\tektronix\tek_options\tool>python gen.py TDS6154B B010492 0844000000008000280000000000000000 (1 byte digit reduced)
PTC2E-NPMBU-NN27P-4MV43-9N9MR-Z5B7Q-6LRT2-T5J9D-HD
(py27) C:\tektronix\tek_options\tool>python gen.py TDS6154B B010492 08440000000080002800000000000000 (2 byte digit reduced)
FTUJE-NNLBS-QJ46P-4MV43-9N9MR-Z5B7Q-6LRT2-T5J9D
(py27) C:\tektronix\tek_options\tool>python gen.py TDS6154B B010492 084400000000800028000000000000 (3 byte digit reduced)
78A7A-47V34-6YSNP-Q998Z-99999-59R77-68976-955D
(py27) C:\tektronix\tek_options\tool>python gen.py TDS6154B B010492 0844000000008000280000000000 (4 byte digit reduced)
X8SPA-46U32-8UUPP-Q998Z-99999-59R77-68976-9M
(py27) C:\tektronix\tek_options\tool>python gen.py TDS6154B B010492 08440000000080002800000000 (5 byte digit reduced)
PYA3A-L7DKU-6SP9F-4MU42-QNHMR-Y5ANQ-ELRS2-A
-------------------------------------
Any code couldn't work on my TDS6254C.
My TDS is STD which doesn't have any option. The result of validation.py is following;
--------------------------------------------------
(py27) C:\tektronix\tek_options\tool>python validate.py 37C6E-8K5V4-E6CRH-M545W
B9 0B 4E 7C DA 53 13 2E DE 59 5B 6F 0A
1C FC 28 00 03 0A 18 09 3E 00 00 00 E0 70 10 10 00 00 00 00 00 00 00 00 00 00 00
This key is for UID 180A030028FC (S/N 10492, model TDS/DSA/DPO6154B):
CRC: 3E09
Key is valid, active options:
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
--------------------------------------------------
Any ideas?
Hi Ko,
Too many Zero's. Try this:
PS C:\Users\
?\Documents\Python\tek-ssc-master\tek-ssc-master> C:\Python27\python .\gen.py TDS6154B B010492 0844FFFFFFFFFFFFFF (14 F's)
PZA2A-LPDKU-6WZ4N-VHKZA-2HZWK-LETN
Succes,
Calibrationfixture
I tried it. However, key didn't work.
I'm not sure why it can't work correctly. Can you help me?
Hi,
Intriging. I assume you also replaced the MB Battery. The Scope is still out of date: 26 April ....)
You didn't get the Message: The Option Key isn't valid. Instead the Scope didn't succeed in enabling the New Options and Applications. Wow. It seems a Hardware issue. I assume you reinstalled Current Oscilloscope Application (V5.1.7 is the latest for TDS6000C's).
Calibrationfixture
Hello
Today I change the date and time to current.
However my TDS could not accept the key.
Umm, I have not found the solution yet….
Hi Ko,
I think these are the Scope Model Numbers to use for the TDS5000B Series:
TDS5104B = TDS7216
TDS5054B = TDS7166
TDS5034B = TDS7146
I didn't have a TDS5000B Series on hand thus evaluations are appreciated.
Greetings,
Calibrationfixture
That totally did it on my 5034B; thank you very much!
Thanks for this! Fully optioned my TDS5054B.
Hi alexandraquirosh,
I cannot PM you, because (Zeroposter?) your Mailbox is full. Please empty it, or post your request in this Thread.
Calibrationfixture
So I also happen to be having the exact same issue as KO, using a TDS6154C.
I get the message "The new options and applications were not successfully installed", I will note however that typing in gibberish as a key yields the same error, furthermore if I type in a known good key I get the message that the option was successfully enabled, so I do not believe this is an issue with installing the key rather the key is indeed invalid.
What I'm currently looking at now is how a known good key (like the one found on eBay) will validate and accurately be able to decode the model number and serial # however attempts to recreate this known good key will fail, in other-words taking the mask and other info from the validation and trying to apply it doesn't generate the same key.... Not sure why this would be as the ability to validate would mean you accurately know all the sbins? lol been a while since my crypto class.
Additionally I've noticed at least the first 5 chars of the lic will not change for a given mask, so once you've picked a mask you can put any model number and serial (even all zeros) and it will remain the same
so idk if this is a hint towards determining the proper mask for recreating the ebay key who's first 5 chars are "NHA5C"
Hi Circuitauger,
Allright, thus it is not a HW issue. Because using alternative Scopenumbers did work for the TDS5000B Series I hoped it also works for the TDS6000B/C series. Because I don't have these Models at hand, you were all invited. The same for DPO7000C and DSA/DPO/MSO70000(B/C) Series.
Calibrationfixture
Well ultimately I do still think there's a good chance for this to work given that the validate.py is able to spit out valid info, and it sounds like from other posts that this works for both TDS5000 and TDS7000 scopes, so hopefully there's nothing weird about TDS6000 scopes.
Probably looking at redoing w/e work shuvodutta did to discover the code mishandling the B variant. Sounds like they aren't contactable though.
There's the post where you mentioned
I think these are the Scope Model Numbers to use for the TDS5000B Series:
TDS5104B = TDS7216
TDS5054B = TDS7166
TDS5034B = TDS7146
How did you determine this was the correct nomenclature to use?
Also in this post
https://www.eevblog.com/forum/testgear/tek-csa7404-repair-project/msg4617574/#msg4617574I used for my TDS7404B Option Masks: 10 44 FF FF FF FF FF FF FF
How did you generate that option mask? Looking in the option.py file, there's a description of masking but I don't see how your mask would be constructed.
Thanks,
-Circuitauger
Hi Circuitauger,
Using validate.py on a lot of existing TDS5000B License Keys leads me to the alternative and working Scope Numbers. The same with the TDS6124C and TDS6154C Models. Using validate.py gives TDS/DSA/DPO6124B and TDS/DSA/DPO6154B as Scope Numbers in case of existing TDS6000C License Keys, but these don't work as we know now. Maybe using DSA or DPO instead of TDS is the solution.
Using F's is the most time/cost effective way to enable as much as possible Options. A suggestion somewhere in the:
https://www.eevblog.com/forum/testgear/tek-csa7404-repair-project/600/Thread.
Calibrationfixture
Alright actually got it, I suspect this is similar to the mod made to support B models
The clue was in trying to validate the known good keys for TDS6154C variants you’ll end up getting a UUID error:
UID mismatch !
UID in key: 7C 29 00 03 0A 18
Calculated UID: 7C 29 00 02 0A 18
Which was suspiciously 1 off from what it should be... like C is to B
Basically the model number is getting expressed as a wrapped (maybe slightly scrambled) hex representation in the UUI
e.g. TDS615
5C will yield a Calculated UID of: 7C 29 00 02 0
B 18
So for anyone trying to repair their C variant scope in “key.py” you need to
change line 63 to
mdl_int = int(model[3:].strip('C')
And add after line 68 lines:
if model[-1]=='C':
sn_int |= 0x03000000
You should now be able to type in your model number normally as TDS6154C into gen.py
Of course for a long term fix which allows for B & C variants the proper way would be to check for a char as the ending value and apply the appropriate strip and hex value set (the above change to line 63 will break the code if you try to type in a B model number as it now doesn't know what to do with the 'B')