Author Topic: Tektronix TDS Scope Field Adjustment Software reverse engineering  (Read 7242 times)

0 Members and 2 Guests are viewing this topic.

Offline TERRA OperativeTopic starter

  • Super Contributor
  • ***
  • Posts: 2923
  • Country: jp
  • Voider of warranties
    • Near Far Media Youtube
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. :D 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:

Code: [Select]
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=sharing


TDS 500/600/700 Programmers Manual links:
TDS 410, 420, 460, 520A, 524A, 540A, 544A, 620A, 640A, 644A, 684A, 744A, & 784A - 070-8709-06
TDS 410A, 420A, 460A, 520A, 524A, 540A, 544A, 620A, 640A, 644A, 684A, 744A & 784A - 070-8709-07
TDS 410A, 420A, 460A, 520B, 540B, 620B, 644B, 680B, 684B, 724A, 744A & 784A - 070-9556-00
TDS 420A, 430A, 460A, 510A, 520C, 540C, 620B, 644B, 680B, 684B, 724C, 754C, & 784C - 070-9876-00
« Last Edit: February 19, 2023, 05:09:18 pm by TERRA Operative »
Where does all this test equipment keep coming from?!?

https://www.youtube.com/NearFarMedia/
 
The following users thanked this post: hua

Offline TERRA OperativeTopic starter

  • Super Contributor
  • ***
  • Posts: 2923
  • Country: jp
  • Voider of warranties
    • Near Far Media Youtube
Re: Tektronix TDS Scope Field Adjustment Software reverse engineering
« Reply #1 on: February 19, 2023, 05:52:21 am »
A few things of note regarding the test equipment required for the adjustment procedure:

The voltage standard only needs to go to +/-9.5V, so something good for a little more than that will be fine, no need for anything that hits hundreds or even 1000 volts at all. It does need 5 digits of resolution though.
A current source good for 20mA at 5 digits resolution is also needed too.
I think even an adjustable linear regulator like an LM317 with a 10 turn pot measured on a 5.5 or more digit multimeter would be fine for this part.
(I was hoping my Advantest R6144 would be suitable, but it lacks the capability in the current ranges, voltage output is ok though)

A multimeter with a corresponding number of digits (5.5 digits or more) is also needed to enter voltage values when applying the test current.

For a 500MHz scope, the sine generator needs to be capable of 505MHz at  +16 to +17 dBm (4V P-P), for a 1GHz scope, the sine generator needs to go to 1050MHz at the same output level.
« Last Edit: February 19, 2023, 05:54:32 am by TERRA Operative »
Where does all this test equipment keep coming from?!?

https://www.youtube.com/NearFarMedia/
 
The following users thanked this post: hua

Offline DC1MC

  • Super Contributor
  • ***
  • Posts: 1882
  • Country: de
Re: Tektronix TDS Scope Field Adjustment Software reverse engineering
« Reply #2 on: February 19, 2023, 06:27:21 am »
Well, I want to be the first to congratulate  :clap: because I was the first to instigate  >:D.
Some say that the 1000miles journey starts with the first step, this is true, but is still the first step, to reach the end of the journey a lot more needs to be done, here are my organizational proposals:

- a (maybe not very public) repository of the initial software and the results of reversing, I think a private GitHub where access is granted on a one by one basis. I think that sooner, or later, some manufacturer/large or even small calibration lab legal vulture or hyena will be sicked against the project to not let their revenue stream diminish.

- a priority based list of what sw does and why it needs to have its functionality reproduced, to know were to start and what to strive for. That may sound obviously clear for the people that uses frequently the sw, but for me is not clear yet what is needed, and don't think I'm alone.

- a (very public) repository where extracted procedures are transformed in general public useful applications or libraries. We could even use Compaq's "clear room" approach and have as little as possible contact between the two groups.

- a Diversity, Equity and Inclusion policy, no, not the woke shite with CoC and other crap, but if some other useful program is found that is not necessarily a Tek FAS thing it should be included as well, without discrimination  ;D.

- a rewards program, passion and interest are OK, but a piece of gear or a bit of cash goes a long way for a beginner in the field that is eager to help but doesn't have many resources.


Now for a technical bit: GPIB sniffer:

The mother of all protocol decoders Sigrok:
http://sigrok.org/wiki/Protocol_decoder:Ieee488

and as HW for the soldering happy people:

