18 Jan 2024, Stefan Ritt, Forum, mhttpd eqtable 
 | 
I fixed both in the current version, so please give it a try.
 
 
Stefan | 
   
   22 Jan 2024, Stefan Ritt, Bug Report, Warnings about ODB keys that haven't been touched for 10+ years 
 | 
> What's the best way to make these messages go away? 
 
> - Change the logic in db_validate_and_repair_key_wlocked() to not worry if keys are 10+ years old? 
 
> - Write a script to "touch" all the old keys so they've been modified recently?
 | 
   
   28 Jan 2024, Stefan Ritt, Forum, number of entries in a given ODB subdirectory ?  
 | 
I guess you won't change your FPGA configuration just when you start a run, so I don't consider the race
 
condition very crucial (although KO is correct, it it there).
 
 | 
   
   28 Jan 2024, Stefan Ritt, Bug Report, Warnings about ODB keys that haven't been touched for 10+ years 
 | 
> Please run "git blame" to find out who added that check.
 
 
OK ok, was me. But actually 2003. I hope that this being more than 20y ago excuses me not remembering it ;-)
 | 
   
   08 Feb 2024, Stefan Ritt, Forum, number of entries in a given ODB subdirectory ? 
 | 
> Konstantin is right: KEY.num_values is not the same as the number of subkeys (should it be ?)
 
 
For ODB keys of type TID_KEY, the value num_values IS the number of subkeys. The only issue here is 
 | 
   
   13 Feb 2024, Stefan Ritt, Forum, number of entries in a given ODB subdirectory ? 
 | 
> > For ODB keys of type TID_KEY, the value num_values IS the number of subkeys. 
 
> 
 
> this logic makes sense, however it doesn't seem to be consistent with the printout of the test example
 | 
   
   15 Feb 2024, Stefan Ritt, Forum, number of entries in a given ODB subdirectory ? 
 | 
> Hmm... is there any use case where you want to know the number of directory entries, but you will not iterate 
 
> over them later?
 
 | 
   
   27 Feb 2024, Stefan Ritt, Forum, displaying integers in hex format  ? 
 | 
Thanks for reporting that bug. I fixed it and committed the change to the develop branch.
 
 
Stefan | 
   
   15 Apr 2024, Stefan Ritt, Bug Report, open MIDAS RPC ports 
 | 
One thing coming to my mind is the interface binding. If you have a midas host with two networks 
 
("global" and "local"=192.168.x.x), you can tell to which interface a socket should bind. 
 
By default it binds both interfaces, but we could restrict the socket only to bind to the local 
 | 
   
   29 Apr 2024, Stefan Ritt, Forum, Midas Sequencer with less than 1 second wait 
 | 
I guess the simplest way to do that without breaking with existing code is to change the 
 
second number to a float. So a
 
 | 
   
   30 Apr 2024, Stefan Ritt, Forum, Midas Sequencer with less than 1 second wait 
 | 
> This would work fine in principle, but isn't implemented in the current MIDAS sequencer as we understand it.  (We tried!) Is your proposal to rewrite 
the sequencer 
 
> to allow fractional waits?  Right now the code seems to store the start_time as a DWORD and uses atoi to parse the wait time, and uses ss_time (which | 
   
   30 Apr 2024, Stefan Ritt, Forum, Midas Sequencer with less than 1 second wait 
 | 
While I will do it, i'm not sure if this is what you want. If I understand correctly, some process gets triggered and then writes some values to the ODB, 
then the sequencer 
 
should continue. Putting a wait there is dangerous. Maybe your process always takes like 10-20 ms, so you put a wait of let's say 100ms, and things are | 
   
   02 May 2024, Stefan Ritt, Forum, Midas Sequencer with less than 1 second wait 
 | 
Ok, I implemented the float second wait function. Internally it works in ms, so the maximum resolution is 0.001 s.
 
 
Best,
 | 
   
   03 May 2024, Stefan Ritt, Bug Report, Params not initialized when starting sequencer      
 | 
Ok, here is the complete code to reproduce the problem. Load parameter_test.msl which includes functions.msl. From the screenshot you see the variables 
containing 
 
garbage, and you also see that from the ODB screenshot. For completeness, I added Sequencer.json which contains the whole sequencer tree.
 | 
   
   03 May 2024, Stefan Ritt, Suggestion, Possible addition to IF Statements   
 | 
The tinyexpr library I use to evaluate expressions does not support boolean operations. I would have to switch to the newer 
 
tineyexpr-plusplus version, which also has much richer functionality:
 
 | 
   
   03 May 2024, Stefan Ritt, Bug Report, Params not initialized when starting sequencer 
 | 
Ahh, that rings a bell:
 
 
1) JS opens start dialog box
 | 
   
   03 May 2024, Stefan Ritt, Bug Report, Params not initialized when starting sequencer  
 | 
Seems to me like the problem happens less frequently, but I still see it (1 out of 5 or so). The fact that /Sequencer/Params/Value is empty tells me that 
the GUI 
 
has the problem and not the sequencer side.
 | 
   
   06 May 2024, Stefan Ritt, Forum, Midas Sequencer with less than 1 second wait 
 | 
Indeed there was a sleep(100ms) in the sequencer in each loop. I reduced it now to 10ms. I need at least 10ms since otherwise 
 
the sequencer would run in an infinite loop during the wait and burn 100% CPU. The smallest time slice on Linux to sleep is 
 
10ms, so that's why I set it to that. Give it a try.
 | 
   
   06 May 2024, Stefan Ritt, Forum, Midas Sequencer with less than 1 second wait 
 | 
Actually I realized that a 1ms wait still works, so I reduced it to that.
 
 
Stefan | 
   
   17 May 2024, Stefan Ritt, Bug Report, midas alarm borked condition evaluation 
 | 
This is a common problem I also encountered in the past. You get a low-level ODB access error (could also be a read of a non-existing key) and you 
 
have no idea where this comes from. Could be the alarm system, a mhttpd web page, even some user code in a front-end over which the midas library 
 
has no control.
 |