PUPPI backend

The PUPPI backend can be used from CIMA for pulsar observations. However, it has few limitations and its own quirks, so please read the following FAQ carefully before starting any observation.

Command File Observing Examples

Setting PUPPI Scales

PUPPI scale value needs to be configured depending on the number of channels, Bandwidth (receiver), Sampling time etc. and might be different for your particular setup from the default values. I have implemented the scales values shown in table below while configuring PUPPI. The scale is changed when you click "Accept/Apply" button on the PUPPI backend window and/or load a configuration file. For other cases, the default values is set. If you are using one of the settings below, you no longer need to use increase/decrease scales commands anymore.

If your experiment uses different setup, then you can check your scale settings by following these steps. You can then use the following commands to set the scales. Please do email me, so I can provide that information to other users.

Recommended Values For Coherent modes
Bandwidth [MHz] Channels Scale_P(01) [hex] Comments
800 512 '00800000' default
100 64 '00400000' for low freq receivers

Recommended Values For Incoherent modes
Bandwidth [MHz] Channels Sampling Time (us) Scale_P(IQUV) [hex] Comments
800 FAST4K 66.56 '01000000' default
800 2048 64 '10000000' none
800 1024 64 '01000000' default
800 512 64 '04000000' none
100 FAST4K 81.92 '01000000' default


08 May 2014:Minor change to Stop command

When a STOP command was being processed in PUPPI server script, it would stop both the GPU's and puppimaster. Now it is modified such that for incoherent mode, only the puppimaster is stopped, while for coherent modes, only the gpu's are stopped.

25 Apr 2014: Changes to Center Frequency

It is now possible to use 2800 MHz Center Frequency with CIMA-PUPPI. To do this we recommend you to use one of the pre-set configuration file for IF/LO configuration and use '3100 MHz' for the CIMA Center Frequency in IF/LO menu. When you configure PUPPI backend, you should notice 'freq' : '2800' being sent to PUPPI.

Only limited set of IF/LO settings are supported for PUPPI and it is recommended to use one of the pre-existing conf file. If any other settings (than these config files) is used, then a warning message is shown.

The observing frequency (OBSFREQ in guppi_status window) sent over to PUPPI is computed assuming settings similar to one of these config files is being used. In that case for 327 and 430 receiver, the puppi obsfreq is same as cima center frequency. For sbw and lbw, puppi obsfreq is 300MHz + cima center frequency

09 Apr 2014: Total intensity removed from Coherent Fold mode

PUPPI does not support Total Intensity option under Coherent Fold/Cal modes. This has been removed from CIMA. Full Stoke option should be used instead.

09 Apr 2014: Added 5 sec wait after Cal observations

5 seconds of wait has been added after Cal observations to ensure that it is properly completed before other mode of observation are started. The starting time wait has also been increased from 7 second to 10 second to ensure all parameters are properly updated before it starts recording data. More log messages has been added for debugging purposes. This is to ensure that puppi starts and stops smoothly.

30 Mar 2014: Fixed Coherent Search mode

An update has been made to the server scripts in Puppimaster to fix coherent search mode, by adding the dstime paramater. Also the warning of parfile mismatched has been removed for coherent_search mode.

19 Dec 2013: Showing current telescope position

An update has been made to the server scripts in Puppimaster. Now the current telescope position RA, DEC, RA_STR, Dec_STR, AZ and ZA are being updated every second. You should observe this in the guppi status window. The CIMA version number is still the same, as no changes was made there.

11 Nov 2013: Minor Bug in Offline mode

Fixed a minor bug in CIMA offline mode.

01 Nov 2013: Adjustment in Power level

Due to RFI, the automated adjustment script didnot work for S-band receiver, and also caused CIMA to crash. Now CIMA shows aborts with error in case it cannot fix power levels automatically. On PUPPI side, PUPPI makes three attempt to adjust power to within 2.0 DB for SBW and 1.0 DB for other receivers. Then it makes two more attempts by adding 0.5 DB each time. The CIMA Log has been modified to inform users of the power adjustment accuracy. In case of RFI, PUPPI might not be able to automatically adjust power, in which case, CIMA will abort, and you would have to manually adjust power and continue with the observation.

14 Sep 2013: Bug Fix with Bin Check

A bug in CIMA has been fixed so that the maximum allowed Fold Bin is checked only for Incoherent/Coherent Fold modes.

12 Sep 2013: Change Dumptime and Bins