GPIB Sniffer board contributed by ARTAG and improved by  Jay_Diddy_B, as well as AND supported by Sigrock !!!
https://github.com/artgodwin/Sigrok-sniffer

Is cheap and ready for JLCPCB ;) I will order some boards and distribute them in DE if anyone around is interested.

That's it for my first post.
 
The following users thanked this post: hua

Offline PA0PBZ

  • Super Contributor
  • ***
  • Posts: 5130
  • Country: nl
Re: Tektronix TDS Scope Field Adjustment Software reverse engineering
« Reply #3 on: February 19, 2023, 11:01:18 am »
Subscribed!  :popcorn:

I don't have a TDS but experience with reverse engineering so maybe I can help out. I also found a thread here on the forum that contains some interesting information, it looks like some people already started on the same problem: https://www.eevblog.com/forum/testgear/automating-tektronix-field-adjustment-software-for-tds-oscilloscopes/

 
Keyboard error: Press F1 to continue.
 
The following users thanked this post: hua

Offline TERRA OperativeTopic starter

  • Super Contributor
  • ***
  • Posts: 2923
  • Country: jp
  • Voider of warranties
    • Near Far Media Youtube
Re: Tektronix TDS Scope Field Adjustment Software reverse engineering
« Reply #4 on: February 19, 2023, 11:12:34 am »
I agree with all of the above.
I think having a 'modular' framework where the core software can be configured for multiple pieces of equipment other than Tek scopes is a good idea too. It will make it more useful, more used and hence more likely to stay alive. :) However, we have to start small and get it working first, but design with a view to expansion.

I'm not 100% up with how github works. I do have an account but I basically never use it, so I may not be the best person to take charge of that with versioning and forks and all that stuff.

Where does all this test equipment keep coming from?!?

https://www.youtube.com/NearFarMedia/
 
The following users thanked this post: hua

Online nctnico

  • Super Contributor
  • ***
  • Posts: 26922
  • Country: nl
    • NCT Developments
Re: Tektronix TDS Scope Field Adjustment Software reverse engineering
« Reply #5 on: February 19, 2023, 11:42:37 am »
For a 500MHz scope, the sine generator needs to be capable of 505MHz at  +16 to +17 dBm (4V P-P), for a 1GHz scope, the sine generator needs to go to 1050MHz at the same output level.
The required output level is where things get hairy. Most RF generators are not capable of such output levels and the ones that do are expensive. So it would be nice if another source can be used. Like a square wave with steep edges or maybe even the calibrator output on the oscilloscope itself. I have owned a couple of these scopes but got rid of them because they can't be adjusted very easely. I got the software and the GPIB card working at some point but the RF generator was a bridge too far.

All things considered, I think the time aligment between the AD converters is the most important test/adjustment because this is required when uphacking these scopes to a higher bandwidth model. Next would be the ability to apply a DC voltage and adjust the gain. These are the  two things I'd concentrate on first and it would really help if these can be done seperately instead of needing to go through all the calibration / adjustment steps.

« Last Edit: February 19, 2023, 11:45:41 am by nctnico »
There are small lies, big lies and then there is what is on the screen of your oscilloscope.
 
The following users thanked this post: hua

Offline TERRA OperativeTopic starter

  • Super Contributor
  • ***
  • Posts: 2923
  • Country: jp
  • Voider of warranties
    • Near Far Media Youtube
Re: Tektronix TDS Scope Field Adjustment Software reverse engineering
« Reply #6 on: February 19, 2023, 11:53:28 am »
It is possible to use an RF amplifier, here is an adventure someone had in using one on youtube:

Where does all this test equipment keep coming from?!?

https://www.youtube.com/NearFarMedia/
 
The following users thanked this post: hua, DC1MC

Offline DC1MC

  • Super Contributor
  • ***
  • Posts: 1882
  • Country: de
Re: Tektronix TDS Scope Field Adjustment Software reverse engineering
« Reply #7 on: February 19, 2023, 11:54:01 am »
Subscribed!  :popcorn:

I don't have a TDS but experience with reverse engineering so maybe I can help out. I also found a thread here on the forum that contains some interesting information, it looks like some people already started on the same problem: https://www.eevblog.com/forum/testgear/automating-tektronix-field-adjustment-software-for-tds-oscilloscopes/

