Space Research

From eLinux.org
Jump to: navigation, search

Here is information about Linux in Space, that is being collected by Tim Bird.

Most of this material will be eventually migrated to the Linux4Space wiki

Here is information about Open Source Software, and Linux in Space:

Contents

List of things to Research

  • Asteria details
  • LightSail details
  • Marco details
  • PhoneSat details
  • Ectobius

Are they Linux?

Related pages:

Documented missions with Linux in Space

Cubesats

For general details about cubesats, including specification, programs and launch costs, see: CubeSats

TacSat-1 (2004)

  • TacSat-1 (2004 never launched), PowerPC x3, Linux 2.4

QuakeSat (2003)

MCubed-2 (2013)

  • MCubed-2 (2013) Stamp9G20 microcontoller, Linux ???

PhoneSat (2013)

  • PhoneSat (2013, ...) NASA, Google phones with Android 2.2
    • RESEARCH - what were the results? How did the COTS components do?

Perseus-M (2014)

  • By Aquila Space (which became Astro Digital)
    • https://web.archive.org/web/20160327122744/http://mstl.atl.calpoly.edu/~bklofas/Presentations/DevelopersWorkshop2015/Bertino_Perseus-M_Corvus-BC.pdf
    • used Linux and Python
    • Spacecraft tumbling causes voltage sag during charge
    • Notes:
      • Amperage readings in general have proven to have substantial errors. Don’t count on current monitors for critical tasks.
      • Ability to test and develop software on-orbit was extremely useful
      • Short development cycles can be extended past the launch date, and performance improvements can be made
        • Downside: extends the time to full operational status
      • Perseus-M “BenchSat” has proven extremely valuable for vetting code prior to upload
      • Linux, TCP/IP, Python, C, have all proven useful and allow for relatively rapid software development

Corvus-BC (2016?)

Asteria cubesat (2017-2019)

 The ASTERIA flight computer runs the Linux operating
 system and the flight software incorporates an ability to
 issue low-level commands directly to the shell. This
 flexibility has brought several key benefits during
 mission operations including an ability to diagnose
 anomalies via command line queries (e.g. ls and grep)
 and use compression (gzip) to increase effective
 downlink data volume. The shell interface is also used
 to send low-level payload commands to mitigate an issue
 that occasionally precludes imager initialization.

Mission questions (for Asteria)

Here are questions about mission operations, hardware, power, software stack, etc.

Here are some questions about this mission:

  • recovery method for resets
  • OBC specs: processor(s), RAM, flash, storage
  • busses
  • linux version, from where obtained
    • customizations
    • kernel config
    • drivers you wrote
    • device tree you used
  • fault tolerance method
    • multiple boot chains, multiple processors
    • did mission succeed or fail
    • how long to provision?
      • how long to detumble?
  • launch date
  • deorbit date
  • power budget: battery size, solar panel max size, OBC power usage
  • build system used (buildroot, yocto project, other, homebrew scripts?)
  • standards adhered to (ESA?, NASA?)
  • user space stack elements: busybox?, f-Prime?, CFS?, libraries

Some of these are to answer the following questions:

  • which COTS hardware does the best and worst in space?
    • how many resets in LEO?
    • What are the presumed causes of resets?
    • is the processor permanently damaged by space use (not if the device recovers after a reboot)
      • what can a reboot recover from (electrical, thermal, radiation, vacuum)?
    • does the processor give out, or the software, or some other thing?
  • what is a good compromise strategy between COTS and custom hardware?
    • what is low cost, but still workable?

[ page conversion got to here ]

INCA (2022 - launch failure)


Mars Cube one (MarCO) (2018)

  • Communications Relay cubesats
    • primary MARCO mission was to monitor communications of the Insight mission, during its EDL (Entry, Descent and Landing) phase

R5-S1 (2022, launch failure)(not sure it was Linux)

  • Johnson Space Center demo mission
    • destroyed in Astra Feb 2022 launch failure (See BAMA-1)

petitSat (2023 - not sure it was Linux)

  • from NASA’s Goddard Spaceflight Center

