Hack Club
Hack Club YSWS

Build a satellite.
Get paid for it.

Write real flight software for a Raspberry Pi CubeSat, pass code review, and we ship you the hardware kit. Then you build it.

1
Write the Code
2
Pass Code Review
3
Hardware Ships to You
4
Build & Submit
RSVP Now →

The CubeSat

Fusion 360 · Drag to rotate · Scroll to zoom

Open in Fusion 360 ↗
Interactive 3D
1U · 10×10×10 cm
Fusion 360

Two phases. One satellite.

No prior satellite experience required. You'll learn the theory, write the code, and then build the real thing.

💻

Write the Code

Build the onboard programs: ADCS, power, comms, camera, sensors. Every hour tracked in Hackatime.

🔍

Code Review

Submit your repo. We review code, docs, and logged hours. Approved means hardware ships.

📦

Hardware Ships

Flight computer, IMU, camera, and your chosen sensors. No kit without approved code.

🛰️

Build & Submit

Assemble it, test each system, film a demo, and submit. Then claim your grant.

$5–7
Per Hour
$0
To Join
2
Phases
1U
CubeSat
Ideas
💰

Get paid for your time

Coding, testing, designing, and building all count — roughly $5 to $7 per tracked hour. Don't want cash? Swap for prizes instead.

Software Phase

Write the software that runs on your Raspberry Pi. We review it before anything ships.

Track your time first

⏱️

Set up Hackatime before you write a line

Hackatime watches your editor and logs how long you actually code. Every minute counts toward your grant. hackatime.hackclub.com →

  • Install the Hackatime plugin for VS Code, Neovim, or your editor
  • Sign in with your Hack Club account
  • Name your project uplink-[yourname]
  • It runs in the background — you just code

How the software phase works

1

Set Up Hackatime & Create Your Repo

Install Hackatime, create a GitHub repo, and start a Journal.md. Untracked hours don't count.

Hackatime runs in the background
2

Plan Your Architecture

Sketch how your subsystems communicate. Write it up in an Architecture Doc before you start coding.

Architecture Doc required before review
3

Write and Test Your Code

Build each subsystem: IMU, camera, power, comms, sensors. Test on a dev board or sim. Document what worked.

Still tracking in the background
4

Submit for Review

Send us your repo. We review code, docs, and logged hours. Approved means the kit ships.

Approved → kit ships

What you need to submit

📝

Journal.md

Date, hours, what you did. Keep it current.

🏗️

Architecture Doc

How your code is structured and what talks to what.

💻

Source Code

Organised by subsystem. Must run.

🧪

Test Results

Proof each piece works — screenshots, logs.

📖

README.md

What your code does and how to run it.

⏱️

Hackatime Link

Link to your stats for hour verification.

Submit for Review →

Hardware Phase

Your code passed review and your kit is on the way. Now you build it.

Keep tracking your time

⏱️

Build time counts too

Hackatime keeps tracking code work. For physical time (soldering, wiring, testing), log it manually in Journal.md. Both types count toward your grant.

  • Hackatime keeps running while you edit code
  • Log build sessions in Journal.md: date, duration, what you did
  • Take photos throughout — needed for review
  • Test each component and record results

How the hardware phase works

1

Unbox Your Kit

Verify everything arrived: flight computer, IMU, camera, sensors. Take unboxing photos and log in Journal.md.

Document the unboxing
2

Flash Your Code

Flash your approved code to the flight computer. Verify it boots and each component initialises. Commit hardware-specific fixes.

Hackatime still running
3

Assemble

Solder headers, connect IMU and camera, wire up sensors. Log time and take photos throughout.

Log time + take photos
4

Test Everything

Run your tests on real hardware. Check each sensor, camera, comms, and power system. Document what passes and fails.

Keep a test log
5

Submit and Get Paid

Film a demo video, submit everything, fill out the Rewards Form. Receive your grant plus any badges or prizes.

Fill out Rewards Form

What you need to submit

📝

Journal.md (updated)

Keep it current throughout the build.

📸

Build Photos

Unboxing through finished assembly.

🧪

Hardware Test Log

What you tested and the results.

🎥

Demo Video

Show it working. Phone camera is fine.

⏱️

Hackatime Link

Combined hours from both phases.

Submit Hardware Review → Open Rewards Form →

What You'll Learn

Real skills across three engineering domains. Every hour counts toward your grant.

🔭
Space Systems

How Satellites Work

The orbital mechanics and physics you need before writing a line of code.

  • Orbital mechanics & Keplerian elements
  • Attitude determination & control (ADCS)
  • Power budgets & eclipse periods
  • Thermal management in LEO
  • Radiation environments & fault tolerance
🔧
Systems Engineering

Design Like an Engineer

Every design decision you document is paid time.

  • Subsystem interfaces (I2C, SPI, UART)
  • IMU driver design & sensor fusion
  • Camera interface & image pipeline
  • Power system & battery management
  • RF link budget & comms protocol
💻
Flight Software

Write Real Flight Code

Software that runs on real hardware in a real satellite frame.

  • Embedded C/C++ or MicroPython
  • RTOS task scheduling & state machines
  • IMU driver: gyro, accel, magnetometer
  • Camera capture & downlink pipeline
  • Telemetry logging & error handling

Roughly how you'll spend your time

Space Systems
20%
Systems Eng.
30%
Flight Software
35%
Hardware Build
15%

Everything counts: reading, planning, coding, testing, building.

The Kit

Once your code is approved, this is what shows up at your door.

What's in the box

Every approved participant gets the full kit shipped free. Here's what you're building with.

Component 01 · Flight Computer
RASPBERRY PI ZERO 2W RP2040 BCM2710A1 USB-C μSD CAM GPIO 40-PIN WIFI BT 5.0

