Commit Graph

297 Commits

Author SHA1 Message Date
65b8c9c5c1 Moench rw3 (#745)
* moench, removed chip version, filter resistor, filter cells, currentsoures, gain mode, setttings(modes), dbitphase, maxdbitphase, autocompdisable, comparatordisabletime, made acq start and stop a pulse, removed unused registers

* added parallel command

* remove gain plot for moench

* moench: updated adc invert val

* moench: update adcoffset to 0xf and adcphase to 140 degrees

* removed sync clock in moench

* updated min fw version

* removing config file in moench server
2023-05-25 11:00:23 +02:00
0a7fd0a51a set bit and clear bit only verifies that bit (#746) 2023-05-25 10:35:17 +02:00
afee45790f 1. allow 1gbe non blocking acquire by creating another thread (#753)
* allow 1gbe non blocking acquire by creating another thread

* removed unnnecessary print out in ctb
2023-05-24 13:39:40 +02:00
cab2b335dc Fix ctb slow adc fw (#713)
Firmware updated. spi moved to firmware. In Software, configuring, then a pulse to start, wait for done bit and convert the values read from a regiter.
2023-04-12 11:25:41 +02:00
d23722a4b7 Eiger: add hardware version (#688)
* eiger: hardwareversion, fix firmware version unable to read version scenarios, check to see if febl, febr and beb have same fw version

* feb versions can be picked up only after feb initialization
2023-03-16 11:59:06 +01:00
48a684b95f dev:Eiger febl febr (#601)
* eiger: get febl and febr versions in versions command, also added in python
2023-02-24 10:06:11 +01:00
276dc52196 dev:removed storage cells for moench (#603)
* removed storage cells for moench
* rxr: also setting moench like jungfrau in implementation of ports
2023-02-24 10:00:31 +01:00
39b1f5bbf2 Moench rewrite (#597)
* copied jungfrau server to moench and adapted

* fixed image size and num packets

* read n rows allows 16

* commneted out configure_asic_timer at server startup. To be removed later the ASIC_CTRL_REG and storage cell options

* moench:removing the decrement (which was in jf)  in read n rows to register

* removed lblsamples from gui
2022-12-15 09:16:51 +01:00
2ff5291f48 hardware version (#580)
* hardware version for all dets except eiger
Co-authored-by: Erik Frojdh <erik.frojdh@gmail.com>
2022-11-24 11:24:05 +01:00
911b2f678f jungfrau module id (#581)
* connected module id to detid_jungfrau.txt
* fixed module id register in jungfrau
2022-11-23 12:01:22 +01:00
74a2f07c7d merge from develpoer, locking complete set of start acq steps and stop steps in eiger server as it shouldnt be interrutped, moved prepare into startstatemachine (#577) 2022-11-17 14:58:53 +01:00
05f657c106 Versioning (#568)
- removed getClientServerAPIVersion in server (not used)
- removed rxr side (clientversion compatibility check), removed enum as well as it is now done on the client side.
- versionAPI.h
   - GITBRANCH changed to RELEASE
   - dates for all API changed to "sem_version date". Scripts to compile servers modified for this. Empty "branch" name will end up with developer for sem_version.

- Version class with constructor taking in the long version (APILIB date). Other member functions including concise(to get sem_version for new releases and date for old releases), 
  
- bypassing initial tests, also now bypasses the client-rxr compatibility check (at rx_hostname command)

- previously, compatibility between client-det was ensuring both had the same detector API (eg. same APIJUNGFRAU)
   - Now, compatibility only checks APILIB (client side) and detector API(eg. APIJUNGFRAU) (detector side) have same major version. It only does backward compatibility test. Rest is upto user to ensure. 
   - If server is from an older release, it will compare dates like previous implementation (APIJUNGFRAU from both client and det)
 
- - previously, compatibility between client-rxr was ensuring both had the same APIRECEIVER
   - Now, compatibility only checks APILIB (client side) and APIRECEIVER (rxr side) have same major version. It only does backward compatibility test. Rest is upto user to ensure. 
   - If rxr is from an older release, it will compare dates like previous implementation (APIRECEIVER from both client and rxr)

- removed APIGUI, evalVersionVariables.sh, genVersionHeader.sh (not needed or not used)

- clientVersion, rxrversion and detectorserverversion all return strings and not integers (in hex) anymore. Depending if it has semantic versioning, it will print that or the date if it is too old.

- fixed in python (strings for versions)
- check_version function in detector server changed to "initial checks" as it only checks server-firmware compatibility and initial server checks. Client compatibilities are moved to client side.
- --version gives sem_version and date? Is date needed as well. The clientversion, detserverversion and rxrversion API gives only sem_version (no date)
- - formatting
2022-11-09 11:13:09 +01:00
e7879ee365 g2 and m3 round robin (#559)
* g2 and m3: round robin
2022-10-18 15:51:23 +02:00
46bb9bc2d7 nios temp (#557)
* fixed temp read nios

* divide for eiger and dont print
2022-10-18 15:47:23 +02:00
bac32dcba9 ctb 1g non blocking acquire (#555)
* allowing ctb and moench 1g to have non blocking acquisition also send data, refactoring wait for acquisition finished for all others
2022-09-16 17:45:51 +02:00
1425382dbb G2clkdiv (#547)
* g2 changing clkdivs 2 3 4 to defaults for burst and cw mode
2022-09-05 17:00:01 +02:00
7de6f157b5 M3badchannels (#526)
* badchannels for m3 and modify for g2 (file from single and multi)

* m3: invert polarity of bit 7 and 11 signals from setmodule, allow commas in bad channel file

* badchannel file can take commas, colons and comments (also taking care of spaces at the end of channel numbers)

* tests 'badchannels' and 'Channel file reading' added, removing duplicates in badchannel list, defining macro for num counters in client side

* fix segfault when list from file is empty, 

* fix tests assertion for ctbconfig (adding message) for c++11

* fixed badchannels in m3server (clocking in trimming) 

* badchannel tests can be run from any folder (finds the file)
2022-09-01 15:30:04 +02:00
4638bf7cf8 Jungfrausync (#519)
* jungfrau sync
2022-08-23 10:29:16 +02:00
67eea7ac36 Patdefault (#524)
* m3, ctb, moench set wait and loop addresses to 0x1fff

* update default pattern file for moench
2022-08-23 07:59:39 +02:00
809b0bdeb8 Jungfraumaster (#518)
* set jungfrau master only from client
* added tests, fixed a bug in ctb and moench (infinite recursion) that will never happen atm
2022-08-16 09:51:18 +02:00
01696ca89b Jungfrautrigger (#516)
* jungfrau trigger added
* added blocking trigger
2022-08-16 09:41:47 +02:00
1bc4994be6 G2parallel (#514)
* g2: non parallel added
2022-08-16 09:35:39 +02:00
22b9562629 G2hdi (#510)
* g2: new hdi values, write hdi value to reg, set slave/master to reg, able to set master from server config file, server command line and client

* print versions for virtual as well
2022-08-16 09:31:13 +02:00
6bf9dbf6d3 Format (#506)
Formatted package
2022-08-05 15:39:34 +02:00
1fb90ab98c M3threshold (#475)
* vicin default changed to 800, only setting vthx directly allows to set dac even if counter disabled, else disable counter, setallthresholdenergy if an energy is -1, get module value, fix that reg was repaced by isettings

* vth3 disabled for interpolation enable, interpolation disable sets counter mask to what it was before (updating old mask whn setting counter mask except for setting all counters for interpolation enable) and enabling vth3 if counter was enabled

* refactor and test for previous commit

* pump probe only has vth2 enabled, handles both pump probe mode and interpolation mode as well

* wip

* refactored pump probe and interpolation and added to setmodule

* check dacs and trimbits out of range for setmodule (not just threshold)

* binaries in

* m3: pump probe and interpolation mutually exclusive

* minor
2022-06-07 16:55:33 +02:00
25b5b02302 m3 and g2: change in system clock (clkdiv2) should also change the time settings(exptime, period, gate delay etc.), g2: sys freq same irrespective of external or internal timing source (#470) 2022-06-02 11:02:10 +02:00
365ac835eb Get trimbits (#462)
* added the possibility to save settings file for m3 and eiger

* added save trimbits to gui

* update release notes

* python wip

* moved location of trimbits save option in gui

* python works

* updating getModule with all its parameters in the server side

* updating binaries
2022-05-24 11:08:08 +02:00
73a45e1b5c nCe made high before programming blackfin to ensure seamless programming (#460) 2022-05-18 12:17:44 +02:00
52882cba20 M3: polarity, interpolation, pump probe (#421)
* wip, adding m3 functions: polarity, inerpolation, pumpprobe

* added interpol, polarity, pump probe, analog pulsing, digital pulsing

* tests

* binaries in

* update release

* added python polarity enum

* fixed python and minor readability in mythen3.c

* binarie sin

* added all the m3 funcs also in list.c and enablingall counters for enabling interpolation

* binarie sin
2022-04-08 15:18:01 +02:00
150d27cf95 removed copydetectorserver 2022-04-05 14:11:04 +02:00
9d2d8fe1d7 resolve for doubel slashes, wip 2022-04-04 11:17:41 +02:00
8b1851e652 wip, copy server delete old name 2022-04-01 17:52:27 +02:00
1e564a1b33 binaries in. fixed 2022-03-24 12:33:19 +01:00
0f4bcf3a9d test if special file when updating kernel(solution: reboot only), --force-delete-normal-file used to force delete bfin fpga drive if normal file and create proper device tree 2022-03-22 16:44:12 +01:00
39d3ee2b15 merge fix 2022-03-17 08:41:49 +01:00
34588356e8 added top 2022-02-28 17:05:24 +01:00
261ac78743 wip 2022-02-28 14:49:02 +01:00
5566cfd24f configuing master from command lineg 2022-02-25 16:03:11 +01:00
219318a52e wip, removed extra virutal server binaries for eiger, --ignore-config for command line 2022-02-23 17:31:46 +01:00
2b2533f465 allowing setmaster for eiger 2022-02-22 15:23:04 +01:00
0fb6c8b823 updating dr 12 in server, changing signature to get fail for getdynamicrange 2022-02-18 10:32:07 +01:00
8995d3db8d setting next frame number also for udp 1g itnerface 2022-01-28 11:44:12 +01:00
5a69c60205 added nextframenumber for moench, ctb (also for virtual servers) 2022-01-28 11:32:27 +01:00
1e309b67ef server side done 2022-01-06 09:20:29 +01:00
e9caa53af0 minor text fix + macro define in the right place 2021-11-24 11:32:19 +01:00
f39f93b2c8 adding the check for copydetector server and updatemode (also for any kind of updatedetectorserver, programfpga and updatekernel) 2021-11-23 16:25:28 +01:00
ed2e6e4e28 print error 2021-11-23 15:45:01 +01:00
a101e18d60 fix to ensure updatekernel does not work with Amd blackfin flash and a kernel older than the current one 2021-11-23 15:23:16 +01:00
904af4de06 fix to allowing update mode functions in update mode and removing exception about set_position for hostname in update mode 2021-11-16 09:55:29 +01:00
eb69d7cb69 update mode added. need to fix why udpatemode get and set not in allowed functions 2021-11-12 17:18:26 +01:00