Overview, Introduction & Prerequisites:
This is a repository of Hardware that is used with the Robots & Rovers... Mostly
Prerequisites:
No explicit prerequisite course work, Electronics, Logic, or coding knowledge is required. Come as you are. 🧠
Topics:
Random Robot / Rovers Hardware
iRobot Motors
I'm a huge supporter of Open Source and Creative Commons resources. This is another way of saying Free, Equitable and Accessible resources... 📽️ 🎧 📰 📖 📝🛠️ 🖼️ - Want to Support Me on this endeavor?
Let's get started... Its going to be a wild, fun, awesome ride...
Web Site: WWW.STEAMCLOWN.ORG | Contact: TopClown@STEAMClown.org | LinkedIn: Jim Burnham | TikTok: STEAM Clown
Consider Supporting my Open Source STEAM Curriculum Development -- Patrion: Jim The STEAM Clown | Amazon: Amazon Classroom Wishlist,
Note: TEACHERS!!!! If you are going to use any of these lessons or labs, please let me know. I would really like to understand how you are using this material. I want to know what works, what does not work, what would you like me to add, and how I can make it better. If you changed something, let me know, because it's probably a good idea and you should share it with me, so I can add it and share with everyone else.
This Module or lesson is how I teach in my class. Many of the lessons might be specific to my class, but you could probably adjust them for your class. I'll try to make them a neutral as I can, so they can be used in any Mathematics, Physics, Computer Science, or any other Engineering / Technology class. Let me know how I can make that better. I'll try to keep this unit current and relevant. Please let me know if any resource links are broken or not accessible.
Send me email at TopClown@STEAMClown.org You can also Join the STEAM Clown's Mailing List. If you want to Unsubscribe, click my Unsubscribe From Mailing List link
Author: Jim Burnham - TopClown@STEAMClown.org. License: Distributed as Open Source.
I would like to thank <Your Company or Organization Here> for their generous support of my classroom and curriculum development. <Your Company or Organization Here> has <Your value proposition, call to action, & related content and message>
(If you would like to sponsor this, or other Modules or presentation, please contact TopClown@STEAMClown.org or check out my "How To Help Page"
If you would like to sponsor other Curriculum Development, check out my "How To Help Page" or contact TopClown@STEAMClown.org
No explicit prerequisite course work or coding knowledge is required, but students are expected to have a good understanding of basic computer principles.
Primer: "Aaron, I can imagine no way in which this thing could be considered anywhere remotely close to safe. All I know is I spent six hours in there and I'm still alive... You still want to do it?"
As with any activity, please make sure you are using appropriate safety equipment. If you are coding, writing, reading, or working a lab, make sure you stand up and stretch every hour or so, Please consider any safety issues connecting to a Raspberry Pi, Arduino, computers and other electronic equipment.
What is the value of a professional network?
Which is more important, "Who you know" or "What you know"?
What is “LinkedIn”
First Impression
Professional Profile
Networking?
Omni is a poor fit for grass.
Mecanum (4 wheels, with a pivoting axle or suspension) works, but expect weak strafing.
Swerve if omnidirectional performance outdoors is the main goal.
Skid steer with the plain hub tires if you mostly just need to go places and turn in place. <-- Most Differential Drive rovers are "Skid" Drive.
Pro-Tip: When you open the iRobot vacuum, you can desolder the motor female connector fairly easily. Then you can use it later to solder wire to, and then still slip on the PCB.
A = Motor A - These A/B pins would connect to your motor controller Motor pins, and you would control them with your In1, In2, EnB on a standard motor controller. The motor voltage can be 12v... though I would run them at around 9v
B = Motor B
5V = 5v from some 5v supply. Most of our Rover builds will have a Battery-2-5volt DC/DC regulator.
ENC = HallEfect sensor (low) for Encoder value, The hall effect actually switch from GND to "floating" so it is safe to connect to the 3.3 Raspberry Pi pins.
WD(not) = Switch (Active Low) Switch to
GND = Ground
See a good YouTube - Hacking Robot Vacuum (Roomba) Wheel and Motor Modules for Raspberry Pi or Arduino Robot Project
Hall Effect Sensor:
Question: For a hall effect sensor, what does it mean when doc say it switched between GND and "floating" so it's safe to connect to a 5 Arduino or a 3,3 Raspberry Pi input?
Answer: What they’re describing is an open-collector (or open-drain) output, and the wording “switches between GND and floating” is the key clue.
The Hall effect sensor does NOT drive the output high. Instead, it behaves like this:
Active state: internally connects the output pin to GND (0V)
Inactive state: disconnects the output pin → it becomes floating (high impedance)
So the sensor only ever pulls the line LOW, never pushes it HIGH.
Because you control the HIGH voltage, not the sensor.
You add a pull-up resistor to whatever voltage your system uses:
On an Arduino Uno → pull-up to 5V
On a Raspberry Pi 4 → pull-up to 3.3V
The sensor just pulls the line down to ground when triggered.
When it’s “floating,” the pull-up resistor brings the line up to your logic voltage.
👉 That means:
The sensor never outputs 5V or 3.3V directly
So it can’t over-voltage your Pi’s GPIO (which is critical—Pi pins are NOT 5V tolerant)
Vcc (sensor power)
|
[Hall Sensor] ENC pin
|
+-----> GPIO input
|
[Pull-up resistor]
|
+3.3V (Pi) OR +5V (Arduino)
This design is popular because it enables:
Level shifting for free (same sensor works at different voltages)
Multiple devices on one line (wired-AND behavior)
Safer interfacing with mixed-voltage systems
Don’t leave it truly floating:
You must use a pull-up resistor (typically 4.7kΩ–10kΩ), OR
Enable the microcontroller’s internal pull-up
Otherwise, your input will read random noise.
If you are a teacher and want to connect and teach this Lesson or Module, discuss how I teach it, give me feedback, please contact me at TopClown@STEAMClown.org
To access this Lesson Plan and the Teacher collaboration area, you will have needed to connect with me so I can Share the content with you. Please go to the Teachers & Partner Page, check out my Licensing and fill out my Collaboration and Curriculum Request Form. I'll review and then grant you access to the requested areas and lesson plans if they exist.
If you have questions or feedback on how I can make a presentation, lesson, lab better please give use my Feedback Form.
I’ll work on getting these in, but it’s the last thing I want to work on :-) When I have them updated, I’ll move to the top of the Lesson Plan.
NGSS: <list standard numbers>
California CTE Standards: <list standard numbers>
Related Instructional Objectives (SWBAT): <list standard numbers>
CCSS: nnn, RSIT: nnn, RLST: nnn, WS: nnn, WHSST: nnn, A-CED: nnn, ETS: nnn <list standard numbers>
Main Standard:
Priority standards:
National Standards:
Reference Text Book - Basic College Mathematics with Early Integers 4th edition - Elayn Martin-Gay - University of New Orleans - Pearson
Reference Sites -
https://imgbin.com/png/ZJtzkYZZ/under-construction-png
Key: 📰 Slides / Audio 🎧 / 📽️▶️ Video/YouTube / 🎧▶️📽️ Audio/Video / ✨ Resources / 🖼️ Tutorial / 📖 Reading Activity / 📝 Writing Activity / 📖 📝 Reading/Writing / 📟 Coding / 🛠️ LAB Activity / 🚀 Quiz / 🔎 Review / ✔️ Mastery Check / ✍️ Sign Up /🍕 Extra Credit / 🕸️ Web Links / 👩🏽🎓🧑🏽🎓🧑🏿🎓👩🏫 Class / 🏵️📜📃 Certificate / 🗂️ 📈 Collecting Survey Data
/🧟 Review / 🦾 Practice / 🆙Level Up /
🎚️🦑📤🎯 🚧
- 🦑 Special Project -
Assignment Type: ⚓ Establishing (Minimum Standard) / ⛏️ Developing (Digging Deeper) / 💎 Aspiring (Putting It Together)
This is an ⚓ Establishing Assignment (Minimum Standard) - "Everyone Do" Assignment
This is an ⛏️ Developing (Digging Deeper) - "Everyone Should Do, To Stretch" Assignment
This is an 💎 Aspiring (Putting It Together) - "When you have done the ⚓ Establishing and⛏️ Developing" Assignment
🚀 Formative Quiz - 🔎 Review
🚀 Quiz -🔀 Mastery Path
🚀 Summative Quiz -✔️ Skills Mastery Check
Quiz - verify that they are all listed as a "Formative", "Mastery Path", or "Summative"
🚀 Formative Quiz - These are quizzes that the students can take a few times. I have them either set for unlimited times, or 3-5 times, where the final score is their average. The idea is that these Formative Quizzes are designed for students to learn and master a skill. while I want them to ger 100%, and when it's set to unlimited tries, the student should get 100% eventually. When the quiz is set to 3-5 tries with an average, then they should be prepared and should take the quiz seriously. I set the quiz to not show the right answer, but I do let them see their wrong answer. I also put the explanation of the right and wrong answer in the right and wrong answer prompt for each question. That way they can see why they got the answer wrong and learn from that experience.
8.1.0.3.2.4 - Python - Ch 3 - Functions - Quiz #2 -Built-In Functions - 🚀 Formative Quiz
🚀 Quiz -🔀 Mastery Path - These Mastery path quizzes are to be presented after the student has had a chance to do some labs and some Formative quizzes. The goal is to let students have 2 chances to take this quiz, and take the average of the 2 attempts. Based on the average, they will be presented with a Canvas Mastery Path, where they will have an option for take additional quiz and assignments to help with remediation. This will get them ready to take the Summative Quizzes.
8.1.0.3.3.1 - Python - Ch 3 - Functions - Mastery Quiz #1 - 🚀 Quiz -🔀 Mastery Path
🚀 Summative Quiz -✔️ Skills Mastery Check - These Mastery path quizzes are to be presented after the student has had a chance to do some labs and some Formative quizzes. The goal is to let students have 2 chances to take this quiz, and take the average of the 2 attempts. That will be their final module/subject topic grade.
8.1.0.3.3.1 - Python - Ch 3 - Functions - Skills Mastery Check Quiz #1 - 🚀 Summative Quiz -✔️ Skills Mastery Check