Raspberry Pi Zero 2W

The brain of your satellite. A quad-core ARM Cortex-A53 running Linux. Your flight software lives here — managing every sensor, camera, and comms link on board.

ARM Cortex-A53 512MB RAM WiFi + BT 40-pin GPIO
Component 02 · Attitude Sensor
X Z Y ICM-42688 SDA · SCL · INT · GND · 3.3V 9-DOF IMU MODULE

9-DOF IMU

Gyroscope, accelerometer, and magnetometer in one. Your ADCS code reads this to know exactly where your satellite is pointing at any moment.

ICM-42688-P I2C / SPI ±16g / ±2000°/s
Component 03 · Imaging
IMX219 CAMERA MODULE V2 ← 62.2° FOV →

Camera Module

8MP Sony IMX219 sensor on a CSI ribbon. Your code controls capture timing, resolution, and frames down to the ground station.

Sony IMX219 8MP 62.2° FOV CSI-2
Component 04 · Power Generation
+ SOLAR ARRAY · 5V OUTPUT

Solar Panel

Multi-cell panel sized for a 1U face. Your power management code reads voltage and current to decide when to charge, sleep, or draw from the battery.

5V Output ~500mW peak 1U face size
Component 05 · Power Management
BQ25895 CHARGE CTRL 10μH 100μF BAT+ BAT− 3.3V 5V GND POWER MANAGEMENT BOARD

Power Management Board

Handles LiPo charging from the solar panel, battery monitoring, and regulated 3.3V/5V output to all subsystems. You write the I²C drivers to read it.

BQ25895 I²C monitoring 3.3V + 5V out
⏱️

Plan for about 25 hours of build time

Rough estimate for the hardware phase — soldering, wiring, testing, debugging. All of it counts toward your grant.

Choose your sensors

Pick during design review. Ships with everything else. You must write working drivers for whatever you choose.

🌡️
Temperature Sensor
🧲
Magnetometer
📍
GPS Module
☀️
UV Index Sensor
💧
Humidity Sensor
🔬
Light Spectrometer
🎙️
Microphone
Extra Solar Panel
+
Propose Your Own

Availability confirmed closer to launch. Want something not listed? Suggest it during design review.

What you need

🔩

Soldering Tools

A cheap iron works. For attaching headers and connecting sensors.

💻

A Computer

Needs to run Python and communicate with a Raspberry Pi over USB.

📸

A Camera or Phone

For build photos and demo video. Phone camera is fine.

Mission Rewards

The more you build, the more you earn.

What can you earn?

📡

Signal Acquired

Code review passed.

  • Mission badges (digital)
  • Uplink sticker pack
  • Grant for software hours
  • Hack Club recognition
🛰️

Hardware Manifest

Code approved, kit incoming.

  • Everything in Signal Acquired
  • Real 1U CubeSat kit shipped
  • Uplink enamel mission patch
  • Priority build support
🎖️

Mission Complete

Built and passed hardware review.

  • Everything in Hardware Manifest
  • Official Hack Club Mission t-shirt
  • Featured on Hack Club website
  • Grant for all hours logged
🏅

Mission Commander

Went well above and beyond.

  • Everything in Mission Complete
  • Official Hack Club Mission hoodie
  • Uplink challenge coin
  • Hack Club Slack spotlight

Mission badges

RARE
🟩
Custom PCB
Design your own CubeSat PCB
RARE
📡
Live Telemetry
Working real-time data downlink
🧠
ADCS Impl.
Working attitude control system
🔋
Power System
Full power management code
🌡️
Thermal Model
Thermal analysis of your design
RARE
🤖
Autonomous Ops
Fault detection & recovery
📊
Sim Tested
Full mission sim before hardware
🔭
Custom Payload
Custom science payload built
📝
Ace Journal
Above & beyond mission docs
🌍
Open Source
Fully open code & hardware
🔗
Ground Station
Built a working ground station
Power Optimised
Avg consumption under 1W

FAQ

Questions people ask most.

What exactly is a CubeSat?+
A CubeSat is a miniaturised satellite built to a standard form factor. A 1U CubeSat is a 10×10×10 cm cube. Uplink uses an educational 1U kit that runs your actual flight code.
What is Hackatime and why do I need it?+
Hackatime watches your editor and logs how long you code. Set it up at hackatime.hackclub.com and name your project uplink-[yourname]. For physical build time, log those hours manually in Journal.md.
Why write software before getting hardware?+
That's how real satellite projects work — code is written and verified before hardware is assembled. It also lets us check your work before mailing a kit. The extra step is worth it.
Do I need prior coding experience?+
You should be comfortable writing code in Python, C, or C++. You don't need to know anything about satellites — that part you can learn as you go.
What does the kit include?+
Every kit includes a flight computer, 9-DOF IMU (gyro + accel + mag), and camera module. Plus the add-on sensors you pick during design review: temperature, GPS, UV, spectrometer, magnetometer, or propose your own.
Do I have to keep a journal?+
Yes. Keep a Journal.md in your repo. Hackatime handles coding hours automatically. For build hours, log them manually: date, duration, what you did. No journal means no grant money.
Will my satellite go to space?+
Not through this program. Orbit requires FAA licensing and a launch contract. But you'll have a working 1U CubeSat running code you wrote, which is still impressive.
Who is eligible?+
Any teen (ages 13–18), anywhere in the world. Free to join. No prior satellite experience required.
When does this launch?+
No date locked in yet. Keep an eye on Hack Club Slack for updates.
What's Hack Club?+
A nonprofit for high school coders with over 50,000 members worldwide. YSWS programs pay students to build real projects. hackclub.com

Ready to Build?

Free to join. Hack Clubbers only. Write some code. Build a satellite.

Email Ben