Well, I do have an limping TDS744 (three channels only, one ceramic section physically broken  :'( ), but no sw for it, so if GitHub is not OK with you TERRA (you don't actually need to concern with versions and commits, you only need to use it as a file storage and eventually just use the web interface) and experience in reversing.
So if GitHub is not OK, then Google Drive, Dropbox or whatever online storage that is not totally ephemeral.

 
The following users thanked this post: hua

Offline DC1MC

  • Super Contributor
  • ***
  • Posts: 1882
  • Country: de
Re: Tektronix TDS Scope Field Adjustment Software reverse engineering
« Reply #8 on: February 19, 2023, 12:24:09 pm »
It is possible to use an RF amplifier, here is an adventure someone had in using one on youtube:



OK, someone with a lot of scopes should drag fenugrec here :)
 
The following users thanked this post: hua, TERRA Operative

Offline DC1MC

  • Super Contributor
  • ***
  • Posts: 1882
  • Country: de
Re: Tektronix TDS Scope Field Adjustment Software reverse engineering
« Reply #9 on: February 19, 2023, 01:22:25 pm »
User M K das posted some stuff in the TEA thread, I really don't know if the TEK software uses  CEC488/KPC488.2 drivers and libraries, but if yes, here is where you could download your copy of them for dos, as far as I culd find, this is the latest version for DOS and with development software on it, if you new of a similar but newer one, please post it here:

 CEC488/KPC488.2 SDK
https://www.tek.com/en/support/software/driver/cec488-driver-ver-70-gpib-cards-kpci-488-kpc-4882-kpc-4882at-v70-use-isa-bus-interfaces-and
 
The following users thanked this post: hua

Offline TERRA OperativeTopic starter

  • Super Contributor
  • ***
  • Posts: 2923
  • Country: jp
  • Voider of warranties
    • Near Far Media Youtube
Re: Tektronix TDS Scope Field Adjustment Software reverse engineering
« Reply #10 on: February 19, 2023, 02:50:37 pm »
Subscribed!  :popcorn:

I don't have a TDS but experience with reverse engineering so maybe I can help out. I also found a thread here on the forum that contains some interesting information, it looks like some people already started on the same problem: https://www.eevblog.com/forum/testgear/automating-tektronix-field-adjustment-software-for-tds-oscilloscopes/

Well, I do have an limping TDS744 (three channels only, one ceramic section physically broken  :'( ), but no sw for it, so if GitHub is not OK with you TERRA (you don't actually need to concern with versions and commits, you only need to use it as a file storage and eventually just use the web interface) and experience in reversing.
So if GitHub is not OK, then Google Drive, Dropbox or whatever online storage that is not totally ephemeral.



I don't mind using github, but I'm not proficient enough to be in charge of it. If someone else is good with it, they can take the reigns there.

Also, PM me, I have a sneaky spare hybrid module. We can't have your scope limping if you are going to be involved with this project. ;)
Where does all this test equipment keep coming from?!?

https://www.youtube.com/NearFarMedia/
 
The following users thanked this post: hua

Offline TERRA OperativeTopic starter

  • Super Contributor
  • ***
  • Posts: 2923
  • Country: jp
  • Voider of warranties
    • Near Far Media Youtube
Re: Tektronix TDS Scope Field Adjustment Software reverse engineering
« Reply #11 on: February 19, 2023, 02:52:09 pm »
User M K das posted some stuff in the TEA thread, I really don't know if the TEK software uses  CEC488/KPC488.2 drivers and libraries, but if yes, here is where you could download your copy of them for dos, as far as I culd find, this is the latest version for DOS and with development software on it, if you new of a similar but newer one, please post it here:

 CEC488/KPC488.2 SDK
https://www.tek.com/en/support/software/driver/cec488-driver-ver-70-gpib-cards-kpci-488-kpc-4882-kpc-4882at-v70-use-isa-bus-interfaces-and

On my DOS PC, I just installed the NI drivers for the PCII/IIA card and it just worked. I'm not sure if the Tek FAS is using the drivers or doing some direct access magic though.
Where does all this test equipment keep coming from?!?

https://www.youtube.com/NearFarMedia/
 
The following users thanked this post: hua

Offline m k

  • Super Contributor
  • ***
  • Posts: 2013
  • Country: fi
Re: Tektronix TDS Scope Field Adjustment Software reverse engineering
« Reply #12 on: February 19, 2023, 02:53:54 pm »
[rerouted from TEA thread]

Quote
Well, besides not having any clue what program is that from

