Presentation #108.32 in the session “Missions and Instruments (Poster)”.
BurstCube is a 6U CubeSat designed to detect GRBs to enable multi-messenger science. The BurstCube instrument flight software (iFSW) is responsible for receiving and processing instrument related telecommands, configuring the detector electronics, receiving detector data from an FPGA, and producing housekeeping and science telemetry. Additionally the iFSW monitors the detector data for statistically significant rate increases that likely indicate gamma-ray transients. When a transient is detected, the iFSW “triggers” and produces real-time Alert Trigger Data to report a spectral time history of the transient.
The BurstCube datatypes are designed to accomplish the science goals of BurstCube within the available telemetry volume. The real-time Alert Trigger Data provides information for quick-look analysis, including classification and localization. The non-alert science datatypes are delivered at higher latency: Triggered Time-Tagged Event (T3E) data, Requested Time-Tagged Event (RTTE) data, and Continuous Binned Data (CBD). TTE data provides time and energy for each photon at high resolution: 10 microseconds and 1024 energy channels. TTE is produced continuously but is downlinked automatically only for triggers: T3E. TTE data for other times during the most recent ~48 hours can be requested by telecommand: RTTE. RTTE requests are expected for GRBs or GW events that are not detected on-board by the BurstCube iFSW. Continuous Binned Data provide full coverage of all BurstCube observations with 16 energy channel and nominally 1/4 s resolution.
The BurstCube FSW runs as a single application with multiple threads (tasks), using NASA’s Core Flight System (cFS), a Linux OS and an ARM processor. cFS provides many services that previously had to be custom programmed for every instrument. The iFSW has a Main Task to receive and process telecommands, including configuring the detector. A CBD task reads the CBD data and produces CBD telemetry. TTE is handled by three tasks: one to read the TTE data, another to store it, and a third to retrieve the data to produce telemetry. A triggering task monitors detector rates to detect rate increases, producing Alert Trigger Data when a significant rate increase is detected.