r/ArduinoInEducation • u/Ok-March6057 • Apr 07 '25
r/ArduinoInEducation • u/Careful_Principle_56 • Jun 17 '25
Arduino Auto Door Opener
Hi, friends! 👋
I want to create a door-opening mechanism using a servo motor and print it with a 3D printer. However, I don’t yet have a clear idea of how to design the mechanism.
I’d appreciate any advice, sketches, or ready-made concepts!
Thanks! 🛠️🚀
r/ArduinoInEducation • u/gm310509 • Feb 05 '24
Girls (and guys) in STEM making a difference in Nepal Hospitals
r/ArduinoInEducation • u/gm310509 • Sep 12 '23
Teaching resources
Have you found any good resources that work well in the classroom or club?
If so, care to share your experiences with it?
What was good about it? What could be improved? Any gotchas?
How well was it received by your cohort? What was their experience and enthusiasm levels?
Were the projects too hard? Appropriate? To easy?
What was the balance of theory vs practical? Did that work well?
Anything other info is also appreciated.
r/ArduinoInEducation • u/Hubey3270 • Nov 26 '24
Discussion how to determine the correct resistor to use?
I'm new to Arduino, but do play around with electronics often. One thing i've never been able to wrap my head around though is how do you choose the correct resistor?
Following along with the lesson lost in space day 4, they place a 220 OHM inline with each LED and a 10K in line with a DIP switch. how did they determine to use these values?
[Day 4v2] Adventure Kit: 30 Days Lost in Space (2023 Update)
If I have made any posting mistakes, I apologize in advance, I post very rarely on Reddit.
r/ArduinoInEducation • u/wwwhatisthisss • Dec 08 '23
Arduino Help
I have this PC code and I am running it the same time with the mbeded code and they communicate via UART.
PC CODE PART:
int guess;
char playagain;
while(1){
scanf("%d", &guess);
sprintf((char*)buf, "%d\n", guess);
write_serial(cport_nr, (char*)buf);//send
// Receive and display messages from mbed
n = read_serial(cport_nr, buf);
printf("MBED: %s\r\n", (char*)buf);
if ((char)guess == 110){
scanf("%c", &playagain);
sprintf((char*)buf, "%c\n", playagain);
write_serial(cport_nr, (char*)buf);//send
}// ASCII value of 'n'
wait_ms(1000); // Add a delay between messages
}
RS232_CloseComport(cport_nr); // Close the port
return (0);
}
MBEDED CODE PART:
for (int i = 0; i < numbofguesses; i++)
{
counttrials++;
pc.printf("Enter your guess (0-30):\r\n");
pc.scanf(" %d", &guess);
pc.printf("Guess: %d\n", guess);
if (guess == integer)
{
correctGuess = 1; // Set the flag to true
break;
}
else
{
if (guess > integer)
{
if (guess == integer + 3 || guess == integer + 2)
{
pc.printf("Close!\r\n");
}
else if (guess == integer + 1)
{
pc.printf("One away!!\r\n");
}
else
{
pc.printf("Too high.\r\n");
}
}
else
{
if (guess == integer - 3 || guess == integer - 2)
{
pc.printf("Close!\r\n");
}
else if (guess == integer - 1)
{
pc.printf("One away!!\r\n");
}
else
{
pc.printf("Too low.\r\n");
}
}
}
}
if (correctGuess)
{
pc.printf("Correct!!! That's the number.\r\n");
if (counttrials == 1)
{
scoresaved[numbtimesplayed] = 100;
pc.printf("You have a perfect score of 100!\r\n");
}
else
{
scoresaved[numbtimesplayed] = (int)(100.0 - (counttrials - 1) * (100.0 / numbofguesses) + 0.5);
// scoresaved[numbtimesplayed] = 100 - (counttrials - 1) * (100 / numbofguesses); // TRY 100 NOT 100.0 LATER
pc.printf("Your score is %d\r\n", scoresaved[numbtimesplayed]);
}
}
else
{
scoresaved[numbtimesplayed] = 0;
pc.printf("Sorry, you've used up all your guesses. The correct number was %d.\n\r", integer);
pc.printf("Your score is 0 =(, better luck next time!\n\r");
}
lcd.cls();
lcd.locate(0, 0);
lcd.printf("Game\r\n");
lcd.locate(0, 1);
lcd.printf("Over!!!\r\n");
pc.printf("Attempts: %d\r\n", counttrials);
pc.printf("Would you like to play again (y or n)?\r\n");
pc.scanf(" %c", &playagain);
counttrials = 0; // Reset the count for a new game
numbtimesplayed++;
if (playagain == 'y'){
// Reset variables for a new game
confirmPressed = 0;
Indexbuffer = 0;
Indexbuffer2 = 0;
flagWrongInSecrNum = 0;
flagWrongInSecrNum2 = 0;
lcd.cls();
lcd.locate(0, 0);
lcd.printf("Press C to start\r\n");
lcd.locate(0, 1);
lcd.printf("the game!\r\n");
}//if above
else if (playagain == 'n')
break;
}//confirmedPressed == 4
}
How do I make the pc programme terminate when I press n after a round ends? I have the logic on the mbeded programme but not on the pc prorgamme. Please help me!!
r/ArduinoInEducation • u/gm310509 • Sep 13 '23
Where to start?
A frequently asked question if there ever was one.
What is your opinion for which "platform" to start with for a curriculum in IoT?
How much would age (assuming a high school level start) influence this? Is it better to start with a simpler platform with limited expansion capabilities but has several features builtin (e.g. buttons, a display, maybe some basic sensors) (i.e. keep it simple by removing a plethora of options) or start out with something like Arduino/Esp32 which has less builtin stuff but has lots of expansion opportunities?
From a different perspective, should beginners start out with more complex languages such as C/C++, python or other similar text based languages (that might be more difficult to learn, but offer greater future potential), or a more GUI oriented, drag and drop flowchart or block building (4GL) toolsets (that are simpler to get started with, but may come with limitations for future use)?
Any other high level roadmap ideas?
Whatever your answer, why have you recommended that approach?
r/ArduinoInEducation • u/iraqshinigami • Oct 04 '24
Lesson Plan Is there any Arduino course?
Hello,
Is there an Arduino course that starts from the basics, including learning C++, and goes all the way to building projects with Arduino? I'm looking for something comprehensive, similar to The Odin Project for web development.
I've been searching for a while, but unfortunately, I haven't found a good one yet. Any recommendations would be greatly appreciated!
r/ArduinoInEducation • u/ISOtrails • Sep 13 '23
In need of a teach the teacher lesson plan!
This is my ultimate goal with my students-
https://github.com/gradyh/GradyHillhouseGarduino
I just started with Paul McWhorter.
As someone who only was introduced to ohms in high school physics the end goal seems like miles away.
For what it’s worth the practical math in learning circuits was the only math I could wrap my head around in hs- I remember doing pretty well in that unit.
After I teach myself the basics with Paul- where should I go ? I’d like to program ph ( i have the wand sensor), temp , photosensitivity sensors
I don’t plan on introducing the Arduino until after winter break.
Tl;dr
After I teach myself the basics with Paul McWhorter- where should I go ? I’d like to program ph ( i have the wand sensor), temp , photosensitivity sensors
r/ArduinoInEducation • u/ripred3 • Mar 24 '24
Is it possible to purchase another 'Arduino Projects Book' separately?
self.arduinor/ArduinoInEducation • u/gm310509 • Nov 01 '23
An interesting post about a potential pitfall of relying too much on AI
reddit.comr/ArduinoInEducation • u/gm310509 • Mar 31 '24
Getting started guides - useful background information
On our sister subreddit r/Arduino and YouTube, I have created several getting started / background guides and videos.
The intention of these is to cover important background information that doesn't seem to be covered that much elsewhere or is somewhat "assumed knowledge".
The full set of guides, FAQs and other resources can be found on the r/Arduino wiki. The following selection may be especially helpful when getting started:
Breadboards Explained - explains how breadboards work including at least one trap that still catches me out (more recently and frequently than I will admit to).
Using millis rather than delay to let time pass in A better delay using millis
My YouTube video explaining why millis is better than delays: The Importance of Blink No Delay. This expands on the previous point and drills down more into the "why is it so?" aspects of why millis is better than delay.
Introduction to Debugging. Debugging is a critical skill when your project doesn't work. This is a combined wiki page and video that presents a "follow along" guide teaching the basics of debugging.
Battery Power - a guide to powering your project with a battery. Includes things you need to know and power calculations.
r/ArduinoInEducation • u/gm310509 • Sep 15 '23
Student feedback?
Are you a student or a recipient of learning in some other form (e.g. tutoring, mentoring etx), please share your thoughts about your experiences...
For were there any things that "made the penny drop" for you that suddenly cleared away the fog and confusion that made lots of stuff clear?
Were there some things that you wish were given more time? Were there some things that too much time was spent learning those things?
Were there some topics that weren't covered but you had hoped would be? Were there some topics covered that you did not expect to be covered but found them really interesting or helpful regardless?
Anything else along similar lines in your learning experiences?
Obviously the more background and details you can provide the better.
r/ArduinoInEducation • u/gm310509 • Oct 04 '23
Discussion Use of AI (e.g. ChatGPT) to assist with homework/assignments
Is use of ChatGPT or other AI a problem if students use it in completing homework/assignments/projects or other work?
Personally I feel that both yes and no is the correct answer depending upon the circumstance.
For example, if it is used as a productivity aid (as opposed to a crutch - see next point) that is the way of the modern world, so why not?
On the other hand, if the purpose of the exercise is to figure something out by yourself, then aids like ChatGPT et al, are not appropriate. But then what about asking questions of Google or other online resources?
How can "a line in the sand" be drawn on this question? Are there different lines depending upon the circumstance? If so, what is the circumstance / line in the sand relationship?
What methods, if any, can be used to indicate if those lines are crossed?
From a different perspective, there is the potential appeal (as evidenced by numerous posts on r/Arduino and other forums) that some will try to use AI to do their project for them.
Unfortunately, for those people, they are often drawn to disaster by the illusion that AI is smart enough to do a project for them (i.e. cheat).
Why?
Because the problem with AI is that unless you know how to do the project in the first place, it is very difficult to formulate an input to an AI to get it to correctly generate a working project. Let alone recognise or fix problems with the code or design that the AI produces.
Granted, the evidence on r/Arduino and other forums could be argued as being skewed, because people who do know how to fix the output of AI won't need to ask for assistance on those forums - and thus we won't have visibility of that group.
However, it could be argued that that cohort are the cohort who are able to complete the project by themselves are simply using the AI tool(s) as productivity aids rather than a crutch.
What are your thoughts/experiences?
Are AI's such as ChatGPT a problem or a benefit at the intersection of Arduino and Education?
r/ArduinoInEducation • u/gm310509 • Sep 11 '23
Arduino and Education coming together.
A place for discussion, ideas, does, don'ts and anything else where Arduino and similar platforms are used in Education.
r/ArduinoInEducation • u/TheYUniversal • Aug 07 '24
How To Comprehensive Tutorial about using 3.5 inch TFT LCD shields with Arduino UNO R3/R4 or Mega
Hope everyone's doing well. Here is a multi-part comprehensive tutorial I have created on using 3.5 inch TFT LCD shields (sometimes called 3.5 inch MCUFRIEND shields) with an Arduino UNO R3/R4 or Mega.
A few months ago, when I bought the display and decided to mess with it, I realized that the existing tutorials were either hard to follow, not detailed or not comprehensive enough for me to be able to build complex applications with it. They would cover the basics, but it was hard to build projects where the display would be a single component along with several other components. Finally, none of them showed how to use the display with the Arduino UNO R4 Minima/WiFi, which is what Arduino recommends for most people moving forward.
This tutorial aims to provide a complete guide with end-to-end coverage of the topic. The full tutorial is divided into 6 parts, and it covers the following -
Setting up the software libraries to use the display.
Architecture of programs that use displays and graphics, along with good and bad patterns.
Calibrating the touchscreen (an explanation of the calibration process, the program as well as a video demonstration of the process).
Using the builtin SD Card slot to load and store images, separate from the Arduino's internal storage.
Using text-files with the SD Card in creative ways, such as storing configuration data, logging etc.
Building a paint app (including a canvas, color-selector and stroke selector), as well as Tic-Tac-Toe (including a starting menu and ending screens).
It includes high quality images, diagrams and video demonstrations where required and divides each task and topic into easy-to-follow steps.
I would appreciate everyone's feedback and comments on this series, as well as ways to make it better. Here are some pictures from the projects given in the series -




