RAIN
RIDE Lab

Build, code and test robots and AI in your browser

29 interactive labs from RAIN: write Arduino code for a virtual kit, tune controllers, plan robot paths, and train machine learning models. Once opened, the labs keep working without the internet.

Every lab, for anyone
₦35,000
about $30 · £20 · €20

For 12 months of access. Every lab, including new ones as they are added.

  • All 29 labs: robotics, electronics, control, machine learning and data
  • Guided experiments in every lab, written for learners
  • Works offline for 3 days at a time once opened
  • Sign in with your e-mail on any computer
Sign in with your e-mail to buy

Already bought it? Sign in with the same e-mail and the lab opens.

RAIN trainees

The RIDE Lab is free for RDA trainees and AIML trainees in training. Log in to the portal and open it from your menu.

Log in to the portal

For schools and teams

Need the lab for a class or a company team? Write to us through the contact page and we will set up access for everyone.

Included

Zero to Hero challenges

Step-by-step missions from absolute beginner to expert in Python, AI and machine learning, and robotics. Python challenges are marked instantly in your browser; you earn points, badges and streaks and can see where you stand on the leaderboard.

See the Zero to Hero challenges

What is inside

Robotics, electronics and control 21 labs

Arduino Lab RDA112RDA113RDA212

Code a virtual Uno and test it on the RAIN kit

Arduino Lab

Write Arduino code, upload it to a virtual Uno wired to the RAIN kit and test it: LEDs, buttons, sensors, a servo valve on a water tank, a robot car that avoids obstacles and follows a line, and several boards talking to each other. Then upload it to a real board.

Raspberry Pi Lab RDA112RDA113RDA212

Wire a Raspberry Pi and code it in Python

Raspberry Pi Lab

A Raspberry Pi 4 or 5 with its 40-pin header on a breadboard: wire LEDs, a button, a buzzer, a servo, sensors, an MCP3008 and an LCD, and write Python with gpiozero and RPi.GPIO that runs unchanged on a real Pi. Thirteen lessons, from blink to a web dashboard, then download the project with its wiring.

Circuits Lab RDA112

Build circuits on a breadboard and measure them

Circuits Lab

Build circuits on a virtual breadboard and measure them: Ohm's law, voltage dividers for sensors, LEDs and resistors, RC timing, transistors as switches and op-amps.

Control Systems Lab RDA113RDA211

Block diagrams, PID, Bode and root locus

Control Systems Lab

Block diagrams, transfer functions, open and closed loop, PID, disturbances and noise, with time response, poles and zeros, Bode, root locus and the Routh table.

PID and On-Off Control Lab RDA113

Tune PID and on-off control on real plants

PID and On-Off Control Lab

Tune P, PI and PID controllers and on-off control with hysteresis on motors, heaters, tanks and a drone, with anti-windup, noise, and Ziegler-Nichols tuning.

Process Control Lab RDA113RDA211

Run an industrial plant from a control room

Process Control Lab

An industrial plant on a control-room screen: tank level and temperature loops, cascade, feedforward, valves, alarms and an IoT dashboard.

State Space and Estimation Lab RDA211

State space, LQR and the Kalman filter

State Space and Estimation Lab

State-space models, controllability, pole placement, LQR, observers and the Kalman filter, ending with balancing an inverted pendulum.

Kinematics Lab RDA212

Move robot arms in 3D, forwards and back

Kinematics Lab

Frames, rotations and transforms in 3D, robot arms with DH parameters, forward and inverse kinematics, the Jacobian, workspaces and mobile robot motion.

Robot Builder RDA111RDA212

Design a robot from real parts

Robot Builder

Design a robot from real parts against a specification: speed, torque, battery life and cost, compare concepts, then test it in an arena.

Path Planning Lab RDA212

Watch A*, Dijkstra and RRT find a way

Path Planning Lab

Draw a map and watch BFS, Dijkstra, A*, RRT and potential fields find a way, step by step, then drive the path with a robot.

Terrain and Field Robotics Lab RDA212

Plan routes over slopes, mud and sand

Terrain and Field Robotics Lab

Outdoor robots on real terrain: slopes, mud and sand, routes that save time or energy, replanning as the robot discovers the land, and farm and survey coverage.

Localisation and Mapping Lab RDA212RDA211

Help a robot find itself and map the room

Localisation and Mapping Lab

Odometry drift, LiDAR, Kalman and particle filters, occupancy grid maps and SLAM with loop closure.

Swarm Robotics Lab RDA212