SPORT (2023 - not sure it was Linux)

  • from NASA’s Marshall Space Flight Center

Aalto-1 cubesat (2017-2021?)

See Aalto-1

VZLUSAT-2 (2023-)

  • by VZLU (Czech Aerospace Research Centre)
  • home page: https://www.vzlusat2.cz/en/
    • Launched Jan 13, 2023, deployed Jan 27 from D-Orbit carrier (which had 105 total satellites to launch)
    • Uses Linux
      • Lenka mentioned that the seed for the Linux4Space github repository is an existing version of Linux developed with YP for space
    • is part of the SatNogs network

LightSail 1 (A) (2015)

Notes

Had a software problem where failure to truncate a log file caused the system to freeze [1]

Resources

[1] https://www.space.com/29502-lightsail-solar-sail-software-glitch.html

LightSail 2 (B) (2019-2022)

CubeSat prototypes (educational) and initiatives

Pi-Sat (satellite testbed) (2016)

Pi-Sat is a low-cost, easy-to-use test bed that facilitates the research and development of software for small satellite and CubeSat architectures.

NASA Cubesat Launch Initiative (2013-present)

Larger Satellites

Starlink

CAPSTONE (2022)

See CAPSTONE - Lunar cubesat that had thruster/spin problems, but was recovered and is now operational

Perseverance mission (multiple uses)

The Perserverance mission included Linux in 3 different elements:

  • Perseverance EDL (Entry, Descent, and Landing) cameras
  • Ingenuity Helicopter
  • Perseverance helicopter base station
  • Linux on Mars: How the Perseverance Rover and Ingenuity Helicopter Leveraged Linux to Accomplish their Mission - Tim Canham, ELC 2021

EDL camera system

The EDL Camera system used an x86-based Linux system, with USB cameras spread throughout the vehicle.

Ignenuity Mars Helicopter

  • Notes from ELC keynote talk:
    • F-Prime running on Linux, and on TI processor (baremetal) and on base station
    • can execute arbitrary commands on Linux command line
      • Uses stdlib system() API call
      • Have done:
        • bzip2 - to compress log files
        • md5sum, ls, rm
        • bash shell commands for various cleanup tasks
      • Use “taskset –c” to select which core to run programs on


See Thursday, December 12, Day 4, talk #3 in the list:

    • notes:
      • Uses F-Prime on Linux, on the qualcomm, and F-Prime baremetal on the TI chip
      • good overview of operations so far
        • command sequencing, delays, radio transmissions, etc.
      • has information about anomolies, and how they were fixed
        • watchdog issue at beginning of mission
        • wrong timestamp on images

helicopter base station (on rover)

Qualcomm processor was the same as on helicopter. Provided a base station for Zigbee communication between the helicopter and the rover.

Projects

FlightLinux (1999-2002)

Paper: https://digitalcommons.usu.edu/cgi/viewcontent.cgi?article=1513&context=smallsat discussed OpenFlightLinux, among other things

French Linux4Space (2020)


Linux4Space (2022)

F-Prime Flight software (2013-)

  • Resources:
    • [2021: Leveraging Open Source Development to Enhance the F Prime FSW Framework]
      • Michael Starch - NASA JPL
      • Notes:
        • Don't just dump something on github
        • uses normal git workflow: master branch for users, development branch for integration, forks and pull requests for actual development work
        • static analysis with lgtm (looks good to me) https://lgtm.com/
        • doxygen and sphynx - code from comments
        • separate product line from project (preserve generalizations)
        • https://github.com/cookiecutter/cookiecutter - to make projects from templates
        • what is difference between F-prime and cFS:
          • cFS uses an embedded bus between modules, written in C
          • F-prime uses point-to-point communication between modules, that is autogenerated, written in C++
        • your flight software topography is static after design

cFS

KubOS Flight Software

Companies and Organizations

Spaceflight Industries

  • Spaceflight Industries
    • Product: CORTEX 160 flight computer from Spaceflight Industries, on the ASTERIA mission

