Welcome to BuffaloLabs!

In this age of technology it seems important that children are not only consumers of technology but also learn to be creative with technology. There is a growing movement around Open Source Hardware that enables kids and adults to learn how things work and how we can make cool stuff. A great platform to get started with is called Arduino, a popular micro-controller that can be programmed from a computer.

We are running classes at different locations, for groups of 3 to 6 kids, from 6 years old. We also do sessions at your house if you can get a group of kids together.

BuffaloLabs Mui Wo, South Lantau

BuffaloLabs’ home base: we’ve been running kids workshops here since April 2015. Currently 5 groups from 6 to 12 years old. ONGOING – contact us if you’re interested to join. Link to General Terms.

IMG_20150428_165415232IMG_20160510_101640366 IMG-20171114-WA0000 - EditedIMG_0782

DSL Junior Makers, Sheung Wan

From October 2015 to June 2017 we ran a series of 40+ workshops for a group of 8-10 year old kids at Dim Sum Labs in Sheung Wan on Saturday mornings. More info on the DSL website here and here. Contact us if interested.


Other locations upon request

Apart from the above locations, we are also have organised regular sessions at kids’ homes on Hong Kong island, weekly or monthly. Contact us if you can bring together a group of 3-6 kids.

IMG_20161117_171716217 (1)

Or contact us to discuss a customised workshop for your group.


Here is a collection of slides that shows the topics we cover and some example projects we build:

Below are examples of the first 12 sessions held in April-June 2015, and more recent projects of 2016 at the bottom.

Session 1: introduction to electronic components

gear: battery, breadboard, jumper wires, LED, resistor, 7-segment LED, piezo buzzer (single tone), button
project: connect LEDs on breadboard, use resistor, connect buzzer, use on/off button, connect 7-segment LED

IMG_20150401_171935757 IMG_20150401_171818458

Session 2: build a simple game ‘hit minus’ on a breadboard

gear: as above (except for a variable buzzer), plus ATmega328 chip programmed with game sketch
project: connect all the wires according to the schematics; the segments on the LED light up one by one, you can adjust the speed with the potentiometer, you have to hit the button when the middle segment is on


Session 3: use an OLED display with a temperature and humidity sensor, and to play ping pong

gear: as above, plus OLED display and DHT11 sensor
project: use an OLED display to show temperature and humidity, or play the ping pong game!

IMG_20150423_184540421IMG_20150423_151734505arduino-pong (3)

Session 5: potentiometers and simple synthesizer

gear: as above, plus speaker and second potentiometer
project: experiment with potentiometer and 2 LEDs, then build a simplified Auduino granular synthesizer

IMG_20150507_100648643  IMG_20150505_131133664 IMG_20150507_123243894

Session 6: LDR and servo

gear: as above, plus Light Dependent Resistor and servo motor
project: experiment with LDR and LED, and build a light sensor that activates a servo to open/close something e.g. Lego garbage bin

IMG_20150507_124113107IMG_20150507_094905230 IMG_20150507_094916830IMG_20150512_112552844IMG_20150518_162958567

Session 7: ultrasonic distance on servo

gear: as above, plus ultrasonic range finder
project: a simple robot: a distance sensor mounted on a servo, moving 180 degrees, displaying distance to objects on OLED screen


Session 8: infrared remote TV-B-Gone

gear: infrared LED, NPN transitor, 16MHz crystal
project: build an infrared remote control that can switch of most TVs (ATmega328 version of the famous TV-B-Gone project)


Session 9: PIR alarm

gear: same as above, with PIR (passive infrared motion sensor)
project: build an alarm system which sounds when motion detected



Session 10: first soldering

gear: soldering set (soldering iron, soldering wire, 3rd hand)
project: learn how to solder: fixing a DIP socket on a perf board


Session 11: my first Arduino board

gear: Arduino style board (plus all components used before)
project: start from the standard ‘Blink’ sketch to experiment with DigitalWrite and delay, and add a potentiometer for analogRead.

Session 12: Arduino board projects

gear: all above
project: build your favourite project of the above using the Arduino board and upload the sketch over USB


Some of our projects of 2016:

2 servos making a walking insect


joystick to control motor speed and servo


variable motor speed on segment LED and motor spinning on its axis


IMG_20150922_174558866 (1)

fruit piano using capacitive sensors

battery voltage tester


wire loop game with timer, start and finish sensor


RGB LED colour mixer

IMG_20151026_184613460 (1)

binary numbers with 4 LED bits

IMG_20151123_110124934 (2)

Pong game (1 player)

arduino-pong (2)

Morse decoder to practice your Morse


simple phone with SIM800 – also available in a wooden box


arduino phone with OLED screen


digital FM radio with SIM800


remote control phone with SIM800 (DTMF)

IMG_20160228_123938496 (2)

wifi hotspot with web server to control RGB LED


arduino spectrum analyser and light organ


servo insect


wire loop game on laser cutter engraved board

IMG_20160607_181736645 (1)

stereo speaker in wooden box – full details see here


Arduino Uno’s with breadboard on (recycled) floor board, ready for some tinkering!