The Compute and Control for Adaptive Optics (CACAO) is a free and open-source real-time library for adaptive optics (AO), initially developed for the operation of the 1200+ mode AO loop of Subaru/SCExAO. The scope has expanded since then, through refactorings, the addition of numerous features (predictive control, machine learning), and a substantial improvement of our understanding and configuration of the underlying real-time Linux distribution. We now witness the adoption of the package at multiple facilities, using a variety of cameras and WFSs: non-linear curvature, Shack-Hartmann, Photonic lanterns, and of course the pyWFS. At Subaru, CACAO is the core of the AO3K RTC, which supports legacy NGS and LGS mode, as well as the new high-order wavefront sensors coupled to an ALPAO 3224 deformable mirror. We present developments in algorithms -- bindings for machine learning algorithms, real-time configuration tools -- and user interface tools added in the past few years. We show performance benchmarks on the SCExAO and AO3K systems. We present our future plans to affirm CACAO as the go-to free, open-source RTC toolkit for real-time pipelines in the academic world.
|