We use the C programming language and GTK lib to make a suite of Linux Applications to run on HomeScope’s Raspberry Pi computer. These Apps control HomeScope diverse capabilities such as video, image capture, focusing (robotic Z axis) , and scanning (roboticX Y axes) as well as other features like machine vision and learning.
HomeScope_core is in charge of focusing, and lighting as well as image/video capture. This app should also connect to the one describe below and acts as hub for the three.
HomeScope_stage is in charge of scanning with CNC and G-code capabilities. On top of scanning, the stage should get commands from core and oracle in order to track a given pattern of activity within the culture.
HomeScope_oracle is responsible of reading time-lapse data to use machine vision and learning to transform HomeScope into a biotic game console capable of playing My Swarm by issuing game character commands to My Swarm.
All three apps should establish a connection with HomeScope_core app which acts as coordinator. HomeScope_oracle is who design a play policy based on machine learned descriptions of the spatial ecology of HomeScope’s biological culture. Based on this biological engine, HomeScope sends a game_character::character_command to an instance of My Swarm representing game elements in a virtual ecological arena. It is this “Diminished Reality” (DR) where the biological engine picks objects from the biological culture and renders them as game elements and actions in a virtual arena only existing within My Swarm.