This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| phase1:phase1:pos [2016/08/26 12:17] – ngadiuba | phase1:phase1:pos [2016/09/14 11:25] (current) – ngadiuba | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| - | * If you run remotely follow first [[phase1: | + | ====== 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:// | ||