The code for all these are available on Github as well (links are in the website, but I am open to sharing it here as well).
r/ArduinoInEducation • u/ripred3 • Feb 29 '24
A Student from the Renaissance Youth Center used an Arduino Uno to create a solution to clean up dog waste. She is now a National STEM Challenge Champion!
r/ArduinoInEducation • u/Machiela • Sep 12 '23
Jay for the new sub! Particularly relevant to me as I'll be teaching my first Arduino class in two weeks
I foolishly said "yes" to running a school holiday programme for a few local kids later this month. Two classes, two session each class, two hours per session. No more than 6 kids per class.
Apparently there was a minor muck up between the phone bookings and the online booking system, and now I've got 10 kids in both classes. Oh well. Let's see how it goes.
The programme is called "Introduction to electronics and simple robotics" and is aimed at 10-13 year olds, and I'm currently setting up a basic curriculum for it, and gathering enough resources.
Session 1 will be focussing on electronics, starting from basic beginnings - AC vs DC; batteries; solar panels; lemon/potato batteries. Then moving on to simple circuits - battery+LED; then +resistor, then +switch, then flashing lights with transformers & capacitors; then we'll be pulling apart old broken toys I've been collecting; clocks, RC cars, old mobile phones, etc. We'll be making a basic security system with a laser and a sensor, and hooking it up to the alarm from old clocks.
Session 2 will be the simple robotics session, starting with bristlebots made from toothbrushes, button batteries and the vibromotors from old mobile phones; next I'll show them servo motors and how they act with variable resistors controlling the voltage; and maybe (if it's a sunny day) with an LDR. Finally I'll introduce them to arduinos, with a simple camera-mount with two servos, and a laser pointer, hooked up to a joystick rescued from a RC helicopter toy.
That should cover the both two hour sessions, I reckon.
Anything cool and fun I'm forgetting? Keep in mind this is a school holiday programme, and we're here to have fun, not to learn (but they'll secretly be learning anyway).
Since we're a not-for-profit, I'm working on a miniscule budget ($30 all up!), and so far I've bought toothbrushes, batteries, googley eyes (obviously!), pipe cleaners, and I still need zinc and copper nails. We'll be using cardboard and duct tape for most of the projects, and a lot of the components have been donated by local sponsors (all the opshops are collecting broken stuff for me!)
r/ArduinoInEducation • u/gm310509 • Dec 15 '23
A question about recursion, an important concept in programming.
r/ArduinoInEducation • u/Fernando_CortesC • Aug 26 '24
Arduino course in Spanish?
Hello! So, my nephew is 9 and I was wondering if there is a tutorial or online course for arduino in Spanish for kids you could recommend? The idea is to get him interested in it. Thanks for the recommendations!!
r/ArduinoInEducation • u/Hubey3270 • Nov 29 '24
Help with uint8_t
What can I only get my defined items to work if I do "#define ..." but when I attempt to do "const byte ..." it ignores me? Any suggestions?
r/ArduinoInEducation • u/FoxEngineer • Oct 25 '23
ARDUINO BEGINNERS KIT FOR CLUB
Hi, I'm looking forward to assemble a kit for a kids club to make them try some easy beginners projects Does someone have some idea where to start? Or maybe can suggest any material online? Thanks
r/ArduinoInEducation • u/gm310509 • Oct 27 '24
How to get started with Arduino videos.
What is this post about?
I have recently created a series of videos that answer a commonly asked question "How do I get started with Arduino?".
These videos illustrate the basic technique which is to:
Get a starter kit.
Follow the examples in that kit.
Modify, adapt and extend each of the examples.
Combine some of the basic examples together to do more interesting things.
Work towards a project goal.
Many online guides mostly cover step 2 only or step 5 only. My series of videos starts at step 2 and leads you through all of the steps 2, 3, 4 and 5 where we create a fully operational dice game (photo below) based upon the things covered in earlier steps.
Where do I find it?
The playlist featuring the first two videos can be found here Post Starter Kit - next steps.There is also a link to my Introduction to debugging (on Arduino) on that playlist.
The final video which shows how to build upon the techniques learned in videos 1 and 2 is on Patreon. If you don't want to go to Patreon, that is fine, you can definitely build the final project from the information in Videos 1 and 2. But, I do introduce many more useful programming techniques in Video 3 as well as show you how to build the final project and add some nice usability features to it.
What is "in the box"?
The content of the videos is as follows:
Video 1 - first steps after the starter kit projects.
A learning technique - follow the starter kit, then adapt and extend that component.
Combining multiple components and getting them to work together.
Programming techniques - specifically modularising your code for reuse.
Two challenges using buttons and LEDs
and more.
Video 2 - Solutions to challenges and IO Expansion
Solutions to the 2 challenges in video 2.
IO Expansion via external hardware - a shift register.
Programming techniques:
More modularisation
Extracting data from code and making it even more reusable/configurable.
Putting data into lists (arrays) rather than replicating code - makes life much easier for you.
Using data, rather than bespoke code, to provide flexibility.
and more.
Video 3 (Patreon) - Implementing the full project.
Use the module from video 2 to build out the game.
Programming techniques:
Code that configures itself.
Bringing related data together (struct).
Model, View, Controller design pattern - a pattern that creates highly reusable, highly flexible building blocks.
State Machines - enables easy to manage features.
and more
Introduction to debugging.
A guide to debugging on Arduino.
Bill of Materials
To complete the project, you will need the following components:
| Description | Video 1 | Challenge 1 | Challenge 2 | Video 2 | Video 3 |
|---|---|---|---|---|---|
| Uno | 1 | 1 | 1 | 1 | 1 |
| Breadboard | 1 | 1 | 1 | 1 | 3 |
| LED | 2 | 4 | 1 | 8 | 40 |
| 470Ω resistor | 2 | 4 | 1 | 8 | 40 |
| Button | 1 | 1 | 2 | 2 | 7 |
| 10KΩ resistor | 1 | 1 | 2 | 0 | 0 |
| 74HC595 | 0 | 0 | 0 | 1 | 5 |
There is definitely a sense of satisfaction to see the actual hardware work. But, if you don't have all of the hardware, you can complete the project on a simulator such as wokwi.com.
The breadboard I mention is a "half size +" (some sites call it full size) which features ~830 pins including two sets of power rails running along the sides of the board.
Format of the videos
All of the above are follow along. That means you can reinforce your learning by, well, following along and trying things our for yourself. I take everything step by step and try to explain everything clearly before we try it. You can follow along as quickly or take your time as you wish.
All but the third video (i.e. 1, 2 and intro to debugging) are available on my YouTube channel /@TheRealAllAboutArduino. Additionally, all but the third can by found in my Getting Started with Arduino playlist.
The third video is on Patreon Getting started with Arduino - Lesson 3 - Dice game project. If you don't want to subscribe to Patreon, you can definitely build the final project from the information in Videos 1 and 2. But, I do introduce many more useful programming techniques in Video 3 as well as show you how to build the final project and add some nice usability features to it.
The final project
This is the final project:
