Do you have a question about Mission Space Lab? Don’t worry, you’re not alone! Have a look below, where you’ll find the answers to frequently asked questions.
If you can’t find the answer you’re looking for, then please send your question to email@example.com.
Remember to check back periodically, as this page will be updated when new questions arise.
We only accept entries from teams as opposed to individual children, but we would like Astro Pi to be open to as many people as possible. Submissions from teams with special educational needs should be accompanied by a supporting letter from the head teacher or Special Educational Needs Coordinator (SENCo). This supporting information will be considered by the judging panel in their assessment of the entries.
Any child that is related to members of the judging panel may not enter, and they (and their team) would be disqualified if they did. All other children may enter the competition. All entries will be anonymised for the judging panel.
A team of at least two people is needed. The competition is not limited to schools. Anyone who lives in an ESA member or associate member country, and who is 19 years of age or under can enter, either as a home-educated student (although you’ll need to team up with another student), a student team at school, or a team from a non-school organisation.
You must have registered in phase 1 of the competition to be able to participate in phase 2.
Teams must have a minimum of two people and a maximum of six. The smaller the group, the more involved each participant can be. Some ideas may require a larger team for coding, testing, documenting, and managing. The size of the team should be proportional to the work involved.
One teacher can be responsible for a maximum of five teams per year, and each student can only be part of one team. In summary:
Team size must be two to six members
One teacher can be responsible for a maximum of five teams
We encourage you to have one teacher for each group, to make sure that they give the best support to the students
This can be found on the mission timeline page. The circles show the time period for each phase.
The competition is open only to teams who participate in phase 1, and who are selected to proceed to phase 2. Code is not accepted from teams that did not participate in phase 1.
The Astro Pi payload includes the following sensors on the Sense HAT add-on board (we’ve included links to the data sheets for those of you who want that level of detail):
Inertial measurement unit (IMU)
ST LSM9DS1 (data sheet)
Barometric pressure sensor (also temperature)
ST LPS25H (data sheet)
Humidity sensor (also temperature)
ST HTS221 (data sheet)
8×8 RGB LED matrix display
Cree CLU6AFKW/CLX6AFKB (data sheet)
Visible light and infrared (Pi NoIR) cameras
Optical sensor OV5647 (data sheet)
Camera module (data sheet), note V1 is on board the ISS but you will have V2 in your kit
Four-direction centre-push joystick
Alps SKRHABE010 (data sheet)
Six functional push buttons
Real-time clock with backup battery
Additional information on the Astro Pi payload can be found here.
Yes, but only if they are small (large packages of 50MB or more are not allowed). Please record which extra packages are required as part of your submission. Do not make your own custom packages: they must be ones already found in the Raspbian remote repository or pip.
The flight unit has a driver that’s already doing GPIO edge detection for the push buttons. This emulates a keyboard device that types the letters u, d, l, r (top quad) and a, b (bottom pair) when the buttons are pressed. For example, if your code attempts to set up its own edge detection using the RPi.GPIO add_event_detect or wait_for_edge functions, then you’ll get the following exception:
RuntimeError: Conflicting edge detection events already exist for this GPIO channel
The Astro Pi guide covers this in detail: look under Inputs and Outputs. The joystick is mapped to the keyboard cursor keys, whereas the push buttons are mapped to the letters u, d, l, r, a, and b. Your code just needs to capture these keyboard events and respond to them.
The flight units are running a special security-hardened version of Raspbian Jessie Lite which cannot be shared with participants. However, if you use the Raspbian image supplied with your Astro Pi kit you will not need to worry about this. The Astro Pi kit image can also be downloaded here.
The quickest way is to import the datetime module and use the strftime function. This allows you to define a format string and populate it with the current date and time. For example:
import datetime time_stamp = datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S") print(time_stamp)
Detailed documentation can be found here.
The Astro Pi payload will be powered directly from a US mains wall socket charger, or from a laptop USB port.
Yes: the Astro Pi has an 8×8 multicolour LED matrix which can be used as a display. Additional information on the Astro Pi payload can be found here.
The USB cable used to power the Astro Pi payload is 4.6 metres (15 feet) in length.
Yes, it can: the Astro Pi is on the ISS Joint Station LAN. However, student experiments are not permitted to use the LAN for any purpose. Please note that if any networking code is found in your entry it will be disqualified automatically.
Participate in the phase 1 registration and be chosen by ESA to proceed onto phase 2; you will then be rewarded with a kit. The kit will be given for free to all selected teams for phase 2 (unless the teacher has already received a kit during the 2016-2017 challenge). You do not need to give back your kit to ESA. The registration for phase 1 closes on 29 October 2017.
The time on the Astro Pi computers is synchronised to GMT via their on-board real-time clocks.
The crew will be using the Astro Pi with a Raspberry Pi 1 B+ computer. The Sense HAT is fully compatible with all Raspberry Pi models since the B+ was introduced in July 2014. For the Raspberry Pi Zero, you will need to solder a 40-pin header on first, and make some minor configuration changes.
With some careful modifications, it can be made to work with the older Raspberry Pi 1 A and B models too.
No: the code will have to be submitted and tested before flying to the ISS. There may be a future chance to iterate code, but it’s not currently planned.
The last date to submit changes to your code will be 7 February 2018, when phase 2 closes. This is what will be used in the judging process.
Astro Pi will be using the Raspbian operating system, which can be downloaded here.
Python version 3.4 is the recommended programming language; version 2.7 is also acceptable if you’re using a legacy Python library as part of your code.
The size of the program is limited by the size of the SD card used (currently 8GB). However, the space on the SD card is shared with the other winners as well. As such, applications that are efficient with their SD card space usage will be judged favourably.
The full API reference can be found online here.
The Astro Pi will be hard-mounted on a multi-use bracket and will thus be stationary at all times.
There is one Astro Pi hard-mounted on a multi-use bracket in the Columbus module. A second one will be mounted onto an Earth-facing window. The Astro Pis cannot be moved from their fixed positions on the ISS due to constraints on crew time.
The Astro Pi can be used in the US, European and Japanese segments of the ISS. It cannot be used in the Russian segments at this time.
Astro Pi VIS (Ed) is located in the middle of the Columbus module on the European Physiology Module (EPM). Both units are visible on Google street view here (look down and right). Astro Pi IR (Izzy) will be located on an Earth-facing window. It has not yet been decided which window will be used.
The Astro Pi will mainly be doing automated processing without the involvement of the crew. The crew time we do have allocated for Astro Pi is mainly for deployment and stowage activities. We have found the crew to be highly engaged in Astro Pi activities and willing to interact with student experiments, but this does depend on the personal choices of the crew members.
Ideally, we like to see source code neatly laid out with clear comments describing each section. The amount of time available to each team to run the programs on board the ISS cannot exceed three hours in total. Please also ensure your code obeys the official coding rules.
Student code is uploaded to the Astro Pi using the SCP Linux command line tool. There is a ground station in Switzerland which has a direct TCP/IP link to a LAN inside the ISS to which the Astro Pi units are connected. We also have a special Python program called the MCP (Master Control Program). Its job is to start and stop the team’s experiments and monitor their progress, ensuring that they each receive the allotted run time. It’s defensively coded to cope with a number of failure modes, such as sudden power loss or single-event upsets from cosmic radiation.
What area on Earth does one pixel represent with the camera?
Using the data from this page about the V1 camera sensor image area, focal length and sensor resolution we calculate that at an altitude of 400 km the ground sampling distance (GSD) would be 161 meters per pixel.
Is there a quick way to install Open CV?
You can build Open CV from the source code by following these instructions but it can take some time. You can however install a pre-built version quickly, first ensure your Raspberry Pi is online. Then click on the main menu (Raspberry icon), then Accessories, then Terminal. Now enter the commands below:
sudo apt-get update sudo apt-get install libatlas-base-dev -y sudo pip3 install opencv-python -i https://www.piwheels.hostedpi.com/simple
Open CV Python tutorials can be found here.