This thread will be about X-Stream cal data and who knows, maybe one day we'll be able to do our own poor-man's calibration of repaired equipment
But not quite yet.
My own experiences upgrading my MB and OS, swapping hard drives for SSDs, and playing with X-Stream have given me some new insights to supplement the information already on the forums and maybe clear up some minor incorrect information. I thought we could concentrate calibration related information here instead of mixing in with one of the repair threads or the MB upgrade thread.
My information comes from the WR6KA and WP7KA series scopes but it should hold up for all X-Stream scopes. So without further ado, I'll begin my brain-dump:
The Story We Know So FarLeCroy partitions the hard drive in two from the factory: The C: partition contains the OS and firmware and the D: partition contains user data including saved waveforms, scrips, masks, setups, and a hidden folder with cal data named Calibration. The idea is that you can always safely reinstall the OS and firmware without risking the loss of your user data and calibration.
Common knowledge is that you need to preserve this cal data when swapping out the disk or reformatting the drive to reinstall the OS, otherwise you get the message "This unit's factory calibration data has been moved or does not exist !!! Please contact LeCroy Customer service for re-calibration. The unit will not meet performance specification."
In my experience once you see this message it will keep coming back even if you have restored the cal data and it is loading properly--more on that in a minute.
How to Backup and Restore Cal DataOn a normal instrument, cal data is in a hidden folder at D:\Calibration. Simply set the Windows folder options to display hidden files and copy/paste it to a flash drive or network share. Restoration works the same.
The other way to backup and restore is through the user inaccessible service menu under Service->Critical Files Backup. This will zip up only the essential files under D:\Calibration and put the archive on a floppy or a thumb drive.
Between the two, I prefer to manually copy/paste the folder since it will retain some files that the critical files backup will ignore.
I Knew That Already, Tell Me Something NewYou don't have to have a second partition for the cal data but your options are limited. By default X-Stream will look for a drive letter named "D:" with a volume name of "USERDATA" and use that for the Maui root path, so all of your user data and cal data will be located there. This could be any partition or disk assigned the letter "D:" with a volume name of "USERDATA".
If a drive D: with volume name of "USERDATA" is not found then the Maui root path falls back to C:\LeCroy\XStream and your calibration data will be expected to be under C:\LeCroy\XStream\Calibration. So you can keep everything on the C: drive if you desire by simply not having a D: drive. Just don't leave a flash drive named "USERDATA" connected when you start X-Stream
Cool, but Why Won't That Prompt Go Away? I Restored and it's Still There!You see this:
Once you answer yes or no to the prompt, a registry key is set that will cause the prompt to either always appear (even if cal data is restored and found) or never appear (even if cal data goes missing again). Kill the prompt by deleting the registry key and then it will be able to return again if there's ever a problem with the calibration files going missing.
The key is a DWORD value under
HKEY_CURRENT_USER\Software\LeCroy\Maui named
ShowCalibrationDataError. If 1 you will always see the prompt, if 0 you will never see the prompt, and
normal operation is for the key to be deleted / not exist.
So I Lost My Original HDD Before I Backed Up, Am I Screwed?Surprisingly, maybe not. The bulk of the critical files are *.btd files which appear to be mirrors/overrides of data stored in EEPROMs on the boards. If the files are missing from disk then they will be re-created from the contents of the EEPROMs. On my WR6050 and WP7300A the re-created files were exactly the same as the original btd files on disk, and the scary message box on boot stayed away after I deleted the registry key that forces it to show on every boot.
If the cal data is in EEPROM then why is it also on disk?I can only speculate but one obvious reason is redundancy since EEPROMs aren't immune to data loss.
According to the Boardtest log, the disk version of the cal data is compared with the EEPROM version on startup and any differences are noted in the log. I don't know which version gets used if there is a discrepancy but my guess is the disk version.
Another way to use two sets of calibration is to store the factory cal in the EEPROM and the field cal on disk. That would allow for a third-party cal with the option to revert to the factory cal. I don't see any evidence that this is the intent for X-Stream, however, and the comparison of the two cals at startup would tend to contradict that use-case. So it appears that the original intent of the disk cals is to mirror the EEPROM cal rather than partially or wholly override it, but I don't know for certain.
Cursory Inspection of the Calibration FilesI'm hoping people with more free time will expand upon this. I've only glanced at the Calibration folder but it is made up of:
- Compensation folder
- Probe compensations?
- Contains c1 through c4 folders for channel 1 through channel 4, each having text files of coefficients
- Contains expertsettings.vbs "ConfigurationVBScript for Channel Compensator"
- *.btd files which mirror EEPROM data on the front end.
- "btd" stands for Board Test Data
- Concatenated list of "structures" that are identified by name and located at fixed offsets
- AAcqBtd*********
- Serial_Number***
- DsoSerialNumber*
- Mst429DelayC****
- NcoPathCorr*****
- VCXOControl*****
- TrigHystLF******
- TrigPathDiff****
- TrigPathDiffExt*
- CalsoftInfo*****
- CalCacheInfo****
- AMadTempBtd*****
- SERIALNUMBER****
- OfstCurvePoints*
- GainCurvePoints*
- ConvCurvePoints*
- DlayCurvePoints*
- OpDlCurvePoints*
- DC_Parms_A_*****
- DC_Parms_B_*****
- DC_Parms_C_*****
- BWDATA1A********
- BWDATA1B********
- BWDATA1C********
- BWDATA1D********
- BWDATA1E********
- BWDATA1F********
- AAcqBTD.btd - Acquisition system cal parameters and DSO (instrument) serial number
- FeBTDC1.btd through FeBTDC4.btd - Front End cal parameters for channel 1 through channel 4
- Had440BTDC1.btd through Had440BTDC4.btd - Hybrid ADC cal parameters for channel 1 through channel 4 (All models use Had440 for the file name even though, for example, WR6K's have HAD639's)
- ScopeInfo.txt - calibration log metadata
- Date of calibration
- Calibration software version
- Instrument model
- Firmware version at time of calibration
- Installed options at time of calibration
- Instrument OS and CPU specs
- Instrument serial number
- Trigger threshold.crv - binary file of some sort, not backed up to EEPROM as far as I know
- CalCache.mdb and/or CalCacheB.mdb
- MS Access database files that cache calibration data for quick recall
- Not part of "Critical Files Backup"
- Password protected, password is LecroyCalibration196
- Somebody explore and figure out how to interpret the data!
Some of the "Structures" (cal parameters) are missing in both the files and EEPROM of both my scopes. I've seen this pointed out by another member of the board and I have to conclude that this is not uncommon and not necessarily an error. The mere absence of some structures does not cause the "factory calibration data missing or moved" prompt and it appears to be a feature of several instruments with clean histories. Perhaps some calibrations are only performed if the instrument is out of spec without it and ignored if it is within spec.
More to come!I will post more detailed information about parsing the BTD files and a strange registry setting used to point the Maui root path (but not cal data path) to a read-only partition.