The mission 4 min
Two Bricks, one program — and more than four ports.
One EV3 Brick has four motor ports and four sensor ports. Your robot probably uses most of them already. If the mission set you kept in lesson 41 needs more, a second Brick is how you get them.
This is a last resort, and it has a price. A second Brick is real weight, a second set of batteries to keep charged, and slower commands to anything plugged into it. Lesson 41 asked you to exhaust one-mechanism-two-jobs and between-run module swaps first. If either of those still works, do that instead.
Today is wiring and concepts only. Programming across the chain is tomorrow, deliberately — debugging a cable and a port number in the same hour is how you end up unable to tell which is wrong.
Where the second Brick goes 5 min
Before wiring anything, decide where it physically sits — because it is heavy, and lesson 42 was clear that weight belongs over the drive wheels.
Mount it low and central, over or just behind the wheels, not on a tower. A Brick held high changes how the robot behaves in every turn you tuned in Block 3, and its mass is enough to matter.
Keep the master’s screen readable with the robot on the mat. You built a menu in Block 5, and somebody has to read it while the robot is sitting at HOME in the bottom-left corner.
And route the cable so it cannot be caught by a module, snag on the mat, or be pulled when the robot turns. A chain cable that comes loose mid-round takes every port on the slave with it.
The technique — layers 12 min
Chained Bricks are numbered as layers. The one connected to the computer, that runs the program, is layer 1 — the master. The next along is layer 2, and so on up to four Bricks.
Four things follow from that, and all four catch teams out:
- Only the master runs the program. Nothing is downloaded to the slave. It has no program of its own and never runs one — it is a box of extra ports.
- No power is shared. Every Brick needs its own charged batteries. A flat slave looks exactly like a broken cable, and teams lose an hour to that.
- Port numbers alone are now ambiguous. “Motor A” means nothing until you say which layer. That is tomorrow’s lesson.
- The chain is slower than local ports. A command to layer 2 has to travel. It is not slow in human terms, but it is slower than a port on the Brick itself.
That last point is the design rule, and it outranks the wiring. The colour sensor your line follower reads, and the drive motors, stay on the master. Always. Put a follower’s sensor on layer 2 and you have changed how long a loop pass takes — which lesson 28 showed changes what the D term means. Slow, non-critical mechanisms go on the slave.
Why a cable rather than Bluetooth? Because a cable does not drop, does not try to pair with somebody else’s robot in a hall full of them, and is allowed at every table. Wireless is a way to lose a round for reasons you cannot see.
Build it — the cable, the right way round 10 min
Each EV3 Brick has two USB sockets and they do completely different jobs:
- The PC port — the small mini-USB socket. This is how a Brick is spoken to. It is what you plug the computer into.
- The host port — the full-size rectangular USB-A socket on the side. This is how a Brick speaks to something else.
So every link in the chain runs the same way:
Master’s host port → slave’s PC port.
Host to PC. Every time. Plugging PC to PC is the single most common failure in this lesson, and it fails silently — no error, no layers, nothing.
Connect the cable before switching anything on, and never hot-plug. The master works out what is on the chain when it starts up. Plugging a Brick in afterwards does not add it.
Then power up. Turn on the slave first, let it come fully up, and turn on the master last, so there is something for it to find when it looks.
Different Brick firmware versions behave slightly differently here, so find the order that works on your Bricks and write it down in the journal. That written order becomes part of your setup ritual for every round from now on.
Program it — turning the feature on 12 min
The software will not show you layers until you tell it to expect them. In your project’s properties there is a daisy chain option. Switch it on.
Until you do, every port selector shows only the master’s ports, and a team can spend twenty minutes convinced the cable is faulty when the cable is fine.
With it on, the port selectors on motor and sensor blocks gain a layer number alongside the port letter. That is the visible sign the software is ready — whether the hardware is is a separate question, and it is the next section.
Do not write any mission code today. The one thing worth doing in software is the smallest possible test: a single Motor block, set to the slave’s layer, turning one motor a little. If that motor moves, the chain is real. That is the whole software goal for the hour.
Tune it — proving the chain is up 9 min
Check the hardware before you trust the software, in this order. Each step rules out one thing.
- Both Bricks on, both showing a healthy battery. A flat slave is the most common false alarm there is.
- Cable seated at both ends, host to PC, not PC to PC. Physically look at both sockets.
- The master should show the chain. Look for the layer indication on the master’s screen. If it is not there, the master did not find the slave at boot — power both down, wait, and start again in your written order.
- Plug a motor into the slave and turn it by hand, then check its position on the slave’s own port view. This proves the motor and the port work, independently of the chain.
When it does not work, it is almost always one of three: the cable is PC-to-PC, the slave’s batteries are flat, or something was plugged in after the Bricks were switched on. Check those three before changing anything in software.
Run it — one motor, on the far Brick 6 min
The whole test: a program on the master containing exactly one Motor block, its port selector set to the slave’s layer, turning one rotation.
The motor plugged into the slave turns. Nothing was downloaded to that Brick, and it has no program — the master reached across the cable and drove it.
Then unplug the chain cable and run it again. Nothing should happen, and the failure should be obvious. Knowing what a broken chain looks like is worth as much as knowing what a working one looks like, because in lesson 46 you will have to recognise it in a hurry.
Finally, power everything down and bring it up again in your written order, and confirm the test still works. A chain that only comes up when you fiddle with it is not ready for a round.
The journal 4 min
Today’s entry:
- why you need a second Brick — the port count from lesson 41, and what you tried first
- a diagram of the chain: which Brick is master, which socket the cable leaves and which it enters
- the power-up order that works on your Bricks, as a written step of the setup ritual
- which ports are on which layer, and why the time-critical ones are on the master
- where the second Brick is mounted, and what it did to the balance
- what a broken chain looked like when you unplugged it
The port map is tomorrow’s starting point. Lesson 44 addresses ports across layers, and it needs a written list of what is plugged in where. Guessing at that list tomorrow is how a motor on layer 2 gets driven as if it were on layer 1.