Hack Club

Write the code.
Build the satellite.

Design and code real CubeSat flight firmware. Get it reviewed. Receive a 1U CubeSat kit. Flash it, assemble it, ship it.

1
Write the Software
2
Code Review
3
Kit Ships to You
4
Build & Ship
🛰️ 3D Model

My First CubeSat Project

Designed in Fusion 360 · Drag to rotate · Scroll to zoom

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

How Uplink Works

1

Write the Software

Code the onboard firmware — ADCS, power, comms, camera, sensors. Track every hour in Hackatime.

2

Code Review

Submit your codebase. We check architecture, quality, docs, and Hackatime logs. Approval = shipment.

3

Kit Ships to You

Flight computer + IMU + camera + your chosen sensors. Shipped directly. No kit without approved code.

4

Build & Ship

Flash firmware, assemble, test. Submit hardware review, claim your grant and prizes.

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

Get funded for every documented hour

Software design, coding, testing, and hardware build time all count. Roughly $5–7 per hour. Don't need cash? Convert hours to tickets for the prize shop.

Phase 1 of 2 · Software

Software Phase

Design and write the onboard firmware for your CubeSat. This phase must be approved before we ship you any hardware.

⏱️ Hackatime

Track Your Hours

⏱️

Set up Hackatime before you write a single line

Hackatime automatically logs your active editor time by project. Every minute on firmware counts toward your grant. hackatime.hackclub.com →

  • Install the Hackatime plugin for VS Code, Neovim, or your editor of choice
  • Sign in at hackatime.hackclub.com with your Hack Club account
  • Name your project uplink-[yourname] — we verify hours from this
  • Every coding session auto-logs. No manual entry needed for software hours.
🛰️ Steps

Software Phase Walkthrough

1

Set Up Hackatime & Your Repo

Install Hackatime. Create a GitHub repo. Open Journal.md and log your first session. No hours tracked = no grant.

⏱️ Hackatime auto-tracks from your editor
2

Design Your Software Architecture

Plan how subsystems communicate before writing code. Write an Architecture Doc covering your task scheduler, sensor drivers, comms protocol, and boot sequence.

📄 Architecture Doc required before review
3

Write & Test Your Firmware

Build each subsystem: IMU driver, camera pipeline, power management, comms, and your add-on sensors. Test on a simulator or dev board. Log test results.

⏱️ All coding sessions tracked automatically via Hackatime
4

Submit for Software Review

Submit your repo. We review architecture, source code, test results, and Hackatime logs. Approved submissions unlock hardware shipment — no exceptions.

📋 Approval triggers kit shipment
📁 Required Files

What to Submit

1
Software Phase
📝

Journal.md

Every session — date, Hackatime hours, what you built. No journal = no grant.

🏗️

Architecture Doc

Subsystem design, data flows, task scheduling, boot sequence, comms protocol.

💻

Source Code

All firmware organised by subsystem. Must compile and run on your test platform.

🧪

Test Results

Simulator or dev board logs showing each subsystem working as designed.

📖

README.md

What you built, how to flash it, what each subsystem does, links to all docs.

⏱️

Hackatime Link

Link to your Hackatime project so we can verify coding hours independently.

Submit for Software Review →
Phase 2 of 2 · Hardware

Hardware Phase

Your software is approved. Your kit is on the way. Flash it, wire it, and build the satellite your code was written for.

⏱️ Hackatime

Keep Tracking

⏱️

Hardware build time counts too

Hackatime still auto-tracks firmware tweaks during hardware build. Physical sessions (soldering, wiring, testing) go in Journal.md manually. Both count. hackatime.hackclub.com →

  • Hackatime auto-tracks firmware tweaks and debugging as you build
  • Log physical sessions in Journal.md: date, hours, what you did
  • Take photos at each build stage — required for hardware review
  • Run per-subsystem tests and log results before submitting
🔧 Steps

Hardware Phase Walkthrough

1

Receive & Inventory Your Kit

Check everything arrived — flight computer, IMU, camera, and your chosen sensors. Document with unboxing photos. Log the session in Journal.md.

📸 Unboxing photos required
2

Flash Your Firmware

Flash your approved firmware to the flight computer. Verify it boots and each subsystem initialises. Commit any hardware-specific fixes.

⏱️ Hackatime tracks firmware tweaks automatically
3

Assemble & Wire

Solder headers, connect the IMU and camera, wire your add-on sensors. Log every session in Journal.md with hours. Photos at each stage.

📓 Manual hours in Journal.md · Photos required
4

Test Every Subsystem

Run your test suite on real hardware. Sensor readings, camera capture, comms, power. Log pass/fail per subsystem in your Hardware Test Log.

🧪 Hardware Test Log required for review
5

Submit & Claim Rewards

Record your demo video, submit for Hardware Review, fill out the Rewards Form. Claim your grant (both phases combined), badges, and prizes.

🏆 Rewards Form unlocks grant + prizes
📁 Required Files

What to Submit

2
Hardware Phase
📝

Journal.md (updated)

All hardware sessions added — date, manual hours, what you built.

📸

Build Photos

Unboxing, mid-assembly, wiring, finished satellite. More = better.

🧪

Hardware Test Log

Sensor readings, camera, comms, power — pass/fail per subsystem.

🎥

Demo Video

Satellite powered on, firmware running, subsystems demonstrated live.

⏱️

Hackatime Link

Same link from software phase — we check total hours across both phases.

Submit Hardware Review → Open Rewards Form →

What You'll Learn

Three tracks — space systems, systems engineering, and flight software. Every hour in any track counts toward your grant.

🔭
Space Systems

How Satellites Work

Understand the physics and engineering of real spacecraft before you write 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 a Spacecraft Engineer

Every design decision you document is funded work.

  • 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

The software running on your CubeSat is real embedded firmware. No shortcuts.

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

Approximate Hour Split

🔭 Space Systems
20%
🔧 Systems Eng.
30%
💻 Flight Software
35%
🔩 Hardware Build
15%

All hours count — reading, designing, coding, testing, and building alike.

The Kit

Every approved software submission gets the same core hardware. Your chosen add-on sensors ship with it.

📦 Core Hardware

What Ships to You

🖥️

Flight Computer

ARM-based microcontroller running your firmware. Handles all subsystem communication, task scheduling, and data management onboard.

🧭

IMU Module

9-DOF inertial measurement unit — 3-axis gyroscope, accelerometer, and magnetometer. The backbone of your attitude determination system.

📷

Camera Module

Onboard imaging sensor. Capture frames, buffer them, build your downlink pipeline. Your primary payload to design around.

⚙️ Add-On Sensors

Pick Your Sensors

Choose during your design review — they ship with the rest of the kit. Your firmware must include working drivers for whatever you select.

🌡️ Temperature Sensor
🧲 Magnetometer
📍 GPS Module
☀️ UV Index Sensor
💧 Humidity Sensor
🌈 Light Spectrometer
🔊 Microphone
➕ Propose Your Own

Sensor availability confirmed at launch. Propose your own during design review — we'll work with you to source them.

🔧 What You Provide

Your Side of the Build

🔩

Soldering Tools

A basic iron is fine — the kit connections are straightforward. You'll need it to attach headers and wire sensors.

💻

A Computer

To flash firmware, run tests, and commit to your repo. Any machine that runs CircuitPython, PlatformIO, or the Arduino IDE.

📸

A Camera or Phone

To document your build with photos at each stage and record your demo video. Coverage matters more than quality.

Mission Rewards

Ship working software and you're a mission contributor. Ship the full satellite and you're a mission commander.

🏆 Prize Tiers

How Far Will You Go?

📡

Signal Acquired

Software submitted and code review passed.

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

Hardware Manifest

Software approved — CubeSat kit ships to you.

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

Mission Complete

Full satellite built and hardware review passed.

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

Mission Commander

Exceptional — custom PCB, live telemetry, rare badges.

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

Go Above & Beyond

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 firmware
🌡️
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
Exceptional mission docs
🌍
Open Source
Fully open code & hardware
🔗
Ground Station
Built a working ground station
Power Optimised
Avg consumption under 1W

FAQ

Common questions about Uplink, the kit, and how everything works.

What exactly is a CubeSat? +
A CubeSat is a miniaturised satellite built to a standard form factor — a 1U CubeSat is a 10×10×10cm cube. Uplink uses an educational 1U kit that runs your real flight firmware.
What is Hackatime and why do I need it? +
Hackatime is Hack Club's automatic coding time tracker — it logs your active editor time per project. Set it up at hackatime.hackclub.com before you start, name your project uplink-[yourname]. Hardware hours go in Journal.md manually.
Why write software before getting hardware? +
It's how real spacecraft missions work — software is designed before hardware is built. It also lets us verify code quality before shipping an expensive kit. Higher bar = more impressive.
How does the grant work? +
Roughly $5–7 per hour across both phases. Software hours verified via Hackatime + Journal.md. Hardware hours via Journal.md + build photos. Submit for review and we'll calculate your total.
Do I need prior coding experience? +
You need to be comfortable writing code — Python, C, or C++. Space-specific knowledge you can learn from scratch using the resources on the What You'll Learn page.
What does the kit include? +
Every kit: flight computer, IMU (9-DOF: 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 journal? +
Yes. Keep Journal.md in your GitHub repo. Software hours — Hackatime handles automatically, just link your project. Hardware hours — log manually with date, hours, what you did. No journal = no grant.
Will my satellite go to space? +
Not as part of this YSWS — that requires FAA licensing and orbital contracts. But you'll have a real, working 1U CubeSat running firmware you wrote from scratch.
Who is eligible? +
Any teenager (ages 13–18), anywhere in the world. Free to join. No prior satellite experience required.
When does this launch? +
No confirmed date yet — coming soon. Watch the Hack Club Slack for announcements.
What's Hack Club? +
A nonprofit network of high school coding and making clubs with 50,000+ members worldwide. YSWS rewards students for building real things. hackclub.com

Ready for Launch?

Free to join. For Hack Clubbers only. Write the code. Build the satellite.

Email Ben