DreamShow · manualFree download
Manual contents
Manual › Stage devices

Humanoid robots

DreamShow drives Booster K1 humanoid robots from the timeline: standing up, speaking (with a sound file), dancing, waving, walking, turning the head… Each action is a Robot… block placed at the right moment of the scene, synchronised with the light, the sound and, if you wish, the mouth of an LED mask. As a safety measure, a robot only moves if the control PC has armed it.

The robot must run the DreamShow service (the dreamshow_robot.py program installed on the robot, started at boot). DreamShow sends it simple orders over the network; the robot must therefore be on the same network as the control PC.

The service is installed once on the robot. It is supplied by Polux: ask support, who will tell you how to install it.

To open it: menu Venue > Robots… (tooltip: “Humanoid robots (Booster K1) driven by the DreamShow service installed on the robot. The “Robot…” blocks of the timeline drive them.”).

⚠ A humanoid robot is heavy and can fall. Always keep 2 m clear around it, a hard, flat floor, and the robot's controller in your hand during tests.

Several labels of the robot windows are not translated in the software and stay in French on screen; they are given below in French, with their translation in brackets the first time.

The Robots window

The title reminds you of the venue: “Robots: <venue>”. An asterisk * flags unsaved changes.

State

The State frame updates continuously (for the selected robot):

The test buttons

The text at the bottom reminds you that the service runs on the robot under systemd (logs: journalctl -u dreamshow-robot -f), that the audio files of the “Dire” (Say) blocks are sent automatically, and that the offset between the robot's voice and a mask's mouth is set in Venue > LED masks….

At the bottom of the window: “The “Robot…” blocks of the timeline target these names. Nothing goes to a robot until it is ARMED.”

Test mode

Before putting a move into a show, try it here to see whether it shifts the robot. A kick, a dance or being picked up can make it slide or turn, and the rest of the show then plays in the wrong place.

  1. Put the robot on its mark, then click 📍 Mark its position. It remembers where it stands, without moving.
  2. Pick a move in the list (kicks, dances, gestures, get up, get ready), then click ▶ Try. A window describes the move and recalls the precautions before the order goes out.
  3. Read under the buttons how far it moved, for example "From its mark: 23 cm forward, 8 cm to the left, turned 15° to the left". Beyond 10 cm or 10°, the line turns orange.
  4. ↩ Back to its mark makes it walk straight to its mark, without turning round, then take back the heading it had; it corrects in two or three small passes at most. One return at a time: the button stays greyed out on the way. It must be in walk mode, and the mark 1.5 m away at most; further, put it back by hand.

If a move shifts the robot, add two Robot… blocks to the timeline: Mark its position at the start of the show, and Back to its mark after that move.

The position comes from the robot's odometry: expect a few centimetres of error, a little more after a sudden move. The robot must be armed for the moves to go out; marking its position works even disarmed, since it does not move it.

Test mode needs a recent version of the robot's service; with an older service, the window says so: ask the support for its update.

Arming 🤖

As soon as the venue declares a robot, a button appears at the top right of the main screen, next to LIVE:

One click switches from one to the other. The button also shows the state of the first robot: “· not found”, “· hors ligne” (offline), or the mode and the battery (for example “· Prepare 82 %”), “⚠ AU SOL”, “(simu)”.

The log notes “Robots ARMED — the Robot blocks are executed” or “Robots disarmed — the Robot blocks are ignored”.

DreamShow always starts disarmed: you have to arm deliberately at each session.

In the cue window (Show mode)

The cue window also shows:

The emergency stop turns the motors off: the robot slumps. Only use it if the robot has to be neutralised immediately.

The Robot… blocks

In the Libraries panel, the Others list contains Robot…. Drag it onto a timeline track: the Robot block window opens at once (if you cancel it, no block is created). To modify a block: double-click, or right-click > Properties….

On the timeline, the block shows 🤖, the robot's name and the action, for example “🤖 K1 : Danse : Michael Jackson (partie 1)”, with “+ 🎭 <mask>” and “+ sono” for a line accompanied by sound.

The common settings

The actions

ActionSettingsSuggested length
Prepare (ready to move)—5 s
Se lever (get up)—8 s
Lie down ⚠ not on K1—6 s
Say (audio file)Audio file, Mask mouth, Also on the PA (console audio output)length of the file
Danser (dance)Danse (dance)depends on the dance
Boxing / kickMouvement (movement)6 s
Geste (gesture)Gestedepends on the gesture
Head (tilt, rotation)Tilt (°), Rotation (°)1 s
Avancer / reculer (m) (move forward / back)Distance (m)distance ÷ 0.2 m/s + 1 s
Turn (°)Angle (°)angle ÷ 25 °/s + 1 s
Mode (debout, marche, amorti) (mode: standing, walking, damping)Mode1 to 3 s
Veille (petits mouvements) (idle: small movements)Veille (idle)0 s
Stop (movement and sound)—0 s
Mute the robot—0 s

Details of the actions:

Sound files and masks' mouths

Step by step

Making the robot wave and speak at curtain-up

  1. Switch the robot on, check that it is on the same network as the PC.
  2. Open Venue > Robots…, click + Robot, then Save. Wait for “Connected …” in State; click Test the link.
  3. Copy the line (preferably as a WAV) into the show's media folder.
  4. In the scene, drag Robot… onto a track at 0 s: action Se lever, OK.
  5. At 8 s, add a Prepare (ready to move) block.
  6. At 13 s, a Geste > Wave block.
  7. At 17 s, a Say (audio file) block with the line; tick Also on the PA if the audience must hear it through the sound system.
  8. Rehearse disarmed: the light and the sound run, the robot does not move.
  9. Robot placed on the ground, 2 m clear, controller in hand: click 🤖 disarmed to switch to 🤖 ARMED, and replay the scene.

Good to know

See also