Moench dacs defaults (#788)

* merge fix from 7.0.2: new jungfrau fw versions, incremented binary, hdf5 and json versions

* moench: changed dac names and default values to old moench values

* moench: remove interface clk polarity at start up

* moench: default speed is half speed, default values for adc offset and adc phase for different speeds (only half speed confirmed), adc vref voltage to 2.0 like G1

* moench: connected adc pipeline to client

* moench: receiver- default frames per file is 100k and discard partial frames as default

* moench binary in

* using tostring in gui for dacs

* moved frame discard policy as a parameter to be configured with a default depending on detector

* moench: 300 degrees for adc phase in full speed
This commit is contained in:
2023-07-31 14:02:30 +02:00
committed by GitHub
parent 565858b6c6
commit 1873cc9310
29 changed files with 260 additions and 502 deletions

View File

@ -65,6 +65,8 @@ class GeneralData {
slsDetectorDefs::ROI detectorRoi{};
uint32_t counterMask{0};
uint32_t transceiverMask{0};
slsDetectorDefs::frameDiscardPolicy frameDiscardMode{
slsDetectorDefs::NO_DISCARD};
GeneralData(){};
virtual ~GeneralData(){};
@ -384,6 +386,7 @@ class MoenchData : public GeneralData {
fifoDepth = 1000;
standardheader = true;
maxRowsPerReadout = 400;
frameDiscardMode = slsDetectorDefs::DISCARD_PARTIAL_FRAMES;
UpdateImageSize();
};

View File

@ -186,7 +186,6 @@ void Implementation::SetupListener(int i) {
listener[i]->SetActivate(activated);
listener[i]->SetNoRoi(portRois[i].noRoi());
listener[i]->SetDetectorDatastream(detectorDataStream[i]);
listener[i]->SetFrameDiscardPolicy(frameDiscardMode);
listener[i]->SetSilentMode(silentMode);
}
@ -327,14 +326,13 @@ void Implementation::setFifoDepth(const uint32_t i) {
slsDetectorDefs::frameDiscardPolicy
Implementation::getFrameDiscardPolicy() const {
return frameDiscardMode;
return generalData->frameDiscardMode;
}
void Implementation::setFrameDiscardPolicy(const frameDiscardPolicy i) {
frameDiscardMode = i;
for (const auto &it : listener)
it->SetFrameDiscardPolicy(frameDiscardMode);
LOG(logINFO) << "Frame Discard Policy: " << ToString(frameDiscardMode);
generalData->frameDiscardMode = i;
LOG(logINFO) << "Frame Discard Policy: "
<< ToString(generalData->frameDiscardMode);
}
bool Implementation::getFramePaddingEnable() const { return framePadding; }
@ -931,7 +929,7 @@ void Implementation::StartMasterWriter() {
masterAttributes.nPixels =
xy(generalData->nPixelsX, generalData->nPixelsY);
masterAttributes.maxFramesPerFile = generalData->framesPerFile;
masterAttributes.frameDiscardMode = frameDiscardMode;
masterAttributes.frameDiscardMode = generalData->frameDiscardMode;
masterAttributes.framePadding = framePadding;
masterAttributes.scanParams = scanParams;
masterAttributes.totalFrames = numberOfTotalFrames;

View File

@ -312,7 +312,6 @@ class Implementation : private virtual slsDetectorDefs {
int modulePos{0};
std::string detHostname;
bool silentMode{false};
frameDiscardPolicy frameDiscardMode{NO_DISCARD};
bool framePadding{true};
pid_t parentThreadId;
pid_t tcpThreadId;

View File

@ -102,10 +102,6 @@ void Listener::SetNoRoi(bool enable) {
disabledPort = (!activated || !detectorDataStream || noRoi);
}
void Listener::SetFrameDiscardPolicy(frameDiscardPolicy value) {
frameDiscardMode = value;
}
void Listener::SetSilentMode(bool enable) { silentMode = enable; }
void Listener::ResetParametersforNewAcquisition() {
@ -419,7 +415,7 @@ size_t Listener::HandleFuturePacket(bool EOA, uint32_t numpackets,
uint64_t fnum, bool isHeaderEmpty,
size_t imageSize,
sls_receiver_header &dstHeader) {
switch (frameDiscardMode) {
switch (generalData->frameDiscardMode) {
case DISCARD_EMPTY_FRAMES:
if (!numpackets) {
if (!EOA) {

View File

@ -44,7 +44,6 @@ class Listener : private virtual slsDetectorDefs, public ThreadObject {
void SetActivate(bool enable);
void SetDetectorDatastream(bool enable);
void SetNoRoi(bool enable);
void SetFrameDiscardPolicy(frameDiscardPolicy value);
void SetSilentMode(bool enable);
void ResetParametersforNewAcquisition();
@ -115,7 +114,6 @@ class Listener : private virtual slsDetectorDefs, public ThreadObject {
uint32_t udpPortNumber{0};
std::string eth;
frameDiscardPolicy frameDiscardMode;
bool activated{false};
bool detectorDataStream{true};
bool noRoi{false};

View File

@ -26,7 +26,7 @@ namespace sls {
#define SHORT_MAX_FRAMES_PER_FILE 100000
#define EIGER_MAX_FRAMES_PER_FILE 10000
#define JFRAU_MAX_FRAMES_PER_FILE 10000
#define MOENCH_MAX_FRAMES_PER_FILE 10000
#define MOENCH_MAX_FRAMES_PER_FILE 100000
#define CTB_MAX_FRAMES_PER_FILE 20000
#define MYTHEN3_MAX_FRAMES_PER_FILE 10000
#define GOTTHARD2_MAX_FRAMES_PER_FILE 20000