Most embedded systems are used here on planet earth, but some do take off heading for space, and this week I come accross two separate projects leveraging Arm processors and FPGAs, as well as Ubuntu/ROS and Android operating systems: SpaceX Starlink communication satellites and Astrobee robots roaming in the international space station (ISS)
SpaceX is about to launch a cloud of 60 Starlink communication satellites that aims to provide internet communication anywhere in the world. That’s just a start as eventually the plan is to get up to 12,000 of those satellites.
Usually, we would not know many technical details about the satellites, but as one reader pointed out (Thanks Lawrence!), a Reddit thread about the launch, also pointed to a NASA document revealing the satellites are powered by Xilinx Ultrascale+ quad core Cortex-A53 processor with FPGA fabric.
Milestone 2 in Article 4 of the document explains a bit more:
Quantify memory, I/O and computational load requirements for running RTGx software of satellites’ Linux Xilinx Ultrascale+ quad A53s and describe the interface (GPS observables) to be provided by the dual frequency GPS receiver to the RTGx software
While Xilinx has no rad-hard nor rad-tolerant Ultrascale+ FPGA Arm SoCs listed in their space page, they did have plans to promote Zynq UltraScale+ MPSoC for space applications in 2016 presentation (See page 12), and RT-ZU19EG is supposed to be rad-tolerant, so maybe that’s the one SpaceX is using in their Starlink satellites.
Three Astrobee are currently in the station, and the battery powered cube-shaped robots are equipped with a touchscreen, six cameras, a speaker, a microphone, flashlights, a laser pointer, and various buttons and LEDs. They move around the gravity-less space station using simple fans, and their main purpose is to assist astronauts monitoring equipment via their cameras and microphones.
The Snapdragon 820 SoM powers the “High Level Processor (HLP)” running Android 7.1 to control the touchscreen, speaker, mic, and SciCam, while Ubuntu 16.04/ROS runs on a “Mid Level Processor (MLP)” based on the Snapdragon 805 module and responsible for computationally intensive computer vision and mapping. Finally, the Wandboard Dual board also runs Ubuntu 16.04/ROS in the “Low Level Processor (LLP)” handling pose estimation and motion control loop, as well as the IMU and Power Manager. Another Wandboard Dual is also used in the charging dock for the robots.
Jean-Luc started CNX Software in 2010 as a part-time endeavor, before quitting his job as a software engineering manager, and starting to write daily news, and reviews full time later in 2011.