<p>My preferred lesson, using any board that has servo headers (and you can do it even without these), is to show them how to make a servo turn (I have a wheel attached to it ahead of time). </p>

<p>The program is fairly easy to follow for students, and there is a look of shock when it starts moving. I then tell them that they need to attach the servo along with another one to a box, and make a robot that drives forward, and they will need to add three lines of code to their program.</p>

<p>The challenge of adding the three lines is just different enough from what they have, that they will struggle, but similar enough that they can figure it out.</p>

<p>I then introduce the delay command and tell them they need to program their robot to drive around a big box.</p>

<p>This takes about an hour and a half if I prebuild the robots and it is just programming. If they are building them, add at least another 30 min.</p>

<p>The nice thing is that this acts as a great starting lesson to lead into others. Later you can give challenges that require sensors and introduce conditionals. Serial Communication can be used to make them remote control (works better if you have a board with blue tooth communication).</p>

<p>Depending on your budget there are some arduino robot kits starting around $80 that I think are a good value.</p>

CC BY-SA 3.0
2017-08-05T17:25:40.823Z
Welcome to [cseducators.se]! Quite an interesting answer. I hope we'll be hearing more from you again.
ItamarG3
CC BY-SA 3.0
2017-08-05T16:31:37.193Z
2017-08-05T16:31:37.193Z
Richard Hansen
<p>HD44780. Classic 1, 2 or 4 line LCD alphanumeric displays. The protocol is simple, getting these to work perfectly in practice is gritty (the way similar looking displays can have very different visible address space breaks etc will teach problem solving). Best get a grab bag of all kinds of sundry displays based on that chip.</p>

<p>Have someone (can be students) with some basic electronic prototyping skills wire them up - miswiring them usually leads to destroying them. </p>

CC BY-SA 3.0
2017-08-03T13:44:23.027Z
Thanks for the answer! I'd really like to have something that the students (who have little to no experience) can wire themselves, but an LCD display is a great idea also.
thesecretmaster
CC BY-SA 3.0
2017-08-03T14:03:35.673Z
The important thing NOT to do is sending ANY "high" (non-zero-voltage) signals to the display before it is powered properly. Especially keeping any pin "high" and then switching on can let the smoke out.
rackandboneman
CC BY-SA 3.0
2017-08-03T13:42:33.230Z
2017-08-03T13:42:33.230Z
rackandboneman
<p>I'm currently planning a new class at my school on prototyping with arduino (which could later morph into more pcb design). I'm stuck on my first hands on lesson. I want the students to see the capabilities of the arduino, but not do anything too complex because I'd hate to fry anything on day 1.</p>

<p>I considered the standard "blink an LED" hello world program, but that wouldn't take up an entire class period. I have an hour and a half, and all the students are using computers that have the IDE set up so I don't need to leave time for setup.</p>

<p>So, what would be a good first lesson? I haven't chosen a board yet, so please specify which board and why you've chosen that one. Wiring diagrams are welcome!</p>

CC BY-SA 3.0
2017-08-03T14:36:51.790Z
What materials and resources do you have (e.g. motors, sensors etc.)
ItamarG3
CC BY-SA 3.0
2017-08-03T15:07:16.313Z
The school hasn't bought anything yet, so I can use anything that isn't outrageously expensive.
thesecretmaster
CC BY-SA 3.0
2017-08-03T15:10:34.910Z
I see. hehe *starts formulating an answer*
ItamarG3
CC BY-SA 3.0
2017-08-03T15:16:27.883Z
@ItamarG3 Also you could do some fun stuff with non-uno boards like the primo (wifi, BLE, NFC, IR, etc.) or yun (runs openwrt linux distro) or mega (sooo many pins).
thesecretmaster
<introductory-lesson><arduino>
What's a good initial lesson for teaching arduino?
# What's a good initial lesson for teaching arduino?

(Asked by: username_0 on 2017-08-03)

I'm currently planning a new class at my school on prototyping with arduino (which could later morph into more pcb design). I'm stuck on my first hands on lesson. I want the students to see the capabilities of the arduino, but not do anything too complex because I'd hate to fry anything on day 1.

I considered the standard "blink an LED" hello world program, but that wouldn't take up an entire class period. I have an hour and a half, and all the students are using computers that have the IDE set up so I don't need to leave time for setup.

So, what would be a good first lesson? I haven't chosen a board yet, so please specify which board and why you've chosen that one. Wiring diagrams are welcome!

**Tags:** introductory-lesson, arduino

> **Comments:**
> **username_1**: What materials and resources do you have (e.g. motors, sensors etc.)  
> **username_0**: The school hasn't bought anything yet, so I can use anything that isn't outrageously expensive.  
> **username_1**: I see. hehe *starts formulating an answer*  
> **username_0**: @username_1 Also you could do some fun stuff with non-uno boards like the primo (wifi, BLE, NFC, IR, etc.) or yun (runs openwrt linux distro) or mega (sooo many pins).  

---

## 2 answers

### Answer by username_2 on 2017-08-05. Score: 4

My preferred lesson, using any board that has servo headers (and you can do it even without these), is to show them how to make a servo turn (I have a wheel attached to it ahead of time).

The program is fairly easy to follow for students, and there is a look of shock when it starts moving. I then tell them that they need to attach the servo along with another one to a box, and make a robot that drives forward, and they will need to add three lines of code to their program.

The challenge of adding the three lines is just different enough from what they have, that they will struggle, but similar enough that they can figure it out.

I then introduce the delay command and tell them they need to program their robot to drive around a big box.

This takes about an hour and a half if I prebuild the robots and it is just programming. If they are building them, add at least another 30 min.

The nice thing is that this acts as a great starting lesson to lead into others. Later you can give challenges that require sensors and introduce conditionals. Serial Communication can be used to make them remote control (works better if you have a board with blue tooth communication).

Depending on your budget there are some arduino robot kits starting around $80 that I think are a good value.

> **Comments:**
> **username_1**: Welcome to [cseducators.se]! Quite an interesting answer. I hope we'll be hearing more from you again.  

---

### Answer by username_3 on 2017-08-03. Score: 2

HD44780. Classic 1, 2 or 4 line LCD alphanumeric displays. The protocol is simple, getting these to work perfectly in practice is gritty (the way similar looking displays can have very different visible address space breaks etc will teach problem solving). Best get a grab bag of all kinds of sundry displays based on that chip.

Have someone (can be students) with some basic electronic prototyping skills wire them up - miswiring them usually leads to destroying them.

> **Comments:**
> **username_0**: Thanks for the answer! I'd really like to have something that the students (who have little to no experience) can wire themselves, but an LCD display is a great idea also.  
> **username_3**: The important thing NOT to do is sending ANY "high" (non-zero-voltage) signals to the display before it is powered properly. Especially keeping any pin "high" and then switching on can let the smoke out.  

---

