Hrithik Shetty
All projects

DIY Robots in Architecture

Four-day workshop, Detmolder Räume 2026

Students at laptops with robot kits in a TH OWL studio during the workshop
Fig. The studio on day three — every table a workbench

DIY Robots in Architecture was a four-day intensive workshop during the Detmolder Räume week at the Detmold School of Design, TH OWL. I led it with Yusuf Aykin and Prof. Hans Sachs for sixteen participants drawn from all of the design courses — architecture, interior architecture and the integrated design master.

No prior programming or robotics experience was required, which was the point. Students built, assembled, programmed and iterated their own robotic tools and vehicles out of low-cost, open-source hardware: Arduino-powered rovers at one end of the room, self-assembled robotic arms at the other. The workshop ran on a DIY and prototyping ethos, using cheap and accessible technology as a way into automated design processes rather than as an end in itself.

By the end of the week a large proportion of the bachelor students were programming independently — from no code at all on Monday. That, more than any one machine that drove across a table, is what the four days were for.

Type
Workshop — taught
Role
Workshop lead, with Yusuf Aykin and Hans Sachs
When
May 2026, Detmolder Räume week
Module
BA6010 · 4 ECTS · 2 SWS
Participants
16, from all design disciplines
Where
Detmold School of Design, TH OWL
Hardware
Arduino, open-source kits, self-assembled arms
Open-source robotics kit laid out on a table: microcontroller boards, servos, jumper wires, battery packs and sensors in bags
Fig. A kit before it is anything — boards, servos, wire
Tracked rover chassis part-assembled on a workbench beside its box and a partly built gripper
Fig. A tracked rover part-way through assembly

How the four days ran

Each day paired a short input with a long build. Students started from a working example — a motor that turns, a sensor that reads — and then changed it until it did something they had chosen themselves. Debugging was done at the table, out loud, which is how the room taught itself faster than we could have taught it.

Because the hardware was cheap and open, nobody was afraid of it. A broken part was a part you replaced, not a piece of laboratory equipment you had to apologise for — and that is what let people who had never written a line of code take a machine apart on the second morning.

What came out of it

  • Arduino-powered rovers
  • Self-assembled robotic arms
  • Custom end-effectors
  • Sensor-driven behaviours
  • Students programming independently

Code a beginner can hold

The kits arrive with example code written for people who already know electronics: pin numbers, servo objects and wiring details, all in the same file as the part a student actually wants to change. So each kit — the smart home, the robot arm, the smart farm and the quadruped — got one modular sketch that splits the two apart.

Everything about the hardware sits in a class at the top, under a comment that says not to touch it. What is left is loop(): a short list of plain commands like arm.openClaw() and home.openDoor(), each on its own line with a comment, and a line inviting the student to change the numbers.

One sketch per kit

  • Smart home
  • Robot arm
  • Smart farm
  • Quadruped
Keyestudio_Robot_Arm_Modular.ino Arduino C++ · lines 60–76

void loop() {
  /*
   * PASTE SNIPPETS BELOW THIS LINE
   * To change how the robot moves, tweak the numbers inside the ( ).
   */

  arm.moveBase(90);   // Move the base to the center
  delay(1000);        // Wait for 1 second

  arm.openClaw();     // Open the gripper
  delay(1000);

  arm.closeClaw();    // Close the gripper
  delay(1000);

  // TRY THIS: Change the numbers above or add your own movements!
}
Fig. The student’s side of the robot arm — the only part of the file anyone was asked to edit

Safe to get wrong

Hiding the hardware was only half the job; the other half was making a mistake harmless. Every joint of the arm has a minimum and maximum angle, and every move command passes through constrain() before it reaches the servo. Ask the big arm for 40 degrees and it stops at 80, the lowest angle its limits allow — so a student could try any number they liked, and the worst outcome was a movement that did less than they asked.

Keyestudio_Robot_Arm_Modular.ino Arduino C++ · lines 10–32

// --- DO NOT TOUCH THIS PART ---
class KeyestudioArm {
  private:
    Servo base, bigArm, smallArm, claw;
    // Safety Limits
    int limitMin[4] = {0, 80, 30, 85};
    int limitMax[4] = {180, 180, 150, 150};
    int currentPos[4] = {90, 90, 90, 110}; // Initial Startup Positions

  public:
    void setup() {
      base.attach(16);
      bigArm.attach(17);
      smallArm.attach(2);
      claw.attach(4);
      // Move to initial position slowly
      moveBase(90); moveBig(90); moveSmall(90); moveClaw(110);
    }

    void moveBase(int angle) {
      int safe = constrain(angle, limitMin[0], limitMax[0]);
      base.write(safe);
    }
Fig. The part behind the warning: pins, start positions, and a limit on every joint
Students working at laptops with robot kits and cables spread across studio tables
Fig. Working session — laptops, kits and a lot of cable
A participant writing code on a laptop next to a small model building rigged with electronics
Fig. Programming a prototype on the last day Workshop photographs from the TH OWL MID/CAAD news story ROBOTs at DETMOLDER RÄUME, 19 May 2026.