It's CEC488/KPC488.2 8bit ISA card ROM.
The support disk image I found should have had headers but none were present.
Github had something, but icpdas ftp has more.

If Keithley's ISA card has a ROM chip then it's most likely backwards compatible.
But by default newer cards have ROM disabled so default test fails if ROM is needed.
CEC is noting that only oldies from '80s are using the ROM.

It's a very old construction so it should be known by many.
I guess it would be close to easiest 1st level, a controller construction that supports old software.
After that the 2nd level, the new application software, would be much easier.

Emulating TI/NEC chip registers and their addresses is clearly minimum for FAS.

ROM functions,
"short" is a len parameter length of one byte, must be from PC/XT era and for backwards compatibility.

Code: [Select]
00 init
03 transmit "short"
06 receive "short"
09 send "short"
0c spoll
0f ppoll
12 init 2
15 ? "short"
18 in base+4, test 2
1b in base+4, test 4
1e transmit
21 receive
24 send
27 enter
2a DMA?

c8 tarray (cache RAM)
cb rarray (cache RAM)
ce dma2

ROM code has a fixed I/O address.

Code: [Select]
       c800:0000 e9 dd 00        JMP        LAB_c800_00e0
...
       c800:0062 b8 02           dw         2B8h
...
                             LAB_c800_00e0                                   XREF[1]:     c800:0000(j) 
       c800:00e0 55              PUSH       BP
       c800:00e1 8b ec           MOV        BP,SP
       c800:00e3 50              PUSH       AX
       c800:00e4 52              PUSH       DX
       c800:00e5 b0 02           MOV        AL,0x2
       c800:00e7 2e 8b 16        MOV        DX,word ptr CS:[0x62]
                 62 00
       c800:00ec 83 c2 05        ADD        DX,0x5
       c800:00ef ee              OUT        DX,AL

From CEC's ieee-c.h
Push parameters to stack from left to right.

Code: [Select]
#define initialize(addr,level)          ieee488_initialize(addr,level)
...
#define transmit(cmd,status)            ieee488_transmit((char  *) (cmd),0xFFFF,(long int  *) status)
#define receive(s,maxlen,len,status)    ieee488_receive((char  *) (s),maxlen,(unsigned long  *) len,(long int  *) status)
#define send(addr,s,status)             ieee488_send(addr,(char  *) (s),0xFFFF,(long int  *) status)
#define enter(s,maxlen,len,addr,status) ieee488_enter((char  *) (s),maxlen,(unsigned long  *) len,addr,(long int  *) status)
#define spoll(addr,poll,status)         ieee488_spoll(addr,(char  *) poll,(long int  *) status)
#define ppoll(poll)                     ieee488_ppoll((char  *) poll)
#define tarray(d,count,eoi,status)      ieee488_tarray((void  *) d,count,eoi,(long int  *) status)
#define rarray(d,count,len,status)      ieee488_rarray((void  *) d,count,(unsigned long  *) len,(long int  *) status)
...
#define transmit(cmd,status)            ieee488_transmit((char far *) (cmd),0xFFFF,(int far *) status)
#define receive(s,maxlen,len,status)    ieee488_receive((char far *) (s),maxlen,(unsigned int far *) len,(int far *) status)
#define send(addr,s,status)             ieee488_send(addr,(char far *) (s),0xFFFF,(int far *) status)
#define enter(s,maxlen,len,addr,status) ieee488_enter((char far *) (s),maxlen,(unsigned int far *) len,addr,(int far *) status)
#define spoll(addr,poll,status)         ieee488_spoll(addr,(char far *) poll,(int far *) status)
#define ppoll(poll)                     ieee488_ppoll((char far *) poll)
#define tarray(d,count,eoi,status)      ieee488_tarray((void far *) d,count,eoi,(int far *) status)
#define rarray(d,count,len,status)      ieee488_rarray((void far *) d,count,(unsigned int far *) len,(int far *) status)

#define srq                             ieee488_srq
#define setport(bd,io)                  ieee488_setport(bd,io)
#define boardselect(bd)                 ieee488_boardselect(bd)
#define dmachannel(c)                   ieee488_dmachannel(c)
#define settimeout(t)                   ieee488_settimeout(t)
#define setoutputEOS(e1,e2)             ieee488_setoutputEOS(e1,e2)
#define setinputEOS(e)                  ieee488_setinputEOS(e)
#define enable_488ex(e)                 ieee488_enable_488ex(e)
#define enable_488sd(e,t)               ieee488_enable_488sd(e,t)
#define listener_present(a)             ieee488_listener_present(a)
#define gpib_board_present              ieee488_board_present
#define gpib_feature                    ieee488_feature