The number of bins (both for Cal and Fold Scan): It is now possible to change dumptime and bin from command file observing for Fold and Cal Scans using following command: 'Type' can be either 'CAL' or 'FOLD', dumptime is integer value that denotes the dump seconds, and bins should follow restrictions described above. It is not possible to set dumptime or bins individually, you would have to provide both inputs. This command should only be used after loading configuration file and/or configuring PUPPI, but before starting an observation. This command can be checked in offline CIMA prior to observation.

02 Sep 2013: ON/OFF Source Calibration

To run a ON/OFF Source Calibration scan, the ponoffcal mode is suitable, but it has not been properly integrated into PUPPI. A simple fix has been made for basic usability of this command from command file observing.

28 Aug 2013: Stop Command

A recursive calling of STOP command in some cases of Abort has been resolved. Also, now its only called once, before starting a observation to ensure that its properly stopped.

28 Aug 2013: Change Default Scales

The default scale settings for some specific cases has been changed following recommendation from Paul and Scott. See the tables above for the changes made.

27 Aug 2013: Set Scales

The change_puppi_scales (see Update 20 Aug 2013) has been modified to be able to set a specific value of scales in 32 bit hex. The two other option (increase and decrease) are still available. See above for both recommended values and method to find scale for your particular setup.

22 Aug 2013: Changes to Server code

The PUPPI server code has been significantly improved to fix some of the recent bugs: (i) getting traceback error during winkcal and normal observation and (ii) PUPPI not stopping during Abort.

22 Aug 2013: Check Parfile with Source

For Coherent mode, the numeric part of the source is compared with the numeric part of the parfile. If there is no match, a warning message is shown in the CIMA log messages.

21 Aug 2013: Stop Command

After every scan, CIMA sends 'STOP' command to stop the PUPPI, even though it should automatically stop after the scanlen time (but just to be sure).

20 Aug 2013: Update on Pop-Up Wait Window

The Pop-Up Wait window syntax (see Update of 16 Jul 2013) has been modified. A time and message input has been added as follows:
"seconds" is the number of seconds the Pop-Up window will be open. If the "Continue" button in the Pop-Up Window is not clicked by this time, then CIMA will ABORT with Error message. The content of the "message" is displayed on the Pop-Up window. If the observer is not the same person as the one who wrote the command file, then you can write message as such to guide the observer: In case of Error, you can start executing the command file from the same point.

20 Aug 2013: Change (Increase/Decrease) Scales

It is now possible to change scales of PUPPI using following in command-file observing: "type" can only be "increase" or "decrease", depending on if you want to increase or decrease the scales. The "value" is an integer number by which factor the initial scales value will be increased or decreased. This command is identical to increase_scales(5) in puppimaster (used by some users using L-band wide in Incoherent mode).

CAUTION: If you run this command twice, then the scales will be increased by a factor of value^2. Also, anytime you load a configuration file and/or click "Accept/Apply" in the PUPPI backend window, the FPGA parameters are reset to its original values.

UPDATE See Update of this command on 27 Aug 2013.

16 Aug 2013: Disable Partial Bandwidth for Coherent Modes

The option to use only partial channels for 327 MHz and 430 MHz receivers, by using the Bandwidth use menu in the PUPPI configuration window, has been disabled for Coherent Modes. This option is only to be used for Incoherent Observing modes.

15 Aug 2013: Adjust Power Wait Time

The Adjust Power wait time between the first attempt and second attempt has been increased to 5 seconds (was 2 sec). This increase was made so that IF2 power would be properly set before sending the second power adjust command to PUPPI.

14 Aug 2013: Default value of tfold and bin

The default value for Fold/Cal Dumptime is changed to 10s and Bin of 2048. This setting is used in puppi_observe routine.

01 Aug 2013: Adjust Power

CIMA can now adjust PUPPI power (levels) automatically (using Glenn Jones code). You can do so by clicking "Adjust ALL" or "Adjust backend" button from "Power Control" menu. The former adjusts "IF1" and "IF2" power levels before adjusting PUPPI power levels. You can also use "ADJUSTPOWER" in command file observing which is same as "Adjust ALL". PUPPI needs to be configured before adjusting power.

How does this work in detail? CIMA first sends PUPPI a command to adjust power. PUPPI tries 3 times to adjust the levels within 2.0 db of guppi_adc_hist recommendation for SBW receiver and within 1.0 db for all other receivers. On the fourth and fifth attempt, it will try to adjust the levels within by adding 0.5 db to this difference. If the levels cannot converge (due to RFI or other issues), an error message is send back to CIMA and the observation is aborted. If CIMA manages to adjust power automatically it means that the adjustment has been done within 2.0 db (max=3.0 db) for SBW and within 2.0 db (max=2.0 db) for all other receivers.