NASA, Jet Propulsion Laboratory

  • People:
    • Tim Canham = flight software lead for Ingenuity mission (member of small scale flight software group)
    • Jeff Levison, Supervisor, Small Scale Flight Software Group
    • Rob Bocchino, flight software lead for the ASTERIA CubeSat (member of small scale flight software group)

Planet Labs

Astro Digital

  • https://www.astrodigital.com/
  • formerly Aquila Space, in the imaging business
  • missions = Perseus-M1,2, Corvus-BC,2,3 satellites (some still operational)

SpaceX

  • Uses Linux in Falcon 9 and Dragon spacecraft, and Starlink satellites
    • Embedded Linux Conference 2013 keynote:

SpaceX uses of Linux

Dragon Flight Software =

Avionics

  • https://youtu.be/QgzdA3fzu8o?t=1606 - Jinna Hosein, USENIX 2016 talk
    • Linux systems used by SpaceX
    • Falcon 9
      • 3 Linux flight-control computers on every first stage
        • flight-control is C++ user-space application (that is "compiled in"?)
      • 3 Linux telemetry/rf communicatons computers on first stage
      • 3 flight control on second stage
      • 3 telemetry/rf computers on second stage
      • ethernet is primary bus on flight vehicles
    • dragon also has Linux systems
    • some ground support systems have Linux

Spacex people

Boeing

  • Boeing is heading the ELISA working group
    • I contacted Christopher Wood, who did not know of any Boeing efforts with Linux in space
      • he didn't respond when I asked about Boeing and ELISA
  • Steven H. VanderLeest - head of Aerospace working group in Boeing
    • see https://www.linux.com/news/linux-in-aerospace-a-personal-journey/ (Nov 2022)
    • For flight control, Linux needs:
      • fast performance: io_uring, fast boot time
      • determinism: boot time and response time (interesting)
      • embedded characteristics: limited size, weight and power
        • mobile phones help with this
        • also need driver support
      • assurance: must meet standards and required confidence level
        • expert peer review
        • formal verification
        • aviation standard is DO-178C (levels E through A)
        • since Linux was not designed for Aerospace, it's harder to demonstrate correct design to regulators

Terran Orbital and Tyvak

https://terranorbital.com/

Parent to Tyvak Nano-Satellite Systems

To research:

  • Endeavor platform
  • worked on Marco1 and 2 (??)
  • worked on Capstone

Tyvak

Tyvak Nano-Satellite Systems

  • Founded in 2011
  • Created the 'Intrepid' platform in 2012

The 'Tyvak intrepid' computer board uses Atmel processors and the Linux operating system.

Tyvak recently was a awarded a $2.4 billion contract to design, build and deploy 288 LEO satellites for Rivada Space Networks. See https://terranorbital.com/terran-orbital-wins-2-4-billion-contract-to-build-300-satellites-for-rivada-space-networks/

Pumpkin Space Systems

Schools

University of Tokyo

  • University of Tokyo
    • Groups:
      • [[6]] = University of Tokyo Organization for Planetary Space Science - Tricom-1R (2018), AQT-D (2019), StarSphere (2023)
      • [[9]] = Intelligent Space Systems Laboratory
        • Led by Professor Nakasuka Shinichi
      • http://www.aeroeng-lab.t.u-tokyo.ac.jp/en/ - Advanced Aeropropulsion Laboratory, Department of Aeronautics and Astronautics, The University of Tokyo

People

Patrick Stakem

  • Patrick Stakem
    • Teaches at Capitol Technology University (2017?)
    • wrote several books on cubesats:(can be found on Amazon) with search by Author
      • from 'Cubesats Engineering' description: "Cubesats are modular, built to a standard, and mostly open-source. The downside is, approximately 50% of Cubesat missions fail. We hope to point out some approaches to improve this."

Linux Stuff on the Shuttle or ISS

