This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
phase1:phase1:pos [2016/08/26 12:04] – created ngadiuba | phase1:phase1:pos [2016/09/14 11:25] (current) – ngadiuba | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | fwajkl | + | ====== How to run tests with Pixel Online Software ====== |
+ | |||
+ | ===== How to start POS ===== | ||
+ | |||
+ | * if you run from remote follow first [[phase1: | ||
+ | * start xdaq applications: | ||
+ | |||
+ | cd ~/ | ||
+ | source setenv.sh | ||
+ | cd pixel/ | ||
+ | killall xdaq.exe | ||
+ | ./ | ||
+ | |||
+ | * open the browser and go to the PixelSupervisor web interface (if you run from remote you'll have to launch firefox remotely), the click on " | ||
+ | |||
+ | http:// | ||
+ | |||
+ | * set a configuration for a quick check that modules, FED and POHs are working: | ||
+ | |||
+ | cd ~/ | ||
+ | cp calib_simple.dat calib.dat | ||
+ | |||
+ | * run a TBMDelay calibration clicking on the corresponding button in the PixelSupervisor menu, then click on " | ||
+ | |||
+ | * if everything worked you will see an output similar to this: | ||
+ | |||
+ | Contents of FIFO 1 for channel 32 (status = 11) | ||
+ | |||
+ | Decoded channel: 32 | ||
+ | Found TBM header: 1 | ||
+ | Found TBM trailer: 1 | ||
+ | Event number: 10 | ||
+ | ROCs enabled: 0 | ||
+ | TBM trailer errors: 0 | ||
+ | Found ROCs without hits: 4 | ||
+ | - ROC #1 - last dac : 8 | ||
+ | - ROC #2 - last dac : 8 | ||
+ | - ROC #3 - last dac : 8 | ||
+ | - ROC #4 - last dac : 8 | ||
+ | Found ROCs with hits: 4 | ||
+ | Total number of hits found: 4 | ||
+ | - Channel #32 ROC #1 dcol 5 pxl 140 col 10 row 10 pulse height 252 | ||
+ | - Channel #32 ROC #2 dcol 5 pxl 140 col 10 row 10 pulse height 207 | ||
+ | - Channel #32 ROC #3 dcol 5 pxl 140 col 10 row 10 pulse height 255 | ||
+ | - Channel #32 ROC #4 dcol 5 pxl 140 col 10 row 10 pulse height 243 | ||
+ | |||
+ | * if you don't get a meaningfull output try first to click on " | ||
+ | * every time you want to restart from scratch (for instance after compiling) remember first to kill all xdaq applications (killall xdaq.exe) | ||
+ | * to compile just type | ||
+ | |||
+ | cd ~/ | ||
+ | make Set=pixel | ||
+ | |||
+ | * **remember to power off once you are done!** | ||
+ | |||
+ | ===== How to develop calibration code ===== | ||
+ | |||
+ | 1) add the new calibration to the file **PixelCalibrations/ | ||
+ | |||
+ | #include " | ||
+ | #include " | ||
+ | |||
+ | PixelCalibrationBase* PixelCalibrationFactory:: | ||
+ | |||
+ | ...... | ||
+ | |||
+ | if (calibName==" | ||
+ | return new PixelMyCalibration(*pixSupConfPtr, | ||
+ | } | ||
+ | |||
+ | ...... | ||
+ | |||
+ | } | ||
+ | |||
+ | |||
+ | PixelFEDCalibrationBase* PixelCalibrationFactory:: | ||
+ | |||
+ | ...... | ||
+ | |||
+ | if (calibName==" | ||
+ | return new PixelFEDMyCalibration(*pixFEDSupConfPtr, | ||
+ | } | ||
+ | |||
+ | ...... | ||
+ | |||
+ | } | ||
+ | |||
+ | 2) create your calibration classes: PixelMyCalibration and PixelFEDMyCalibration (follow for instance PixelTBMDelayCalibration and PixelFEDTBMDelayCalibration classes) | ||
+ | |||
+ | 3) add the new calibration to the file **config/ | ||
+ | |||
+ | ... | ||
+ | Gain99By3 | ||
+ | GainBy3 | ||
+ | Iana 21 ; | ||
+ | ROCDelay | ||
+ | ReadbackCalibration 23 ; | ||
+ | Vdig 24 ; | ||
+ | MyCalibration 25 ; | ||
+ | |||
+ | 4) add the calibration key to the file **config/ | ||
+ | |||
+ | ... | ||
+ | key 25 | ||
+ | detconfig | ||
+ | nametranslation | ||
+ | fedconfig | ||
+ | fecconfig | ||
+ | fedcard | ||
+ | dac 0 | ||
+ | maxvsf | ||
+ | mask 0 | ||
+ | trim 0 | ||
+ | calib 25 | ||
+ | tbm 0 | ||
+ | portcard | ||
+ | portcardmap | ||
+ | ttcciconfig | ||
+ | ltcconfig | ||
+ | tkfecconfig | ||
+ | lowvoltagemap | ||
+ | |||
+ | 5) edit the calib.dat file with the input parameters of the new calibration (ex: what to scan, scan range, etc..). For the example above the file should stay under **config/ | ||
+ | |||
+ | |||
+ | |||
+ | ===== Calibration sequence ===== | ||
+ | |||
+ | * The calibration sequence is described in [[https:// | ||
+ | |||
+ | * The calibrations parameters can be found in the corresponding calib.dat file in the config/ | ||
+ | |||
+ | * A detector configuration for switch 0 and switch 1 of the fitel receiver to use for testing calibrations can be found in [[https:// |