BTW,
I had a rude awakening once.
My cli/sti test was very slow, then I bought the Unauthorized Win95 by A. Schulman.

Back in the day there were exceptions, can't remember how many.
Maybe virtual DOS can have a filter driver for ins and outs.
That driver could also create logs and so be a sniffer.
« Last Edit: February 19, 2023, 02:57:28 pm by m k »
Advance-Aneng-Appa-AVO-Beckman-Data Tech-Fluke-General Radio-H. W. Sullivan-Heathkit-HP-Kaise-Kyoritsu-Leeds & Northrup-Mastech-REO-Simpson-Sinclair-Tektronix-Tokyo Rikosha-Triplett-YFE
(plus lesser brands from the work shop of the world)
 
The following users thanked this post: hua

Offline DC1MC

  • Super Contributor
  • ***
  • Posts: 1882
  • Country: de
Re: Tektronix TDS Scope Field Adjustment Software reverse engineering
« Reply #13 on: February 19, 2023, 03:09:34 pm »
@M K & all: I keep hearing about "the driver" that does this and that (including sniffing/logging !!), also contradictory stuff about the calibration program needing or not needing some DOS driver.

Could finally enlighten me on the following topics:

 1) What is the infrastructure needed to run a calibration operation:
- what DOS and with what configuration of the upper memory (HIMEM.sys parameters) ?
- is there any device driver that must installed in config.sys and with what parameters or the the program must run on bare DOS ?
- what are the program(s) need to be run, in which configuration and where can they be found ?

Because I have a feeling that I'm a bit unfocused, I have a coupe of hours of time and I wold happily disassemble/reverse something but without a plan is just wasted time.
« Last Edit: February 19, 2023, 03:45:08 pm by DC1MC »
 
The following users thanked this post: hua

Offline DC1MC

  • Super Contributor
  • ***
  • Posts: 1882
  • Country: de
Re: Tektronix TDS Scope Field Adjustment Software reverse engineering
« Reply #14 on: February 19, 2023, 03:43:33 pm »
To summarize, the "One True GPIB Card" that TEK crapoholic software supports is one of the CEC488 also sold as KPC488.2, of which datasheet and programmers manual I have attached here and a message above and the SDK link from TEK I've posted above ?
Anybody can 100% confirm this ?

Please have a look on the files and let me know where I can download the actual software, I want to see if CEC library is linked in.

P.S> BLOODY EXPENSIVE POS  :wtf: :wtf: :wtf: I've looked for how much they're offered, in between 300-500USD !!!, it has to be this one, or else nobody will pay this shitload of money !!!
 
The following users thanked this post: hua

Offline DC1MC

  • Super Contributor
  • ***
  • Posts: 1882
  • Country: de
Re: Tektronix TDS Scope Field Adjustment Software reverse engineering
« Reply #15 on: February 19, 2023, 04:03:33 pm »
This post where even our fearless TERRA  8)  contributed has links that still work for the FAS and some goodies:

https://www.eevblog.com/forum/testgear/tektronix-tds-series-scopes-field-calibration-software-plus-other-utilities/

@TERRA: Maybe you could edit the first post and add the pointers to the SW ?

 Cheers,
 DC1MC
 
The following users thanked this post: hua

Offline timeandfrequency

  • Regular Contributor
  • *
  • Posts: 113
  • Country: fr
Re: Tektronix TDS Scope Field Adjustment Software reverse engineering
« Reply #16 on: February 19, 2023, 04:11:24 pm »
It is possible to use an RF amplifier, here is an adventure someone had in using one on youtube:

Youtube  video   v=wSqTj4gGCJ

OK, someone with a lot of scopes should drag fenugrec here :)
Hi all,

Pretty interesting sequence.
Performing the manual calibration sequence takes a huge amont of time, that's why cal benches are as much as possible automated.
But luckily, if the recommended software controlled test gear is not available, using alternate TE is still possible in manual mode.

When @fenugrec started the high frequency calibration, I was surprised that he used clothesline quality coax cable (RG58) between the RF generator and the DUT.
But he figured it out where the mistake was located, and nicely compensated manually for the cable loss.
Metrology-grade coax cables are so affordable...

