1 of 52

2 of 52

Morning Session

09:00 Welcome & Lesson 1: Introduction

An introduction to us, the grove board, microcontrollers and the XOD IDE

10:00 Break

10:30 Lessons 2 & 3: Getting Started & Explore XOD

Get started with using your board. We’ll start with some simple tasks like

flashing an LED, pressing a button and sounding a buzzer

Get to grips with some of the most useful nodes in XOD

12:00 Lunch

3 of 52

4 of 52

5 of 52

Before we Start

1 Downloaded the XOD Software

www.xod.io

2 Downloaded the No-Code Programming Beginner’s Guide

www.biomaker.org/nocode-programming-for-biology-handbook

3 Installed USB Drivers (if required)

www.silabs.com/developers/usb-to-uart-bridge-vcp-drivers

6 of 52

The Starter Kit

7 of 52

1 LED

2 Buzzer

3 OLED Screen

4 Button

7 Sound Sensor

8 Temperature

and Humidity

Sensor

10 3-Axis

Acceleration

Sensor

6 Light Sensor

9 Air Pressure Sensor

5 Rotary Potentiometer

11 Grove Seeeduino

Microcontroller

8 of 52

The Microcontroller

9 of 52

A0-A6 Analog

D0-D13 Digital

I2C I2C (require address)

10 of 52

11 of 52

The XOD IDE

12 of 52

1 Your Patch

2 Project

Browser:

Buttons

New

Patch

Add

Library

3 Project

Browser:

Project

Patches

4 Project

Browser:

Libraries

5 Inspector

Upload

Upload

And

Debug

7 Upload Buttons

6 Quick Help

13 of 52

Nodes

Pins

Links

14 of 52

Byte

String

Pins

Pulse

Boolean

Number

Port

15 of 52

Break

30min

16 of 52

Testing Your Board

17 of 52

Try it Yourself – 20min

1 Work in small groups (introduce yourselves if necessary)

2 Complete Task 1

3 Step-by-step instructions are in the Guide (p20-25)

4 Ask if you need help

18 of 52

Inputs and Outputs

19 of 52

Try it Yourself – 20min

1 Work through Task 2 in groups

2 Step-by-step instructions are in the Guide (p26-29)

3 Ask if you need help

20 of 52

Congratulations!

You can now programme

an Arduino Board!

21 of 52

Tweak and

Watch Nodes

22 of 52

23 of 52

24 of 52

Flip, Clock and

Count Nodes

25 of 52

26 of 52

27 of 52

Concat, Join and

Format-Number Nodes

28 of 52

29 of 52

30 of 52

Lunch

60min

31 of 52

Afternoon Session

13:00 Lesson 4: Building Devices

Learn how to make more complex programmes in XOD using logic nodes,

sequences and loops.

15:00 Break

15:30 Lesson 5: Next Steps

Learn how to expand your programming and hardware building capabilities to start

building your own devices, and take a look at some previous projects.

16:25 Round-Up

32 of 52

Creating New Nodes

33 of 52

34 of 52

Try it Yourself – 15min

1 Work though Task 6 in groups

2 Step-by-step instructions are in the Guide (p50-54)

3 Ask if you need help

35 of 52

Using Buses

36 of 52

37 of 52

Try it Yourself – 5min

1 Modify your write-text-to-oled node so that the

ssd1306-oled-i2c-device DEV pin is linked to each of

the other DEV pins by a bus rather than by links.

2 There is an example of this on p57 of the guide.

3 Ask if you need help

(Task 7 of the guide provides another task to practice this if you have time)

38 of 52

Logic Programmes

39 of 52

40 of 52

Try it Yourself – 20min

1 Work though Task 8 in groups

2 Step-by-step instructions are in the Guide (p60-63)

3 Ask if you need help

41 of 52

Sequences and Loops

42 of 52

43 of 52

Try it Yourself – 20min

1 Work though Task 9 in groups

2 Step-by-step instructions are in the Guide (p64-70)

3 Ask if you need help

44 of 52

Expanding

Your Capacity

45 of 52

Expanding Your Capacity

Wires

Shields

Breakout Boards

46 of 52

Plug-and-Play Components

Plug directly into white sockets

on the board

Plug into Open Smart Expansion Shield

(or use JST PH to JST XH cables)

Plug directly (STEMMA 4 pin)

Plug with JST PH to JST SH cable (STEMMA QT 4 pin)

47 of 52

Wired Breakout Boards

Connect using expansion shield or Grove-to-female wires (make sure pin labels match up)

Solder pins to board. Connect using Grove-to-female wires (make sure pin labels match up)

48 of 52

Finding XOD Nodes

Search using ‘reference designator’

e.g. BMP280 (barometer) or SSD1306 (OLED screen)

49 of 52

Arduino IDE

Arduino provides it’s own free IDE software, which uses C++ coding language to programme the board.

www.arduino.cc/en/software

Converting Arduino libraries for use in XOD

bit.ly/arduino-to-xod

Combining XOD and Arduino IDE

XOD menu > Deploy > ‘Show Code for Arduino’

More complex programming

www.arduino.cc/en/Tutorial/HomePage

50 of 52

Case Studies

51 of 52

Open Source Microbial Bioreactor

Behavioural Chamber to Evaluate Rodent Forelimb Grasping

Camera for Monitoring Plant Pollination Events

eCO-SENSE: Soil Sensors Powered by Plant Photosynthesis

52 of 52

Breakout Groups – 10min

1 In groups, pick and read through a case study (p80-83)

2 Discuss which case study you find most interesting

3 What instruments might be useful in your own research?

4 Think about how you might us what you’ve learned to

build your own instrument – what additional hardware

and programming skills would you need?