Linux on Space Shuttle (STS 83) (1997)

  • https://web.archive.org/web/20070610195240/http://www.faho.rwth-aachen.de/~matthi/linux/LinuxInSpace.html
    • Linux was on-board, but STS 83 had fuel cell problems and mission was aborted early
    • It appears that the experiment was conducted on STS 94, as this mission performed the same micro-gravity experiments that STS 83 was supposed to do.
    • used Linux in a micro-gravity experiment
    • It uses a miniature '486 PC-compatible computer, the Ampro CoreModule 4DXi. Debian GNU/Linux is loaded on this system in place of DOS or Windows. The fragility and power drain of disk drives ruled them out for this experiment, and a solid-state disk replacement from the SanDisk company is used in their place. The entire system uses only 10 watts", said Kuzminsky, as much electricity as a night-light. "The computer controls an experiment in hydroponics, or the growth of plants without soil", said Kuzminsky. "It controls water and light for the growing plants, and sends telemetry and video of the plants to the ground".


Astro-Pi (2015-..)

Spaceborne Supercomputer

Conferences

Small Satellite Conference

4S Symposium

Space Symposium

SmallSat Symposium

Sony Satellite Projects

StarSphere

  • [[10]]
    • Sony camera in space with a service for end-users to take pictures and videos at scheduled times
    • Launched Jan 3, 2023 on SpaceX Transporter 6 Rideshare mission (which had 114 satellites)
    • RESEARCH NEEDED - what is the hardware and software for this satellite
      • JAXA, U of Tokyo, Sony were the creators
        • see https://news.mynavi.jp/techplus/article/20201113-1489186/ for details of people and origin of project
          • Satellite "bus" was done by U of Tokyo
          • Camera was done by Sony
        • Sony people quoted in techplus article:
          • Yoshihiro Nakanishi, Space Entertainment Preparation Office, New Business Development Division, Sony Business Development Platform
          • Mr. Mao Zen, satellite development leader
          • Masao All, Sony's satellite development leader. In the past, he has been involved in semiconductor design, such as designing LSIs for TVs and developing image sensors for mobile devices. He currently works as a system engineer for TV models
        • JAXA people quotes in the techplus article:
          • Koichi Fujihira, J-SPARC Producer of JAXA's New Business Promotion Department
    • some facts:
      • 2-year lifespan, water-propulsion, Sony high-end camera

Water propulsion system

Mission updates

SPRESENSE in space

Japan cubesat, microsat and small rover projects

  • Tohoku University - Professor Kazuya Yoshida
    • TEDx talk - 2014 - Rising into space [link]

SORA-Q (2023, 2024)

Transformable Lunar Rover

See SORA-Q


Dealing with hardware resets in space:

Fault rates and fault tolerance

OBC reset data

See Aalto final results paper.

from: https://www.nasa.gov/centers/ames/engineering/projects/phonesat2.html

"PhoneSat 2.4 continues to transmit data, which means its solar arrays, battery charging circuit, Arduino watchdog and data router are still operating correctly. In early January, however, the Phonesat 2.4 smartphone began to experience recurring resets coinciding with a period of numerous solar flares. As a result, the satellite no longer executes flight application software.

Radiation tolerance using Actor-Judge architecture and "flight strings"

SpaceX uses flight strings and triple modular redundancy for fault tolerance.

radiation exposure of raspberry PI 3 and 4 testing

  • "Accelerated Nuclear Radiation Effects on the Raspberry Pi 3B+ and Pi 4"
  • Some notes from the paper:
    • Linux has some helpful features to correctly detect and classify errors
      • logging, exception detection, signal handling
    • Linux scheduler sometimes switches the processor that a task is running on (mid-run)
    • ARM A72 cores were more resilient (had less SBUs (single-bit-upsets) than the A53 cores
    • bit upsets were not distributed evenly within the memory words (as would be expected for radiation)
    • some errors could be captured and identified using signal-handlers in the test code (SIGSEGV, SIGILL, SIGFPE)

Plans for Open Source

NASA High Performance Spaceflight Computer


Overview Papers on Linux usage in space

See also:


Generic sources with Linux in Space references

Linux-based satellite boards

Pumpkin ($7k)

ISIS Space OBC ($4K-$6K)

BeagleBoneBlack

Resources

CubeSat Page Template - Use this when creating a new CubeSat page

Not Linux (graveyard)

Lunar Flashlight? (2023-?) (not Linux)

Linux and/or hardware constraints or requirements

Power