Ok, here we go. Time to try to do away with National Instruments PCII GPIB cards and PC motherboards with ISA slots etc...
This thread is for anyone who is willing and able to help with the reverse engineering and recreation of the Tektronix Field Adjustment Software (FAS) for the TDS line of oscilloscopes.
To start with, this will cover mainly the TDS500/600/700 series scopes, with addition of other lines as testing on those scopes becomes possible.
The TDS200 series scopes do not require any special software as the adjustment procedure is done entirely from the scope controls, but it may be possible to integrate them into our project for automated testing in the future.
Here is my preliminary scope for the project:
- Platform agnostic - The ability to easily compile for the popular operating systems (Windows, Linux, Mac) I have no allegiance to any particular programming language, whatever works best.
- Self contained - No need to rely on other software, browsers, etc, to keep the dependences to a minimum. It's no good if we rely on a 3rd party app that is depreciated or updated to incompatibility a short time later.
- Plug-in type system for scope adjustment procedures - I'm thinking a user editable text file per scope model that defines the test procedures for that scope including switching matrix for automated testing. This will make adding future scopes much easier, maybe even non-Tek scopes too.
- Plug-in type system for GPIB/USB controlled test gear for automated adjustments - As above. This will allow for the use of whatever suitable equipment for adjustment that users have on hand.
- A user friendly UI
- A way to generate a test report at the end for posterity and record keeping.
Now, I have no experience with software development, and I realise that it's simple to make a list of demands.