For the channel sync setup, using a basic T-BNC ruins impedance matching and leads to spurious reflections in the cables. A 50 Ohm power splitter and matched cables would have been a better choice, if available.
 
The following users thanked this post: hua

Offline DC1MC

  • Super Contributor
  • ***
  • Posts: 1882
  • Country: de
Re: Tektronix TDS Scope Field Adjustment Software reverse engineering
« Reply #17 on: February 19, 2023, 04:14:13 pm »
OK, in MY archives I've discovered this gem (attached), could anyone confirm that is the real deal for TDS7xx series ?
 
The following users thanked this post: hua

Offline TERRA OperativeTopic starter

  • Super Contributor
  • ***
  • Posts: 2923
  • Country: jp
  • Voider of warranties
    • Near Far Media Youtube
Re: Tektronix TDS Scope Field Adjustment Software reverse engineering
« Reply #18 on: February 19, 2023, 04:16:35 pm »
To run a cal routine (fully successfully) in my case, here is what I used on the PC side:

- PC with ISA slot on the motherboard (I have a Dell Precision MT410)
- National Instruments GPIB-PCII/IIA GPIB card
- DOS v6.22
- NI drivers installed and configured (along with jumpers on the card and BIOS settings) for the default Tek FAS settings (see below).

Attached to this post is my Autoexec.bat and config.sys (I renamed the file extensions to prevent Windows from hiding the files).



The National Instruments 'GPIBInfo' app says this about my setup:

Code: [Select]
Software Information:
The NI-488.2 Software for MS-DOS is loaded.
You are running Version 2.6 for the GPIB-PCIIA board.
It supports both the NI-488 functions and NI-488.2 routines.
It does not support the HS488 high-speed protocol.

Hardware Information:
GPIB0: GPIB-PCIIA board using the NAT4882 chip.
It supports both the NI-488 functions and NI-488.2 protocols.
It does not support the HS488 high-speed protocol.
It uses base I/O address 0x2e1.
It uses interrupt level 7.
It uses DMA channel 1.


The TDS Scope service manual has the following to say:

Adjustment of this oscilloscope requires a computer with hard drive, 3.5 inch 1.44 MByte floppy drive, and the following items:
For DOS software:
- An IBM PC compatible computer running DOS 3.2 or higher. A math coprocessor is strongly recommended.
- 640K resident RAM with 580 K available RAM.
- A GPIB board — National Instruments GPIB-PCII, GPIB-PCIIA or GPIB-PCII/IIA. (A PC-GPIB Package that includes the PCII/IIA is available — Tektronix part number S3FG210)

For Windows NT software:
- An Intel compatible computer running Windows NT.
- A GPIB board and software — National Instruments AT–GPIB/TNT, Windows NT (INTEL).


Now that last bit is interesting, I have never seen the Windows NT software........................


And also attached to this post is the TDS700D version of the Field Adjustment Software, as installed on my machine.
This is how it is unpacked and installed ready for use, using the GPIB addresses etc above, so is good for decompilation etc.
« Last Edit: February 19, 2023, 04:32:12 pm by TERRA Operative »
Where does all this test equipment keep coming from?!?

https://www.youtube.com/NearFarMedia/
 
The following users thanked this post: hua

Offline TERRA OperativeTopic starter

  • Super Contributor
  • ***
  • Posts: 2923
  • Country: jp
  • Voider of warranties
    • Near Far Media Youtube
Re: Tektronix TDS Scope Field Adjustment Software reverse engineering
« Reply #19 on: February 19, 2023, 04:29:12 pm »
OK, in MY archives I've discovered this gem (attached), could anyone confirm that is the real deal for TDS7xx series ?


Yep, it's a valid version.

I just edited the original post with a link to Google drive with all the FAS versions I have.
These are the install files, so they are copied to floppy disk and installed on the PC used for calibration which unpacks all the actual software and config files.
Where does all this test equipment keep coming from?!?

https://www.youtube.com/NearFarMedia/
 
The following users thanked this post: hua

Offline DC1MC

  • Super Contributor
  • ***
  • Posts: 1882
  • Country: de
Re: Tektronix TDS Scope Field Adjustment Software reverse engineering
« Reply #20 on: February 19, 2023, 04:42:04 pm »
OK, in MY archives I've discovered this gem (attached), could anyone confirm that is the real deal for TDS7xx series ?


