Skip to content

Multi write/read improvement

Roman Mueller requested to merge multi-write-read-impr into main

Another one.. This is work on the multi-byte write and read to be able to configure and read-out the ASICs on the Optoboard faster.

main branch state:

  • only GBCRs and the VTRx+ can be written and read-out with the multi-byte write/read.
  • lpGBT slaves are written with slow write_read()
  • lpgbt*.readAll() takes >230 s for one full read-out

Work:

  • read_multi() method that enables the all I2C devices to be read with mult-byte read -> full read-out of lpGBT slave possible in 33 s
  • write_multi() method to write any I2C device with multi-byte write
  • write() method created to optimise writing consecutive registers with mult_write()
    • write() is able to distinguish between master and slave devices, in principle write() can be used for all write operations
    • read back depends on input bool read_back
  • opto.configure() and <dev>.configure() updated to use write() for any multiple register write
  • deleted write_32bytes(), read_32bytes() and the <dev>.readAll(). The first two are not necessary anymore and <dev>.readAll() was slow, <dev>.read_multi() (without arguments) does the same job.
Edited by Roman Mueller

Merge request reports

Loading