Releases: LDMX-Software/pflib
v3.0.0-rc0 : first release candidate with ZCU
After building pflib on the ZCU, you run it with the -z
flag. For example
./build/pftool -z
The software is under active development, but as of February 5, 2025, the software and firmware are capable of basic single-sample pedestal runs. The software is not updated yet for the new HGCROCv3b register map (WIP #87), so some temporary hacks (see below) may be needed for the most basic tests. Several of the pftool commands do NOT work right now, even if they appear in the menus. Your mileage may vary, but help is very appreciated with the development and discussion on Slack would be useful.
- To align the links, which seems pretty reliable at the moment, use
ELINKS -> AUTO
from pftool. - The HGCROCs need to be in run mode before taking data. This will soon be automatic, but as of Feb 6, you need to go into
ROC->RUNMODE
to do this. - The PEDESTAL data taking works from the DAQ menu, but the charge injection is not configured
- As of Feb 6, there is no multi-trigger readout. That is a somewhat more-complex thing to implement and will take a few weeks I expect.
Note
The HGCROCV3 data format is different than the previous HGCROCv2 and it includes an “ADC(-1)” reading – that means that for every channel you also get the ADC of the previous bunch crossing, which is already quite helpful.
Secondly, the charge injection pulse shape is pretty stable, so it should be possible to still scan the shape by taking events with varying time between the charge injection and the L1A.
Full Changelog: v2.0.6...v3.0.0-rc0
v2.7 : auto-load menu and patches
What's Changed
- Auto load menu by @tomeichlersmith in #76
- Iss79 bias for active boards by @EinarElen in #80
- change language to reflect that links are smallest packet by @tomeichlersmith in #84
- Iss82 charge read by @EinarElen in #83
Full Changelog: v2.6.1...v2.7.0
v2.6 : Post-TestBeam
Lots of developments occurred during the hectic Test Beam period. This release packages up many of them before transitioning to longer-term developments with an eye toward v3.
What's Changed
- Iss61, pedestal alignment, elink alignment by @EinarElen in #69
- tot tune by @jmuse13 in #71
- SuperPacket enhancements for v2 of daq format by @jmmans and @tomeichlersmith in #72
- Iss67 by @EinarElen in #73
Full Changelog: v2.5.0...v2.6.0
v2.5 : virtual WBI destructur
While tab completion in poke param and v0 board configs are not huge enhancements, the addition of a virtual desctructor for the abstract base class WishboneInterface is necessary in order to allow tb-online to close the polarfire connection allowing users to put the run control in the "uninitialized" state and connect via pftool.
What's Changed
- tab completion in poke param by @tomeichlersmith in #65
- Config v0 by @EinarElen in #66
- add virtual WBI destructor by @tomeichlersmith in f154bdd
Full Changelog: v2.4.1...v2.5.0
v2.4.1 : Update ELINKS ALIGN and Separate pftool Code
What's Changed
- add systemd service files and nodes in readme by @tomeichlersmith in #58
- Add ELINKS->ALIGN to align elinks based on BX headers and idles by @Skelpdar in #62
- Iss56 - Split PFtool into multiple TUs by @EinarElen in #60
Full Changelog: v2.4.0...v2.4.1
v2.4 : Alleviate FIFO backpressure
What's Changed
- functionality to specify which roc to send RESYNCLOAD/RSTB by @jmuse13 in #53
- software support for fifo backpressure by @jmmans in #55
Full Changelog: v2.3.1...v2.4.0
v2.3.1 : More support for elink alignment checks
- allow user to choose which (or all) rocs to resync load or soft reset by @tomeichlersmith and @Skelpdar in 055d136
- run a simple pedestal run and tally good/bad headers and idles by @tomeichlersmith in fe39f59
Full Changelog: v2.3.0...v2.3.1
v2.3 : Expand elink_relink to more delay values
The main motivation for this release is to expand the elink_relink functionality to allow the user to define the minimum and maximum delay value to use. @jmuse13 and I found this helpful at UMN to choose a delay outside of the hard-coded 20-25 window that was in previous releases. Along with that there were a few patch releases focused on improvements to pfdecoder, namely the addition of another flag -l
which prints out counts on if the BX header and idle pattern match the expected format or not (helps for checking if link is aligned during a pedestal run).
Full Changelog: v2.2.0...v2.3.0
v2.2 : Configure multiple polarfires
What's Changed
- single file to configure across the entire detector by @tomeichlersmith in #51
- specify board-specific configs in pftoolrc by @Skelpdar in #47
- add fpga ID to output file name to avoid competition by @tomeichlersmith in d15f85e
Full Changelog: v2.1.0...v2.2.0