If the required PUPPI attenuation is out of the range (0 - 15.5 db), then PUPPI will send this information back to CIMA. The IF2 power levels are then readjusted, and then second and final adjust power command is send to PUPPI. CIMA waits for 5 second before sending the second attempt to make sure that the IF2 levels are set properly . If the power adjust fails the second time, then the observation is aborted.

The power adjustment can take about 3 - 30 seconds. During my tests with (L-band wide, 430, 327, S band), the power was adjusted in less than 15 seconds. Please keep an open eye for RFI, which can cause the automated power adjustment to fail.

For command file observing, use SEEK 'source_name' rather than GOTO 'source_name' (as I had previously mentioned on this page). The GOTO command will not ensure that the the telescope is on source when you are adjusting power. But SEEK command will ensure that the telescope is on source. You can use the following example:

16 July 2013: Pop Up wait window

By using the following command in command file observing, you can generate a pop up wait window. This wait window waits indefinitely, so please be careful while using it. The message shown is 'Please adjust powers in PUPPI manually and then press continue'. This function will probably be removed once an automated adjusting power levels will be implemented. This update is no longer valid as this function has been modified. See 20 Aug 2013: Update on Pop-Up Wait Window

16 July 2013: Ignore less than 5 seconds

CIMA ignores less than 5 seconds of integration time. This allows to use less than 5 seconds in Integration Field in Pulsar Observing menu, and to only take Cal scans.

16 July 2013: Pop Up wait window

By using the following command in command file observing, you can generate a pop up wait window. This wait window waits indefinitely, so please be careful while using it. The message shown is 'Please adjust powers in PUPPI manually and then press continue'. This function will probably be removed once an automated adjusting power levels will be implemented.

16 July 2013: Cal Mode Updates

COHERENT_CAL and CAL modes has removed from the 'Backend control' menu modes. You can use Cal modes using settings from 'Pulsar Observing' menu.

Details of the modification:

08 July 2013: CIMA-PUPPI

The PUPPI test version of CIMA has been released.

Please note that this is a test version:

Frequently Asked Questions (FAQ)

Which version of CIMA supports PUPPI?

Who should use PUPPI version of CIMA?

Where can I find information about PUPPI command line interface?

Which observing modes are supported by CIMA?

Which observing modes are has been tested?

How can I adjust power in PUPPI?

UPDATE: CIMA can now adjust PUPPI power automatically. See update for 01 Aug 2013 above

Which receivers are allowed with this version of CIMA-PUPPI?

How is the Center Frequency for puppimaster set?

I want to use select usable bandwidth for 327 and 430 receivers?

What are differences compared to other versions of CIMA?

Can I save/load PUPPI configuration details?

Can I use command file observing within CIMA ?

Nanograv: I want to change parfile in command file observing?

How to do Coherent Cal/ Incoherent Cal scans ?

Anonymous Pulsarist: I want to take only Cal Scan?

How to check for scales value in PUPPI?

How to change scales value in PUPPI?

Type can be either 'increase', 'decrease' or 'set'. For type 'increase' and 'decrease', the value is the factor (float) by which amount you want to change the scales. Running this command twice would cause the scale value to be changed twice. For type 'set, the value is 32 bit hex number to which the scale value is to be set. We recommend using 'set' rather than increase/decrease, as running the command twice for 'set' would not be a problem.

Where should Parfile be located?

I get a message 'parfile not found'?

How is the 'Adjusted' sampling time computed for Incoherent Search / Fast4K modes?

Where can I check parameter settings during observation?

How do I know that it is recording data?

How is my file name set?

How is the scannumber set?

I have selected a source but it is not shown in gpu_status window?

How long it takes to configure PUPPI from CIMA?

Why are there more warning messages in CIMA Log?

I don't know what is wrong with this, and its not working?

Anything to remember while switching from CIMA to PUPPI command file observing?

How do I get 'help' for specific field?

Where can I find additional information about PUPPI?

When will other features be added?

How tested is this version of CIMA?

Where do I contact for help?

You can return to the main CIMA page by clicking here.

This page is administered by Prakash Atreya ( patreya (a) naic . edu ) and was last updated on 02 Aug 2013.