So, I'm hoping there are some others out there that know software enough to get on board and help figure this out.
I have a good lot of TDS600/700 series scopes for testing with, and can work on more of the hardware side of things.
So far I have used 'IDA Pro Free' to somewhat decompile the TDS700D FAS to find the current list of supported test equipment. Not entirely sure what I am doing, but I was able to stumble through to this list:
These instruments listed below appear to be compatible with the Tek TDS scope Field Adjustment Software.
The TDS700D .exe file was decompiled to discover this list, and other FAS packages haven't been checked, but the list should be similar.
* Possible allowable categories for entries in 'g-config' file
Dc Dm Osc Sc Cg Pm Sa Sm Atten Cal Fg Ps Sg Rt
* Categories with listed instruments (items without a description are currently unknown)
-Oa
oa5002 : Tek OA5002 1100 to 1600nm singlemode fiber optic attentuator TM5000
oa5012 : Tek OA5012 750 to 1600nm 50um multimode fiber optic attentuator TM5000
oa5022 : Tek OA5022 750 to 1600nm 62.5um multimode fiber optic attentuator TM5000
-Atten (Attenuator)
Tm1095 : Tek 067-1095-99 attenuator TM5000
At5010 : Tek AT5010 50ohm 18GHz programmable attentuator TM5000
At3201t : API/Weinshel 50ohm 3GHz attenuator (With programmable controller)
-Cg (Calibration Generator)
cg5001 : Tek CG5001 Programmable calibration generator TM5000
cg5010 : Tek CG5010 Programmable calibration generator TM5000
cg5011 : Tek CG5011 Programmable calibration generator TM5000
-Dc (Digital Counter)
dc5010 : Tek DC5010 350MHz programmable frequency counter TM5000
dc2465
hp53131a : HP 53131a 225MHz Universal Frequency Counter/Timer
-Pg (Pulse Gen)
wt9500 : WaveTek/Fluke 9500 calibrator
-Ps (Power Supply)
dp8200 : Data Precision 8200 DC volt/current standard
dw4800
fl5100b : Fluke 5100B calibrator
fl5700a : Fluke 5700A multifunction calibrator
ps5004 : Programmable precision DC power supply TM5000
ps5010 : Tek Programmable triple DC power supply TM5000
wt9100f : WaveTek/Fluke 9100 calibrator
wt9100r : WaveTek/Fluke 9100 calibrator
wt9500 : WaveTek/Fluke 9500 calibrator
-Rt
gp700 : Dicon fiber optic switch
hp3488a : HP Switch control unit
rd1200
rd1264
si5020 : Tek DC - 18 GHz microwave switcher TM5000
tsi8150 : Tek Relay driver card mainframe
wt9500 : WaveTek/Fluke 9500 calibrator
vx5020
-Sg (Sinewave Generator)
aps1
aps1b
sp5030
fg5010 : Tek 20MHz signal generator TM5000
fl606 : Fluke 105GHz RF Generator (fluke 6060?)
fl5200a : Fluke programmable AC Calibrator
hp8642a : HP 100kHz to 1050MHz signal generator
hp8656a : HP 100kHz to 990MHz synthesized signal generator
hpesg : HP ESG-series analog RF signal generator
mi2024 : Marconi 2024 9kHz to 2.4GHz synthesized signal generator
sg503 : Tek Leveled sine wave generator TM500 (No GPIB control)
sg504 : Tek Leveled sine wave generator TM500 (No GPIB control)
sg5010 : Tek audio signal generator TM5000
sg5030 : Tek Leveled sine wave generator TM5000
smt03 : Rohde & Schwarz 5kHz to 3GHz RF generator
wt6645b40 : Wiltron 10Mhz to 18GHz 6645 synthesized signal generator
wt6722a20 : Wiltron 10MHz to 12.4GHz 6722 synthesized signal generator
wt6747a20 : Wiltron 10Mhz to 18GHz 6747 synthesized signal generator
wt6759b10 : Wiltron 10Mhz to 26.5GHz 6759 synthesized signal generator
wt6769b2u : Wiltron 10Mhz to 40GHz 6769 synthesized signal generator
wt9100r : WaveTek/Fluke 9100 calibrator
wt9500 : WaveTek/Fluke 9500 calibrator
-Dm (Digital Multimeter)
dm2000
dm2465
dm5010 : Tek 4.5 digit multimeter TM5000
dm5110 : Tek 4.5 digit multimeter TM5000
dm5120 : Tek 6.5 digit multimeter TM5000
fl8840a : Fluke 8840A 5.5 digit multimeter
fl8842a : Fluke 8842A 5.5 digit multimeter
hp3456a : HP 3456a 6.5 digit multimeter
hp3457a : HP 3457a 7.5 digit multimeter
hp3478a : HP 3457a 5.5 digit multimeter
-Fg (Function Generator)
fg5010 : Tek 20MHz signal generator TM5000
hp3325a : HP 20MHz function generator
hp8116a : HP 50MHz 8116A pulse/function generator
wt9100r : WaveTek/Fluke 9100 calibrator
wt9500 : WaveTek/Fluke 9500 calibrator
----------
Additional instruments mentioned in .exe, but maybe only for on-production line diagnostics and troubleshooting or maybe not implemented?
Sa
hp3585a
hp6627a
Sc
scalcf1
Pm
ma6960
hu47770h
hp436a
hp437b
nrvs
hp60500
Sw.Sm.Osc
osc2465
mi5010
From first glance, it would appear that Tek has recycled a lot of code between versions of the FAS for different models of scopes. If we can determine the algorithms used to calculate the calibration offsets, I think they would be similar between scope models.
Basically the adjustment procedure appears to be as follows:
FAS asks user to apply test signal to scope -> User applies signal and hits <return> -> FAS directs scope to take measurements -> FAS acquires data and calculates offsets -> FAS loads offsets into scope EEPROM
The reading and writing process of the EEPROM is known
as per this thread also it and other commands and data should be able to be determined from reverse engineering the FAS software and/or sniffing the GPIB comms.
So as it stands now at my end of things is I have a PC and test gear that complies with the original Tek requirements that I am able to successfully adjust a TDS714L scope.
I have just ordered another motherboard with two ISA slots to enable me to run automated cal procedures (Tek specify a second GPIB card for the automated test gear) once I get a second National Instruments ISA PCII/IIA GPIB card.
Any suggestions on a GPIB bus sniffer?

[EDIT] Link to Google Drive folder of all FAS versions I have collected so far:
https://drive.google.com/drive/folders/1nzU_EPE-w0SQ8PnY95D_j9rpL8Mu9YFx?usp=sharingTDS 500/600/700 Programmers Manual links:
TDS 410, 420, 460, 520A, 524A, 540A, 544A, 620A, 640A, 644A, 684A, 744A, & 784A - 070-8709-06TDS 410A, 420A, 460A, 520A, 524A, 540A, 544A, 620A, 640A, 644A, 684A, 744A & 784A - 070-8709-07TDS 410A, 420A, 460A, 520B, 540B, 620B, 644B, 680B, 684B, 724A, 744A & 784A - 070-9556-00TDS 420A, 430A, 460A, 510A, 520C, 540C, 620B, 644B, 680B, 684B, 724C, 754C, & 784C - 070-9876-00