Simple rules, surprising group behaviour

Swarm Robotics Lab

Flocking, consensus, formations, foraging, coverage and task allocation: simple local rules, surprising group behaviour.

Traffic and Autonomous Vehicles Lab RDA212RDA113

Junctions, jams and self-driving cars

Traffic and Autonomous Vehicles Lab

Traffic jams from nowhere, junctions and signals, and what an autonomous car sees and decides on a busy Nigerian road.

Drone Lab RDA113RDA211RDA212

Design a drone, tune it and fly it

Drone Lab

Design a drone and see if it will fly, then tune its cascaded flight controller in wind, fuse its sensors, fly it yourself, plan a crop survey with failsafes and compare it with a fixed-wing VTOL.

Digital Twin Lab RDA113RDA211RDA212

Twin a real system and catch faults early

Digital Twin Lab

A pumping station, a robot cell and a solar microgrid with their digital twins: calibrate the model from live data, keep it in step with a Kalman filter, catch faults early, predict failures and test changes first.

LiDAR and Perception Lab RDA211RDA212AIML212

See the world with laser scans

LiDAR and Perception Lab

Time a laser pulse, see what fools a LiDAR, drive a robot with a 2D scanner, then take a 3D street scan apart: ground removal, clustering, boxes, tracking, scan matching and fusion with a camera.

Motors and Actuators Lab RDA112RDA113RDA212

Drive DC, stepper, servo and brushless motors

Motors and Actuators Lab

DC motors through an H-bridge with PWM and a speed PID, steppers and their drivers, hobby and industrial servos, brushless motors with FOC, and sizing a motor, gearbox and supply for a real robot.

Fabrication Lab RDA111RDA212

3D print, CNC and laser cut with real G-code

Fabrication Lab

Slice a part for 3D printing and download real G-code, plan a CNC job with feeds and speeds and watch the tool cut, make a laser-cut box, and read any G-code file line by line.

Humanoid Robotics Lab RDA212RDA211AIML212

Balance a humanoid and make it walk

Humanoid Robotics Lab

Pose a 24-joint humanoid, keep its centre of mass over its feet, recover from pushes, plan walks over crates, stairs and slopes with the ZMP, and teach it to balance by trial and error.

3D Design Lab RDA111RDA212

Design robot parts in 3D, ready to print

3D Design Lab

Design robot parts from a first sketch: constraints, extrude and revolve, holes, fillets and booleans, motor mounts and enclosures from templates, print checks, assemblies, drawings and STL ready to print.

Machine learning and data 8 labs

Data and Statistics Lab AIML111

Clean, explore and chart data

Data and Statistics Lab

Clean, explore and chart real-style data with the pandas code shown alongside, then measure uncertainty with samples, intervals and tests.

Maths Lab AIML112RDA113RDA211

Algebra, calculus and matrices you can see

Maths Lab

Symbolic algebra and calculus, linear algebra as transformations, gradient descent, probability, complex numbers, Laplace and Fourier.

Machine Learning Lab AIML112

Train your first machine learning models

Machine Learning Lab

Linear and logistic regression trained by gradient descent, honest evaluation, bias and variance, k-nearest neighbours and decision trees.

Advanced Machine Learning Lab AIML211

Forests, boosting, clustering and PCA

Advanced Machine Learning Lab

Random forests and boosting, support vector machines, clustering, PCA, anomaly detection, recommendations and time series.

Neural Networks Lab AIML212

Build and train neural networks

Neural Networks Lab

From one neuron to deep networks: backpropagation step by step, optimisers, regularisation, convolutions and a CNN you train in the browser.

Text and Language Models Lab AIML211AIML212

Tokens, embeddings and transformers

Text and Language Models Lab

Tokens, embeddings, n-grams, RNNs and LSTMs, and attention and transformers taken apart one step at a time.

Computer Vision Lab AIML212RDA212RDA211

Teach a camera to see edges, lanes and objects

Computer Vision Lab

Pixels, filters and Canny edges, then lanes on a Nigerian road, a camera that tracks a ball, parts counted on a conveyor, a CNN trained in the browser, detection and segmentation, and seeing in harmattan haze.

Game AI and Reinforcement Learning Lab AIML211AIML212

Teach a computer to win at games

Game AI and Reinforcement Learning Lab

How computers learn to win at games: minimax and alpha-beta, Q-learning and SARSA, Monte Carlo Tree Search, self-play from random to never losing, a mini chess engine, learning agents in a strategy arena and game theory.