Skip to content
Snippets Groups Projects
  1. Mar 05, 2025
  2. Mar 04, 2025
  3. Feb 10, 2025
    • Marco Filho's avatar
      Reformulate naming convention. Add global configs. · 10df41b2
      Marco Filho authored
      hybrid.sub is created to add hybrid numbers to file, avoiding having to define that in st.cmd file.
      Similar thing is done for VMM chips, since it's always going to be 2 per hybrid.
      
      Add global configuration values. Global PVs should configure all parameters for all VMM FENS.
      Channel global configurations need to connect to asyn port in order to correctly initialize the array record :(
      10df41b2
  4. Jan 28, 2025
    • Marco Filho's avatar
      Remove scan lock from readback parameters · 5fa19367
      Marco Filho authored
      After talking more with the firmware developers, it became clear that we
      can actually read from the registers when VMM is acquiring, we can only
      not Set other parameters.
      
      I still leave this as a commit instead of rebasing/amending to make it
      easily reversible if we need it someday.
      5fa19367
  5. Jan 27, 2025
    • Marco Filho's avatar
      Add processing lock when acquiring · 5dab3e5d
      Marco Filho authored
      Now most pertinent RBV records are not processed when acquisition is
      ongoing.
      A few records like LinkStatus and IsAcquiring are still scanned for
      obvious reasons, but if we find out that this could not be the case, we
      change it.
      
      I still think this should also be treated in the API layer.
      
      ADCVal and AnalogMon should process in the correct order for us to know
      what we are reading.
      
      We use PHAS field to make sure everything is processed after we have
      checked that IsAcquiring is 0.
      5dab3e5d
    • Marco Filho's avatar
      Add scanning. · 8fdce28d
      Marco Filho authored
      Scannig was not added until now because RMMAPI had an issue that made it
      scramble answers from the hardware if too much polling was made. This
      issue was fixed so we add scan now.
      
      In the channels array records, this called for a new record creation.
      This is because we need the asyn:READBACK info tag, which makes the
      readback from hardware and the setpoint record have the same values. So
      I guarantee that the record ending with R is the actual scanned
      parameter. I also removed the forward link from S to RB record to
      guarantee that the latest value we have in $(CH)-S record is still the
      setpoint.
      
      AnalogMon and ADCVal-R have PHAS 0 and 1 respectively to guarantee that
      we know what is the meaning of what we are reading.
      8fdce28d
  6. Jan 08, 2025
  7. Jan 07, 2025
  8. Jan 03, 2025
    • Marco Filho's avatar
      MAJOR REFACTOR · 9fcb1f57
      Marco Filho authored
      This commit was done with an inescrupulous "git add ." after several
      radical modifications.
      
      Anyway, the API was radically modified and basically the old way the
      code worked does not make any sense anymore.
      
      The desired architecture is the following: the API is going to be used
      as a class component. Each parameter will be created according to the
      desired number of enabled hybrids.
      
      Each parameter should use one simple API function. No information about
      the VMM or hybrids itself is stored in the VMMTbl class unless extremely
      needed.
      
      This commit leaves a few old parameters that should be removed in the
      future such as ADC_VALUE_VMM1, READ_ADC_VMMS, etc. This is only to serve
      as a reminder to add those later.
      9fcb1f57
  9. Mar 26, 2024
  10. Mar 22, 2024
  11. Mar 12, 2024
Loading