
Technology Bootcamp for Scientists
UCL: 2-6 June 2025
Deadline: 10 May 2025
COURSE OVERVIEW
Science relies on technology. We build machines to run experiments, we program computers to analyse our data, and we share our results and collaborate with others via the internet.
Every scientist should know how these essential tools work…and how they can be used to enhance their research.
Our “technology bootcamp” will teach you how modern instruments work by showing you how to build your own. You will learn about sensors for measurement and methods for controlling movement. You will learn to use Python to analyse the data you generate and how to automate experiments, saving you time and producing more consistent results.
WHAT WILL YOU LEARN?
Through the hands-on construction of an increasingly capable robot, you will learn:
the basics of analog and digital electronics by building circuits for sensing the environment and controlling movement.
how simple digital circuits (logic gates, memory registers, etc.) can be assembled into a programmable computer (we will use an Arduino microcontroller).
how a modern computer’s “operating system” (we will use Linux running ona Raspberry Pi) coordinates the execution of internal and external tasks, and how to communicate over a network.
how to work with images and sound in Python, detect features in the data, and respond with actions.
FACULTY
Adam Kampff
Course Director
Voight-Kampff, London, UK
Elena Dreosti
Course Director
University College London, UK
PROGRAMME
Day 1 – Sensors and Motors
You will learn the basics of analog and digital electronics by building circuits for sensing the environment and controlling movement. These circuits will be used to construct the foundation of your course robot; a Braitenberg Vehicle that uses simple “algorithms” to generate surprisingly complex behaviour.
Topics and Tasks:
Electronics (voltage, resistors, Ohm’s law): Build a voltage divider
Sensing (light-dependent resistors, thermistors): Build a light/temperature sensor
Movement (electro-magentism, DC motors, gears): Mount and spin your motors
Amplifying (transistors): Build a light-controlled motor
Basic Behaviour: Build a Braitenberg Vehicle
Day 2 – Microcontrollers and Programming
You will learn how simple digital circuits (logic gates, memory registers, etc.) can be assembled into a (programmable) computer. You will then attach a microcontroller to your course robot, connect it to sensors and motors, and begin to write programs that extend your robot’s behavioural ability.
Topics and Tasks:
Logic and Memory: Build a logic circuit and a flip-flop
Processors: Setup a microcontroller and attach inputs and outputs
Programming: Program a microcontroller (control flow, timers, digital IO, analog IO)
Intermediate behaviour: Design a state machine to control your course robot
Day 3 – Computers and Networks
You will learn how a modern computer’s “operating system” (Linux) coordinates the execution of internal and external tasks, and how to communicate over a network (using WiFi). You will then use Python to write a “remote-control” system for your robot by developing your own communication protocol between your robot’s Linux computer and microcontroller.
Topics and Tasks:
Operating Systems: Setup a Linux computer (Raspberry Pi)
Networking: Remotely access a computer (SSH via WiFi)
Programming: Program a Linux computer (Python)
Advanced behaviour: Build a remote control robot
Day 4 – (Machine) Vision and Audio
You will learn how grayscale and color images emerge and how to work with them in a Python environment. By mounting a camera on your robot, you can live-stream the images to your computer and develop algorithms to extract useful information.
By adding a microphone and speaker, you will learn to acquire, prcoess, and output audio data using Python.
Topics and Tasks:
Images: Open, modify, and save images
Camera: Attach and stream a camera image
Image processing: Determine differences in images
Pattern recognition: Extract features from images
Day 5 – Course Projects
You will have an entire day, with expert supervision, to develop an novel addition to your robot.
Sample Projects:
Develop a Face-tracking alogirthm to create a robot that follows you (and only you).
Use speech-recognition to control your robot with verbal commands.
Use a cluster in the cloud running an LLM to provide an intelligent (synthetic) voice to your robot.
Connect to your robot from anywhere via the worldwide web and let your friends around the world see, hear, and drive your new creation.
GENERAL INFO
Applications are currently open for students and researchers within UCL. All others can get in touch with us at info@noblackboxes.org.
Registration fee
Non-FLS: £650 per person (includes the course kit, access to online materials, full attendance, and course certificate).
FLS: £350 per person. Students and researchers within UCL’s Faculty of Life Science are eligible for a reduced fee by using a shared course kit during the course. Only 20 sponsored kits are available.
Deadline: 10 May 2025
SPONSORS
This course has been kindly supported by award from the UCL Faculty of Life Science Faculty Fund.