Commit Graph

3516 Commits

Author SHA1 Message Date
maliakal_d 680fd93d3e fixed error messages
Build on RHEL9 docker image / build (push) Successful in 3m41s
Build on RHEL8 docker image / build (push) Successful in 5m6s
Run Simulator Tests on local RHEL9 / build (push) Successful in 14m41s
Run Simulator Tests on local RHEL8 / build (push) Successful in 17m7s
2026-03-26 14:58:26 +01:00
maliakal_d 99b885fa14 minor
Build on RHEL9 docker image / build (push) Successful in 3m56s
Build on RHEL8 docker image / build (push) Successful in 5m15s
Run Simulator Tests on local RHEL9 / build (push) Successful in 14m40s
Run Simulator Tests on local RHEL8 / build (push) Successful in 17m6s
2026-03-26 11:29:00 +01:00
maliakal_d d39708b45b minor 2026-03-26 11:24:32 +01:00
maliakal_d 99a1c96e66 removed unnecessary test code
Build on RHEL9 docker image / build (push) Successful in 3m30s
Build on RHEL8 docker image / build (push) Successful in 4m49s
Run Simulator Tests on local RHEL9 / build (push) Successful in 14m43s
Run Simulator Tests on local RHEL8 / build (push) Successful in 17m11s
2026-03-25 11:21:20 +01:00
maliakal_d fda27d05f3 python: moved powerlist to Ctb
Build on RHEL9 docker image / build (push) Successful in 3m32s
Build on RHEL8 docker image / build (push) Successful in 4m45s
2026-03-23 16:32:31 +01:00
maliakal_d e557096047 wip
Build on RHEL9 docker image / build (push) Successful in 3m34s
Build on RHEL8 docker image / build (push) Successful in 5m3s
2026-03-23 12:36:09 +01:00
maliakal_d a5612f1161 fixes for python api
Build on RHEL9 docker image / build (push) Successful in 3m59s
Build on RHEL8 docker image / build (push) Successful in 5m13s
2026-03-23 12:09:09 +01:00
maliakal_d c891b906d4 fixed tests
Build on RHEL9 docker image / build (push) Successful in 4m1s
Build on RHEL8 docker image / build (push) Successful in 5m10s
2026-03-20 15:52:01 +01:00
maliakal_d ff0b3e1274 wip
Build on RHEL9 docker image / build (push) Successful in 3m31s
Build on RHEL8 docker image / build (push) Successful in 4m47s
2026-03-19 17:28:29 +01:00
maliakal_d 01d90b8ba2 fix getdacindex and getdacname for normal detectors to throw if random index that doesnt fit to the detector
Build on RHEL9 docker image / build (push) Successful in 3m32s
Build on RHEL8 docker image / build (push) Successful in 4m48s
2026-03-19 17:08:25 +01:00
maliakal_d a32498ffb9 wip
Build on RHEL9 docker image / build (push) Successful in 3m34s
Build on RHEL8 docker image / build (push) Successful in 4m49s
2026-03-19 15:43:14 +01:00
maliakal_d 1a99c21485 wip
Build on RHEL9 docker image / build (push) Failing after 29s
Build on RHEL8 docker image / build (push) Failing after 33s
2026-03-18 16:13:10 +01:00
maliakal_d 8afeb92a32 wip 2026-03-18 16:07:21 +01:00
maliakal_d 567dc8af71 wip
Build on RHEL9 docker image / build (push) Failing after 30s
Build on RHEL8 docker image / build (push) Failing after 33s
2026-03-18 10:09:33 +01:00
maliakal_d 3feed07d95 wip
Build on RHEL9 docker image / build (push) Failing after 28s
Build on RHEL8 docker image / build (push) Failing after 33s
2026-03-17 17:26:57 +01:00
maliakal_d 16f8925ffa wip
Build on RHEL9 docker image / build (push) Failing after 29s
Build on RHEL8 docker image / build (push) Failing after 35s
2026-03-17 16:03:45 +01:00
maliakal_d 7621d964cd configtransceiver is removed
Build on RHEL9 docker image / build (push) Failing after 28s
Build on RHEL8 docker image / build (push) Failing after 53s
2026-03-13 16:59:28 +01:00
maliakal_d bf25493de3 power all returns all 2026-03-13 16:51:41 +01:00
maliakal_d a537de69c3 fixed powerchip for ctb
Build on RHEL9 docker image / build (push) Failing after 29s
Build on RHEL8 docker image / build (push) Failing after 33s
2026-03-13 16:18:11 +01:00
maliakal_d afb808aef8 wip
Build on RHEL9 docker image / build (push) Failing after 28s
Build on RHEL8 docker image / build (push) Failing after 34s
2026-03-13 11:35:21 +01:00
maliakal_d 297e23d1d2 Merge branch 'developer' into dev/xilinx_power_cmd
Build on RHEL9 docker image / build (push) Failing after 29s
Build on RHEL8 docker image / build (push) Failing after 34s
2026-03-11 15:39:58 +01:00
maliakal_d 03df08cb8c python cmds still left. wip 2026-03-11 15:38:02 +01:00
maliakal_d 8bed67b8c8 added vchip check
Build on RHEL9 docker image / build (push) Failing after 30s
Build on RHEL8 docker image / build (push) Failing after 56s
2026-03-11 11:33:17 +01:00
maliakal_d 7b305a1faf fixed some tests
Build on RHEL9 docker image / build (push) Failing after 30s
Build on RHEL8 docker image / build (push) Failing after 34s
2026-03-09 18:01:19 +01:00
maliakal_d 4875597533 wip: ctb power works, tests left
Build on RHEL9 docker image / build (push) Failing after 1m12s
Build on RHEL8 docker image / build (push) Failing after 1m22s
2026-03-09 15:54:18 +01:00
maliakal_d c2e8d5954d wip: power in client, tests, and fixed server interfaces and ctb implementation, not tested
Build on RHEL9 docker image / build (push) Failing after 30s
Build on RHEL8 docker image / build (push) Failing after 35s
2026-03-06 14:23:34 +01:00
maliakal_d 6982b8cfa4 rm unnecessary hidden test tags (#1415)
Build and Deploy on local RHEL9 / build (push) Successful in 2m3s
Build on RHEL9 docker image / build (push) Successful in 3m53s
Build on RHEL8 docker image / build (push) Successful in 4m49s
Build and Deploy on local RHEL8 / build (push) Successful in 4m59s
Run Simulator Tests on local RHEL9 / build (push) Successful in 14m39s
Run Simulator Tests on local RHEL8 / build (push) Successful in 17m2s
* removed hidden tags other than .detectorintegration and .disable_check_data_file

* updated label, minor
2026-03-05 17:11:56 +01:00
maliakal_d 4723eb2ff4 dacs with power dac names should work and do not take in dac units to avoid ambiguity, test with 0 value for power dacs should fail, to do: implement power commands
Build on RHEL9 docker image / build (push) Successful in 3m56s
Build on RHEL8 docker image / build (push) Successful in 4m47s
2026-03-05 17:09:00 +01:00
maliakal_d b2cd043358 Merge branch 'developer' into dev/xilinx_power_cmd
Run Simulator Tests on local RHEL9 / build (push) Failing after 3m45s
Build on RHEL8 docker image / build (push) Successful in 4m58s
Build on RHEL9 docker image / build (push) Successful in 5m0s
Run Simulator Tests on local RHEL8 / build (push) Failing after 5m24s
2026-03-05 12:34:49 +01:00
maliakal_d 384b2480ab Dev/fix no rx roi port (#1372)
Build on RHEL8 docker image / build (push) Successful in 4m58s
Build on RHEL9 docker image / build (push) Successful in 5m1s
Run Simulator Tests on local RHEL9 / build (push) Successful in 14m40s
Build and Deploy on local RHEL9 / build (push) Successful in 2m3s
Run Simulator Tests on local RHEL8 / build (push) Successful in 17m2s
Build and Deploy on local RHEL8 / build (push) Successful in 4m59s
* rx_roi fixed when there is no roi for a particular port. Fixed tests for it

* removing todo check if files created because its not enough to count matching pattern file names, but also look at timestamp and create files with timestamp else you read older ones. For now, checking individual rois is enough

* restore md5

---------

Co-authored-by: Erik Fröjdh <erik.frojdh@gmail.com>
2026-03-05 12:28:57 +01:00
Erik Fröjdh 9f72688b9c Adding offset to RegisterAddress (#1413)
Build and Deploy on local RHEL9 / build (push) Successful in 2m3s
Build on RHEL9 docker image / build (push) Successful in 3m58s
Build and Deploy on local RHEL8 / build (push) Successful in 5m0s
Build on RHEL8 docker image / build (push) Successful in 5m7s
Run Simulator Tests on local RHEL9 / build (push) Successful in 14m40s
Run Simulator Tests on local RHEL8 / build (push) Successful in 17m4s
* implemented + and += for RegisterAddres and tests plus test cleanup
2026-03-05 09:32:21 +01:00
maliakal_d 89fc3eac45 v_abcd commands should be removed to prevent unintentional usage and throw with a suggestion command for dac and power
Build on RHEL9 / build (push) Successful in 3m29s
Run Simulator Tests on local RHEL9 / build (push) Failing after 3m42s
Build on RHEL8 / build (push) Successful in 5m10s
Run Simulator Tests on local RHEL8 / build (push) Failing after 5m19s
2026-02-26 14:59:26 +01:00
maliakal_d a1c5bf971f ctb: vchip doesnt validate with vlimit anymore (#1404)
Build on RHEL9 / build (push) Successful in 4m9s
Build on RHEL8 / build (push) Successful in 5m5s
Run Simulator Tests on local RHEL9 / build (push) Successful in 14m41s
Build on local RHEL9 / build (push) Successful in 1m25s
Run Simulator Tests on local RHEL8 / build (push) Successful in 17m2s
Build on local RHEL8 / build (push) Successful in 3m34s
2026-02-26 14:22:46 +01:00
maliakal_d 42da2e04b7 wip 2026-02-26 10:22:40 +01:00
maliakal_d ec787ca931 not allowing power names for dac names to prevent duplicate names 2026-02-24 10:58:46 +01:00
maliakal_d 8f07d2a464 Dev/xilinx set dac rewrite (#1389)
Build on RHEL9 / build (push) Successful in 3m46s
Run Simulator Tests on local RHEL9 / build (push) Failing after 3m51s
Build on RHEL8 / build (push) Successful in 5m15s
Run Simulator Tests on local RHEL8 / build (push) Failing after 5m31s
Build on local RHEL8 / build (push) Failing after 3m31s
Build on local RHEL9 / build (push) Failing after 1m25s
* wip

* wip

* wip. xilinx left

* wip. xilinx

* wip

* wip. compiles

* fixed eiger test

* more fixes

* fixed virtual m3

* fix typos and bugs

* setting power to 0

* set power fixed

* updated server binaries

* minor

* refactoring

* get vchip refactoring

* eiger: unnecessary check for setsettings undefined

* retval pointer for printout

* eiger.wip, mV in boolean

* wip. gotthard2 and m3

* wip. jungfrau

* moench.wip

* compiles.wip

* fix eiger

* m3 fix vthresh

* fix ctband xilinx

* default pwr index = pwr_io

* minor:fn name and highvoltage to local var

* refactor funcs

* minor

* minor

* check dac voltage only for normal dacs and not for power dacs as the dac voltage range is different for ctb and xilinx ctb, also throw for -1 in set for set_dac in client itself. in the server its not clear if its set or get with a -1

* minor

* updated versioning

* review changes: removing validateDACValue and other minor stuff

* binaries in

* wip

* refactored m3 vth

* minor review

* minor review

* m3 serverdac index fix

* minor
2026-02-23 14:23:13 +01:00
maliakal_d 1c44a66964 formatted 2026-02-10 16:10:51 +01:00
Erik Fröjdh 3f4df445f1 send back the result of the SPI write (#1387)
Build on RHEL9 / build (push) Successful in 3m21s
Build on RHEL8 / build (push) Successful in 4m47s
Run Simulator Tests on local RHEL9 / build (push) Successful in 14m39s
Build on local RHEL9 / build (push) Successful in 1m25s
Run Simulator Tests on local RHEL8 / build (push) Successful in 16m57s
Build on local RHEL8 / build (push) Successful in 3m32s
2026-02-09 13:50:35 +01:00
Erik Fröjdh 0992c7ae4c Read and write SPI for Xilinx CTB (#1381)
Build on RHEL9 / build (push) Successful in 3m25s
Build on RHEL8 / build (push) Successful in 4m37s
Run Simulator Tests on local RHEL9 / build (push) Successful in 14m42s
Build on local RHEL9 / build (push) Successful in 1m26s
Run Simulator Tests on local RHEL8 / build (push) Successful in 17m0s
Build on local RHEL8 / build (push) Successful in 3m32s
-readSpi and writeSpi in C++ and Python API
2026-02-05 17:20:47 +01:00
mazzol_a 28b2aa9673 Dev/add simulator tests in GitHub workflows (#1337)
Build on RHEL9 / build (push) Successful in 3m50s
Build on RHEL8 / build (push) Successful in 4m46s
Run Simulator Tests on local RHEL9 / build (push) Successful in 14m37s
Build on local RHEL9 / build (push) Successful in 1m26s
Run Simulator Tests on local RHEL8 / build (push) Successful in 16m57s
Build on local RHEL8 / build (push) Successful in 3m33s
* added simulator tests in github workflows

* indentation error

* typo

* debug

* Logging for debugging

* added more debug lines

* more debugging

* debug

* debug

* debug

* dont throw if process does not exist

* debug

* added absolute path to sls_detector commands

* some refactoring in test scripts

* added absolute path to all slsdet command

* typo

* ../tests/scripts/test_frame_synchronizer.py

* raise exception upon failure for github workflows

* removed hidden tags

* some refactoring in test scripts

* some refactoring

* fixed CMakeLists

* fixed unsuccesful merge

* updated python tests using simulators

* debug import error

* debug module import

* python -m runs module pytest as script - everything in path available

* removed integartion tests

* enable file write not to log files

* run tests without log files

* increased sleep time for udp packets

* added logg level variable to cmake

* added testing policies to documenattion

* disabled check for num_frames for jungfrau & xilinx

* set log level as cmake cached variable

* disable tests for jungfrau and xilinx_ctb

* check frames for HDF5

* updated Documentation of Testing

* changed withdetectorsimulators to detectorintegration

* replaced [.cmdcall] with [.detectorintegration]

* check_file_size only disabled for jungfrau - disable for all roi tests

* changed time to wait after receive to 5 ms

* take into account half modules of eiger

* num udp interfaces needs to be consistent across modules

* suppressed warning enclosing if

* config added 2 udp ports per default for moench and jungfrau

* write detector output to console

* allow jungfrau to tests num frames, remove unused variable (numinterfaces), add comment for future to handle traceback to know which calling function threw the files unmatched, added documentation for tests (examples for .detectoritnegration and how to disable marked tests, removed addditional argumetns to disable for test_simulator as one can just use ~, removed the check that checks for jungfrau checking number of frames at master attributes and at rx test, removed unused advanced_test_settings in test_simulator script, the num_mods check for multiple modules is removed and default num  modules set to 1 for test_simulator (to be increased later), back to raising exception for killprocess

* removed integration tests from cmakelists.txt and cmk.sh, modified the tests workflow command to reflect the disable argument and removed xilinx_ctb from test (fix fromdeveloper merge to be done)

* filtering by actual name for disable certain tests on github workflow

* minor refactor

* wip

* wip

* changes to run on local rh9 runner instead of github workfloa

* modified yml to remove some leftover from github workflow

* test

* fix build_dir in scripts (github workflow) and pytest dir in gitea workflow

* making the local machine use python3.13 binary

* pythonpath added

* changes for build_Dir back

* allowing ctb api tests

* allowed ctb api tests and set up slsdetname envt variable for shared memory being reserved just for these tests

* added rh8 workflow for local runner on gitea

* remnants from rh9 local runner

* remnants from rh9 local runner

* conda env for all shell for local runner

* allowing hdf5 to build on local runner

* run all tests for both the runners

* refactored fixtures a bit and merged some tests that use one session for entire server

* test fail

* test fix

* adding github workflow to test without data file checks and without logs

* documentation changes

* unnecessary import in conftest

* allowing the session_simulator to test for multiple modules and interfaces etc

* allow test_simulator script to run for 2 modules for all modules except ctb and xilinx ctb

* run upon push

* removing the disable file check on github workflow

* minor adjustment

* testing without synch

* reverting to previous

* with log file

* without the space

* summary from file and more error extracts from file to terminal

* minor

* trying nlf for more details

* updated with no log file to print everything to screen  also for det and rxr

* trying a no throw

* stoi was more about indent in yaml

* tries

* wip

* debug

* number of frames inconsistent fix=>just take first one, only test xilinx

* jungfrau tests without frames caught check

* extend the disable file check to everywhere that creates files

* specify path for test_simulator

* withoutprinting ==

* wip

* back with printing===, but not parsing file for errors anymore

* lang?

* wip

* safe log?

* wip2

* wip

* dont split error as its streaming live, just raise

* with log files

* lang?

* last resort

* wip

* test no det with general tests

* show tests live

* also include hidden integration tests

* without extra summary?

* revert

* last resort again

* tsquash on int64_t?

* tsquash on int64_t? mroe print

* writing to /tmp?

* all tests

* might be the fix?

* write to file

* fixed a few quiet mode no log file tests

* work on any branch for github tests, work on also release candidates for gitea tests

* added frame synchronizer tests to github workflow

* moved tests to run_tests.yaml from cmake.yaml

* documentation

* disabled general tests

---------

Co-authored-by: Dhanya Thattil <dhanya.thattil@psi.ch>
2026-02-03 11:45:12 +01:00
maliakal_d 5811e4e9ab added tests to ensure startup val is not -1 or -100 after powerchip in config for xilinx 2026-01-28 15:30:42 +01:00
maliakal_d 3deb528087 xilinx tsamples test fixed for a value that a receiver can stomach for memory allocation (#1374) 2026-01-28 13:42:54 +01:00
maliakal_d 8769f1e70a xilinx tsamples upper limit increased (#1365)
Build on local RHEL9 / build (push) Successful in 1m25s
Build on local RHEL8 / build (push) Successful in 3m33s
Build on RHEL8 / build (push) Failing after 10m55s
Build on RHEL9 / build (push) Successful in 3m39s
2026-01-21 16:13:22 +01:00
maliakal_d 045d9440de Dev/include file (#1306)
Build on local RHEL9 / build (push) Successful in 1m25s
Build on local RHEL8 / build (push) Successful in 3m32s
Build on RHEL9 / build (push) Successful in 4m17s
Build on RHEL8 / build (push) Successful in 4m35s
* create a include command calling the same function as parameters (cmd generation and autocompletion), testing parameters and include

* added include in command line and python and its supposed to do the same as parameters command. both are tested

* added colorama

* moved test_free and test_command python tests to tests/scripts folder from python/tests due to CI issues with dependencies

* generated commands

* formatting

---------

Co-authored-by: Erik Fröjdh <erik.frojdh@gmail.com>
2026-01-07 10:45:26 +01:00
maliakal_d 3dd07bf2be Dev/define cmd (#1312)
Build on local RHEL9 / build (push) Successful in 1m25s
Build on RHEL9 / build (push) Successful in 3m15s
Build on local RHEL8 / build (push) Successful in 3m31s
Build on RHEL8 / build (push) Successful in 4m44s
* basic ctb config api for register and bit names

* tests for define and definelist pass. yet to implement using them for reg, setbit, clearbit and getbit

* improved autocomplete for getbit,setbit, clearbit

* validate autocomplete

* definelist has no put

* updating help

* converting char array+int in runtimeerror compiles but throws at runtime.Fixed.Tested for it. Also check if string or int before using getregisterdefinitonbyvalue to see if it threw to call the other function. because both of it can throw and we should differentiate the issues for both

* removed std::vector<std::pair<string,int> to std::map<string, int> for defiitions list

* Dev/define cmd tie bit to reg (#1328)

* strong type

* moved everythign to bit_utils class

* pybindings

* added tests for python

* removed duplicates

* removed bit names in reg

* changed BitPosition to BitAddress

* Using define reg/bit from python (#1344)

* define_bit, define_addr in python. 
* setBit/clearBit takes int or addr

* added example using bits

* split define into 2 commands define_reg and define_bit, definelist into 2: definelist_reg and definelist_bit

* allow string for register and bit names in c++ api

* refactor from github comments

* naming refactoring (getRegisterDefnition to retunr name and address specifically

* added marker for 8 cmd tests connected to define, changed macro to static constexpr

* changed bitPosition from int to uint32_t

* got rid of setbitposition and setaddress, instead overloaded constructor to take in strings so that the conversion from string to bit address members, takes place within the class for easy maintainance in case type changes

* Removing implicit conversions:
RegisterAddresss and RegisterValue: Removed the implicit conversions.
RegisterAddress: Changed member name from address_ to value_ and method as well to value().
RegisterValue: Also added | operator to be able to concatenate with uint32_t. Same in python bindings (but could not find the tests to modify

* Allowed concatenation with other RegisterValue, made them all constexpr

* fix a ctbConfig test

* Maponstack works with integration tests, but need unit tests

* tests on mapstack

* fixed ctb tests and FixedString being initialized with gibberish

* removing parsing from string inside the class RegisterAddress, BitAddress and RegisterValue

* updated python bindings

* fixed bit utils test

* renaming getRegisterDefintiionAddress/Name=>getRegisterAddress/Name and similary for getBitDefinitionAddress/Name

* updated python bindings

* fix tests (format)

* a few python tests added and python bindings corrected

* replaceing str with __str__ for bit.cpp

* repr reimplemented for bit.cpp

* removed make with registerAddress etc

* starting server for tests per session and nor module

* killprocess throws if no process found-> github runs fails, changed to pkill and not throw

* clean shm shouldnt raise, in ci binary not found

* ignoring these tests for CI, which fail on CI because simulators are not generated in CI. This is in another PR, where it should work

---------

Co-authored-by: Erik Fröjdh <erik.frojdh@gmail.com>
Co-authored-by: froejdh_e <erik.frojdh@psi.ch>
2026-01-05 15:10:46 +01:00
Erik Fröjdh 1c31a85a43 added function to remove duplicates, preserve order of dbit 2025-12-03 12:14:35 +01:00
Erik Fröjdh d3dc92b18b Using find_package(Threads REQUIRED) instead of linking pthread directly (#1324)
Build on RHEL9 / build (push) Successful in 4m30s
Build on RHEL8 / build (push) Successful in 4m42s
* Linking to Threads::Threads instead of pthread directly 
* moved rt linking to slsSupportObject and only enable for linux
2025-10-27 16:30:40 +01:00
Erik Fröjdh 1d66f1d26d Experimental support for using the client on macOS (Darwin) (#1321)
Build on RHEL9 / build (push) Failing after 32s
Build on RHEL8 / build (push) Failing after 4m40s
* shorter SHM names on macOS
* fix segfault on macOS when string is empty
* apple version of read exe path
* ifdef for linux specific API
* fixed test for shm and udp socket
* updated release notes
2025-10-22 15:19:36 +02:00
maliakal_d 5041fd7fef Dev/xilinx set power (#1316)
Build on RHEL9 / build (push) Failing after 3m5s
Build on RHEL8 / build (push) Failing after 5m10s
* ctb updates not in release notes

* xilinx power similar to ctb,except no vchip
2025-10-16 13:57:11 +02:00
Martin Mueller 2d8f93a426 ctb: add patternstart command, xilinx: fix frequency (#1307)
Build on RHEL9 / build (push) Failing after 3m9s
Build on RHEL8 / build (push) Failing after 5m11s
* add patternstart command for CTB, block end of execution udp packets if pattern was started by patternstart command

* update docs

* Dhanya's comments

* more Dhanya comments

* refactored

* fixed tests for startpatttern, also clkfrequency not properly used in server

* xilinx: fixed setfrequency, tick clock (with sync clock), clkfrequency set from getfrequency to get the exact value

* xilinx freq in kHz, updated default values and prints

---------

Co-authored-by: Martin Mueller <martin.mueller@psi.ch>
Co-authored-by: Dhanya Thattil <dhanya.thattil@psi.ch>
2025-09-23 12:13:46 +02:00