Simulate here. Fly it there.
CoDrone Academy is simulation-first. Crews practice a challenge in the simulator, then fly the same task with a real CoDrone EDU using Robolink's own tools on a Chromebook, Mac or Windows computer. This page is the hardware integration plan.
How the two worlds connect
- 1 · Simulate
Fly the challenge in CoDrone Academy (web or iPad). Scores are verified by replay on the server.
- 2 · Plan
The crew reviews the classroom challenge: setup, roles, preflight, safety.
- 3 · Program (optional)
CodePilot exports reviewed Python for the codrone_edu library — or build the same steps in Robolink Blockly.
- 4 · Fly & record
The crew flies the real drone; the teacher records evidence in the Flight Log. XP and skills update.
What this app does not do
- This app never connects to, programs or flies a CoDrone EDU — not from the web and not from the iOS app.
- CodePilot programs export as Python text after a safety review; students run them themselves in Robolink's tools, with the pilot ready on the controller.
- Professional sensors in the simulator (thermal, multispectral, cameras, scanners, grippers) are simulated and labelled. CoDrone EDU has no camera and is not designed to carry payloads.
- Simulator response times, battery drain and wind are tuning values, not Robolink specifications.
Hardware connection is supported only through Robolink's tools: Robolink Blockly (Chrome on Chromebook, Mac or Windows; not on iPad) and Python via Python for Robolink or PyCharm with codrone-edu. A direct iPad/iPhone connection is not documented by Robolink, so it is not attempted here.
Verified facts the simulator uses
- ✓ takeoff() climbs to an average of about 80 cm and hovers ~1 second to stabilise; the takeoff height can't be changed. source
- ✓ land() stops all commands, hovers and makes a soft landing in place. Put a hover() between takeoff() and land() or the drone may miss the land command. source
- ✓ emergency_stop() immediately stops all motors — the drone falls. source
- ✓ Distance moves (move_forward, move_left …) default to 1.0 m/s; the maximum is 2.0 m/s. Best over a well-lit, patterned surface. source
- ✓ Flight variables (set_roll, set_pitch, set_yaw, set_throttle) range from -100 to 100 and stay set until changed; move() runs them. source
- ✓ turn_left()/turn_right() turn with the gyroscope (default 90°, 3-second timeout). Positive turn_degree() values turn left. source
- ✓ The front range sensor reads up to about 150 cm (detect_wall, keep_distance); avoid_wall() flies forward until an object is at the set distance. source
- ✓ Sensors: IMU (accelerometer, gyroscope, temperature), bottom and front range sensors, pressure sensor, optical flow sensor, and two color sensors. source
- ✓ get_colors() returns one of 8 pre-calibrated colors from the included color cards. source
- ✓ flip() needs the battery above 50%, and the drone needs 3–4 seconds before the next command. source
- ✓ Blockly runs in Google Chrome on macOS, Windows or ChromeOS (Chromebook) — not on iPads, tablets or phones — with a data USB cable to the controller. source
- ✓ Python can be written in the browser with Python for Robolink (good for Chromebooks) or on a computer with PyCharm and the codrone_edu library. source
Checked against docs.robolink.com on 2026-10-11 (Python library documentation v2.2; PyPI codrone-edu 2.10).
Flight controls 101
- Throttle
- Up and down (left stick, forward/back in Mode 2).
- Yaw
- Turning left or right in place (left stick, side to side).
- Pitch
- Tilting forward or backward to move forward/back (right stick, forward/back).
- Roll
- Tilting left or right to slide sideways (right stick, side to side).
- Orientation
- When the drone faces you, left and right are reversed from the pilot's view. Always know where the nose is.
Preflight checklist
- ☐ engineer Flight area clear: no people, bags or cords inside the tape; spectators behind the line.
- ☐ engineer Eye protection on, as required by your school.
- ☐ engineer Propellers attached firmly and undamaged; prop guards secure.
- ☐ engineer Battery charged, fully seated, and not swollen or damaged.
- ☐ pilot Controller paired with the drone (lights show it's connected).
- ☐ pilot Flying over a well-lit, patterned floor (helps the optical flow sensor hold position).
- ☐ commander Plan briefed out loud: route, landing spot, and what each person calls.
- ☐ commander Everyone knows the STOP call — and the pilot knows how to land or emergency stop.
Battery care
- Inspect batteries before every flight. A swollen, dented or hot battery is never flown or charged — give it to your teacher.
- Charge only with the CoDrone EDU charger, on a hard surface, while an adult is in the room.
- Unplug batteries when they're full. Don't leave them charging overnight.
- Remove the battery before touching propellers or carrying the drone.
- Store batteries at room temperature, away from metal objects.
Troubleshooting
- Drone won't connect / doesn't show LINK state when plugged in
- Try the USB cable that came with CoDrone EDU — it must be a data cable. Update Chrome. Re-pair the controller.
- Drone drifts in place
- Fly over a patterned, well-lit surface (optical flow needs texture). Check props for damage. Use trim (get_trim / set_trim) if your teacher shows you how.
- Program skipped the landing
- Add hover() between takeoff() and land(), as Robolink recommends.
- flip() does nothing
- Battery must be above 50%. Wait 3–4 seconds after a flip before the next command.
- Sensor stop distance is wrong
- The front range sensor reads up to about 150 cm; dark or angled surfaces can read badly. Use a flat, light-colored board.
- Short flight time
- Batteries drain faster with aggressive flying and as they age. Swap to a fresh battery and note it on the battery log.
Drone words · Palabras de drones
English stays on screen, Spanish alongside — in the spirit of Hamptonian AeroPuente. Teachers: review for your students' regional usage.
- throttle
- aceleradorsube o baja el dron
- yaw
- guiñadagirar a la izquierda o la derecha en el mismo lugar
- pitch
- cabeceoinclinar hacia adelante o hacia atrás
- roll
- alabeoinclinar hacia un lado
- takeoff
- despegue
- landing
- aterrizaje
- hover
- vuelo estacionario
- propeller
- hélice
- battery
- batería
- preflight checklist
- lista de verificación previa al vuelo
- landing zone
- zona de aterrizaje
- no-fly zone
- zona de vuelo prohibido
- emergency stop
- parada de emergencia
- obstacle
- obstáculo
- sensor
- sensor
- range sensor
- sensor de distancia
- heading
- rumbo
- altitude / height
- altitud / altura
- crew
- tripulación
- pilot
- piloto
- mission commander
- comandante de la misión
- safety observer
- observador de seguridad
- flight path
- trayectoria de vuelo
- wind gust
- ráfaga de viento