Yep, it's a valid version.

I just edited the original post with a link to Google drive with all the FAS versions I have.
These are the install files, so they are copied to floppy disk and installed on the PC used for calibration which unpacks all the actual software and config files.

OK, so far so good, but now comes the question: is there any connection between this NI card and the above mentioned CEC488/KPC488.2 cards for which we have the SDK or they are unrelated to our stuff ?


 
The following users thanked this post: hua

Offline TERRA OperativeTopic starter

  • Super Contributor
  • ***
  • Posts: 2923
  • Country: jp
  • Voider of warranties
    • Near Far Media Youtube
Re: Tektronix TDS Scope Field Adjustment Software reverse engineering
« Reply #21 on: February 19, 2023, 05:09:47 pm »
AFAIK, the Tek FAS will only see the NI GPIB-PCII/IIA cards. I've never tried anything else to see. I only have an IOtech ISA GPIB card (a Personal488, GP488B version) besides the PCII/IIA one.

If I can get my hands on a CEC488/KPC488.2 card, I can test it, but may be difficult here in Japan.


Also, I added links to some programmers manuals to the first post too, might give us some ideas.
« Last Edit: February 19, 2023, 05:16:51 pm by TERRA Operative »
Where does all this test equipment keep coming from?!?

https://www.youtube.com/NearFarMedia/
 
The following users thanked this post: hua

Offline DC1MC

  • Super Contributor
  • ***
  • Posts: 1882
  • Country: de
Re: Tektronix TDS Scope Field Adjustment Software reverse engineering
« Reply #22 on: February 19, 2023, 05:19:40 pm »
AFAIK, the Tek FAS will only see the NI GPIB-PCII/IIA cards. I've never tried anything else to see. I only have an IOtech ISA GPIB card (a Personal488, GP488B version) besides the PCII/IIA one.

If I can get my hands on a CEC488/KPC488.2 card, I can test it, but may be difficult here in Japan.


Also, I added links to some programmers manuals to the first post too, might give us some ideas.

Is there a SDK for these NI cards as well, as for the CEC488/KPC488.2, if so, where ? I'll enjoy having the headers and LIBs.
 
The following users thanked this post: hua

Offline TERRA OperativeTopic starter

  • Super Contributor
  • ***
  • Posts: 2923
  • Country: jp
  • Voider of warranties
    • Near Far Media Youtube
Re: Tektronix TDS Scope Field Adjustment Software reverse engineering
« Reply #23 on: February 19, 2023, 05:24:38 pm »
AFAIK, the Tek FAS will only see the NI GPIB-PCII/IIA cards. I've never tried anything else to see. I only have an IOtech ISA GPIB card (a Personal488, GP488B version) besides the PCII/IIA one.

If I can get my hands on a CEC488/KPC488.2 card, I can test it, but may be difficult here in Japan.


Also, I added links to some programmers manuals to the first post too, might give us some ideas.

Is there a SDK for these NI cards as well, as for the CEC488/KPC488.2, if so, where ? I'll enjoy having the headers and LIBs.
Hmm, after a few edits to this post, this is as close as I got:

https://knowledge.ni.com/KnowledgeArticleDetails?id=kA00Z0000019QOfSAM&l=en-US

https://www.ni.com/docs/en-US/bundle/ni-488.2-feature/page/programming-with-ni-4882-software.html#

I swear I was able to download drivers before, but not sure on an SDK.

Ah ha!

https://download.ni.com/#support/gpib/doswin3/gpib-pcii.iia/488.2/

Also drivers I am using are attached to this post.
« Last Edit: February 19, 2023, 05:59:45 pm by TERRA Operative »
Where does all this test equipment keep coming from?!?

https://www.youtube.com/NearFarMedia/
 
The following users thanked this post: hua

Offline DC1MC

  • Super Contributor
  • ***
  • Posts: 1882
  • Country: de
Re: Tektronix TDS Scope Field Adjustment Software reverse engineering
« Reply #24 on: February 19, 2023, 06:22:07 pm »
The DOS drivers and SDK for NI cards are here:

http://download.ni.com/#support/gpib/doswin3/

more specifically here:
http://download.ni.com/#support/gpib/doswin3/gpib-pcii.iia/

the FTP server does not allow anonymous login anymore :(

Now let's see what goodies are there  >:D
 
The following users thanked this post: hua


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf