MB4 — Comms Relay Satellite (Level 4: Coordination & Optimisation)
Mission Goal
Build a relay node that receives payload data from one device and forwards it reliably to a base station, with a plan for message loss, collisions, and verification.
Why This Matters
Real missions often use relays (or constellations) to move data from sensors to ground. Level 4 is about making your design work with other teams and improving reliability under constraints.
What Data You Collect
- Inbound payload messages (from a “satellite” device)
- Relay metadata: relay ID, hop count, receive signal quality proxy (if available)
- Delivery confirmation counts (ACKs received vs sent)
Hardware / Software Needed
- 3 × micro:bit (sender payload, relay, base station receiver)
- MakeCode / MicroPython
- Optional: laptop to log base-station received messages
Inputs From Other Teams
- Comms: Provide a network plan (channels/groups, message rate).
- Data: Define packet schema + unique message IDs.
- Command & Control: Define reliability target (e.g., 95% delivered in 2 minutes).
What You Must Produce (Deliverables)
- A working 3-node demo: Payload → Relay → Base Station.
- A “packet format” including unique message IDs.
- A reliability test report (delivery rate + what you changed to improve it).
Step-by-Step Build
- Define your packet schema:
MSGID(incrementing number)SRC,REL,DSTDATA(e.g., temp/light)
- Sender: transmit a packet every 1–3 seconds.
- Relay: on receive, forward the packet to base station group/channel.
- Base station: display/log packets and send an ACK back (by MSGID).
- Relay and sender: retry sending packets not ACKed after a timeout.
- Run reliability tests:
- Close range baseline
- Further range / obstructed test
- “Busy air” test (two teams on nearby channels)
- Optimise: adjust send interval, retry logic, or packet size.
Data Format / Output
Recommended text packet:
MSG=42|SRC=S1|REL=R1|DST=GND|T=21|L=128ACK=42|FROM=GND
Analysis Ideas
- Delivery rate = ACKed / sent.
- Median time-to-ACK for packets.
- Compare delivery with and without retries.
- Identify failure causes: collisions, range, packet size, timing.
Success Criteria
- Base station receives and logs at least 50 packets.
- System demonstrates ACK + retry (not “fire and forget”).
- Team improves delivery rate through at least one design change and can explain why it helped.
Evidence Checklist
- Photo of 3-node setup (labels: Sender/Relay/Ground)
- Packet schema document
- Log/screenshot from base station (packets + ACKs)
- Reliability metrics + improvement note
Safety & Privacy
- No personal identifiers in packets.
- Avoid tripping hazards during range tests.
- Respect other teams’ radio channels; coordinate to reduce interference.
Common Failure Modes
- No unique message IDs → impossible to verify delivery.
- Retry storms (too many retries too quickly).
- Relay forwards to wrong channel.
- Packets too large → increased loss.
Stretch Goals
- Add hop count to prevent loops.
- Implement “store-and-forward” queue in relay.
- Build a simple dashboard: delivered %, avg latency.
Scaffolding Example (optional)
You are allowed to reuse structures and formats from other teams — but not their decisions.
Structure: “Comms Relay Satellite” message protocol
- Message format:
TEAM|TYPE|VALUE|TIME - Rules: retry policy, how to handle missing messages, how to confirm delivery.
Example message types
STAT(status),SENS(sensor),ALRT(alert)