Latest Version (off main branch):
Branch | Build | Docker Deployment | Activity |
---|---|---|---|
main | |||
dev |
cacao is a computation engine for adaptive optics control.
Compute Performance: Uses multi-core CPUs and GPGPUs for high computing throughput. Written in C, optimized for performance. Holds images in RAM, with image stream support (shared memory with low-latency IPC support). cacao uses milk.
User input: Executable launches a command line interface (CLI) from which functions are accessible. Type "help" in the CLI to get started.
Modular, easy to add functions, loaded at runtime as shared objects.
Topic | Chat room | Documentation |
---|---|---|
How to use cacao ? | Community | Online documentation |
Configuring computer system | Hardware / OS setup | RTC setup |
Software development | Developers | coding standards and Online documentation |
Report bugs and issues on this page and discuss them on the Developers chat.
Install pre-requisite packages as needed. Check the Dockerfile for list.
cacao is a plugin of milk.
To install :
git clone https://github.com/milk-org/milk.git
cd milk
./fetch_cacao_dev.sh
mkdir _build
cd _build
cmake ..
make
sudo make install
Alternatively, the ./compile.sh script for can be run to install. Check compilation options with compile.sh -h option.
See cacao's wiki for detailed instructions to install, configure and use cacao.
All functions are accessible from the command line interface (CLI). Enter the CLI and type "help" for instructions.
cacao
To set up a cacao AO loop, use the cacao-loop-deploy script. Consult help with :
cacao-loop-deploy -h
Both cacao and milk use a common shared memory data stream format. See ImageStreamIO module for details.
Additional software is required to view real-time data streams. Several options exist:
- shmimviewGTK, a lightweight efficient GTK-based viewer.
- milk2ds9 uses ds9 to view data streams (convenient for ds9 users)
- rtimv, a qt-based image viewer, higher performance than ds9 option
- shmimviewqt, another qt-based option (less polished than rtimv)
- xaosim's shmview image viewer, using python qt interface
Python users can read/write milk/cacao's data streams using additional packages:
- pyMilk provides an interface to data streams.
- xaosim includes a python interface to data streams.. and much more Both stream interfaces above are cross-compatible.