Foreward

Book Summary - IoT & Robotics Term 1, 2 & 3 - Complete Notes & Assessment Tests

All Grade Levels - Weeks 1-8 Complete:

Preschoolers (4-6 years):

  • Weeks 1-5: STEM basics, play corners, simple machines, unplugged coding
  • Weeks 6-8: Technology awareness, sequencing & floor grid coding, advanced storytelling
  • Hands-on assessments with observation rubrics

Grade 2-5 (7-11 years):

  • Weeks 1-5: Scratch programming, Blockly games, interface mastery
  • Weeks 6-8: Game development, text-based transition, logic puzzles
  • Computer-based assessments with coding projects

Grade 6-9 (11-14 years):

  • Weeks 1-5: Drone basics, safety rules, aviation principles, flight theory
  • Weeks 6-8: Kenya drone laws (KCAA), emergency procedures, practical flying
  • Written tests + practical flight demonstrations

Grade 10-12 (14-16 years):

  • Weeks 1-5: Python basics, functions, loops, libraries, motor/sensor control
  • Weeks 6-8: Advanced integration projects, professional presentations
  • Major coding projects + technical presentations

Key Features:

Assessment Variety:

  • Practical demonstrations for hands-on skills
  • Coding challenges for programming concepts
  • Written tests for theoretical knowledge
  • Project presentations for communication skills
  • Peer evaluations for collaboration

Professional Rubrics:

  • Clear criteria for each skill level
  • Age-appropriate expectations for each grade
  • Progressive difficulty building through weeks
  • Holistic evaluation including creativity and collaboration

Learning Progression:

  • Scaffolded learning from basic to advanced concepts
  • Cross-curricular connections to math, science, art
  • Real-world applications relevant to students’ lives
  • Career pathway awareness for future planning

Safety & Ethics:

  • Comprehensive safety protocols for all activities
  • Legal awareness (especially drone regulations)
  • Responsible technology use emphasis
  • Professional behavior standards

Practical Implementation:

  • Detailed material lists for each activity
  • Step-by-step instructions for complex projects
  • Troubleshooting guides for common problems
  • Extension activities for advanced learners

Assessment Rubric:

  • Exceptional (95-100%): Code runs flawlessly, excellent structure, creative additions, comprehensive error handling
  • Proficient (85-94%): Code works correctly, good structure, meets all requirements, minor improvements possible
  • Developing (75-84%): Code mostly works, basic structure present, meets most requirements, some bugs or missing features
  • Beginning (65-74%): Code has significant issues, poor structure, missing major requirements
  • Incomplete (Below 65%): Code doesn’t run or major portions missing

Additional Resources and Extensions

For All Grade Levels:

Vocabulary Glossary:

  • Algorithm: Step-by-step instructions to solve a problem
  • Bug: Error in code that prevents it from working correctly
  • Debug: Process of finding and fixing errors in code
  • Hardware: Physical components of computer systems
  • Software: Programs and applications that run on hardware
  • Interface: Way users interact with programs or devices
  • Sensor: Device that detects changes in environment
  • Actuator: Device that causes movement or action

Project Portfolio Suggestions:

  1. Weekly Reflection Journal: Students document learning and challenges
  2. Photo Documentation: Pictures of projects and experiments
  3. Video Demonstrations: Students explain their projects
  4. Peer Teaching: Advanced students help beginners
  5. Innovation Challenges: Open-ended problems to solve creatively

Cross-Curricular Connections:

  • Math: Geometry in robotics, statistics in data analysis
  • Science: Physics of flight, electronics principles
  • Art: Creative programming projects, design thinking
  • Social Studies: Impact of technology on society
  • Language Arts: Technical writing, documentation skills

Safety Reminders:

  • Always supervise young children with electronic components
  • Check battery connections before powering devices
  • Keep work area clean and organized
  • Wash hands after handling electronic components
  • Report any damaged equipment immediately
  • Follow proper shutdown procedures for all devices

Assessment Portfolio Checklist:

  • Completed weekly assessments
  • Project documentation with photos
  • Reflection essays on learning progress
  • Peer evaluation forms
  • Self-assessment rubrics
  • Evidence of problem-solving process
  • Creative extensions or improvements to basic projects

Notes

Comprehensive set of notes and assessment tests for Term 1, 2 & 3 across all grade levels (Preschoolers through Grade 10-12). The book includes:

What’s Included:

For Each Grade Level:

  • Detailed weekly lesson notes covering weeks 1-8 content
  • Key concepts and learning objectives for each topic
  • Practical examples and code samples (for programming grades)
  • Age-appropriate assessment tests with multiple formats

Assessment Formats:

  • Preschoolers (4-6): Practical/observational assessments with hands-on activities
  • Grade 2-5 (7-11): Computer-based Scratch/Blockly challenges
  • Grade 6-9 (11-14): Written tests + practical drone safety demonstrations
  • Grade 10-12 (14-16): Coding assignments + hardware integration projects

Key Features:

  • Covers all 8 weeks of Term 1 content
  • Aligned with curriculum from the IoT & Robotics document
  • Progressive difficulty appropriate for each age group
  • Practical assessments that test real understanding
  • Detailed rubrics for fair evaluation
  • Extension activities for advanced learners
  • Safety guidelines and best practices

Topics Covered:

  • Preschoolers: STEM basics, simple machines, unplugged coding
  • Grade 2-5: Scratch programming, Blockly games, interface navigation
  • Grade 6-9: Drone basics, aviation principles, safety regulations
  • Grade 10-12: Python programming, hardware control, sensor integration

Intro - Pre schoolers

Term 1 Final Portfolio Assessment - All Grade Levels

Portfolio Components Checklist

For All Students:

  • Weekly reflection journals documenting learning progress
  • Photo documentation of all projects and experiments
  • Completed weekly assessments with corrections
  • Evidence of peer collaboration and teaching
  • Self-assessment of growth in each major topic area

Grade-Specific Additions:

Preschoolers (4-6 years):

  • Drawings of favorite STEM activities
  • Parent/teacher observation notes on engagement and skills
  • Examples of unplugged coding sequences created
  • Photos of technology exploration activities

Grade 2-5 (7-11 years):

  • Screenshots of completed Scratch projects
  • Blockly puzzle solutions and explanations
  • Game design documents and storyboards
  • Video explanations of programming concepts

Grade 6-9 (11-14 years):

  • Drone safety checklist created and used
  • Mission planning worksheets with risk assessments
  • Photos/videos of practical flying sessions
  • Research report on drone applications in chosen field

Grade 10-12 (14-16 years):

  • Complete code repositories with documentation
  • Hardware connection diagrams and schematics
  • Data analysis reports from sensor projects
  • Technical presentation slides and demonstration videos

Cross-Grade Learning Objectives Mastery

By the end of Term 1, students should demonstrate:

Preschoolers:

  • Basic understanding of STEM concepts through play
  • Ability to follow simple sequences and patterns
  • Safe interaction with age-appropriate technology
  • Curiosity and engagement with hands-on exploration

Grade 2-5:

  • Fundamental programming concepts using visual languages
  • Ability to create simple games and interactive stories
  • Understanding of sequence, loops, and basic logic
  • Confidence in debugging and problem-solving

Grade 6-9:

  • Comprehensive understanding of drone safety and regulations
  • Practical flying skills with safety awareness
  • Knowledge of aviation principles and laws
  • Teamwork and communication skills in technical contexts

Grade 10-12:

  • Proficiency in Python programming for hardware control
  • Ability to integrate multiple sensors and actuators
  • Professional documentation and presentation skills
  • Independent problem-solving and creative innovation

Preparation for Term 2

Preschoolers → Scratch Junior Programming:

  • Continue building sequencing skills
  • Introduction to tablet-based programming
  • Creative storytelling with technology

Grade 2-5 → IoT Integration with Sensors:

  • Bridge from visual programming to physical computing
  • Introduction to sensors and real-world data
  • Beginning electronics and circuit concepts

Grade 6-9 → Smart Home Security:

  • Apply drone safety concepts to IoT systems
  • Introduction to sensors and automation
  • Home automation and security principles

Grade 10-12 → Smart Cities:

  • Scale up from individual projects to community solutions
  • Advanced IoT networking and data analysis
  • Social impact of technology solutions

Additional Resources and Extensions

Online Learning Platforms:

  • Preschoolers: PBS Kids programming games, Kodable app
  • Grade 2-5: Scratch Jr., Code.org courses, Blockly games
  • Grade 6-9: DroneBlocks, FAA educational materials, aviation simulation games
  • Grade 10-12: Python.org tutorials, Raspberry Pi Foundation projects, GitHub learning labs

STEM Career Connections:

  • Robotics Engineer: Designs and builds robots for various applications
  • Software Developer: Creates programs and applications for computers and devices
  • Drone Pilot: Professional UAV operations for photography, surveying, delivery
  • IoT Developer: Connects everyday objects to the internet for smart automation
  • Data Scientist: Analyzes sensor data to find patterns and make predictions

Community Extension Activities:

  • Science Fair Projects: Using skills learned to create original investigations
  • STEM Club Leadership: Teaching younger students basic concepts
  • Community Problem Solving: Identifying local problems that technology could help solve
  • Maker Space Participation: Continuing projects in community workshop environments

Assessment Data Tracking: Teachers should maintain records of:

  • Individual student progress through learning objectives
  • Common areas of difficulty requiring additional support
  • Exceptional student work that could be showcased
  • Parent/guardian feedback on home engagement with STEM concepts
  • Equipment and resource needs for optimal program delivery

This completes the comprehensive Term 1 curriculum with detailed notes, assessments, and support materials for all grade levels in the IoT & Robotics program. Each grade level has age-appropriate challenges that build foundational skills while maintaining engagement and fostering creativity in STEM learning.


Preschoolers (4-6 Years)

Term 1: STEM Storytelling & Coding Toys

Week 1: Introduction to STEM

Learning Objectives:

  • Understand basic concepts of STEM (Science, Technology, Engineering, Math)
  • Spark excitement and curiosity about STEM through hands-on activities
  • Foster teamwork through group experiments
  • Develop early thinking through guided play and experimentation

Key Concepts:

  • Science: Learning about the world around us through observation
  • Technology: Simple tools and devices that help us
  • Engineering: Building and creating solutions
  • Mathematics: Numbers, shapes, and patterns in everyday life

Activities:

  • Floating vs. Sinking experiments with various objects
  • Basic robot interaction and exploration
  • STEM vocabulary building games
  • Classification activities

Materials: Water, buckets, floating items (paper, feathers), sinking items (stones, coins), toy robot, tablet


Assessment Test - Preschoolers (4-6 Years)

Week 1-2 Assessment: STEM Basics

Format: Practical/Observational Assessment

  1. Floating or Sinking? (Show child various objects)
  • Point to objects that will float: feather, cork, plastic toy
  • Point to objects that will sink: stone, coin, marble
  • Explain why you think so (in simple words)
  1. STEM Matching (Picture cards)
  • Match the scientist to the magnifying glass
  • Match the engineer to the building blocks
  • Match the mathematician to the numbers
  • Match the technologist to the computer
  1. Following Instructions
  • Can follow 2-step instructions: “Pick up the red block and put it in the box”
  • Can give simple instructions to a friend
  • Can arrange objects in order (biggest to smallest)

Assessment Rubric:

  • Exceeding (3): Completes all tasks independently with explanation
  • Meeting (2): Completes most tasks with minimal guidance
  • Approaching (1): Attempts tasks with significant support
  • Beginning (0): Needs extensive help to participate

Preschoolers (4-6 Years)

Week 2: STEM Play Corners

Learning Objectives:

  • Explore different STEM areas through play stations
  • Develop fine motor skills through hands-on manipulation
  • Practice problem-solving through guided discovery
  • Build confidence in exploring new concepts

Key Concepts:

  • Play-based learning: Learning through exploration and fun
  • Spatial awareness: Understanding shapes, sizes, and positions
  • Cause and effect: Understanding that actions have results
  • Collaboration: Working together to solve problems

Assessment Test - Preschoolers (4-6 Years)

Week 1-2 Assessment: STEM Basics

Format: Practical/Observational Assessment

  1. Floating or Sinking? (Show child various objects)
  • Point to objects that will float: feather, cork, plastic toy
  • Point to objects that will sink: stone, coin, marble
  • Explain why you think so (in simple words)
  1. STEM Matching (Picture cards)
  • Match the scientist to the magnifying glass
  • Match the engineer to the building blocks
  • Match the mathematician to the numbers
  • Match the technologist to the computer
  1. Following Instructions
  • Can follow 2-step instructions: “Pick up the red block and put it in the box”
  • Can give simple instructions to a friend
  • Can arrange objects in order (biggest to smallest)

Assessment Rubric:

  • Exceeding (3): Completes all tasks independently with explanation
  • Meeting (2): Completes most tasks with minimal guidance
  • Approaching (1): Attempts tasks with significant support
  • Beginning (0): Needs extensive help to participate

Week 3: Simple Machines & Environmental Science

Learning Objectives:

  • Identify simple machines in everyday life
  • Understand basic environmental concepts
  • Develop observation skills
  • Connect STEM to the natural world

Key Concepts:

  • Simple Machines: Lever, pulley, wheel, ramp
  • Environment: Plants, animals, weather, seasons
  • Observation: Using our senses to learn
  • Nature patterns: Recognizing patterns in nature

Week 3-4 Assessment: Simple Machines & Coding

Format: Hands-on Demonstration

  1. Simple Machines Hunt
  • Find the lever (seesaw, scissors)
  • Find the wheel (bicycle, toy car)
  • Find the ramp (slide, wedge)
  • Explain what each machine helps us do
  1. Nature Observation
  • Draw or point to living things vs. non-living things
  • Identify basic shapes in nature (circles in flowers, triangles in mountains)
  • Name things that grow vs. things that are made
  1. Unplugged Coding Challenge
  • Arrange sequence cards to show morning routine
  • Give directions to help friend reach the treasure
  • Complete a simple pattern with blocks or shapes

Week 4: Unplugged Coding

Learning Objectives:

  • Introduction to coding concepts without computers
  • Understand sequence and order
  • Develop logical thinking
  • Practice following and giving instructions

Key Concepts:

  • Sequence: Steps in order
  • Instructions: Clear directions to follow
  • Algorithms: Step-by-step solutions
  • Patterns: Recognizing and creating patterns

Week 3-4 Assessment: Simple Machines & Coding

Format: Hands-on Demonstration

  1. Simple Machines Hunt
  • Find the lever (seesaw, scissors)
  • Find the wheel (bicycle, toy car)
  • Find the ramp (slide, wedge)
  • Explain what each machine helps us do
  1. Nature Observation
  • Draw or point to living things vs. non-living things
  • Identify basic shapes in nature (circles in flowers, triangles in mountains)
  • Name things that grow vs. things that are made
  1. Unplugged Coding Challenge
  • Arrange sequence cards to show morning routine
  • Give directions to help friend reach the treasure
  • Complete a simple pattern with blocks or shapes

Assessment Test

Preschoolers (4-6 Years) - Weeks 6-8

Advanced STEM Exploration & Technology Awareness

Week 6: Technology Parts Awareness

Learning Objectives:

  • Use coding to tell stories, solve challenges, or navigate mazes
  • Recognize and follow simple algorithms using direction or action cards
  • Physically be able to follow code on floor grids
  • Build confidence and persistence through trial-and-error learning

Key Concepts:

  • Technology Components: Basic parts that make devices work
  • Circuits: Paths that electricity follows
  • Assembly/Disassembly: Taking apart and putting together
  • Electronics Safety: Safe handling of batteries and components
  • Problem-Solving: Trying different solutions when something doesn’t work

Activities:

  • Technology Exploration: Examine old keyboards, phones, calculators
  • Simple Circuits: Connect bulbs to batteries with safe materials
  • Assembly Practice: Take apart and reassemble simple toys
  • Tech Parts Sorting: Group similar technology components

Materials: Old keyboards, phones, calculators, batteries, bulbs for circuits, safe connectors


Preschoolers Assessment - Weeks 6-8

Week 6 Assessment: Technology Awareness

Format: Hands-on Exploration + Observation (20 minutes)

  1. Technology Parts Recognition (10 points)
  • Point to and name 3 technology items from the collection
  • Show how a simple circuit works (bulb + battery)
  • Safely handle electronic components
  • Explain one thing each item helps us do
  1. Assembly Skills (10 points)
  • Take apart a simple toy or device
  • Put it back together correctly
  • Identify which parts go where
  • Ask for help when needed

Assessment Criteria:

  • Mastery (3): Handles all materials safely, explains purposes, completes tasks independently
  • Developing (2): Safe handling, completes most tasks with minimal help
  • Emerging (1): Needs guidance but participates actively
  • Beginning (0): Requires extensive support

Week 7: Sequencing & Floor Grid Coding

Learning Objectives:

  • Develop understanding of sequencing by arranging steps in correct order
  • Recognize and follow simple algorithms using direction or action cards
  • Physically follow code on floor grids
  • Build confidence through trial-and-error learning

Key Concepts:

  • Sequencing: Putting steps in the right order
  • Algorithm Cards: Visual instructions to follow
  • Floor Grid Coding: Moving through spaces following directions
  • Left/Right/Forward/Back: Basic directional concepts
  • Trial and Error: Learning by trying and improving

Activities:

  • Obstacle Course Coding: Navigate through simple obstacles using arrow cards
  • Sequencing Games: Put daily routine cards in correct order
  • Paper Maze Coding: Use arrows to show path through printed mazes
  • Robot Friend: One child gives directions, another follows like a robot

Materials: Coding arrows/direction cards, floor grid mats, toys for navigation, printed maze worksheets


Week 7-8 Assessment: Advanced Unplugged Coding

Format: Physical Coding Challenges (25 minutes)

  1. Sequencing Challenge (12 points)
  • Arrange 6 direction cards to navigate through obstacle course
  • Explain why each step comes in that order
  • Successfully complete the physical navigation
  • Fix mistakes when path doesn’t work
  1. IF/THEN Logic (8 points)
  • Follow conditional instructions: “IF you see blue, THEN hop”
  • Create own IF/THEN rule for a friend to follow
  • Demonstrate understanding with actions
  1. Story Algorithm (10 points)
  • Use 5 picture cards to create logical story sequence
  • Tell story following the card order
  • Explain what happens if cards are mixed up
  • Help fix a mixed-up story sequence

Practical Skills Rubric:

  • Advanced (25-30 points): Creates original sequences, helps others, shows deep understanding
  • Proficient (20-24 points): Completes all challenges correctly with minor guidance
  • Developing (15-19 points): Understands concepts but needs support for complex tasks
  • Beginning (Below 15 points): Requires significant help to participate

Week 8: Advanced Unplugged Coding & Storytelling

Learning Objectives:

  • Use coding to tell stories, solve challenges, or navigate mazes
  • Recognize and follow simple algorithms using direction or action cards
  • Physically follow code on floor grids
  • Build confidence and persistence through trial-and-error learning

Key Concepts:

  • Conditional Logic: IF/THEN thinking (“If you see red, then stop”)
  • Debugging: Finding and fixing mistakes in directions
  • Block Building: Using physical blocks to represent code
  • Story Algorithms: Step-by-step instructions for telling stories

Activities:

  • Debug the Path: Present incorrect direction sequences for children to fix
  • IF/THEN Games: “If you see a triangle, then clap your hands”
  • Story Coding: Use picture cards to create step-by-step stories
  • Block Code Building: Stack blocks to represent programming sequences

Materials: Building blocks, floor grid mats, toys, printed materials, picture cards for storytelling


Assessment Test

IoT & Robotics Term 1 - Complete Notes & Assessment Tests

Table of Contents

  1. Preschoolers (4-6 Years) - STEM Storytelling & Coding Toys
  2. Grade 2-5 (7-11 Years) - Scratch & Blockly Programming
  3. Grade 6-9 (11-14 Years) - Drone Aviation Introduction
  4. Grade 10-12 (14-16 Years) - Python Basics

Preschoolers (4-6 Years)

Term 1: STEM Storytelling & Coding Toys

Week 1: Introduction to STEM

Learning Objectives:

  • Understand basic concepts of STEM (Science, Technology, Engineering, Math)
  • Spark excitement and curiosity about STEM through hands-on activities
  • Foster teamwork through group experiments
  • Develop early thinking through guided play and experimentation

Key Concepts:

  • Science: Learning about the world around us through observation
  • Technology: Simple tools and devices that help us
  • Engineering: Building and creating solutions
  • Mathematics: Numbers, shapes, and patterns in everyday life

Activities:

  • Floating vs. Sinking experiments with various objects
  • Basic robot interaction and exploration
  • STEM vocabulary building games
  • Classification activities

Materials: Water, buckets, floating items (paper, feathers), sinking items (stones, coins), toy robot, tablet

Week 2: STEM Play Corners

Learning Objectives:

  • Explore different STEM areas through play stations
  • Develop fine motor skills through hands-on manipulation
  • Practice problem-solving through guided discovery
  • Build confidence in exploring new concepts

Key Concepts:

  • Play-based learning: Learning through exploration and fun
  • Spatial awareness: Understanding shapes, sizes, and positions
  • Cause and effect: Understanding that actions have results
  • Collaboration: Working together to solve problems

Week 3: Simple Machines & Environmental Science

Learning Objectives:

  • Identify simple machines in everyday life
  • Understand basic environmental concepts
  • Develop observation skills
  • Connect STEM to the natural world

Key Concepts:

  • Simple Machines: Lever, pulley, wheel, ramp
  • Environment: Plants, animals, weather, seasons
  • Observation: Using our senses to learn
  • Nature patterns: Recognizing patterns in nature

Week 4: Unplugged Coding

Learning Objectives:

  • Introduction to coding concepts without computers
  • Understand sequence and order
  • Develop logical thinking
  • Practice following and giving instructions

Key Concepts:

  • Sequence: Steps in order
  • Instructions: Clear directions to follow
  • Algorithms: Step-by-step solutions
  • Patterns: Recognizing and creating patterns

Assessment Test - Preschoolers (4-6 Years)

Week 1-2 Assessment: STEM Basics

Format: Practical/Observational Assessment

  1. Floating or Sinking? (Show child various objects)
  • Point to objects that will float: feather, cork, plastic toy
  • Point to objects that will sink: stone, coin, marble
  • Explain why you think so (in simple words)
  1. STEM Matching (Picture cards)
  • Match the scientist to the magnifying glass
  • Match the engineer to the building blocks
  • Match the mathematician to the numbers
  • Match the technologist to the computer
  1. Following Instructions
  • Can follow 2-step instructions: “Pick up the red block and put it in the box”
  • Can give simple instructions to a friend
  • Can arrange objects in order (biggest to smallest)

Assessment Rubric:

  • Exceeding (3): Completes all tasks independently with explanation
  • Meeting (2): Completes most tasks with minimal guidance
  • Approaching (1): Attempts tasks with significant support
  • Beginning (0): Needs extensive help to participate

Week 3-4 Assessment: Simple Machines & Coding

Format: Hands-on Demonstration

  1. Simple Machines Hunt
  • Find the lever (seesaw, scissors)
  • Find the wheel (bicycle, toy car)
  • Find the ramp (slide, wedge)
  • Explain what each machine helps us do
  1. Nature Observation
  • Draw or point to living things vs. non-living things
  • Identify basic shapes in nature (circles in flowers, triangles in mountains)
  • Name things that grow vs. things that are made
  1. Unplugged Coding Challenge
  • Arrange sequence cards to show morning routine
  • Give directions to help friend reach the treasure
  • Complete a simple pattern with blocks or shapes

Grade 2-5 (7-11 Years)

Term 1: Scratch & Blockly Programming

Week 1: Introduction to Programming

Learning Objectives:

  • Understand what programming is
  • Learn about Scratch programming environment
  • Install and explore Scratch interface
  • Grasp the concept of sequencing

Key Concepts:

  • Programming: Giving instructions to computers
  • Scratch: Visual programming language using blocks
  • Interface: The screen where we work with Scratch
  • Sequencing: Putting commands in the right order
  • Sprites: Characters in Scratch programs
  • Stage: Where Scratch programs run

Core Activities:

  • Explore Scratch interface and tools
  • Identify different areas (sprite area, blocks palette, stage)
  • Learn about different block categories (Motion, Looks, Sound, etc.)
  • Create first simple animation

Week 2: Understanding Scratch Interface

Learning Objectives:

  • Navigate Scratch interface confidently
  • Understand different block categories
  • Create basic sprite movements
  • Save and load projects

Key Concepts:

  • Blocks Palette: Where programming blocks are stored
  • Scripts Area: Where we build our programs
  • Motion Blocks: Make sprites move
  • Looks Blocks: Change sprite appearance
  • Events: What starts our programs running

Week 3: Setting Up Scratch Projects

Learning Objectives:

  • Plan and organize Scratch projects
  • Understand project structure
  • Use backgrounds and sprites effectively
  • Practice debugging simple problems

Key Concepts:

  • Project Planning: Thinking before coding
  • Backgrounds: Scenes for our programs
  • Sprite Library: Ready-made characters
  • Debugging: Finding and fixing problems

Week 4: Introduction to Blockly

Learning Objectives:

  • Understand Blockly visual programming
  • Compare Blockly with Scratch
  • Complete basic Blockly puzzles
  • Transfer concepts between platforms

Key Concepts:

  • Blockly: Another visual programming language
  • Puzzle-based Learning: Learning through solving challenges
  • Logic Blocks: Making decisions in programs
  • Loops: Repeating actions

Week 5: Blockly Games for Scratch Programmers

Learning Objectives:

  • Apply Scratch knowledge to Blockly games
  • Solve increasingly complex puzzles
  • Understand programming logic and flow
  • Build problem-solving confidence

Key Concepts:

  • Game Logic: Rules that make games work
  • Progressive Difficulty: Challenges that get harder
  • Pattern Recognition: Seeing repeated solutions
  • Persistence: Keep trying when challenges are difficult

Assessment Test - Grade 2-5 (7-11 Years)

Week 1-3 Assessment: Scratch Fundamentals

Format: Practical Computer Assessment (30 minutes)

Part A: Interface Knowledge (10 points)

  1. Label the parts of Scratch interface:
  • Blocks Palette
  • Scripts Area
  • Stage
  • Sprite Area
  1. Match the block colors to their functions:
  • Motion blocks: _____ (Blue)
  • Looks blocks: _____ (Purple)
  • Sound blocks: _____ (Pink)
  • Events blocks: _____ (Yellow)

Part B: Basic Programming (15 points) 3. Create a program that makes a sprite:

  • Move 10 steps forward

  • Turn 90 degrees right

  • Say “Hello” for 2 seconds

  • Change color

  1. Fix this broken sequence (drag blocks in correct order):
[Say "Goodbye"][When green flag clicked][Move 100 steps][Say "Hello"]

Part C: Problem Solving (10 points) 5. Your sprite isn’t moving when you click the green flag. What might be wrong?

  • Missing “when green flag clicked” block

  • Sprite is already at the edge

  • Motion blocks aren’t connected

  • All of the above

  1. Create a simple animation showing a cat walking across the stage.

Week 4-5 Assessment: Blockly & Problem Solving

Format: Computer-based Blockly Challenges (25 minutes)

Part A: Blockly Basics (8 points)

  1. Complete the “Move Forward” puzzle in Blockly
  2. Complete the “Turn Left/Right” puzzle
  3. Complete the “Repeat Loop” puzzle
  4. Complete the “If/Else” puzzle

Part B: Logic Understanding (12 points) 5. Explain what this Blockly code does:

Repeat 4 times:
  Move forward
  Turn right 90 degrees

Answer: _________________

  1. Write Blockly code to make a character:
  • Move forward 3 steps
  • Turn left if path is blocked
  • Repeat until reaching goal

Part C: Transfer Learning (10 points) 7. How is Blockly similar to Scratch? List 3 similarities:




  1. Create a Scratch program that does the same thing as this Blockly code:
When started:  Repeat 5 times:    Move forward 20 steps    Wait 1 second

Assessment Rubric:

  • Advanced (90-100%): Completes all tasks efficiently with creative additions
  • Proficient (80-89%): Completes most tasks correctly with minor errors
  • Developing (70-79%): Completes basic tasks but struggles with complex problems
  • Beginning (Below 70%): Needs significant support to complete tasks

Grade 6-9 (11-14 Years)

Term 1: Drone Aviation Introduction

Week 1: Introduction to Drones and Aviation Basics

Learning Objectives:

  • Understand what drones are and their applications
  • Learn basic aviation principles
  • Identify different types of aircraft
  • Understand the evolution of flight

Key Concepts:

  • Unmanned Aerial Vehicle (UAV): Aircraft without a human pilot aboard
  • Remote Pilot: Person controlling the drone from the ground
  • Autonomous Flight: Drones flying with minimal human control
  • Commercial vs. Recreational Use: Different purposes for drones
  • Four Forces of Flight: Lift, Weight, Thrust, Drag
  • Aerodynamics: How air moves around objects in flight

Applications of Drones:

  • Photography and videography
  • Search and rescue operations
  • Agriculture monitoring
  • Package delivery
  • Scientific research
  • Military operations

Week 2: Drone Safety Rules and Best Practices

Learning Objectives:

  • Learn essential drone safety protocols
  • Understand pre-flight checklist procedures
  • Identify potential hazards and risks
  • Develop responsible drone operation habits

Key Concepts:

  • Pre-flight Inspection: Checking drone condition before flying
  • Weather Conditions: How weather affects drone flight
  • Battery Safety: Proper battery handling and storage
  • Emergency Procedures: What to do when things go wrong
  • Situational Awareness: Being aware of surroundings while flying

Safety Rules:

  1. Always maintain visual contact with drone
  2. Check weather conditions before flying
  3. Inspect drone and equipment before each flight
  4. Fly in open areas away from people and property
  5. Never fly above 400 feet
  6. Respect others’ privacy
  7. Land immediately if drone malfunctions

Week 3: FAA/UAS Regulations (Basic Overview)

Learning Objectives:

  • Understand basic aviation regulations
  • Learn about no-fly zones and restricted airspace
  • Understand registration requirements
  • Learn about pilot certification basics

Key Concepts:

  • Federal Aviation Administration (FAA): Government agency regulating aviation
  • Unmanned Aircraft Systems (UAS): Official term for drones and related equipment
  • No-Fly Zones: Areas where drone flight is prohibited
  • Remote Pilot Certificate: License required for commercial drone operations
  • Registration: Required identification for drones over 0.55 pounds

Basic Regulations:

  • Drones must be registered if over 0.55 lbs (250 grams)
  • Maximum altitude: 400 feet above ground level
  • Must yield right-of-way to manned aircraft
  • No flying over groups of people
  • No flying at night without special certification
  • Respect airport operational areas (usually 5-mile radius)

Week 4: Key Drone Types & Components

Learning Objectives:

  • Identify different drone configurations
  • Understand key drone components and their functions
  • Compare advantages and disadvantages of different designs
  • Learn basic maintenance requirements

Key Concepts:

  • Multirotor: Drones with multiple rotating propellers
  • Fixed-wing: Airplane-like drones with wings
  • Hybrid VTOL: Vertical takeoff and landing with forward flight capability
  • Frame: Main structure holding all components
  • Flight Controller: Computer controlling drone flight
  • ESC (Electronic Speed Controller): Controls motor speed
  • Gimbal: Stabilizes camera during flight

Drone Types:

  1. Quadcopter: 4 rotors, most common configuration
  2. Hexacopter: 6 rotors, more redundancy and payload capacity
  3. Octocopter: 8 rotors, highest redundancy and capacity
  4. Fixed-wing: Longer flight times, faster speeds
  5. Racing drones: Small, fast, agile for competitive flying

Week 5: Basic Principles of Flight

Learning Objectives:

  • Understand the four forces of flight in detail
  • Learn how drones achieve controlled flight
  • Understand stability and control concepts
  • Explore flight dynamics and physics

Key Concepts:

  • Lift: Upward force generated by rotors or wings
  • Weight (Gravity): Downward force pulling drone toward earth
  • Thrust: Forward force propelling drone through air
  • Drag: Resistance force opposing motion through air
  • Center of Gravity: Balance point of drone
  • Pitch, Roll, Yaw: Three axes of rotation
  • Gyroscopic Effect: How spinning rotors affect stability

Flight Control:

  • Throttle: Controls altitude (up/down)
  • Pitch: Controls forward/backward movement
  • Roll: Controls left/right movement
  • Yaw: Controls rotation (turning left/right)
  • Trim: Fine adjustments for balanced flight

Assessment Test - Grade 6-9 (11-14 Years)

Week 1-2 Assessment: Drone Basics and Safety

Format: Written Test + Practical Safety Demonstration (45 minutes)

Part A: Multiple Choice (20 points)

  1. What does UAV stand for? a) Universal Aviation Vehicle b) Unmanned Aerial Vehicle c) Ultra Aerodynamic Vehicle d) United Aviation Vehicle

  2. Which of the four forces of flight works against gravity? a) Thrust b) Drag c) Lift d) Weight

  3. What should you do FIRST before flying a drone? a) Start the motors b) Check weather conditions c) Take off immediately d) Turn on the camera

  4. The maximum altitude for recreational drone flight is: a) 200 feet b) 300 feet c) 400 feet d) 500 feet

  5. What is the main difference between commercial and recreational drone use? a) Size of drone b) Purpose and regulations c) Color of drone d) Number of rotors

Part B: Short Answer (25 points) 6. List 5 safety rules that must be followed when operating a drone: (10 points)






  1. Explain three commercial applications of drones: (9 points)



  1. Why is it important to maintain visual contact with your drone during flight? (6 points)

Part C: Practical Safety Assessment (15 points) 9. Demonstrate proper pre-flight inspection checklist 10. Identify suitable vs. unsuitable flying locations from photos 11. Explain emergency landing procedures

Week 3-5 Assessment: Regulations and Flight Principles

Format: Written Test + Flight Theory Application (50 minutes)

Part A: Regulations Knowledge (20 points)

  1. True/False (10 points)
  • Drones under 0.55 lbs need to be registered: ___
  • You can fly your drone anywhere as long as it’s daytime: ___
  • Commercial drone operations require a Remote Pilot Certificate: ___
  • Drones must always yield to manned aircraft: ___
  • Flying over groups of people is allowed with permission: ___
  1. What is a no-fly zone and give 3 examples: (10 points) Definition: ________________________________ Examples:



Part B: Drone Components (15 points) 3. Match the component to its function:

  • Flight Controller: _____ a) Provides power to motors

  • ESC: _____ b) Stabilizes camera

  • Gimbal: _____ c) Main structural support

  • Frame: _____ d) Controls drone flight

  • Battery: _____ e) Controls motor speed

  1. Compare quadcopter vs. fixed-wing drones (advantages/disadvantages): (10 points)

Part C: Flight Principles (25 points) 5. Draw and label the four forces of flight on a drone diagram: (12 points)

  1. Explain how a drone moves in each direction: (13 points)
  • Forward: ________________________________
  • Backward: ________________________________
  • Left: ________________________________
  • Right: ________________________________
  • Up: ________________________________
  • Rotate left: ________________________________

Assessment Rubric:

  • Expert (90-100%): Demonstrates comprehensive understanding with detailed explanations
  • Proficient (80-89%): Shows solid grasp of concepts with minor gaps
  • Developing (70-79%): Understands basic concepts but lacks detail in complex areas
  • Novice (Below 70%): Limited understanding, needs additional instruction

Grade 10-12 (14-16 Years)

Term 1: Introduction to Python Basics

Week 1: Writing Structured Python Code

Learning Objectives:

  • Understand Python syntax and structure
  • Learn proper code formatting and indentation
  • Write clean, readable code following best practices
  • Understand variables, data types, and basic operations

Key Concepts:

  • Python: High-level programming language
  • Syntax: Rules for writing Python code
  • Indentation: Using spaces to organize code structure
  • Variables: Named storage for data values
  • Data Types: int, float, string, boolean
  • Comments: Documentation within code using #
  • Print Statement: Displaying output to screen

Code Structure Best Practices:

# Header comment explaining the program
# Author: Your Name
# Date: Today's Date

# Import statements
import module_name

# Constants (UPPERCASE naming)
MAX_VALUE = 100

# Main program logic
def main():
    # Variable declarations
    user_name = "Student"
    age = 16

    # Program logic with proper indentation
    print(f"Hello, {user_name}!")
    print(f"You are {age} years old.")

# Run the program
if __name__ == "__main__":
    main()

Week 2: Functions and Loops

Learning Objectives:

  • Create and use custom functions
  • Understand function parameters and return values
  • Implement for loops and while loops
  • Apply loops to solve repetitive tasks

Key Concepts:

  • Function: Reusable block of code that performs a specific task
  • Parameters: Input values passed to functions
  • Return Value: Output value from a function
  • For Loop: Repeats code a specific number of times
  • While Loop: Repeats code while a condition is true
  • Range Function: Generates sequences of numbers
  • Iteration: Each repetition of a loop
  • Loop Control: Managing when loops start and stop

Function Examples:

# Simple function with no parameters
def greet():
    print("Hello, World!")

# Function with parameters
def greet_person(name, age):
    print(f"Hello, {name}! You are {age} years old.")

# Function with return value
def calculate_area(length, width):
    area = length * width
    return area

# Using functions
greet()
greet_person("Alice", 16)
room_area = calculate_area(10, 12)
print(f"Room area: {room_area} square meters")

Loop Examples:

# For loop with range
for i in range(5):
    print(f"Count: {i}")

# For loop with list
fruits = ["apple", "banana", "orange"]
for fruit in fruits:
    print(f"I like {fruit}")

# While loop
count = 0
while count < 3:
    print(f"While loop count: {count}")
    count += 1

Week 3: Using Python Libraries

Learning Objectives:

  • Understand what Python libraries are and why they’re useful
  • Learn to import and use common libraries
  • Work with GPIOZero and time libraries
  • Explore library documentation and help systems

Key Concepts:

  • Library/Module: Pre-written code that adds functionality
  • Import Statement: Bringing library functions into your program
  • GPIOZero: Library for controlling Raspberry Pi GPIO pins
  • Time Library: Functions for working with time and delays
  • Documentation: Instructions for using library functions
  • API: Application Programming Interface - how to use library functions

Library Usage Examples:

# Importing entire modules
import time
import math

# Importing specific functions
from gpiozero import LED, Button
from time import sleep

# Using time library
print("Starting program...")
time.sleep(2)  # Wait 2 seconds
print("2 seconds have passed!")

# Using math library
import math
radius = 5
area = math.pi * radius ** 2
print(f"Circle area: {area:.2f}")

# Using GPIOZero (for Raspberry Pi)
led = LED(18)  # LED connected to GPIO pin 18
button = Button(2)  # Button connected to GPIO pin 2

# Turn LED on and off
led.on()
sleep(1)
led.off()

Week 4: Controlling Motors with Python

Learning Objectives:

  • Understand how to interface with motors using Python
  • Learn about PWM (Pulse Width Modulation) for motor control
  • Control motor speed and direction
  • Implement safety features in motor control code

Key Concepts:

  • Motor Control: Using code to make motors move
  • PWM (Pulse Width Modulation): Method to control motor speed
  • Duty Cycle: Percentage of time signal is “on” vs “off”
  • Direction Control: Making motors spin clockwise/counterclockwise
  • Motor Driver: Electronics that interface between Python and motors
  • Safety Features: Code to prevent motor damage

Motor Control Examples:

from gpiozero import Motor, PWMOutputDevice
from time import sleep

# Create motor object (assuming H-bridge motor driver)
motor = Motor(forward=2, backward=3, enable=18)

# Basic motor control
def basic_motor_test():
    print("Motor forward at full speed")
    motor.forward(1.0)  # Full speed forward
    sleep(2)

    print("Motor forward at half speed")
    motor.forward(0.5)  # Half speed forward
    sleep(2)

    print("Motor stopped")
    motor.stop()
    sleep(1)

    print("Motor backward at full speed")
    motor.backward(1.0)  # Full speed backward
    sleep(2)

    motor.stop()
    print("Motor test complete")

# PWM speed control example
def speed_ramp_test():
    print("Ramping motor speed up...")
    for speed in range(0, 101, 10):  # 0 to 100% in 10% steps
        motor_speed = speed / 100.0
        motor.forward(motor_speed)
        print(f"Speed: {speed}%")
        sleep(0.5)

    motor.stop()
    print("Speed ramp complete")

# Run the tests
basic_motor_test()
sleep(2)
speed_ramp_test()

Week 5: Controlling Sensors with Python

Learning Objectives:

  • Interface with various sensors using Python
  • Read and process sensor data
  • Implement sensor-based decision making
  • Create responsive programs based on sensor input

Key Concepts:

  • Sensor: Device that detects and measures physical properties
  • Analog vs Digital: Different types of sensor signals
  • ADC (Analog-to-Digital Converter): Converts analog signals to digital
  • Sensor Calibration: Adjusting sensor readings for accuracy
  • Data Processing: Converting raw sensor data to useful information
  • Polling vs Interrupts: Different ways to read sensor data

Common Sensors:

  • Temperature sensors: Measure environmental temperature
  • Light sensors (LDR): Detect light intensity
  • Ultrasonic sensors: Measure distance using sound waves
  • Motion sensors (PIR): Detect movement
  • Pressure sensors: Measure force or pressure

Sensor Control Examples:

from gpiozero import MCP3008, DistanceSensor, MotionSensor, LED
from time import sleep
import statistics

# Temperature sensor (using analog input)
temp_sensor = MCP3008(channel=0)

def read_temperature():
    # Convert voltage to temperature (example conversion)
    voltage = temp_sensor.voltage
    temperature_c = (voltage - 0.5) * 100  # Example conversion formula
    temperature_f = (temperature_c * 9/5) + 32
    return temperature_c, temperature_f

# Distance sensor (ultrasonic)
distance_sensor = DistanceSensor(echo=24, trigger=23)

def monitor_distance():
    print("Distance monitoring (press Ctrl+C to stop)")
    try:
        while True:
            distance = distance_sensor.distance * 100  # Convert to cm
            print(f"Distance: {distance:.1f} cm")

            if distance < 10:
                print("WARNING: Object too close!")

            sleep(0.5)
    except KeyboardInterrupt:
        print("Distance monitoring stopped")

# Motion sensor with LED indicator
motion = MotionSensor(4)
alert_led = LED(18)

def motion_detector():
    print("Motion detector active...")

    def motion_detected():
        print("Motion detected!")
        alert_led.on()
        sleep(2)
        alert_led.off()

    def no_motion():
        print("No motion")
        alert_led.off()

    # Set up motion sensor callbacks
    motion.when_motion = motion_detected
    motion.when_no_motion = no_motion

    # Keep program running
    try:
        while True:
            sleep(0.1)
    except KeyboardInterrupt:
        print("Motion detector stopped")

# Data logging example
def log_sensor_data():
    readings = []
    print("Collecting sensor data for 30 seconds...")

    start_time = time.time()
    while time.time() - start_time < 30:
        temp_c, temp_f = read_temperature()
        distance = distance_sensor.distance * 100

        readings.append({
            'timestamp': time.time(),
            'temperature_c': temp_c,
            'temperature_f': temp_f,
            'distance_cm': distance
        })

        print(f"Temp: {temp_c:.1f}°C, Distance: {distance:.1f}cm")
        sleep(1)

    # Calculate statistics
    temps = [r['temperature_c'] for r in readings]
    distances = [r['distance_cm'] for r in readings]

    print(f"\nData Summary:")
    print(f"Average temperature: {statistics.mean(temps):.1f}°C")
    print(f"Min/Max temperature: {min(temps):.1f}°C / {max(temps):.1f}°C")
    print(f"Average distance: {statistics.mean(distances):.1f}cm")
    print(f"Min/Max distance: {min(distances):.1f}cm / {max(distances):.1f}cm")

# Example usage
if __name__ == "__main__":
    # Run different examples
    monitor_distance()  # Uncomment to run distance monitoring
    # motion_detector()  # Uncomment to run motion detection
    # log_sensor_data()  # Uncomment to run data logging

Assessment Test - Grade 10-12 (14-16 Years)

Week 1-2 Assessment: Python Fundamentals

Format: Coding Assignment + Written Questions (60 minutes)

Part A: Code Structure and Syntax (25 points)

  1. Fix the following code and explain what was wrong (10 points):
# Broken code:
def calculate average(num1, num2, num3)
average = num1 + num2 + num3 / 3
print("The average is" + average)
return average

calculate average(10, 20, 30)

Your corrected code:

# Write corrected version here

Explanation of errors: ________________________________

  1. Write a well-structured Python program (15 points): Create a program that:
  • Has proper header comments
  • Uses appropriate variable names
  • Calculates the area of different shapes (circle, rectangle, triangle)
  • Uses functions with parameters and return values
  • Follows proper indentation and formatting

Part B: Functions and Loops (30 points)

  1. Write a function called print_multiplication_table (15 points):
  • Takes one parameter: number
  • Prints multiplication table for that number (1-10)
  • Uses a for loop
  • Example output for print_multiplication_table(3):
3 x 1 = 3
3 x 2 = 6
3 x 3 = 9
... etc
  1. Password Checker Program (15 points): Write a program using while loop that:
  • Asks user to enter a password
  • Keeps asking until they enter “python123”
  • Counts number of attempts
  • Prints “Access granted” when correct
  • Prints number of attempts it took

Week 3-5 Assessment: Libraries and Hardware Control

Format: Practical Coding Project (75 minutes)

Part A: Library Usage (20 points)

  1. Complete this sensor reading program (20 points):
from gpiozero import MCP3008
from time import sleep
import ______  # What library do you need for calculating average?

# Create sensor object
light_sensor = MCP3008(channel=0)

def read_light_levels():
    readings = []

    # Collect 10 readings
    for i in range(______):  # Fill in the range
        reading = light_sensor.______  # What property gives the reading?
        readings.append(reading)
        print(f"Reading {i+1}: {reading:.3f}")
        sleep(0.5)

    # Calculate and print statistics
    average = ______.mean(readings)  # Which function calculates mean?
    maximum = ______(readings)  # Built-in function for maximum
    minimum = ______(readings)  # Built-in function for minimum

    print(f"Average: {average:.3f}")
    print(f"Maximum: {maximum:.3f}")
    print(f"Minimum: {minimum:.3f}")

# Call the function
read_light_levels()

Part B: Motor Control Project (25 points)

  1. Smart Fan Controller (25 points): Write a program that simulates a smart fan controller:
  • Use a temperature sensor to read room temperature
  • Control a motor (fan) based on temperature:
    • Below 20°C: Fan off
    • 20-25°C: Fan at 30% speed
    • 25-30°C: Fan at 60% speed
    • Above 30°C: Fan at 100% speed
  • Print current temperature and fan speed every 2 seconds
  • Include safety features (motor stop function)

Part C: Sensor Integration Challenge (30 points)

  1. Security System Prototype (30 points): Create a basic security system that:
  • Uses a motion sensor to detect movement
  • Uses a distance sensor to detect objects too close
  • Controls LEDs to indicate system status:
    • Green LED: System normal
    • Yellow LED: Motion detected
    • Red LED: Intrusion alert (object < 20cm)
  • Logs events with timestamps
  • Runs continuously until user presses Ctrl+C

Requirements:

  • Use at least 3 different libraries
  • Include proper error handling
  • Use functions to organize code
  • Add meaningful comments
  • Follow Python coding best practices

Sample code structure:

from gpiozero import MotionSensor, DistanceSensor, LED
from time import sleep
import time

# Hardware setup
motion = MotionSensor(4)
distance = DistanceSensor(echo=24, trigger=23)
green_led = LED(18)
yellow_led = LED(19)
red_led = LED(20)

def log_event(message):
    # Write function to log events with timestamp
    pass

def check_security():
    # Write function to check all sensors and control LEDs
    pass

def main():
    # Write main program loop
    pass

if __name__ == "__main__":
    main()

Assessment Rubric:

  • Exceptional (95-100%): Code runs flawlessly, excellent structure, creative additions, comprehensive error handling
  • Proficient (85-94%): Code works correctly, good structure, meets all requirements, minor improvements possible
  • Developing (75-84%): Code mostly works, basic structure present, meets most requirements, some bugs or missing features
  • Beginning (65-74%): Code has significant issues, poor structure, missing major requirements
  • Incomplete (Below 65%): Code doesn’t run or major portions missing

Additional Resources and Extensions

For All Grade Levels:

Vocabulary Glossary:

  • Algorithm: Step-by-step instructions to solve a problem
  • Bug: Error in code that prevents it from working correctly
  • Debug: Process of finding and fixing errors in code
  • Hardware: Physical components of computer systems
  • Software: Programs and applications that run on hardware
  • Interface: Way users interact with programs or devices
  • Sensor: Device that detects changes in environment
  • Actuator: Device that causes movement or action

Project Portfolio Suggestions:

  1. Weekly Reflection Journal: Students document learning and challenges
  2. Photo Documentation: Pictures of projects and experiments
  3. Video Demonstrations: Students explain their projects
  4. Peer Teaching: Advanced students help beginners
  5. Innovation Challenges: Open-ended problems to solve creatively

Cross-Curricular Connections:

  • Math: Geometry in robotics, statistics in data analysis
  • Science: Physics of flight, electronics principles
  • Art: Creative programming projects, design thinking
  • Social Studies: Impact of technology on society
  • Language Arts: Technical writing, documentation skills

Safety Reminders:

  • Always supervise young children with electronic components
  • Check battery connections before powering devices
  • Keep work area clean and organized
  • Wash hands after handling electronic components
  • Report any damaged equipment immediately
  • Follow proper shutdown procedures for all devices

Assessment Portfolio Checklist:

  • Completed weekly assessments
  • Project documentation with photos
  • Reflection essays on learning progress
  • Peer evaluation forms
  • Self-assessment rubrics
  • Evidence of problem-solving process
  • Creative extensions or improvements to basic projects

Continuation - Weeks 6-8 for All Grade Levels


Preschoolers (4-6 Years) - Weeks 6-8

Advanced STEM Exploration & Technology Awareness

Week 6: Technology Parts Awareness

Learning Objectives:

  • Use coding to tell stories, solve challenges, or navigate mazes
  • Recognize and follow simple algorithms using direction or action cards
  • Physically be able to follow code on floor grids
  • Build confidence and persistence through trial-and-error learning

Key Concepts:

  • Technology Components: Basic parts that make devices work
  • Circuits: Paths that electricity follows
  • Assembly/Disassembly: Taking apart and putting together
  • Electronics Safety: Safe handling of batteries and components
  • Problem-Solving: Trying different solutions when something doesn’t work

Activities:

  • Technology Exploration: Examine old keyboards, phones, calculators
  • Simple Circuits: Connect bulbs to batteries with safe materials
  • Assembly Practice: Take apart and reassemble simple toys
  • Tech Parts Sorting: Group similar technology components

Materials: Old keyboards, phones, calculators, batteries, bulbs for circuits, safe connectors

Week 7: Sequencing & Floor Grid Coding

Learning Objectives:

  • Develop understanding of sequencing by arranging steps in correct order
  • Recognize and follow simple algorithms using direction or action cards
  • Physically follow code on floor grids
  • Build confidence through trial-and-error learning

Key Concepts:

  • Sequencing: Putting steps in the right order
  • Algorithm Cards: Visual instructions to follow
  • Floor Grid Coding: Moving through spaces following directions
  • Left/Right/Forward/Back: Basic directional concepts
  • Trial and Error: Learning by trying and improving

Activities:

  • Obstacle Course Coding: Navigate through simple obstacles using arrow cards
  • Sequencing Games: Put daily routine cards in correct order
  • Paper Maze Coding: Use arrows to show path through printed mazes
  • Robot Friend: One child gives directions, another follows like a robot

Materials: Coding arrows/direction cards, floor grid mats, toys for navigation, printed maze worksheets

Week 8: Advanced Unplugged Coding & Storytelling

Learning Objectives:

  • Use coding to tell stories, solve challenges, or navigate mazes
  • Recognize and follow simple algorithms using direction or action cards
  • Physically follow code on floor grids
  • Build confidence and persistence through trial-and-error learning

Key Concepts:

  • Conditional Logic: IF/THEN thinking (“If you see red, then stop”)
  • Debugging: Finding and fixing mistakes in directions
  • Block Building: Using physical blocks to represent code
  • Story Algorithms: Step-by-step instructions for telling stories

Activities:

  • Debug the Path: Present incorrect direction sequences for children to fix
  • IF/THEN Games: “If you see a triangle, then clap your hands”
  • Story Coding: Use picture cards to create step-by-step stories
  • Block Code Building: Stack blocks to represent programming sequences

Materials: Building blocks, floor grid mats, toys, printed materials, picture cards for storytelling


Preschoolers Assessment - Weeks 6-8

Week 6 Assessment: Technology Awareness

Format: Hands-on Exploration + Observation (20 minutes)

  1. Technology Parts Recognition (10 points)
  • Point to and name 3 technology items from the collection
  • Show how a simple circuit works (bulb + battery)
  • Safely handle electronic components
  • Explain one thing each item helps us do
  1. Assembly Skills (10 points)
  • Take apart a simple toy or device
  • Put it back together correctly
  • Identify which parts go where
  • Ask for help when needed

Assessment Criteria:

  • Mastery (3): Handles all materials safely, explains purposes, completes tasks independently
  • Developing (2): Safe handling, completes most tasks with minimal help
  • Emerging (1): Needs guidance but participates actively
  • Beginning (0): Requires extensive support

Week 7-8 Assessment: Advanced Unplugged Coding

Format: Physical Coding Challenges (25 minutes)

  1. Sequencing Challenge (12 points)
  • Arrange 6 direction cards to navigate through obstacle course
  • Explain why each step comes in that order
  • Successfully complete the physical navigation
  • Fix mistakes when path doesn’t work
  1. IF/THEN Logic (8 points)
  • Follow conditional instructions: “IF you see blue, THEN hop”
  • Create own IF/THEN rule for a friend to follow
  • Demonstrate understanding with actions
  1. Story Algorithm (10 points)
  • Use 5 picture cards to create logical story sequence
  • Tell story following the card order
  • Explain what happens if cards are mixed up
  • Help fix a mixed-up story sequence

Practical Skills Rubric:

  • Advanced (25-30 points): Creates original sequences, helps others, shows deep understanding
  • Proficient (20-24 points): Completes all challenges correctly with minor guidance
  • Developing (15-19 points): Understands concepts but needs support for complex tasks
  • Beginning (Below 15 points): Requires significant help to participate

Grade 2-5 (7-11 Years) - Weeks 6-8

Advanced Scratch Programming & Game Development

Week 6: Game Structure and Design

Learning Objectives:

  • Understand basic game structure (start, play, end)
  • Use Scratch blocks to move characters and detect collisions
  • Make characters move between different scenes
  • Create scoring or win conditions

Key Concepts:

  • Game Design Elements: Characters, backgrounds, objectives, rules
  • Game Loop: Continuous cycle of input, processing, output
  • Collision Detection: Knowing when sprites touch each other
  • Scene Transitions: Moving between different game screens
  • Win/Lose Conditions: Rules that determine game outcomes
  • User Interface: Buttons, scores, and information displays

Advanced Scratch Concepts:

  • Sensing Blocks: “touching color”, “distance to”, “key pressed”
  • Variables: Storing score, lives, or time
  • Broadcast Messages: Communication between sprites
  • Clone Sprites: Creating multiple copies of objects
  • Custom Blocks: Making your own programming blocks

Game Development Process:

  1. Planning Phase: Sketch game idea, list needed sprites and backgrounds
  2. Prototype: Create basic movement and interaction
  3. Enhancement: Add sounds, effects, and polish
  4. Testing: Play game and fix bugs
  5. Sharing: Present to classmates

Example Game Structure:

When green flag clicked
Set score to 0
Set lives to 3
Say "Game Starting!" for 2 seconds
Show sprite
Forever:
    If key space pressed:
        Move player sprite
    If touching enemy:
        Change lives by -1
        If lives = 0:
            Say "Game Over!"
            Stop all

Week 7: Transition to Text-Based Concepts

Learning Objectives:

  • Prepare learners for text-based coding
  • Understand basic programming concepts using blocks
  • Use logic and loops to control sprite or robot actions
  • Begin transition to robotics or advanced coding platforms

Key Concepts:

  • Programming Fundamentals: Sequence, selection, iteration
  • Logic Blocks: IF/ELSE statements in visual form
  • Loop Types: Forever, repeat until, repeat X times
  • Variables and Operations: Math in programming
  • Event-Driven Programming: Responding to user input
  • Modular Programming: Breaking code into smaller parts

Bridging Visual to Text:

  • Block-to-Code Thinking: Understanding what blocks represent
  • Pseudocode: Writing steps in plain English before coding
  • Debugging Strategies: Systematic problem-solving approaches
  • Code Organization: Keeping projects neat and logical

Advanced Programming Patterns:

// Pattern 1: State Machine
When green flag clicked
Set game state to "menu"
Forever:
    If game state = "menu":
        Show menu options
    If game state = "playing":
        Run game logic
    If game state = "game over":
        Show final score

// Pattern 2: Object Behavior
When I start as a clone:
    Go to random position
    Forever:
        Move 2 steps
        If on edge, bounce
        If touching player:
            Change score by 10
            Delete this clone

Week 8: Blockly Integration and Logic Puzzles

Learning Objectives:

  • Solve logic puzzles using visual programming concepts
  • Create games using Blockly platform
  • Demonstrate understanding of programming fundamentals
  • Apply creative problem-solving skills

Key Concepts:

  • Blockly Platform: Google’s visual programming language
  • Logic Puzzles: Problems requiring systematic thinking
  • Algorithm Efficiency: Finding the best solution method
  • Pattern Recognition: Identifying repeated solutions
  • Creative Programming: Using code for artistic expression

Blockly vs. Scratch Comparison:

FeatureScratchBlockly
FocusStorytelling & GamesLogic & Algorithms
InterfaceStage-basedPuzzle-based
OutputAnimated ProjectsProblem Solutions
ProgressionCreative ExpressionMathematical Thinking

Logic Puzzle Types:

  1. Maze Solving: Navigate through obstacles
  2. Pattern Completion: Fill in missing sequences
  3. Conditional Logic: IF/THEN decision making
  4. Loop Optimization: Repeat actions efficiently

Grade 2-5 Assessment - Weeks 6-8

Week 6 Assessment: Game Development Project

Format: Scratch Game Creation + Presentation (45 minutes)

Part A: Game Planning (10 points)

  1. Game Design Document - Create a simple plan including:
  • Game objective (what’s the goal?)
  • Main character description
  • Basic rules (how do you win/lose?)
  • Required sprites and backgrounds
  1. Storyboard - Draw 3 screens showing:
  • Game start screen
  • Main gameplay
  • Win/lose screen

Part B: Game Implementation (25 points) 3. Core Functionality (15 points):

  • Character moves with arrow keys or WASD

  • At least one interactive element (enemy, collectible, obstacle)

  • Basic collision detection (touching = something happens)

  • Clear win or lose condition

  1. Polish and Enhancement (10 points):
  • Sound effects or music
  • Visual feedback (score, lives, timer)
  • Smooth sprite movement
  • Creative backgrounds or costumes

Part C: Presentation and Reflection (15 points) 5. Game Demo (10 points):

  • Explain game rules clearly

  • Demonstrate gameplay for 2 minutes

  • Show different game scenarios

  • Handle questions from classmates

  1. Technical Reflection (5 points):
  • Explain one challenging problem you solved
  • Describe one improvement you would make
  • Share one new Scratch skill you learned

Week 7-8 Assessment: Programming Concepts Mastery

Format: Mixed Assessment - Blockly Challenges + Scratch Review (50 minutes)

Part A: Blockly Logic Challenges (20 points)

  1. Maze Navigation (8 points):
  • Complete 3 increasingly difficult maze puzzles
  • Use efficient solutions (minimal blocks)
  • Demonstrate understanding of loops and conditionals
  1. Pattern Recognition (6 points):
  • Solve sequence completion puzzles
  • Identify and extend number/color patterns
  • Create original pattern for others to solve
  1. Logic Puzzles (6 points):
  • Complete IF/THEN decision trees
  • Solve multi-step conditional problems
  • Optimize solutions for clarity

Part B: Concept Transfer (15 points) 4. Visual to Text Translation (10 points): Given this Scratch code block arrangement:

[When flag clicked] → [Forever] → [If touching mouse] → [Move 10 steps]

Write in pseudocode (plain English): “When the program starts, ________________”

  1. Problem Decomposition (5 points): Break down this challenge into steps: “Create a sprite that follows the mouse but stops when it touches the edge”

Step 1: _______________ Step 2: _______________ Step 3: _______________ Step 4: _______________

Part C: Creative Application (15 points) 6. Original Algorithm (15 points): Choose ONE to complete:

Option A - Scratch: Create a “digital pet” that:

  • Follows mouse cursor
  • Changes expression when clicked
  • Makes sound when hungry (timer-based)
  • Has at least 3 different costumes

Option B - Blockly: Design a solution for:

  • Robot that sorts colored objects
  • Path that avoids all obstacles
  • Pattern that creates art using loops

Assessment Rubric:

  • Expert (90-100%): Exceeds requirements with creative solutions and clear explanations
  • Proficient (80-89%): Meets all requirements with good understanding demonstrated
  • Developing (70-79%): Meets most requirements but may have gaps in complex concepts
  • Novice (60-69%): Shows basic understanding but struggles with application
  • Beginning (Below 60%): Needs significant support to demonstrate concepts

Grade 6-9 (11-14 Years) - Weeks 6-8

Drone Laws, Emergency Procedures & Practical Flying

Week 6: Drone Laws and Regulations (Kenya Focus)

Learning Objectives:

  • Learn basic drone laws in Kenya (KCAA regulations)
  • Understand where and how children can fly drones legally
  • Develop awareness of responsible drone operation
  • Understand the importance of aviation safety

Key Concepts:

  • Kenya Civil Aviation Authority (KCAA): National aviation regulator
  • Drone Registration: Required identification and documentation
  • No-Fly Zones: Airports, government buildings, restricted areas
  • Altitude Restrictions: Maximum height limitations
  • Visual Line of Sight (VLOS): Maintaining visual contact
  • Privacy Laws: Respecting others’ rights and property

Kenya Drone Regulations Summary:

  1. Registration Requirements:
  • All drones over 250g must be registered with KCAA
  • Operator license required for commercial operations
  • Age restrictions for different categories of operation
  1. Operational Limits:
  • Maximum altitude: 400 feet (120 meters) AGL
  • Minimum distance from airports: 8km for major airports
  • No flying over crowds or public events
  • Daylight operations only (without special permits)
  1. Prohibited Areas:
  • Within 5km of any airport
  • Over government buildings and installations
  • National parks without permits
  • Private property without permission

Safety and Legal Guidelines for Young Pilots:

  • Always have adult supervision
  • Start with toy drones under 250g
  • Practice in open, safe areas
  • Respect others’ privacy and property
  • Learn emergency procedures
  • Keep drone in sight at all times

Week 7: Emergency Procedures and Responsible Flying

Learning Objectives:

  • Review key safety and legal concepts from previous weeks
  • Understand emergency basics for beginner flyers
  • Develop decision-making skills for unexpected situations
  • Practice responsible pilot behavior

Key Concepts:

  • Emergency Procedures: Systematic responses to problems
  • Risk Assessment: Evaluating dangers before flying
  • Decision Making: Choosing appropriate actions under pressure
  • Communication: Alerting others during emergencies
  • Equipment Failure: What to do when drone malfunctions
  • Weather Awareness: Recognizing dangerous conditions

Emergency Scenarios and Responses:

  1. Lost Communication with Drone:
  • Stay calm and observe drone behavior
  • Activate Return-to-Home (RTH) function if available
  • Move to higher ground for better signal
  • Prepare for manual landing if signal returns
  • Never chase after a flyaway drone
  1. Low Battery Warning:
  • Immediately begin landing sequence
  • Choose nearest safe landing spot
  • Avoid flying over people or property
  • Land even if not at original takeoff point
  • Safety is more important than convenience
  1. Unexpected Weather Changes:
  • Monitor weather conditions constantly
  • Land immediately if wind increases
  • Avoid flying in rain or snow
  • Watch for sudden temperature changes
  • When in doubt, don’t fly
  1. Equipment Malfunction:
  • Attempt controlled landing immediately
  • Don’t try to fix problems while airborne
  • Inform other people in the area
  • Document the problem for later analysis
  • Never continue flying with known issues

Mission Planning Process:

  1. Pre-flight Planning: Weather check, equipment inspection, route planning
  2. Risk Assessment: Identify potential hazards and mitigation strategies
  3. Communication Plan: Inform others of flight activities
  4. Emergency Procedures: Know what to do if things go wrong
  5. Post-flight Review: Analyze what went well and areas for improvement

Week 8: Practical Flying Skills and Team Challenges

Learning Objectives:

  • Demonstrate ability to control a mini drone (takeoff, hover, land)
  • Apply basic flight skills in problem-solving mission scenarios
  • Work as a team to complete drone-based challenges
  • Evaluate personal progress and set goals for improvement

Key Concepts:

  • Flight Control Mastery: Smooth, precise drone movements
  • Situational Awareness: Understanding surroundings during flight
  • Mission Planning: Preparing for specific flight objectives
  • Teamwork: Collaborative problem-solving with drones
  • Performance Evaluation: Self-assessment and peer feedback
  • Safety Leadership: Taking responsibility for safe operations

Basic Flight Skills Progression:

  1. Fundamental Controls:
  • Smooth takeoff to hover
  • Maintaining steady hover
  • Controlled landing
  • Forward/backward movement
  • Left/right movement
  • Rotation control
  1. Intermediate Maneuvers:
  • Figure-8 patterns
  • Precision landing on target
  • Obstacle avoidance
  • Following predetermined paths
  • Coordinated movements
  1. Advanced Challenges:
  • Team relay races
  • Rescue simulations
  • Precision delivery tasks
  • Group choreography
  • Time-based challenges

Mission Scenarios:

Mission 1: Search and Rescue

  • Objective: Locate “missing person” (target) in designated area
  • Skills: Systematic search patterns, communication, observation
  • Time limit: 5 minutes
  • Success criteria: Target identified and location communicated

Mission 2: Delivery Challenge

  • Objective: Transport small payload from Point A to Point B
  • Skills: Precision flying, cargo management, safe landing
  • Obstacles: Wind conditions, landing accuracy requirements
  • Success criteria: Payload delivered undamaged within time limit

Mission 3: Team Coordination

  • Objective: Multiple drones work together to complete complex task
  • Skills: Communication, timing, spatial awareness
  • Challenge: Choreographed flight pattern or group problem-solving
  • Success criteria: All drones complete task without collisions

Safety Protocols for Practical Flying:

  • Always maintain 10-foot safety zone around flying area
  • Designate specific roles: pilot, observer, safety officer
  • Use hand signals for communication during loud operations
  • Practice emergency landing procedures before each session
  • Rotate roles so everyone experiences different responsibilities

Grade 6-9 Assessment - Weeks 6-8

Week 6 Assessment: Drone Laws and Regulations

Format: Written Test + Legal Scenario Analysis (40 minutes)

Part A: Kenya Aviation Law Knowledge (25 points)

  1. KCAA Regulations (10 points) Fill in the blanks:
  • Drones over ______ grams must be registered with KCAA
  • Maximum altitude for recreational flying is ______ feet
  • Minimum distance from major airports is ______ kilometers
  • Commercial drone operations require a ______ license
  • Drones must remain within ______ line of sight
  1. No-Fly Zone Identification (10 points) Mark TRUE or FALSE for each flying location:
  • Your school playground during lunch break: ______
  • Open field 2km from Wilson Airport: ______
  • Your backyard with adult supervision: ______
  • Uhuru Park during a public event: ______
  • Private farm with owner’s permission: ______
  1. Legal Compliance (5 points) List 3 requirements for legally flying a drone in Kenya:



Part B: Scenario-Based Decision Making (20 points)

  1. Legal Scenarios (20 points) For each scenario, explain if the action is legal and why:

Scenario A: Sarah wants to fly her 300g drone over her neighbor’s house to take photos of her own backyard. Legal? _____ Why? _______________________________

Scenario B: James plans to fly his registered drone at 200 feet altitude in an open field 10km from any airport during daylight hours. Legal? _____ Why? _______________________________

Scenario C: A group of students want to use their drone for a school project, filming the school building from 100 feet up. Legal? _____ Why? _______________________________

Scenario D: Ahmed wants to fly his 150g toy drone in his compound for 10 minutes. Legal? _____ Why? _______________________________

Part C: Responsible Pilot Planning (15 points)

  1. Pre-flight Checklist (15 points) Create a 10-item pre-flight checklist that includes legal, safety, and equipment considerations:




[Continue through 10]

Week 7-8 Assessment: Emergency Procedures and Practical Skills

Format: Practical Flight Test + Emergency Response Simulation (60 minutes)

Part A: Emergency Response Knowledge (20 points)

  1. Emergency Procedures (15 points) Describe the correct response for each emergency:

Low Battery Warning: Step 1: _______________________________ Step 2: _______________________________ Step 3: _______________________________

Lost Radio Contact: Step 1: _______________________________ Step 2: _______________________________ Step 3: _______________________________

Sudden Weather Change: Step 1: _______________________________ Step 2: _______________________________ Step 3: _______________________________

  1. Risk Assessment (5 points) Identify 3 risks for flying in each environment:
  • School playground: ____________, ____________, ____________
  • Open field: ____________, ____________, ____________

Part B: Practical Flight Skills Assessment (30 points)

  1. Basic Flight Controls (15 points) Demonstrate competency in:
  • Smooth takeoff and landing (3 points)
  • Stable hovering for 30 seconds (3 points)
  • Forward/backward precision movement (3 points)
  • Left/right precision movement (3 points)
  • Controlled rotation (3 points)
  1. Mission Challenge (15 points) Complete ONE of the following missions:

Option A - Navigation Course:

  • Fly through 5 waypoints in sequence
  • Land within 1-meter target circle
  • Complete within 3 minutes

Option B - Team Coordination:

  • Work with partner to complete relay challenge
  • Communicate effectively during handoff
  • Maintain safety throughout mission

Part C: Leadership and Safety Evaluation (15 points)

  1. Safety Leadership (8 points) While others are flying, demonstrate:
  • Proper safety zone maintenance
  • Clear communication with pilot
  • Appropriate responses to unsafe situations
  • Helpful coaching and encouragement
  1. Self-Assessment and Goal Setting (7 points) Written reflection:
  • What flight skill are you most confident with? Why?
  • What area needs the most improvement?
  • Set one specific goal for future drone flying
  • Describe one way you can help others fly safely

Practical Skills Rubric:

  • Expert Pilot (90-100%): Demonstrates advanced skills, teaches others, shows exceptional safety awareness
  • Competent Pilot (80-89%): Performs all basic skills reliably, follows safety protocols consistently
  • Developing Pilot (70-79%): Shows improvement in most areas, occasional guidance needed
  • Novice Pilot (60-69%): Basic skills present but inconsistent, needs continued practice
  • Beginning Pilot (Below 60%): Requires significant instruction and supervision

Grade 10-12 (14-16 Years) - Weeks 6-8

Advanced Python Projects & Integration

Week 6-7: Integrated Systems Project (Combined Weeks)

Learning Objectives:

  • Combine motors and sensors in complex systems
  • Debug integrated hardware/software systems
  • Apply creative problem-solving to real-world challenges
  • Document projects professionally

Key Concepts:

  • Systems Integration: Combining multiple components into unified solutions
  • Hardware-Software Interface: Code that bridges digital and physical worlds
  • System Architecture: Planning complex projects with multiple subsystems
  • Error Handling: Managing failures gracefully in complex systems
  • Performance Optimization: Making systems run efficiently
  • Documentation Standards: Professional project recording

Advanced Integration Concepts:

1. Multi-Sensor Fusion

import threading
import queue
from gpiozero import DistanceSensor, MotionSensor, MCP3008
from time import sleep
import json

class SensorFusion:
    def __init__(self):
        self.distance_sensor = DistanceSensor(echo=24, trigger=23)
        self.motion_sensor = MotionSensor(4)
        self.light_sensor = MCP3008(channel=0)
        self.temp_sensor = MCP3008(channel=1)

        # Data queues for thread communication
        self.sensor_data = queue.Queue()
        self.running = False

    def read_sensors(self):
        """Continuous sensor reading in separate thread"""
        while self.running:
            try:
                data = {
                    'timestamp': time.time(),
                    'distance': self.distance_sensor.distance * 100,
                    'motion': self.motion_sensor.motion_detected,
                    'light_level': self.light_sensor.voltage,
                    'temperature': self.convert_temp(self.temp_sensor.voltage)
                }
                self.sensor_data.put(data)
                sleep(0.1)  # 10Hz sampling rate
            except Exception as e:
                print(f"Sensor reading error: {e}")

    def convert_temp(self, voltage):
        """Convert sensor voltage to temperature"""
        return (voltage - 0.5) * 100  # Example conversion

    def start_monitoring(self):
        """Start sensor monitoring thread"""
        self.running = True
        self.sensor_thread = threading.Thread(target=self.read_sensors)
        self.sensor_thread.start()

    def stop_monitoring(self):
        """Stop sensor monitoring"""
        self.running = False
        if hasattr(self, 'sensor_thread'):
            self.sensor_thread.join()

2. Intelligent Control Systems

class SmartEnvironmentController:
    def __init__(self):
        self.sensors = SensorFusion()
        self.fan_motor = Motor(forward=2, backward=3)
        self.heater_relay = OutputDevice(18)
        self.lights = PWMOutputDevice(19)

        # Control parameters
        self.target_temp = 22.0  # Target temperature in Celsius
        self.temp_tolerance = 1.0
        self.light_threshold = 0.3

        # Control state
        self.auto_mode = True
        self.manual_override = False

    def analyze_environment(self, sensor_data):
        """Intelligent decision making based on sensor data"""
        decisions = {
            'fan_speed': 0.0,
            'heater_on': False,
            'light_level': 0.0,
            'alert_status': 'normal'
        }

        # Temperature control logic
        temp_diff = sensor_data['temperature'] - self.target_temp

        if temp_diff > self.temp_tolerance:  # Too hot
            decisions['fan_speed'] = min(1.0, temp_diff / 5.0)  # Scale fan speed
            decisions['heater_on'] = False
        elif temp_diff < -self.temp_tolerance:  # Too cold
            decisions['fan_speed'] = 0.0
            decisions['heater_on'] = True

        # Light control logic
        if sensor_data['light_level'] < self.light_threshold:
            decisions['light_level'] = 1.0 - sensor_data['light_level']  # Complement lighting

        # Security monitoring
        if sensor_data['motion'] and sensor_data['distance'] < 20:  # Close motion
            decisions['alert_status'] = 'intrusion_detected'
        elif sensor_data['distance'] < 5:  # Very close object
            decisions['alert_status'] = 'obstacle_warning'

        return decisions

    def execute_controls(self, decisions):
        """Execute control decisions"""
        if not self.manual_override:
            # Motor control
            if decisions['fan_speed'] > 0:
                self.fan_motor.forward(decisions['fan_speed'])
            else:
                self.fan_motor.stop()

            # Heater control
            if decisions['heater_on']:
                self.heater_relay.on()
            else:
                self.heater_relay.off()

            # Light control
            self.lights.value = decisions['light_level']

    def run_control_loop(self):
        """Main control loop"""
        self.sensors.start_monitoring()

        try:
            while True:
                if not self.sensors.sensor_data.empty():
                    current_data = self.sensors.sensor_data.get()
                    decisions = self.analyze_environment(current_data)
                    self.execute_controls(decisions)

                    # Log system status
                    self.log_system_status(current_data, decisions)

                sleep(0.5)  # Control loop frequency

        except KeyboardInterrupt:
            print("Shutting down control system...")
        finally:
            self.sensors.stop_monitoring()
            self.fan_motor.stop()
            self.heater_relay.off()
            self.lights.off()

    def log_system_status(self, sensor_data, decisions):
        """Log system performance data"""
        log_entry = {
            'timestamp': sensor_data['timestamp'],
            'sensors': sensor_data,
            'controls': decisions,
            'mode': 'auto' if self.auto_mode else 'manual'
        }

        # In a real system, this would write to a file or database
        print(f"System Status: Temp={sensor_data['temperature']:.1f}°C, "
              f"Fan={decisions['fan_speed']:.1f}, "
              f"Alert={decisions['alert_status']}")

3. Project Documentation Standards

"""
Smart Environment Control System
================================

Project: IoT Environmental Controller
Author: Student Name
Date: Current Date
Version: 1.0

Description:
    An intelligent system that monitors environmental conditions and automatically
    adjusts heating, cooling, and lighting based on sensor feedback.

Hardware Requirements:
    - Raspberry Pi 4 or similar
    - Temperature sensor (DS18B20 or similar)
    - Light sensor (LDR with MCP3008 ADC)
    - Motion sensor (PIR)
    - Distance sensor (HC-SR04)
    - DC Motor (for fan simulation)
    - Relay module (for heater control)
    - PWM-controlled LED (for lighting)

Software Dependencies:
    - Python 3.7+
    - gpiozero library
    - threading module (standard library)
    - queue module (standard library)
    - json module (standard library)

Installation:
    pip install gpiozero

Usage:
    python smart_environment.py

Configuration:
    Modify target_temp and light_threshold variables in SmartEnvironmentController
    class to adjust system behavior.

Testing:
    Run included test functions to verify sensor readings and control outputs
    before deploying the full system.

Known Issues:
    - Temperature sensor calibration may need adjustment for local conditions
    - Motion sensor has 2-second reset time that affects rapid detection

Future Enhancements:
    - Web interface for remote monitoring
    - Data logging to CSV files
    - Machine learning for predictive control
    - Mobile app integration
"""

Project Examples for Students:

Project 1: Smart Garden Monitor

  • Monitors soil moisture, light, and temperature
  • Controls watering pump and grow lights
  • Logs plant growth data
  • Sends alerts when intervention needed

Project 2: Home Security System

  • Multiple sensor integration (motion, door, window)
  • Camera trigger on detection
  • SMS/email notifications
  • Mobile app control interface

Project 3: Weather Station

  • Measures temperature, humidity, pressure, wind
  • Data logging with timestamps
  • Weather prediction algorithms
  • Web dashboard for data visualization

Project 4: Automated Greenhouse

  • Climate control (temperature, humidity)
  • Automated watering system
  • Light cycle management
  • Growth optimization algorithms

Week 8: Project Presentations and Assessment

Learning Objectives:

  • Present technical projects professionally
  • Give and receive constructive feedback
  • Self-evaluate learning progress and achievements
  • Plan next steps for continued learning

Key Concepts:

  • Technical Communication: Explaining complex systems clearly
  • Presentation Skills: Engaging audiences with technical content
  • Peer Review: Constructive feedback and collaboration
  • Self-Assessment: Honest evaluation of own work
  • Professional Development: Planning continued learning paths
  • Portfolio Building: Documenting achievements for future opportunities

Presentation Structure:

  1. Project Overview (2 minutes)
  • Problem statement and objectives
  • Target audience and use cases
  • Key features and functionality
  1. Technical Demonstration (2 minutes)
  • Live system operation
  • Key components and how they work
  • Code walkthrough of critical sections
  1. Challenges and Solutions (1 minute)
  • Major obstacles encountered
  • Creative solutions implemented
  • Lessons learned from failures

Evaluation Criteria:

Technical Merit (40%):

  • System functionality and reliability
  • Code quality and organization
  • Creative problem-solving approach
  • Integration of multiple technologies

Communication (30%):

  • Clear explanation of technical concepts
  • Engaging presentation delivery
  • Appropriate use of visual aids
  • Effective response to questions

Documentation (20%):

  • Complete project documentation
  • Code comments and structure
  • User instructions and setup guides
  • Reflection on learning process

Collaboration (10%):

  • Constructive feedback to peers
  • Professional interaction during Q&A
  • Willingness to share knowledge
  • Respectful critique and discussion

Python Programming Trivia Challenge: End the term with fun technical questions:

  1. What does “PEP 8” refer to in Python?
  2. What’s the difference between == and is in Python?
  3. How do you handle exceptions in Python?
  4. What is a Python decorator?
  5. What’s the difference between a list and a tuple?

Grade 10-12 Final Assessment - Weeks 6-8

Integrated Systems Project Assessment

Format: Major Project + Technical Presentation + Peer Review (2 weeks + presentation day)

Project Requirements: Students must create an integrated system that combines:

  • At least 3 different sensors
  • At least 2 actuators (motors, lights, relays, etc.)
  • Data logging and analysis
  • User interface (command line or simple GUI)
  • Error handling and safety features

Part A: Technical Implementation (40 points)

System Design (10 points)

  • Clear problem definition and solution approach
  • System architecture diagram showing component relationships
  • Hardware schematic or connection diagram
  • Software flowchart or algorithm description

Code Quality (15 points)

  • Well-structured, modular code with functions/classes
  • Appropriate variable names and code organization
  • Comprehensive comments explaining complex sections
  • Error handling for hardware failures
  • Efficient algorithms and resource usage

Hardware Integration (15 points)

  • Stable sensor readings with appropriate filtering
  • Reliable actuator control with safety limits
  • Proper electrical connections and component usage
  • System operates reliably for extended periods
  • Professional cable management and mounting

Part B: Documentation and Communication (25 points)

Project Documentation (15 points) Create a complete project report including:

  • Executive summary of project goals and achievements
  • Detailed technical specifications and requirements
  • Installation and setup instructions
  • User manual with clear operating procedures
  • Troubleshooting guide for common problems
  • Code documentation with API reference

Technical Presentation (10 points)

  • Clear 5-minute presentation explaining project
  • Live demonstration of working system
  • Professional slides with technical diagrams
  • Confident handling of technical questions
  • Appropriate use of technical vocabulary

Part C: Innovation and Problem Solving (20 points)

Creative Solutions (10 points)

  • Original approach to solving chosen problem
  • Creative use of available hardware and software
  • Evidence of iterative design and improvement
  • Solutions show depth of understanding beyond basic requirements

Advanced Features (10 points) Choose and implement at least TWO:

  • Machine learning or AI decision making
  • Network communication (IoT connectivity)
  • Mobile app or web interface
  • Data visualization and analytics
  • Predictive algorithms or optimization
  • Integration with external APIs or services

Part D: Professional Skills (15 points)

Peer Collaboration (8 points)

  • Constructive feedback provided to classmates
  • Professional behavior during presentations
  • Willingness to help others debug problems
  • Respectful and insightful questions during Q&A

Self-Assessment (7 points) Written reflection addressing:

  • Most significant technical challenge and how you overcame it
  • What you would do differently if starting over
  • How this project connects to potential career interests
  • Specific skills you want to develop further
  • Your confidence level with different aspects of the project

Sample Project Evaluation Rubric:

Exceptional (90-100%)

  • System exceeds all requirements with innovative features
  • Code is publication-quality with comprehensive documentation
  • Presentation is engaging and demonstrates deep understanding
  • Shows leadership in helping others and contributing to class learning
  • Self-reflection shows sophisticated understanding of learning process

Proficient (80-89%)

  • System meets all requirements reliably
  • Code is well-structured with good documentation
  • Presentation is clear and technically accurate
  • Actively participates in peer learning and feedback
  • Self-reflection shows good awareness of strengths and growth areas

Developing (70-79%)

  • System meets most requirements with minor issues
  • Code works but may have organizational or documentation gaps
  • Presentation covers required topics but may lack depth
  • Participates adequately in class activities
  • Self-reflection shows basic understanding of learning process

Beginning (60-69%)

  • System meets basic requirements but has significant limitations
  • Code works for demonstration but has structural or reliability issues
  • Presentation covers basics but shows limited understanding
  • Minimal participation in peer activities
  • Self-reflection is superficial or lacks insight

Incomplete (Below 60%)

  • System fails to meet basic requirements or doesn’t function reliably
  • Code has major issues that prevent proper operation
  • Presentation is unclear or shows misunderstanding of concepts
  • Little to no participation in collaborative learning
  • Self-reflection missing or shows no evidence of learning

Term 1 Final Portfolio Assessment - All Grade Levels

Portfolio Components Checklist

For All Students:

  • Weekly reflection journals documenting learning progress
  • Photo documentation of all projects and experiments
  • Completed weekly assessments with corrections
  • Evidence of peer collaboration and teaching
  • Self-assessment of growth in each major topic area

Grade-Specific Additions:

Preschoolers (4-6 years):

  • Drawings of favorite STEM activities
  • Parent/teacher observation notes on engagement and skills
  • Examples of unplugged coding sequences created
  • Photos of technology exploration activities

Grade 2-5 (7-11 years):

  • Screenshots of completed Scratch projects
  • Blockly puzzle solutions and explanations
  • Game design documents and storyboards
  • Video explanations of programming concepts

Grade 6-9 (11-14 years):

  • Drone safety checklist created and used
  • Mission planning worksheets with risk assessments
  • Photos/videos of practical flying sessions
  • Research report on drone applications in chosen field

Grade 10-12 (14-16 years):

  • Complete code repositories with documentation
  • Hardware connection diagrams and schematics
  • Data analysis reports from sensor projects
  • Technical presentation slides and demonstration videos

Cross-Grade Learning Objectives Mastery

By the end of Term 1, students should demonstrate:

Preschoolers:

  • Basic understanding of STEM concepts through play
  • Ability to follow simple sequences and patterns
  • Safe interaction with age-appropriate technology
  • Curiosity and engagement with hands-on exploration

Grade 2-5:

  • Fundamental programming concepts using visual languages
  • Ability to create simple games and interactive stories
  • Understanding of sequence, loops, and basic logic
  • Confidence in debugging and problem-solving

Grade 6-9:

  • Comprehensive understanding of drone safety and regulations
  • Practical flying skills with safety awareness
  • Knowledge of aviation principles and laws
  • Teamwork and communication skills in technical contexts

Grade 10-12:

  • Proficiency in Python programming for hardware control
  • Ability to integrate multiple sensors and actuators
  • Professional documentation and presentation skills
  • Independent problem-solving and creative innovation

Preparation for Term 2

Preschoolers → Scratch Junior Programming:

  • Continue building sequencing skills
  • Introduction to tablet-based programming
  • Creative storytelling with technology

Grade 2-5 → IoT Integration with Sensors:

  • Bridge from visual programming to physical computing
  • Introduction to sensors and real-world data
  • Beginning electronics and circuit concepts

Grade 6-9 → Smart Home Security:

  • Apply drone safety concepts to IoT systems
  • Introduction to sensors and automation
  • Home automation and security principles

Grade 10-12 → Smart Cities:

  • Scale up from individual projects to community solutions
  • Advanced IoT networking and data analysis
  • Social impact of technology solutions

Additional Resources and Extensions

Online Learning Platforms:

  • Preschoolers: PBS Kids programming games, Kodable app
  • Grade 2-5: Scratch Jr., Code.org courses, Blockly games
  • Grade 6-9: DroneBlocks, FAA educational materials, aviation simulation games
  • Grade 10-12: Python.org tutorials, Raspberry Pi Foundation projects, GitHub learning labs

STEM Career Connections:

  • Robotics Engineer: Designs and builds robots for various applications
  • Software Developer: Creates programs and applications for computers and devices
  • Drone Pilot: Professional UAV operations for photography, surveying, delivery
  • IoT Developer: Connects everyday objects to the internet for smart automation
  • Data Scientist: Analyzes sensor data to find patterns and make predictions

Community Extension Activities:

  • Science Fair Projects: Using skills learned to create original investigations
  • STEM Club Leadership: Teaching younger students basic concepts
  • Community Problem Solving: Identifying local problems that technology could help solve
  • Maker Space Participation: Continuing projects in community workshop environments

Assessment Data Tracking: Teachers should maintain records of:

  • Individual student progress through learning objectives
  • Common areas of difficulty requiring additional support
  • Exceptional student work that could be showcased
  • Parent/guardian feedback on home engagement with STEM concepts
  • Equipment and resource needs for optimal program delivery

This completes the comprehensive Term 1 curriculum with detailed notes, assessments, and support materials for all grade levels in the IoT & Robotics program. Each grade level has age-appropriate challenges that build foundational skills while maintaining engagement and fostering creativity in STEM learning.


Notes

I’ve created a comprehensive set of notes and assessment tests for Term 1 across all grade levels (Preschoolers through Grade 10-12). The document includes:

What’s Included:

For Each Grade Level:

  • Detailed weekly lesson notes covering weeks 1-8 content
  • Key concepts and learning objectives for each topic
  • Practical examples and code samples (for programming grades)
  • Age-appropriate assessment tests with multiple formats

Assessment Formats:

  • Preschoolers (4-6): Practical/observational assessments with hands-on activities
  • Grade 2-5 (7-11): Computer-based Scratch/Blockly challenges
  • Grade 6-9 (11-14): Written tests + practical drone safety demonstrations
  • Grade 10-12 (14-16): Coding assignments + hardware integration projects

Key Features:

  • Covers all 8 weeks of Term 1 content
  • Aligned with curriculum from the IoT & Robotics document
  • Progressive difficulty appropriate for each age group
  • Practical assessments that test real understanding
  • Detailed rubrics for fair evaluation
  • Extension activities for advanced learners
  • Safety guidelines and best practices

Topics Covered:

  • Preschoolers: STEM basics, simple machines, unplugged coding
  • Grade 2-5: Scratch programming, Blockly games, interface navigation
  • Grade 6-9: Drone basics, aviation principles, safety regulations
  • Grade 10-12: Python programming, hardware control, sensor integration

Each assessment is designed to be practical and engaging, testing both theoretical knowledge and hands-on application skills. The rubrics provide clear criteria for evaluation at different skill levels.


Perfect! I’ve now completed the comprehensive Term 1 notes and assessment materials covering all 8 weeks for all grade levels. Here’s what’s now included:

Assessment Test

Assessment Test

Assessment Test

Assessment Test

Assessment Test

Assessment Test

Assessment Test

IoT & Robotics Term 1 - Complete Notes & Assessment Tests

Table of Contents

  1. Preschoolers (4-6 Years) - STEM Storytelling & Coding Toys
  2. Grade 2-5 (7-11 Years) - Scratch & Blockly Programming
  3. Grade 6-9 (11-14 Years) - Drone Aviation Introduction
  4. Grade 10-12 (14-16 Years) - Python Basics

Preschoolers (4-6 Years)

Term 1: STEM Storytelling & Coding Toys

Week 1: Introduction to STEM

Learning Objectives:

  • Understand basic concepts of STEM (Science, Technology, Engineering, Math)
  • Spark excitement and curiosity about STEM through hands-on activities
  • Foster teamwork through group experiments
  • Develop early thinking through guided play and experimentation

Key Concepts:

  • Science: Learning about the world around us through observation
  • Technology: Simple tools and devices that help us
  • Engineering: Building and creating solutions
  • Mathematics: Numbers, shapes, and patterns in everyday life

Activities:

  • Floating vs. Sinking experiments with various objects
  • Basic robot interaction and exploration
  • STEM vocabulary building games
  • Classification activities

Materials: Water, buckets, floating items (paper, feathers), sinking items (stones, coins), toy robot, tablet

Week 2: STEM Play Corners

Learning Objectives:

  • Explore different STEM areas through play stations
  • Develop fine motor skills through hands-on manipulation
  • Practice problem-solving through guided discovery
  • Build confidence in exploring new concepts

Key Concepts:

  • Play-based learning: Learning through exploration and fun
  • Spatial awareness: Understanding shapes, sizes, and positions
  • Cause and effect: Understanding that actions have results
  • Collaboration: Working together to solve problems

Week 3: Simple Machines & Environmental Science

Learning Objectives:

  • Identify simple machines in everyday life
  • Understand basic environmental concepts
  • Develop observation skills
  • Connect STEM to the natural world

Key Concepts:

  • Simple Machines: Lever, pulley, wheel, ramp
  • Environment: Plants, animals, weather, seasons
  • Observation: Using our senses to learn
  • Nature patterns: Recognizing patterns in nature

Week 4: Unplugged Coding

Learning Objectives:

  • Introduction to coding concepts without computers
  • Understand sequence and order
  • Develop logical thinking
  • Practice following and giving instructions

Key Concepts:

  • Sequence: Steps in order
  • Instructions: Clear directions to follow
  • Algorithms: Step-by-step solutions
  • Patterns: Recognizing and creating patterns

Assessment Test - Preschoolers (4-6 Years)

Week 1-2 Assessment: STEM Basics

Format: Practical/Observational Assessment

  1. Floating or Sinking? (Show child various objects)
  • Point to objects that will float: feather, cork, plastic toy
  • Point to objects that will sink: stone, coin, marble
  • Explain why you think so (in simple words)
  1. STEM Matching (Picture cards)
  • Match the scientist to the magnifying glass
  • Match the engineer to the building blocks
  • Match the mathematician to the numbers
  • Match the technologist to the computer
  1. Following Instructions
  • Can follow 2-step instructions: “Pick up the red block and put it in the box”
  • Can give simple instructions to a friend
  • Can arrange objects in order (biggest to smallest)

Assessment Rubric:

  • Exceeding (3): Completes all tasks independently with explanation
  • Meeting (2): Completes most tasks with minimal guidance
  • Approaching (1): Attempts tasks with significant support
  • Beginning (0): Needs extensive help to participate

Week 3-4 Assessment: Simple Machines & Coding

Format: Hands-on Demonstration

  1. Simple Machines Hunt
  • Find the lever (seesaw, scissors)
  • Find the wheel (bicycle, toy car)
  • Find the ramp (slide, wedge)
  • Explain what each machine helps us do
  1. Nature Observation
  • Draw or point to living things vs. non-living things
  • Identify basic shapes in nature (circles in flowers, triangles in mountains)
  • Name things that grow vs. things that are made
  1. Unplugged Coding Challenge
  • Arrange sequence cards to show morning routine
  • Give directions to help friend reach the treasure
  • Complete a simple pattern with blocks or shapes

Grade 2-5 (7-11 Years)

Term 1: Scratch & Blockly Programming

Week 1: Introduction to Programming

Learning Objectives:

  • Understand what programming is
  • Learn about Scratch programming environment
  • Install and explore Scratch interface
  • Grasp the concept of sequencing

Key Concepts:

  • Programming: Giving instructions to computers
  • Scratch: Visual programming language using blocks
  • Interface: The screen where we work with Scratch
  • Sequencing: Putting commands in the right order
  • Sprites: Characters in Scratch programs
  • Stage: Where Scratch programs run

Core Activities:

  • Explore Scratch interface and tools
  • Identify different areas (sprite area, blocks palette, stage)
  • Learn about different block categories (Motion, Looks, Sound, etc.)
  • Create first simple animation

Week 2: Understanding Scratch Interface

Learning Objectives:

  • Navigate Scratch interface confidently
  • Understand different block categories
  • Create basic sprite movements
  • Save and load projects

Key Concepts:

  • Blocks Palette: Where programming blocks are stored
  • Scripts Area: Where we build our programs
  • Motion Blocks: Make sprites move
  • Looks Blocks: Change sprite appearance
  • Events: What starts our programs running

Week 3: Setting Up Scratch Projects

Learning Objectives:

  • Plan and organize Scratch projects
  • Understand project structure
  • Use backgrounds and sprites effectively
  • Practice debugging simple problems

Key Concepts:

  • Project Planning: Thinking before coding
  • Backgrounds: Scenes for our programs
  • Sprite Library: Ready-made characters
  • Debugging: Finding and fixing problems

Week 4: Introduction to Blockly

Learning Objectives:

  • Understand Blockly visual programming
  • Compare Blockly with Scratch
  • Complete basic Blockly puzzles
  • Transfer concepts between platforms

Key Concepts:

  • Blockly: Another visual programming language
  • Puzzle-based Learning: Learning through solving challenges
  • Logic Blocks: Making decisions in programs
  • Loops: Repeating actions

Week 5: Blockly Games for Scratch Programmers

Learning Objectives:

  • Apply Scratch knowledge to Blockly games
  • Solve increasingly complex puzzles
  • Understand programming logic and flow
  • Build problem-solving confidence

Key Concepts:

  • Game Logic: Rules that make games work
  • Progressive Difficulty: Challenges that get harder
  • Pattern Recognition: Seeing repeated solutions
  • Persistence: Keep trying when challenges are difficult

Assessment Test - Grade 2-5 (7-11 Years)

Week 1-3 Assessment: Scratch Fundamentals

Format: Practical Computer Assessment (30 minutes)

Part A: Interface Knowledge (10 points)

  1. Label the parts of Scratch interface:
  • Blocks Palette
  • Scripts Area
  • Stage
  • Sprite Area
  1. Match the block colors to their functions:
  • Motion blocks: _____ (Blue)
  • Looks blocks: _____ (Purple)
  • Sound blocks: _____ (Pink)
  • Events blocks: _____ (Yellow)

Part B: Basic Programming (15 points) 3. Create a program that makes a sprite:

  • Move 10 steps forward

  • Turn 90 degrees right

  • Say “Hello” for 2 seconds

  • Change color

  1. Fix this broken sequence (drag blocks in correct order):
[Say "Goodbye"][When green flag clicked][Move 100 steps][Say "Hello"]

Part C: Problem Solving (10 points) 5. Your sprite isn’t moving when you click the green flag. What might be wrong?

  • Missing “when green flag clicked” block

  • Sprite is already at the edge

  • Motion blocks aren’t connected

  • All of the above

  1. Create a simple animation showing a cat walking across the stage.

Week 4-5 Assessment: Blockly & Problem Solving

Format: Computer-based Blockly Challenges (25 minutes)

Part A: Blockly Basics (8 points)

  1. Complete the “Move Forward” puzzle in Blockly
  2. Complete the “Turn Left/Right” puzzle
  3. Complete the “Repeat Loop” puzzle
  4. Complete the “If/Else” puzzle

Part B: Logic Understanding (12 points) 5. Explain what this Blockly code does:

Repeat 4 times:
  Move forward
  Turn right 90 degrees

Answer: _________________

  1. Write Blockly code to make a character:
  • Move forward 3 steps
  • Turn left if path is blocked
  • Repeat until reaching goal

Part C: Transfer Learning (10 points) 7. How is Blockly similar to Scratch? List 3 similarities:




  1. Create a Scratch program that does the same thing as this Blockly code:
When started:  Repeat 5 times:    Move forward 20 steps    Wait 1 second

Assessment Rubric:

  • Advanced (90-100%): Completes all tasks efficiently with creative additions
  • Proficient (80-89%): Completes most tasks correctly with minor errors
  • Developing (70-79%): Completes basic tasks but struggles with complex problems
  • Beginning (Below 70%): Needs significant support to complete tasks

Grade 6-9 (11-14 Years)

Term 1: Drone Aviation Introduction

Week 1: Introduction to Drones and Aviation Basics

Learning Objectives:

  • Understand what drones are and their applications
  • Learn basic aviation principles
  • Identify different types of aircraft
  • Understand the evolution of flight

Key Concepts:

  • Unmanned Aerial Vehicle (UAV): Aircraft without a human pilot aboard
  • Remote Pilot: Person controlling the drone from the ground
  • Autonomous Flight: Drones flying with minimal human control
  • Commercial vs. Recreational Use: Different purposes for drones
  • Four Forces of Flight: Lift, Weight, Thrust, Drag
  • Aerodynamics: How air moves around objects in flight

Applications of Drones:

  • Photography and videography
  • Search and rescue operations
  • Agriculture monitoring
  • Package delivery
  • Scientific research
  • Military operations

Week 2: Drone Safety Rules and Best Practices

Learning Objectives:

  • Learn essential drone safety protocols
  • Understand pre-flight checklist procedures
  • Identify potential hazards and risks
  • Develop responsible drone operation habits

Key Concepts:

  • Pre-flight Inspection: Checking drone condition before flying
  • Weather Conditions: How weather affects drone flight
  • Battery Safety: Proper battery handling and storage
  • Emergency Procedures: What to do when things go wrong
  • Situational Awareness: Being aware of surroundings while flying

Safety Rules:

  1. Always maintain visual contact with drone
  2. Check weather conditions before flying
  3. Inspect drone and equipment before each flight
  4. Fly in open areas away from people and property
  5. Never fly above 400 feet
  6. Respect others’ privacy
  7. Land immediately if drone malfunctions

Week 3: FAA/UAS Regulations (Basic Overview)

Learning Objectives:

  • Understand basic aviation regulations
  • Learn about no-fly zones and restricted airspace
  • Understand registration requirements
  • Learn about pilot certification basics

Key Concepts:

  • Federal Aviation Administration (FAA): Government agency regulating aviation
  • Unmanned Aircraft Systems (UAS): Official term for drones and related equipment
  • No-Fly Zones: Areas where drone flight is prohibited
  • Remote Pilot Certificate: License required for commercial drone operations
  • Registration: Required identification for drones over 0.55 pounds

Basic Regulations:

  • Drones must be registered if over 0.55 lbs (250 grams)
  • Maximum altitude: 400 feet above ground level
  • Must yield right-of-way to manned aircraft
  • No flying over groups of people
  • No flying at night without special certification
  • Respect airport operational areas (usually 5-mile radius)

Week 4: Key Drone Types & Components

Learning Objectives:

  • Identify different drone configurations
  • Understand key drone components and their functions
  • Compare advantages and disadvantages of different designs
  • Learn basic maintenance requirements

Key Concepts:

  • Multirotor: Drones with multiple rotating propellers
  • Fixed-wing: Airplane-like drones with wings
  • Hybrid VTOL: Vertical takeoff and landing with forward flight capability
  • Frame: Main structure holding all components
  • Flight Controller: Computer controlling drone flight
  • ESC (Electronic Speed Controller): Controls motor speed
  • Gimbal: Stabilizes camera during flight

Drone Types:

  1. Quadcopter: 4 rotors, most common configuration
  2. Hexacopter: 6 rotors, more redundancy and payload capacity
  3. Octocopter: 8 rotors, highest redundancy and capacity
  4. Fixed-wing: Longer flight times, faster speeds
  5. Racing drones: Small, fast, agile for competitive flying

Week 5: Basic Principles of Flight

Learning Objectives:

  • Understand the four forces of flight in detail
  • Learn how drones achieve controlled flight
  • Understand stability and control concepts
  • Explore flight dynamics and physics

Key Concepts:

  • Lift: Upward force generated by rotors or wings
  • Weight (Gravity): Downward force pulling drone toward earth
  • Thrust: Forward force propelling drone through air
  • Drag: Resistance force opposing motion through air
  • Center of Gravity: Balance point of drone
  • Pitch, Roll, Yaw: Three axes of rotation
  • Gyroscopic Effect: How spinning rotors affect stability

Flight Control:

  • Throttle: Controls altitude (up/down)
  • Pitch: Controls forward/backward movement
  • Roll: Controls left/right movement
  • Yaw: Controls rotation (turning left/right)
  • Trim: Fine adjustments for balanced flight

Assessment Test - Grade 6-9 (11-14 Years)

Week 1-2 Assessment: Drone Basics and Safety

Format: Written Test + Practical Safety Demonstration (45 minutes)

Part A: Multiple Choice (20 points)

  1. What does UAV stand for? a) Universal Aviation Vehicle b) Unmanned Aerial Vehicle c) Ultra Aerodynamic Vehicle d) United Aviation Vehicle

  2. Which of the four forces of flight works against gravity? a) Thrust b) Drag c) Lift d) Weight

  3. What should you do FIRST before flying a drone? a) Start the motors b) Check weather conditions c) Take off immediately d) Turn on the camera

  4. The maximum altitude for recreational drone flight is: a) 200 feet b) 300 feet c) 400 feet d) 500 feet

  5. What is the main difference between commercial and recreational drone use? a) Size of drone b) Purpose and regulations c) Color of drone d) Number of rotors

Part B: Short Answer (25 points) 6. List 5 safety rules that must be followed when operating a drone: (10 points)






  1. Explain three commercial applications of drones: (9 points)



  1. Why is it important to maintain visual contact with your drone during flight? (6 points)

Part C: Practical Safety Assessment (15 points) 9. Demonstrate proper pre-flight inspection checklist 10. Identify suitable vs. unsuitable flying locations from photos 11. Explain emergency landing procedures

Week 3-5 Assessment: Regulations and Flight Principles

Format: Written Test + Flight Theory Application (50 minutes)

Part A: Regulations Knowledge (20 points)

  1. True/False (10 points)
  • Drones under 0.55 lbs need to be registered: ___
  • You can fly your drone anywhere as long as it’s daytime: ___
  • Commercial drone operations require a Remote Pilot Certificate: ___
  • Drones must always yield to manned aircraft: ___
  • Flying over groups of people is allowed with permission: ___
  1. What is a no-fly zone and give 3 examples: (10 points) Definition: ________________________________ Examples:



Part B: Drone Components (15 points) 3. Match the component to its function:

  • Flight Controller: _____ a) Provides power to motors

  • ESC: _____ b) Stabilizes camera

  • Gimbal: _____ c) Main structural support

  • Frame: _____ d) Controls drone flight

  • Battery: _____ e) Controls motor speed

  1. Compare quadcopter vs. fixed-wing drones (advantages/disadvantages): (10 points)

Part C: Flight Principles (25 points) 5. Draw and label the four forces of flight on a drone diagram: (12 points)

  1. Explain how a drone moves in each direction: (13 points)
  • Forward: ________________________________
  • Backward: ________________________________
  • Left: ________________________________
  • Right: ________________________________
  • Up: ________________________________
  • Rotate left: ________________________________

Assessment Rubric:

  • Expert (90-100%): Demonstrates comprehensive understanding with detailed explanations
  • Proficient (80-89%): Shows solid grasp of concepts with minor gaps
  • Developing (70-79%): Understands basic concepts but lacks detail in complex areas
  • Novice (Below 70%): Limited understanding, needs additional instruction

Grade 10-12 (14-16 Years)

Term 1: Introduction to Python Basics

Week 1: Writing Structured Python Code

Learning Objectives:

  • Understand Python syntax and structure
  • Learn proper code formatting and indentation
  • Write clean, readable code following best practices
  • Understand variables, data types, and basic operations

Key Concepts:

  • Python: High-level programming language
  • Syntax: Rules for writing Python code
  • Indentation: Using spaces to organize code structure
  • Variables: Named storage for data values
  • Data Types: int, float, string, boolean
  • Comments: Documentation within code using #
  • Print Statement: Displaying output to screen

Code Structure Best Practices:

# Header comment explaining the program
# Author: Your Name
# Date: Today's Date

# Import statements
import module_name

# Constants (UPPERCASE naming)
MAX_VALUE = 100

# Main program logic
def main():
    # Variable declarations
    user_name = "Student"
    age = 16

    # Program logic with proper indentation
    print(f"Hello, {user_name}!")
    print(f"You are {age} years old.")

# Run the program
if __name__ == "__main__":
    main()

Week 2: Functions and Loops

Learning Objectives:

  • Create and use custom functions
  • Understand function parameters and return values
  • Implement for loops and while loops
  • Apply loops to solve repetitive tasks

Key Concepts:

  • Function: Reusable block of code that performs a specific task
  • Parameters: Input values passed to functions
  • Return Value: Output value from a function
  • For Loop: Repeats code a specific number of times
  • While Loop: Repeats code while a condition is true
  • Range Function: Generates sequences of numbers
  • Iteration: Each repetition of a loop
  • Loop Control: Managing when loops start and stop

Function Examples:

# Simple function with no parameters
def greet():
    print("Hello, World!")

# Function with parameters
def greet_person(name, age):
    print(f"Hello, {name}! You are {age} years old.")

# Function with return value
def calculate_area(length, width):
    area = length * width
    return area

# Using functions
greet()
greet_person("Alice", 16)
room_area = calculate_area(10, 12)
print(f"Room area: {room_area} square meters")

Loop Examples:

# For loop with range
for i in range(5):
    print(f"Count: {i}")

# For loop with list
fruits = ["apple", "banana", "orange"]
for fruit in fruits:
    print(f"I like {fruit}")

# While loop
count = 0
while count < 3:
    print(f"While loop count: {count}")
    count += 1

Week 3: Using Python Libraries

Learning Objectives:

  • Understand what Python libraries are and why they’re useful
  • Learn to import and use common libraries
  • Work with GPIOZero and time libraries
  • Explore library documentation and help systems

Key Concepts:

  • Library/Module: Pre-written code that adds functionality
  • Import Statement: Bringing library functions into your program
  • GPIOZero: Library for controlling Raspberry Pi GPIO pins
  • Time Library: Functions for working with time and delays
  • Documentation: Instructions for using library functions
  • API: Application Programming Interface - how to use library functions

Library Usage Examples:

# Importing entire modules
import time
import math

# Importing specific functions
from gpiozero import LED, Button
from time import sleep

# Using time library
print("Starting program...")
time.sleep(2)  # Wait 2 seconds
print("2 seconds have passed!")

# Using math library
import math
radius = 5
area = math.pi * radius ** 2
print(f"Circle area: {area:.2f}")

# Using GPIOZero (for Raspberry Pi)
led = LED(18)  # LED connected to GPIO pin 18
button = Button(2)  # Button connected to GPIO pin 2

# Turn LED on and off
led.on()
sleep(1)
led.off()

Week 4: Controlling Motors with Python

Learning Objectives:

  • Understand how to interface with motors using Python
  • Learn about PWM (Pulse Width Modulation) for motor control
  • Control motor speed and direction
  • Implement safety features in motor control code

Key Concepts:

  • Motor Control: Using code to make motors move
  • PWM (Pulse Width Modulation): Method to control motor speed
  • Duty Cycle: Percentage of time signal is “on” vs “off”
  • Direction Control: Making motors spin clockwise/counterclockwise
  • Motor Driver: Electronics that interface between Python and motors
  • Safety Features: Code to prevent motor damage

Motor Control Examples:

from gpiozero import Motor, PWMOutputDevice
from time import sleep

# Create motor object (assuming H-bridge motor driver)
motor = Motor(forward=2, backward=3, enable=18)

# Basic motor control
def basic_motor_test():
    print("Motor forward at full speed")
    motor.forward(1.0)  # Full speed forward
    sleep(2)

    print("Motor forward at half speed")
    motor.forward(0.5)  # Half speed forward
    sleep(2)

    print("Motor stopped")
    motor.stop()
    sleep(1)

    print("Motor backward at full speed")
    motor.backward(1.0)  # Full speed backward
    sleep(2)

    motor.stop()
    print("Motor test complete")

# PWM speed control example
def speed_ramp_test():
    print("Ramping motor speed up...")
    for speed in range(0, 101, 10):  # 0 to 100% in 10% steps
        motor_speed = speed / 100.0
        motor.forward(motor_speed)
        print(f"Speed: {speed}%")
        sleep(0.5)

    motor.stop()
    print("Speed ramp complete")

# Run the tests
basic_motor_test()
sleep(2)
speed_ramp_test()

Week 5: Controlling Sensors with Python

Learning Objectives:

  • Interface with various sensors using Python
  • Read and process sensor data
  • Implement sensor-based decision making
  • Create responsive programs based on sensor input

Key Concepts:

  • Sensor: Device that detects and measures physical properties
  • Analog vs Digital: Different types of sensor signals
  • ADC (Analog-to-Digital Converter): Converts analog signals to digital
  • Sensor Calibration: Adjusting sensor readings for accuracy
  • Data Processing: Converting raw sensor data to useful information
  • Polling vs Interrupts: Different ways to read sensor data

Common Sensors:

  • Temperature sensors: Measure environmental temperature
  • Light sensors (LDR): Detect light intensity
  • Ultrasonic sensors: Measure distance using sound waves
  • Motion sensors (PIR): Detect movement
  • Pressure sensors: Measure force or pressure

Sensor Control Examples:

from gpiozero import MCP3008, DistanceSensor, MotionSensor, LED
from time import sleep
import statistics

# Temperature sensor (using analog input)
temp_sensor = MCP3008(channel=0)

def read_temperature():
    # Convert voltage to temperature (example conversion)
    voltage = temp_sensor.voltage
    temperature_c = (voltage - 0.5) * 100  # Example conversion formula
    temperature_f = (temperature_c * 9/5) + 32
    return temperature_c, temperature_f

# Distance sensor (ultrasonic)
distance_sensor = DistanceSensor(echo=24, trigger=23)

def monitor_distance():
    print("Distance monitoring (press Ctrl+C to stop)")
    try:
        while True:
            distance = distance_sensor.distance * 100  # Convert to cm
            print(f"Distance: {distance:.1f} cm")

            if distance < 10:
                print("WARNING: Object too close!")

            sleep(0.5)
    except KeyboardInterrupt:
        print("Distance monitoring stopped")

# Motion sensor with LED indicator
motion = MotionSensor(4)
alert_led = LED(18)

def motion_detector():
    print("Motion detector active...")

    def motion_detected():
        print("Motion detected!")
        alert_led.on()
        sleep(2)
        alert_led.off()

    def no_motion():
        print("No motion")
        alert_led.off()

    # Set up motion sensor callbacks
    motion.when_motion = motion_detected
    motion.when_no_motion = no_motion

    # Keep program running
    try:
        while True:
            sleep(0.1)
    except KeyboardInterrupt:
        print("Motion detector stopped")

# Data logging example
def log_sensor_data():
    readings = []
    print("Collecting sensor data for 30 seconds...")

    start_time = time.time()
    while time.time() - start_time < 30:
        temp_c, temp_f = read_temperature()
        distance = distance_sensor.distance * 100

        readings.append({
            'timestamp': time.time(),
            'temperature_c': temp_c,
            'temperature_f': temp_f,
            'distance_cm': distance
        })

        print(f"Temp: {temp_c:.1f}°C, Distance: {distance:.1f}cm")
        sleep(1)

    # Calculate statistics
    temps = [r['temperature_c'] for r in readings]
    distances = [r['distance_cm'] for r in readings]

    print(f"\nData Summary:")
    print(f"Average temperature: {statistics.mean(temps):.1f}°C")
    print(f"Min/Max temperature: {min(temps):.1f}°C / {max(temps):.1f}°C")
    print(f"Average distance: {statistics.mean(distances):.1f}cm")
    print(f"Min/Max distance: {min(distances):.1f}cm / {max(distances):.1f}cm")

# Example usage
if __name__ == "__main__":
    # Run different examples
    monitor_distance()  # Uncomment to run distance monitoring
    # motion_detector()  # Uncomment to run motion detection
    # log_sensor_data()  # Uncomment to run data logging

Assessment Test - Grade 10-12 (14-16 Years)

Week 1-2 Assessment: Python Fundamentals

Format: Coding Assignment + Written Questions (60 minutes)

Part A: Code Structure and Syntax (25 points)

  1. Fix the following code and explain what was wrong (10 points):
# Broken code:
def calculate average(num1, num2, num3)
average = num1 + num2 + num3 / 3
print("The average is" + average)
return average

calculate average(10, 20, 30)

Your corrected code:

# Write corrected version here

Explanation of errors: ________________________________

  1. Write a well-structured Python program (15 points): Create a program that:
  • Has proper header comments
  • Uses appropriate variable names
  • Calculates the area of different shapes (circle, rectangle, triangle)
  • Uses functions with parameters and return values
  • Follows proper indentation and formatting

Part B: Functions and Loops (30 points)

  1. Write a function called print_multiplication_table (15 points):
  • Takes one parameter: number
  • Prints multiplication table for that number (1-10)
  • Uses a for loop
  • Example output for print_multiplication_table(3):
3 x 1 = 3
3 x 2 = 6
3 x 3 = 9
... etc
  1. Password Checker Program (15 points): Write a program using while loop that:
  • Asks user to enter a password
  • Keeps asking until they enter “python123”
  • Counts number of attempts
  • Prints “Access granted” when correct
  • Prints number of attempts it took

Week 3-5 Assessment: Libraries and Hardware Control

Format: Practical Coding Project (75 minutes)

Part A: Library Usage (20 points)

  1. Complete this sensor reading program (20 points):
from gpiozero import MCP3008
from time import sleep
import ______  # What library do you need for calculating average?

# Create sensor object
light_sensor = MCP3008(channel=0)

def read_light_levels():
    readings = []

    # Collect 10 readings
    for i in range(______):  # Fill in the range
        reading = light_sensor.______  # What property gives the reading?
        readings.append(reading)
        print(f"Reading {i+1}: {reading:.3f}")
        sleep(0.5)

    # Calculate and print statistics
    average = ______.mean(readings)  # Which function calculates mean?
    maximum = ______(readings)  # Built-in function for maximum
    minimum = ______(readings)  # Built-in function for minimum

    print(f"Average: {average:.3f}")
    print(f"Maximum: {maximum:.3f}")
    print(f"Minimum: {minimum:.3f}")

# Call the function
read_light_levels()

Part B: Motor Control Project (25 points)

  1. Smart Fan Controller (25 points): Write a program that simulates a smart fan controller:
  • Use a temperature sensor to read room temperature
  • Control a motor (fan) based on temperature:
    • Below 20°C: Fan off
    • 20-25°C: Fan at 30% speed
    • 25-30°C: Fan at 60% speed
    • Above 30°C: Fan at 100% speed
  • Print current temperature and fan speed every 2 seconds
  • Include safety features (motor stop function)

Part C: Sensor Integration Challenge (30 points)

  1. Security System Prototype (30 points): Create a basic security system that:
  • Uses a motion sensor to detect movement
  • Uses a distance sensor to detect objects too close
  • Controls LEDs to indicate system status:
    • Green LED: System normal
    • Yellow LED: Motion detected
    • Red LED: Intrusion alert (object < 20cm)
  • Logs events with timestamps
  • Runs continuously until user presses Ctrl+C

Requirements:

  • Use at least 3 different libraries
  • Include proper error handling
  • Use functions to organize code
  • Add meaningful comments
  • Follow Python coding best practices

Sample code structure:

from gpiozero import MotionSensor, DistanceSensor, LED
from time import sleep
import time

# Hardware setup
motion = MotionSensor(4)
distance = DistanceSensor(echo=24, trigger=23)
green_led = LED(18)
yellow_led = LED(19)
red_led = LED(20)

def log_event(message):
    # Write function to log events with timestamp
    pass

def check_security():
    # Write function to check all sensors and control LEDs
    pass

def main():
    # Write main program loop
    pass

if __name__ == "__main__":
    main()

Assessment Rubric:

  • Exceptional (95-100%): Code runs flawlessly, excellent structure, creative additions, comprehensive error handling
  • Proficient (85-94%): Code works correctly, good structure, meets all requirements, minor improvements possible
  • Developing (75-84%): Code mostly works, basic structure present, meets most requirements, some bugs or missing features
  • Beginning (65-74%): Code has significant issues, poor structure, missing major requirements
  • Incomplete (Below 65%): Code doesn’t run or major portions missing

Additional Resources and Extensions

For All Grade Levels:

Vocabulary Glossary:

  • Algorithm: Step-by-step instructions to solve a problem
  • Bug: Error in code that prevents it from working correctly
  • Debug: Process of finding and fixing errors in code
  • Hardware: Physical components of computer systems
  • Software: Programs and applications that run on hardware
  • Interface: Way users interact with programs or devices
  • Sensor: Device that detects changes in environment
  • Actuator: Device that causes movement or action

Project Portfolio Suggestions:

  1. Weekly Reflection Journal: Students document learning and challenges
  2. Photo Documentation: Pictures of projects and experiments
  3. Video Demonstrations: Students explain their projects
  4. Peer Teaching: Advanced students help beginners
  5. Innovation Challenges: Open-ended problems to solve creatively

Cross-Curricular Connections:

  • Math: Geometry in robotics, statistics in data analysis
  • Science: Physics of flight, electronics principles
  • Art: Creative programming projects, design thinking
  • Social Studies: Impact of technology on society
  • Language Arts: Technical writing, documentation skills

Safety Reminders:

  • Always supervise young children with electronic components
  • Check battery connections before powering devices
  • Keep work area clean and organized
  • Wash hands after handling electronic components
  • Report any damaged equipment immediately
  • Follow proper shutdown procedures for all devices

Assessment Portfolio Checklist:

  • Completed weekly assessments
  • Project documentation with photos
  • Reflection essays on learning progress
  • Peer evaluation forms
  • Self-assessment rubrics
  • Evidence of problem-solving process
  • Creative extensions or improvements to basic projects

Continuation - Weeks 6-8 for All Grade Levels


Preschoolers (4-6 Years) - Weeks 6-8

Advanced STEM Exploration & Technology Awareness

Week 6: Technology Parts Awareness

Learning Objectives:

  • Use coding to tell stories, solve challenges, or navigate mazes
  • Recognize and follow simple algorithms using direction or action cards
  • Physically be able to follow code on floor grids
  • Build confidence and persistence through trial-and-error learning

Key Concepts:

  • Technology Components: Basic parts that make devices work
  • Circuits: Paths that electricity follows
  • Assembly/Disassembly: Taking apart and putting together
  • Electronics Safety: Safe handling of batteries and components
  • Problem-Solving: Trying different solutions when something doesn’t work

Activities:

  • Technology Exploration: Examine old keyboards, phones, calculators
  • Simple Circuits: Connect bulbs to batteries with safe materials
  • Assembly Practice: Take apart and reassemble simple toys
  • Tech Parts Sorting: Group similar technology components

Materials: Old keyboards, phones, calculators, batteries, bulbs for circuits, safe connectors

Week 7: Sequencing & Floor Grid Coding

Learning Objectives:

  • Develop understanding of sequencing by arranging steps in correct order
  • Recognize and follow simple algorithms using direction or action cards
  • Physically follow code on floor grids
  • Build confidence through trial-and-error learning

Key Concepts:

  • Sequencing: Putting steps in the right order
  • Algorithm Cards: Visual instructions to follow
  • Floor Grid Coding: Moving through spaces following directions
  • Left/Right/Forward/Back: Basic directional concepts
  • Trial and Error: Learning by trying and improving

Activities:

  • Obstacle Course Coding: Navigate through simple obstacles using arrow cards
  • Sequencing Games: Put daily routine cards in correct order
  • Paper Maze Coding: Use arrows to show path through printed mazes
  • Robot Friend: One child gives directions, another follows like a robot

Materials: Coding arrows/direction cards, floor grid mats, toys for navigation, printed maze worksheets

Week 8: Advanced Unplugged Coding & Storytelling

Learning Objectives:

  • Use coding to tell stories, solve challenges, or navigate mazes
  • Recognize and follow simple algorithms using direction or action cards
  • Physically follow code on floor grids
  • Build confidence and persistence through trial-and-error learning

Key Concepts:

  • Conditional Logic: IF/THEN thinking (“If you see red, then stop”)
  • Debugging: Finding and fixing mistakes in directions
  • Block Building: Using physical blocks to represent code
  • Story Algorithms: Step-by-step instructions for telling stories

Activities:

  • Debug the Path: Present incorrect direction sequences for children to fix
  • IF/THEN Games: “If you see a triangle, then clap your hands”
  • Story Coding: Use picture cards to create step-by-step stories
  • Block Code Building: Stack blocks to represent programming sequences

Materials: Building blocks, floor grid mats, toys, printed materials, picture cards for storytelling


Preschoolers Assessment - Weeks 6-8

Week 6 Assessment: Technology Awareness

Format: Hands-on Exploration + Observation (20 minutes)

  1. Technology Parts Recognition (10 points)
  • Point to and name 3 technology items from the collection
  • Show how a simple circuit works (bulb + battery)
  • Safely handle electronic components
  • Explain one thing each item helps us do
  1. Assembly Skills (10 points)
  • Take apart a simple toy or device
  • Put it back together correctly
  • Identify which parts go where
  • Ask for help when needed

Assessment Criteria:

  • Mastery (3): Handles all materials safely, explains purposes, completes tasks independently
  • Developing (2): Safe handling, completes most tasks with minimal help
  • Emerging (1): Needs guidance but participates actively
  • Beginning (0): Requires extensive support

Week 7-8 Assessment: Advanced Unplugged Coding

Format: Physical Coding Challenges (25 minutes)

  1. Sequencing Challenge (12 points)
  • Arrange 6 direction cards to navigate through obstacle course
  • Explain why each step comes in that order
  • Successfully complete the physical navigation
  • Fix mistakes when path doesn’t work
  1. IF/THEN Logic (8 points)
  • Follow conditional instructions: “IF you see blue, THEN hop”
  • Create own IF/THEN rule for a friend to follow
  • Demonstrate understanding with actions
  1. Story Algorithm (10 points)
  • Use 5 picture cards to create logical story sequence
  • Tell story following the card order
  • Explain what happens if cards are mixed up
  • Help fix a mixed-up story sequence

Practical Skills Rubric:

  • Advanced (25-30 points): Creates original sequences, helps others, shows deep understanding
  • Proficient (20-24 points): Completes all challenges correctly with minor guidance
  • Developing (15-19 points): Understands concepts but needs support for complex tasks
  • Beginning (Below 15 points): Requires significant help to participate

Grade 2-5 (7-11 Years) - Weeks 6-8

Advanced Scratch Programming & Game Development

Week 6: Game Structure and Design

Learning Objectives:

  • Understand basic game structure (start, play, end)
  • Use Scratch blocks to move characters and detect collisions
  • Make characters move between different scenes
  • Create scoring or win conditions

Key Concepts:

  • Game Design Elements: Characters, backgrounds, objectives, rules
  • Game Loop: Continuous cycle of input, processing, output
  • Collision Detection: Knowing when sprites touch each other
  • Scene Transitions: Moving between different game screens
  • Win/Lose Conditions: Rules that determine game outcomes
  • User Interface: Buttons, scores, and information displays

Advanced Scratch Concepts:

  • Sensing Blocks: “touching color”, “distance to”, “key pressed”
  • Variables: Storing score, lives, or time
  • Broadcast Messages: Communication between sprites
  • Clone Sprites: Creating multiple copies of objects
  • Custom Blocks: Making your own programming blocks

Game Development Process:

  1. Planning Phase: Sketch game idea, list needed sprites and backgrounds
  2. Prototype: Create basic movement and interaction
  3. Enhancement: Add sounds, effects, and polish
  4. Testing: Play game and fix bugs
  5. Sharing: Present to classmates

Example Game Structure:

When green flag clicked
Set score to 0
Set lives to 3
Say "Game Starting!" for 2 seconds
Show sprite
Forever:
    If key space pressed:
        Move player sprite
    If touching enemy:
        Change lives by -1
        If lives = 0:
            Say "Game Over!"
            Stop all

Week 7: Transition to Text-Based Concepts

Learning Objectives:

  • Prepare learners for text-based coding
  • Understand basic programming concepts using blocks
  • Use logic and loops to control sprite or robot actions
  • Begin transition to robotics or advanced coding platforms

Key Concepts:

  • Programming Fundamentals: Sequence, selection, iteration
  • Logic Blocks: IF/ELSE statements in visual form
  • Loop Types: Forever, repeat until, repeat X times
  • Variables and Operations: Math in programming
  • Event-Driven Programming: Responding to user input
  • Modular Programming: Breaking code into smaller parts

Bridging Visual to Text:

  • Block-to-Code Thinking: Understanding what blocks represent
  • Pseudocode: Writing steps in plain English before coding
  • Debugging Strategies: Systematic problem-solving approaches
  • Code Organization: Keeping projects neat and logical

Advanced Programming Patterns:

// Pattern 1: State Machine
When green flag clicked
Set game state to "menu"
Forever:
    If game state = "menu":
        Show menu options
    If game state = "playing":
        Run game logic
    If game state = "game over":
        Show final score

// Pattern 2: Object Behavior
When I start as a clone:
    Go to random position
    Forever:
        Move 2 steps
        If on edge, bounce
        If touching player:
            Change score by 10
            Delete this clone

Week 8: Blockly Integration and Logic Puzzles

Learning Objectives:

  • Solve logic puzzles using visual programming concepts
  • Create games using Blockly platform
  • Demonstrate understanding of programming fundamentals
  • Apply creative problem-solving skills

Key Concepts:

  • Blockly Platform: Google’s visual programming language
  • Logic Puzzles: Problems requiring systematic thinking
  • Algorithm Efficiency: Finding the best solution method
  • Pattern Recognition: Identifying repeated solutions
  • Creative Programming: Using code for artistic expression

Blockly vs. Scratch Comparison:

FeatureScratchBlockly
FocusStorytelling & GamesLogic & Algorithms
InterfaceStage-basedPuzzle-based
OutputAnimated ProjectsProblem Solutions
ProgressionCreative ExpressionMathematical Thinking

Logic Puzzle Types:

  1. Maze Solving: Navigate through obstacles
  2. Pattern Completion: Fill in missing sequences
  3. Conditional Logic: IF/THEN decision making
  4. Loop Optimization: Repeat actions efficiently

Grade 2-5 Assessment - Weeks 6-8

Week 6 Assessment: Game Development Project

Format: Scratch Game Creation + Presentation (45 minutes)

Part A: Game Planning (10 points)

  1. Game Design Document - Create a simple plan including:
  • Game objective (what’s the goal?)
  • Main character description
  • Basic rules (how do you win/lose?)
  • Required sprites and backgrounds
  1. Storyboard - Draw 3 screens showing:
  • Game start screen
  • Main gameplay
  • Win/lose screen

Part B: Game Implementation (25 points) 3. Core Functionality (15 points):

  • Character moves with arrow keys or WASD

  • At least one interactive element (enemy, collectible, obstacle)

  • Basic collision detection (touching = something happens)

  • Clear win or lose condition

  1. Polish and Enhancement (10 points):
  • Sound effects or music
  • Visual feedback (score, lives, timer)
  • Smooth sprite movement
  • Creative backgrounds or costumes

Part C: Presentation and Reflection (15 points) 5. Game Demo (10 points):

  • Explain game rules clearly

  • Demonstrate gameplay for 2 minutes

  • Show different game scenarios

  • Handle questions from classmates

  1. Technical Reflection (5 points):
  • Explain one challenging problem you solved
  • Describe one improvement you would make
  • Share one new Scratch skill you learned

Week 7-8 Assessment: Programming Concepts Mastery

Format: Mixed Assessment - Blockly Challenges + Scratch Review (50 minutes)

Part A: Blockly Logic Challenges (20 points)

  1. Maze Navigation (8 points):
  • Complete 3 increasingly difficult maze puzzles
  • Use efficient solutions (minimal blocks)
  • Demonstrate understanding of loops and conditionals
  1. Pattern Recognition (6 points):
  • Solve sequence completion puzzles
  • Identify and extend number/color patterns
  • Create original pattern for others to solve
  1. Logic Puzzles (6 points):
  • Complete IF/THEN decision trees
  • Solve multi-step conditional problems
  • Optimize solutions for clarity

Part B: Concept Transfer (15 points) 4. Visual to Text Translation (10 points): Given this Scratch code block arrangement:

[When flag clicked] → [Forever] → [If touching mouse] → [Move 10 steps]

Write in pseudocode (plain English): “When the program starts, ________________”

  1. Problem Decomposition (5 points): Break down this challenge into steps: “Create a sprite that follows the mouse but stops when it touches the edge”

Step 1: _______________ Step 2: _______________ Step 3: _______________ Step 4: _______________

Part C: Creative Application (15 points) 6. Original Algorithm (15 points): Choose ONE to complete:

Option A - Scratch: Create a “digital pet” that:

  • Follows mouse cursor
  • Changes expression when clicked
  • Makes sound when hungry (timer-based)
  • Has at least 3 different costumes

Option B - Blockly: Design a solution for:

  • Robot that sorts colored objects
  • Path that avoids all obstacles
  • Pattern that creates art using loops

Assessment Rubric:

  • Expert (90-100%): Exceeds requirements with creative solutions and clear explanations
  • Proficient (80-89%): Meets all requirements with good understanding demonstrated
  • Developing (70-79%): Meets most requirements but may have gaps in complex concepts
  • Novice (60-69%): Shows basic understanding but struggles with application
  • Beginning (Below 60%): Needs significant support to demonstrate concepts

Grade 6-9 (11-14 Years) - Weeks 6-8

Drone Laws, Emergency Procedures & Practical Flying

Week 6: Drone Laws and Regulations (Kenya Focus)

Learning Objectives:

  • Learn basic drone laws in Kenya (KCAA regulations)
  • Understand where and how children can fly drones legally
  • Develop awareness of responsible drone operation
  • Understand the importance of aviation safety

Key Concepts:

  • Kenya Civil Aviation Authority (KCAA): National aviation regulator
  • Drone Registration: Required identification and documentation
  • No-Fly Zones: Airports, government buildings, restricted areas
  • Altitude Restrictions: Maximum height limitations
  • Visual Line of Sight (VLOS): Maintaining visual contact
  • Privacy Laws: Respecting others’ rights and property

Kenya Drone Regulations Summary:

  1. Registration Requirements:
  • All drones over 250g must be registered with KCAA
  • Operator license required for commercial operations
  • Age restrictions for different categories of operation
  1. Operational Limits:
  • Maximum altitude: 400 feet (120 meters) AGL
  • Minimum distance from airports: 8km for major airports
  • No flying over crowds or public events
  • Daylight operations only (without special permits)
  1. Prohibited Areas:
  • Within 5km of any airport
  • Over government buildings and installations
  • National parks without permits
  • Private property without permission

Safety and Legal Guidelines for Young Pilots:

  • Always have adult supervision
  • Start with toy drones under 250g
  • Practice in open, safe areas
  • Respect others’ privacy and property
  • Learn emergency procedures
  • Keep drone in sight at all times

Week 7: Emergency Procedures and Responsible Flying

Learning Objectives:

  • Review key safety and legal concepts from previous weeks
  • Understand emergency basics for beginner flyers
  • Develop decision-making skills for unexpected situations
  • Practice responsible pilot behavior

Key Concepts:

  • Emergency Procedures: Systematic responses to problems
  • Risk Assessment: Evaluating dangers before flying
  • Decision Making: Choosing appropriate actions under pressure
  • Communication: Alerting others during emergencies
  • Equipment Failure: What to do when drone malfunctions
  • Weather Awareness: Recognizing dangerous conditions

Emergency Scenarios and Responses:

  1. Lost Communication with Drone:
  • Stay calm and observe drone behavior
  • Activate Return-to-Home (RTH) function if available
  • Move to higher ground for better signal
  • Prepare for manual landing if signal returns
  • Never chase after a flyaway drone
  1. Low Battery Warning:
  • Immediately begin landing sequence
  • Choose nearest safe landing spot
  • Avoid flying over people or property
  • Land even if not at original takeoff point
  • Safety is more important than convenience
  1. Unexpected Weather Changes:
  • Monitor weather conditions constantly
  • Land immediately if wind increases
  • Avoid flying in rain or snow
  • Watch for sudden temperature changes
  • When in doubt, don’t fly
  1. Equipment Malfunction:
  • Attempt controlled landing immediately
  • Don’t try to fix problems while airborne
  • Inform other people in the area
  • Document the problem for later analysis
  • Never continue flying with known issues

Mission Planning Process:

  1. Pre-flight Planning: Weather check, equipment inspection, route planning
  2. Risk Assessment: Identify potential hazards and mitigation strategies
  3. Communication Plan: Inform others of flight activities
  4. Emergency Procedures: Know what to do if things go wrong
  5. Post-flight Review: Analyze what went well and areas for improvement

Week 8: Practical Flying Skills and Team Challenges

Learning Objectives:

  • Demonstrate ability to control a mini drone (takeoff, hover, land)
  • Apply basic flight skills in problem-solving mission scenarios
  • Work as a team to complete drone-based challenges
  • Evaluate personal progress and set goals for improvement

Key Concepts:

  • Flight Control Mastery: Smooth, precise drone movements
  • Situational Awareness: Understanding surroundings during flight
  • Mission Planning: Preparing for specific flight objectives
  • Teamwork: Collaborative problem-solving with drones
  • Performance Evaluation: Self-assessment and peer feedback
  • Safety Leadership: Taking responsibility for safe operations

Basic Flight Skills Progression:

  1. Fundamental Controls:
  • Smooth takeoff to hover
  • Maintaining steady hover
  • Controlled landing
  • Forward/backward movement
  • Left/right movement
  • Rotation control
  1. Intermediate Maneuvers:
  • Figure-8 patterns
  • Precision landing on target
  • Obstacle avoidance
  • Following predetermined paths
  • Coordinated movements
  1. Advanced Challenges:
  • Team relay races
  • Rescue simulations
  • Precision delivery tasks
  • Group choreography
  • Time-based challenges

Mission Scenarios:

Mission 1: Search and Rescue

  • Objective: Locate “missing person” (target) in designated area
  • Skills: Systematic search patterns, communication, observation
  • Time limit: 5 minutes
  • Success criteria: Target identified and location communicated

Mission 2: Delivery Challenge

  • Objective: Transport small payload from Point A to Point B
  • Skills: Precision flying, cargo management, safe landing
  • Obstacles: Wind conditions, landing accuracy requirements
  • Success criteria: Payload delivered undamaged within time limit

Mission 3: Team Coordination

  • Objective: Multiple drones work together to complete complex task
  • Skills: Communication, timing, spatial awareness
  • Challenge: Choreographed flight pattern or group problem-solving
  • Success criteria: All drones complete task without collisions

Safety Protocols for Practical Flying:

  • Always maintain 10-foot safety zone around flying area
  • Designate specific roles: pilot, observer, safety officer
  • Use hand signals for communication during loud operations
  • Practice emergency landing procedures before each session
  • Rotate roles so everyone experiences different responsibilities

Grade 6-9 Assessment - Weeks 6-8

Week 6 Assessment: Drone Laws and Regulations

Format: Written Test + Legal Scenario Analysis (40 minutes)

Part A: Kenya Aviation Law Knowledge (25 points)

  1. KCAA Regulations (10 points) Fill in the blanks:
  • Drones over ______ grams must be registered with KCAA
  • Maximum altitude for recreational flying is ______ feet
  • Minimum distance from major airports is ______ kilometers
  • Commercial drone operations require a ______ license
  • Drones must remain within ______ line of sight
  1. No-Fly Zone Identification (10 points) Mark TRUE or FALSE for each flying location:
  • Your school playground during lunch break: ______
  • Open field 2km from Wilson Airport: ______
  • Your backyard with adult supervision: ______
  • Uhuru Park during a public event: ______
  • Private farm with owner’s permission: ______
  1. Legal Compliance (5 points) List 3 requirements for legally flying a drone in Kenya:



Part B: Scenario-Based Decision Making (20 points)

  1. Legal Scenarios (20 points) For each scenario, explain if the action is legal and why:

Scenario A: Sarah wants to fly her 300g drone over her neighbor’s house to take photos of her own backyard. Legal? _____ Why? _______________________________

Scenario B: James plans to fly his registered drone at 200 feet altitude in an open field 10km from any airport during daylight hours. Legal? _____ Why? _______________________________

Scenario C: A group of students want to use their drone for a school project, filming the school building from 100 feet up. Legal? _____ Why? _______________________________

Scenario D: Ahmed wants to fly his 150g toy drone in his compound for 10 minutes. Legal? _____ Why? _______________________________

Part C: Responsible Pilot Planning (15 points)

  1. Pre-flight Checklist (15 points) Create a 10-item pre-flight checklist that includes legal, safety, and equipment considerations:




[Continue through 10]

Week 7-8 Assessment: Emergency Procedures and Practical Skills

Format: Practical Flight Test + Emergency Response Simulation (60 minutes)

Part A: Emergency Response Knowledge (20 points)

  1. Emergency Procedures (15 points) Describe the correct response for each emergency:

Low Battery Warning: Step 1: _______________________________ Step 2: _______________________________ Step 3: _______________________________

Lost Radio Contact: Step 1: _______________________________ Step 2: _______________________________ Step 3: _______________________________

Sudden Weather Change: Step 1: _______________________________ Step 2: _______________________________ Step 3: _______________________________

  1. Risk Assessment (5 points) Identify 3 risks for flying in each environment:
  • School playground: ____________, ____________, ____________
  • Open field: ____________, ____________, ____________

Part B: Practical Flight Skills Assessment (30 points)

  1. Basic Flight Controls (15 points) Demonstrate competency in:
  • Smooth takeoff and landing (3 points)
  • Stable hovering for 30 seconds (3 points)
  • Forward/backward precision movement (3 points)
  • Left/right precision movement (3 points)
  • Controlled rotation (3 points)
  1. Mission Challenge (15 points) Complete ONE of the following missions:

Option A - Navigation Course:

  • Fly through 5 waypoints in sequence
  • Land within 1-meter target circle
  • Complete within 3 minutes

Option B - Team Coordination:

  • Work with partner to complete relay challenge
  • Communicate effectively during handoff
  • Maintain safety throughout mission

Part C: Leadership and Safety Evaluation (15 points)

  1. Safety Leadership (8 points) While others are flying, demonstrate:
  • Proper safety zone maintenance
  • Clear communication with pilot
  • Appropriate responses to unsafe situations
  • Helpful coaching and encouragement
  1. Self-Assessment and Goal Setting (7 points) Written reflection:
  • What flight skill are you most confident with? Why?
  • What area needs the most improvement?
  • Set one specific goal for future drone flying
  • Describe one way you can help others fly safely

Practical Skills Rubric:

  • Expert Pilot (90-100%): Demonstrates advanced skills, teaches others, shows exceptional safety awareness
  • Competent Pilot (80-89%): Performs all basic skills reliably, follows safety protocols consistently
  • Developing Pilot (70-79%): Shows improvement in most areas, occasional guidance needed
  • Novice Pilot (60-69%): Basic skills present but inconsistent, needs continued practice
  • Beginning Pilot (Below 60%): Requires significant instruction and supervision

Grade 10-12 (14-16 Years) - Weeks 6-8

Advanced Python Projects & Integration

Week 6-7: Integrated Systems Project (Combined Weeks)

Learning Objectives:

  • Combine motors and sensors in complex systems
  • Debug integrated hardware/software systems
  • Apply creative problem-solving to real-world challenges
  • Document projects professionally

Key Concepts:

  • Systems Integration: Combining multiple components into unified solutions
  • Hardware-Software Interface: Code that bridges digital and physical worlds
  • System Architecture: Planning complex projects with multiple subsystems
  • Error Handling: Managing failures gracefully in complex systems
  • Performance Optimization: Making systems run efficiently
  • Documentation Standards: Professional project recording

Advanced Integration Concepts:

1. Multi-Sensor Fusion

import threading
import queue
from gpiozero import DistanceSensor, MotionSensor, MCP3008
from time import sleep
import json

class SensorFusion:
    def __init__(self):
        self.distance_sensor = DistanceSensor(echo=24, trigger=23)
        self.motion_sensor = MotionSensor(4)
        self.light_sensor = MCP3008(channel=0)
        self.temp_sensor = MCP3008(channel=1)

        # Data queues for thread communication
        self.sensor_data = queue.Queue()
        self.running = False

    def read_sensors(self):
        """Continuous sensor reading in separate thread"""
        while self.running:
            try:
                data = {
                    'timestamp': time.time(),
                    'distance': self.distance_sensor.distance * 100,
                    'motion': self.motion_sensor.motion_detected,
                    'light_level': self.light_sensor.voltage,
                    'temperature': self.convert_temp(self.temp_sensor.voltage)
                }
                self.sensor_data.put(data)
                sleep(0.1)  # 10Hz sampling rate
            except Exception as e:
                print(f"Sensor reading error: {e}")

    def convert_temp(self, voltage):
        """Convert sensor voltage to temperature"""
        return (voltage - 0.5) * 100  # Example conversion

    def start_monitoring(self):
        """Start sensor monitoring thread"""
        self.running = True
        self.sensor_thread = threading.Thread(target=self.read_sensors)
        self.sensor_thread.start()

    def stop_monitoring(self):
        """Stop sensor monitoring"""
        self.running = False
        if hasattr(self, 'sensor_thread'):
            self.sensor_thread.join()

2. Intelligent Control Systems

class SmartEnvironmentController:
    def __init__(self):
        self.sensors = SensorFusion()
        self.fan_motor = Motor(forward=2, backward=3)
        self.heater_relay = OutputDevice(18)
        self.lights = PWMOutputDevice(19)

        # Control parameters
        self.target_temp = 22.0  # Target temperature in Celsius
        self.temp_tolerance = 1.0
        self.light_threshold = 0.3

        # Control state
        self.auto_mode = True
        self.manual_override = False

    def analyze_environment(self, sensor_data):
        """Intelligent decision making based on sensor data"""
        decisions = {
            'fan_speed': 0.0,
            'heater_on': False,
            'light_level': 0.0,
            'alert_status': 'normal'
        }

        # Temperature control logic
        temp_diff = sensor_data['temperature'] - self.target_temp

        if temp_diff > self.temp_tolerance:  # Too hot
            decisions['fan_speed'] = min(1.0, temp_diff / 5.0)  # Scale fan speed
            decisions['heater_on'] = False
        elif temp_diff < -self.temp_tolerance:  # Too cold
            decisions['fan_speed'] = 0.0
            decisions['heater_on'] = True

        # Light control logic
        if sensor_data['light_level'] < self.light_threshold:
            decisions['light_level'] = 1.0 - sensor_data['light_level']  # Complement lighting

        # Security monitoring
        if sensor_data['motion'] and sensor_data['distance'] < 20:  # Close motion
            decisions['alert_status'] = 'intrusion_detected'
        elif sensor_data['distance'] < 5:  # Very close object
            decisions['alert_status'] = 'obstacle_warning'

        return decisions

    def execute_controls(self, decisions):
        """Execute control decisions"""
        if not self.manual_override:
            # Motor control
            if decisions['fan_speed'] > 0:
                self.fan_motor.forward(decisions['fan_speed'])
            else:
                self.fan_motor.stop()

            # Heater control
            if decisions['heater_on']:
                self.heater_relay.on()
            else:
                self.heater_relay.off()

            # Light control
            self.lights.value = decisions['light_level']

    def run_control_loop(self):
        """Main control loop"""
        self.sensors.start_monitoring()

        try:
            while True:
                if not self.sensors.sensor_data.empty():
                    current_data = self.sensors.sensor_data.get()
                    decisions = self.analyze_environment(current_data)
                    self.execute_controls(decisions)

                    # Log system status
                    self.log_system_status(current_data, decisions)

                sleep(0.5)  # Control loop frequency

        except KeyboardInterrupt:
            print("Shutting down control system...")
        finally:
            self.sensors.stop_monitoring()
            self.fan_motor.stop()
            self.heater_relay.off()
            self.lights.off()

    def log_system_status(self, sensor_data, decisions):
        """Log system performance data"""
        log_entry = {
            'timestamp': sensor_data['timestamp'],
            'sensors': sensor_data,
            'controls': decisions,
            'mode': 'auto' if self.auto_mode else 'manual'
        }

        # In a real system, this would write to a file or database
        print(f"System Status: Temp={sensor_data['temperature']:.1f}°C, "
              f"Fan={decisions['fan_speed']:.1f}, "
              f"Alert={decisions['alert_status']}")

3. Project Documentation Standards

"""
Smart Environment Control System
================================

Project: IoT Environmental Controller
Author: Student Name
Date: Current Date
Version: 1.0

Description:
    An intelligent system that monitors environmental conditions and automatically
    adjusts heating, cooling, and lighting based on sensor feedback.

Hardware Requirements:
    - Raspberry Pi 4 or similar
    - Temperature sensor (DS18B20 or similar)
    - Light sensor (LDR with MCP3008 ADC)
    - Motion sensor (PIR)
    - Distance sensor (HC-SR04)
    - DC Motor (for fan simulation)
    - Relay module (for heater control)
    - PWM-controlled LED (for lighting)

Software Dependencies:
    - Python 3.7+
    - gpiozero library
    - threading module (standard library)
    - queue module (standard library)
    - json module (standard library)

Installation:
    pip install gpiozero

Usage:
    python smart_environment.py

Configuration:
    Modify target_temp and light_threshold variables in SmartEnvironmentController
    class to adjust system behavior.

Testing:
    Run included test functions to verify sensor readings and control outputs
    before deploying the full system.

Known Issues:
    - Temperature sensor calibration may need adjustment for local conditions
    - Motion sensor has 2-second reset time that affects rapid detection

Future Enhancements:
    - Web interface for remote monitoring
    - Data logging to CSV files
    - Machine learning for predictive control
    - Mobile app integration
"""

Project Examples for Students:

Project 1: Smart Garden Monitor

  • Monitors soil moisture, light, and temperature
  • Controls watering pump and grow lights
  • Logs plant growth data
  • Sends alerts when intervention needed

Project 2: Home Security System

  • Multiple sensor integration (motion, door, window)
  • Camera trigger on detection
  • SMS/email notifications
  • Mobile app control interface

Project 3: Weather Station

  • Measures temperature, humidity, pressure, wind
  • Data logging with timestamps
  • Weather prediction algorithms
  • Web dashboard for data visualization

Project 4: Automated Greenhouse

  • Climate control (temperature, humidity)
  • Automated watering system
  • Light cycle management
  • Growth optimization algorithms

Week 8: Project Presentations and Assessment

Learning Objectives:

  • Present technical projects professionally
  • Give and receive constructive feedback
  • Self-evaluate learning progress and achievements
  • Plan next steps for continued learning

Key Concepts:

  • Technical Communication: Explaining complex systems clearly
  • Presentation Skills: Engaging audiences with technical content
  • Peer Review: Constructive feedback and collaboration
  • Self-Assessment: Honest evaluation of own work
  • Professional Development: Planning continued learning paths
  • Portfolio Building: Documenting achievements for future opportunities

Presentation Structure:

  1. Project Overview (2 minutes)
  • Problem statement and objectives
  • Target audience and use cases
  • Key features and functionality
  1. Technical Demonstration (2 minutes)
  • Live system operation
  • Key components and how they work
  • Code walkthrough of critical sections
  1. Challenges and Solutions (1 minute)
  • Major obstacles encountered
  • Creative solutions implemented
  • Lessons learned from failures

Evaluation Criteria:

Technical Merit (40%):

  • System functionality and reliability
  • Code quality and organization
  • Creative problem-solving approach
  • Integration of multiple technologies

Communication (30%):

  • Clear explanation of technical concepts
  • Engaging presentation delivery
  • Appropriate use of visual aids
  • Effective response to questions

Documentation (20%):

  • Complete project documentation
  • Code comments and structure
  • User instructions and setup guides
  • Reflection on learning process

Collaboration (10%):

  • Constructive feedback to peers
  • Professional interaction during Q&A
  • Willingness to share knowledge
  • Respectful critique and discussion

Python Programming Trivia Challenge: End the term with fun technical questions:

  1. What does “PEP 8” refer to in Python?
  2. What’s the difference between == and is in Python?
  3. How do you handle exceptions in Python?
  4. What is a Python decorator?
  5. What’s the difference between a list and a tuple?

Grade 10-12 Final Assessment - Weeks 6-8

Integrated Systems Project Assessment

Format: Major Project + Technical Presentation + Peer Review (2 weeks + presentation day)

Project Requirements: Students must create an integrated system that combines:

  • At least 3 different sensors
  • At least 2 actuators (motors, lights, relays, etc.)
  • Data logging and analysis
  • User interface (command line or simple GUI)
  • Error handling and safety features

Part A: Technical Implementation (40 points)

System Design (10 points)

  • Clear problem definition and solution approach
  • System architecture diagram showing component relationships
  • Hardware schematic or connection diagram
  • Software flowchart or algorithm description

Code Quality (15 points)

  • Well-structured, modular code with functions/classes
  • Appropriate variable names and code organization
  • Comprehensive comments explaining complex sections
  • Error handling for hardware failures
  • Efficient algorithms and resource usage

Hardware Integration (15 points)

  • Stable sensor readings with appropriate filtering
  • Reliable actuator control with safety limits
  • Proper electrical connections and component usage
  • System operates reliably for extended periods
  • Professional cable management and mounting

Part B: Documentation and Communication (25 points)

Project Documentation (15 points) Create a complete project report including:

  • Executive summary of project goals and achievements
  • Detailed technical specifications and requirements
  • Installation and setup instructions
  • User manual with clear operating procedures
  • Troubleshooting guide for common problems
  • Code documentation with API reference

Technical Presentation (10 points)

  • Clear 5-minute presentation explaining project
  • Live demonstration of working system
  • Professional slides with technical diagrams
  • Confident handling of technical questions
  • Appropriate use of technical vocabulary

Part C: Innovation and Problem Solving (20 points)

Creative Solutions (10 points)

  • Original approach to solving chosen problem
  • Creative use of available hardware and software
  • Evidence of iterative design and improvement
  • Solutions show depth of understanding beyond basic requirements

Advanced Features (10 points) Choose and implement at least TWO:

  • Machine learning or AI decision making
  • Network communication (IoT connectivity)
  • Mobile app or web interface
  • Data visualization and analytics
  • Predictive algorithms or optimization
  • Integration with external APIs or services

Part D: Professional Skills (15 points)

Peer Collaboration (8 points)

  • Constructive feedback provided to classmates
  • Professional behavior during presentations
  • Willingness to help others debug problems
  • Respectful and insightful questions during Q&A

Self-Assessment (7 points) Written reflection addressing:

  • Most significant technical challenge and how you overcame it
  • What you would do differently if starting over
  • How this project connects to potential career interests
  • Specific skills you want to develop further
  • Your confidence level with different aspects of the project

Sample Project Evaluation Rubric:

Exceptional (90-100%)

  • System exceeds all requirements with innovative features
  • Code is publication-quality with comprehensive documentation
  • Presentation is engaging and demonstrates deep understanding
  • Shows leadership in helping others and contributing to class learning
  • Self-reflection shows sophisticated understanding of learning process

Proficient (80-89%)

  • System meets all requirements reliably
  • Code is well-structured with good documentation
  • Presentation is clear and technically accurate
  • Actively participates in peer learning and feedback
  • Self-reflection shows good awareness of strengths and growth areas

Developing (70-79%)

  • System meets most requirements with minor issues
  • Code works but may have organizational or documentation gaps
  • Presentation covers required topics but may lack depth
  • Participates adequately in class activities
  • Self-reflection shows basic understanding of learning process

Beginning (60-69%)

  • System meets basic requirements but has significant limitations
  • Code works for demonstration but has structural or reliability issues
  • Presentation covers basics but shows limited understanding
  • Minimal participation in peer activities
  • Self-reflection is superficial or lacks insight

Incomplete (Below 60%)

  • System fails to meet basic requirements or doesn’t function reliably
  • Code has major issues that prevent proper operation
  • Presentation is unclear or shows misunderstanding of concepts
  • Little to no participation in collaborative learning
  • Self-reflection missing or shows no evidence of learning

Term 1 Final Portfolio Assessment - All Grade Levels

Portfolio Components Checklist

For All Students:

  • Weekly reflection journals documenting learning progress
  • Photo documentation of all projects and experiments
  • Completed weekly assessments with corrections
  • Evidence of peer collaboration and teaching
  • Self-assessment of growth in each major topic area

Grade-Specific Additions:

Preschoolers (4-6 years):

  • Drawings of favorite STEM activities
  • Parent/teacher observation notes on engagement and skills
  • Examples of unplugged coding sequences created
  • Photos of technology exploration activities

Grade 2-5 (7-11 years):

  • Screenshots of completed Scratch projects
  • Blockly puzzle solutions and explanations
  • Game design documents and storyboards
  • Video explanations of programming concepts

Grade 6-9 (11-14 years):

  • Drone safety checklist created and used
  • Mission planning worksheets with risk assessments
  • Photos/videos of practical flying sessions
  • Research report on drone applications in chosen field

Grade 10-12 (14-16 years):

  • Complete code repositories with documentation
  • Hardware connection diagrams and schematics
  • Data analysis reports from sensor projects
  • Technical presentation slides and demonstration videos

Cross-Grade Learning Objectives Mastery

By the end of Term 1, students should demonstrate:

Preschoolers:

  • Basic understanding of STEM concepts through play
  • Ability to follow simple sequences and patterns
  • Safe interaction with age-appropriate technology
  • Curiosity and engagement with hands-on exploration

Grade 2-5:

  • Fundamental programming concepts using visual languages
  • Ability to create simple games and interactive stories
  • Understanding of sequence, loops, and basic logic
  • Confidence in debugging and problem-solving

Grade 6-9:

  • Comprehensive understanding of drone safety and regulations
  • Practical flying skills with safety awareness
  • Knowledge of aviation principles and laws
  • Teamwork and communication skills in technical contexts

Grade 10-12:

  • Proficiency in Python programming for hardware control
  • Ability to integrate multiple sensors and actuators
  • Professional documentation and presentation skills
  • Independent problem-solving and creative innovation

Preparation for Term 2

Preschoolers → Scratch Junior Programming:

  • Continue building sequencing skills
  • Introduction to tablet-based programming
  • Creative storytelling with technology

Grade 2-5 → IoT Integration with Sensors:

  • Bridge from visual programming to physical computing
  • Introduction to sensors and real-world data
  • Beginning electronics and circuit concepts

Grade 6-9 → Smart Home Security:

  • Apply drone safety concepts to IoT systems
  • Introduction to sensors and automation
  • Home automation and security principles

Grade 10-12 → Smart Cities:

  • Scale up from individual projects to community solutions
  • Advanced IoT networking and data analysis
  • Social impact of technology solutions

Additional Resources and Extensions

Online Learning Platforms:

  • Preschoolers: PBS Kids programming games, Kodable app
  • Grade 2-5: Scratch Jr., Code.org courses, Blockly games
  • Grade 6-9: DroneBlocks, FAA educational materials, aviation simulation games
  • Grade 10-12: Python.org tutorials, Raspberry Pi Foundation projects, GitHub learning labs

STEM Career Connections:

  • Robotics Engineer: Designs and builds robots for various applications
  • Software Developer: Creates programs and applications for computers and devices
  • Drone Pilot: Professional UAV operations for photography, surveying, delivery
  • IoT Developer: Connects everyday objects to the internet for smart automation
  • Data Scientist: Analyzes sensor data to find patterns and make predictions

Community Extension Activities:

  • Science Fair Projects: Using skills learned to create original investigations
  • STEM Club Leadership: Teaching younger students basic concepts
  • Community Problem Solving: Identifying local problems that technology could help solve
  • Maker Space Participation: Continuing projects in community workshop environments

Assessment Data Tracking: Teachers should maintain records of:

  • Individual student progress through learning objectives
  • Common areas of difficulty requiring additional support
  • Exceptional student work that could be showcased
  • Parent/guardian feedback on home engagement with STEM concepts
  • Equipment and resource needs for optimal program delivery

This completes the comprehensive Term 1 curriculum with detailed notes, assessments, and support materials for all grade levels in the IoT & Robotics program. Each grade level has age-appropriate challenges that build foundational skills while maintaining engagement and fostering creativity in STEM learning.


Notes

I’ve created a comprehensive set of notes and assessment tests for Term 1 across all grade levels (Preschoolers through Grade 10-12). The document includes:

What’s Included:

For Each Grade Level:

  • Detailed weekly lesson notes covering weeks 1-8 content
  • Key concepts and learning objectives for each topic
  • Practical examples and code samples (for programming grades)
  • Age-appropriate assessment tests with multiple formats

Assessment Formats:

  • Preschoolers (4-6): Practical/observational assessments with hands-on activities
  • Grade 2-5 (7-11): Computer-based Scratch/Blockly challenges
  • Grade 6-9 (11-14): Written tests + practical drone safety demonstrations
  • Grade 10-12 (14-16): Coding assignments + hardware integration projects

Key Features:

  • Covers all 8 weeks of Term 1 content
  • Aligned with curriculum from the IoT & Robotics document
  • Progressive difficulty appropriate for each age group
  • Practical assessments that test real understanding
  • Detailed rubrics for fair evaluation
  • Extension activities for advanced learners
  • Safety guidelines and best practices

Topics Covered:

  • Preschoolers: STEM basics, simple machines, unplugged coding
  • Grade 2-5: Scratch programming, Blockly games, interface navigation
  • Grade 6-9: Drone basics, aviation principles, safety regulations
  • Grade 10-12: Python programming, hardware control, sensor integration

Each assessment is designed to be practical and engaging, testing both theoretical knowledge and hands-on application skills. The rubrics provide clear criteria for evaluation at different skill levels.


Perfect! I’ve now completed the comprehensive Term 1 notes and assessment materials covering all 8 weeks for all grade levels. Here’s what’s now included:

Assessment Test

Assessment Test

Assessment Test

Assessment Test

Assessment Test

Assessment Test

Assessment Test

Intro - Grade 2 - 5

Term 1 Final Portfolio Assessment - All Grade Levels

Portfolio Components Checklist

For All Students:

  • Weekly reflection journals documenting learning progress
  • Photo documentation of all projects and experiments
  • Completed weekly assessments with corrections
  • Evidence of peer collaboration and teaching
  • Self-assessment of growth in each major topic area

Grade-Specific Additions:

Preschoolers (4-6 years):

  • Drawings of favorite STEM activities
  • Parent/teacher observation notes on engagement and skills
  • Examples of unplugged coding sequences created
  • Photos of technology exploration activities

Grade 2-5 (7-11 years):

  • Screenshots of completed Scratch projects
  • Blockly puzzle solutions and explanations
  • Game design documents and storyboards
  • Video explanations of programming concepts

Grade 6-9 (11-14 years):

  • Drone safety checklist created and used
  • Mission planning worksheets with risk assessments
  • Photos/videos of practical flying sessions
  • Research report on drone applications in chosen field

Grade 10-12 (14-16 years):

  • Complete code repositories with documentation
  • Hardware connection diagrams and schematics
  • Data analysis reports from sensor projects
  • Technical presentation slides and demonstration videos

Cross-Grade Learning Objectives Mastery

By the end of Term 1, students should demonstrate:

Preschoolers:

  • Basic understanding of STEM concepts through play
  • Ability to follow simple sequences and patterns
  • Safe interaction with age-appropriate technology
  • Curiosity and engagement with hands-on exploration

Grade 2-5:

  • Fundamental programming concepts using visual languages
  • Ability to create simple games and interactive stories
  • Understanding of sequence, loops, and basic logic
  • Confidence in debugging and problem-solving

Grade 6-9:

  • Comprehensive understanding of drone safety and regulations
  • Practical flying skills with safety awareness
  • Knowledge of aviation principles and laws
  • Teamwork and communication skills in technical contexts

Grade 10-12:

  • Proficiency in Python programming for hardware control
  • Ability to integrate multiple sensors and actuators
  • Professional documentation and presentation skills
  • Independent problem-solving and creative innovation

Preparation for Term 2

Preschoolers → Scratch Junior Programming:

  • Continue building sequencing skills
  • Introduction to tablet-based programming
  • Creative storytelling with technology

Grade 2-5 → IoT Integration with Sensors:

  • Bridge from visual programming to physical computing
  • Introduction to sensors and real-world data
  • Beginning electronics and circuit concepts

Grade 6-9 → Smart Home Security:

  • Apply drone safety concepts to IoT systems
  • Introduction to sensors and automation
  • Home automation and security principles

Grade 10-12 → Smart Cities:

  • Scale up from individual projects to community solutions
  • Advanced IoT networking and data analysis
  • Social impact of technology solutions

Additional Resources and Extensions

Online Learning Platforms:

  • Preschoolers: PBS Kids programming games, Kodable app
  • Grade 2-5: Scratch Jr., Code.org courses, Blockly games
  • Grade 6-9: DroneBlocks, FAA educational materials, aviation simulation games
  • Grade 10-12: Python.org tutorials, Raspberry Pi Foundation projects, GitHub learning labs

STEM Career Connections:

  • Robotics Engineer: Designs and builds robots for various applications
  • Software Developer: Creates programs and applications for computers and devices
  • Drone Pilot: Professional UAV operations for photography, surveying, delivery
  • IoT Developer: Connects everyday objects to the internet for smart automation
  • Data Scientist: Analyzes sensor data to find patterns and make predictions

Community Extension Activities:

  • Science Fair Projects: Using skills learned to create original investigations
  • STEM Club Leadership: Teaching younger students basic concepts
  • Community Problem Solving: Identifying local problems that technology could help solve
  • Maker Space Participation: Continuing projects in community workshop environments

Assessment Data Tracking: Teachers should maintain records of:

  • Individual student progress through learning objectives
  • Common areas of difficulty requiring additional support
  • Exceptional student work that could be showcased
  • Parent/guardian feedback on home engagement with STEM concepts
  • Equipment and resource needs for optimal program delivery

This completes the comprehensive Term 1 curriculum with detailed notes, assessments, and support materials for all grade levels in the IoT & Robotics program. Each grade level has age-appropriate challenges that build foundational skills while maintaining engagement and fostering creativity in STEM learning.


Grade 2-5 (7-11 Years)

Term 1: Scratch & Blockly Programming

Week 1: Introduction to Programming

Learning Objectives:

  • Understand what programming is
  • Learn about Scratch programming environment
  • Install and explore Scratch interface
  • Grasp the concept of sequencing

Key Concepts:

  • Programming: Giving instructions to computers
  • Scratch: Visual programming language using blocks
  • Interface: The screen where we work with Scratch
  • Sequencing: Putting commands in the right order
  • Sprites: Characters in Scratch programs
  • Stage: Where Scratch programs run

Core Activities:

  • Explore Scratch interface and tools
  • Identify different areas (sprite area, blocks palette, stage)
  • Learn about different block categories (Motion, Looks, Sound, etc.)
  • Create first simple animation

Assessment Test - Grade 2-5 (7-11 Years)

Week 1-3 Assessment: Scratch Fundamentals

Format: Practical Computer Assessment (30 minutes)

Part A: Interface Knowledge (10 points)

  1. Label the parts of Scratch interface:
  • Blocks Palette
  • Scripts Area
  • Stage
  • Sprite Area
  1. Match the block colors to their functions:
  • Motion blocks: _ (Blue)
  • Looks blocks: _ (Purple)
  • Sound blocks: _ (Pink)
  • Events blocks: _ (Yellow)

Part B: Basic Programming (15 points) 3. Create a program that makes a sprite:

  • Move 10 steps forward
  • Turn 90 degrees right
  • Say “Hello” for 2 seconds
  • Change color
  1. Fix this broken sequence (drag blocks in correct order):
[Say "Goodbye"][When green flag clicked][Move 100 steps][Say "Hello"]

Part C: Problem Solving (10 points) 5. Your sprite isn’t moving when you click the green flag. What might be wrong?

  • Missing “when green flag clicked” block
  • Sprite is already at the edge
  • Motion blocks aren’t connected
  • All of the above
  1. Create a simple animation showing a cat walking across the stage.

Week 2: Understanding Scratch Interface

Learning Objectives:

  • Navigate Scratch interface confidently
  • Understand different block categories
  • Create basic sprite movements
  • Save and load projects

Key Concepts:

  • Blocks Palette: Where programming blocks are stored
  • Scripts Area: Where we build our programs
  • Motion Blocks: Make sprites move
  • Looks Blocks: Change sprite appearance
  • Events: What starts our programs running

Assessment Test - Grade 2-5 (7-11 Years)

Week 1-3 Assessment: Scratch Fundamentals

Format: Practical Computer Assessment (30 minutes)

Part A: Interface Knowledge (10 points)

  1. Label the parts of Scratch interface:
  • Blocks Palette
  • Scripts Area
  • Stage
  • Sprite Area
  1. Match the block colors to their functions:
  • Motion blocks: _ (Blue)
  • Looks blocks: _ (Purple)
  • Sound blocks: _ (Pink)
  • Events blocks: _ (Yellow)

Part B: Basic Programming (15 points) 3. Create a program that makes a sprite:

  • Move 10 steps forward
  • Turn 90 degrees right
  • Say “Hello” for 2 seconds
  • Change color
  1. Fix this broken sequence (drag blocks in correct order):
[Say "Goodbye"][When green flag clicked][Move 100 steps][Say "Hello"]

Part C: Problem Solving (10 points) 5. Your sprite isn’t moving when you click the green flag. What might be wrong?

  • Missing “when green flag clicked” block
  • Sprite is already at the edge
  • Motion blocks aren’t connected
  • All of the above
  1. Create a simple animation showing a cat walking across the stage.

Week 3: Setting Up Scratch Projects

Learning Objectives:

  • Plan and organize Scratch projects
  • Understand project structure
  • Use backgrounds and sprites effectively
  • Practice debugging simple problems

Key Concepts:

  • Project Planning: Thinking before coding
  • Backgrounds: Scenes for our programs
  • Sprite Library: Ready-made characters
  • Debugging: Finding and fixing problems

Assessment Test - Grade 2-5 (7-11 Years)

Week 1-3 Assessment: Scratch Fundamentals

Format: Practical Computer Assessment (30 minutes)

Part A: Interface Knowledge (10 points)

  1. Label the parts of Scratch interface:
  • Blocks Palette
  • Scripts Area
  • Stage
  • Sprite Area
  1. Match the block colors to their functions:
  • Motion blocks: _ (Blue)
  • Looks blocks: _ (Purple)
  • Sound blocks: _ (Pink)
  • Events blocks: _ (Yellow)

Part B: Basic Programming (15 points) 3. Create a program that makes a sprite:

  • Move 10 steps forward
  • Turn 90 degrees right
  • Say “Hello” for 2 seconds
  • Change color
  1. Fix this broken sequence (drag blocks in correct order):
[Say "Goodbye"][When green flag clicked][Move 100 steps][Say "Hello"]

Part C: Problem Solving (10 points) 5. Your sprite isn’t moving when you click the green flag. What might be wrong?

  • Missing “when green flag clicked” block
  • Sprite is already at the edge
  • Motion blocks aren’t connected
  • All of the above
  1. Create a simple animation showing a cat walking across the stage.

Week 4: Introduction to Blockly

Learning Objectives:

  • Understand Blockly visual programming
  • Compare Blockly with Scratch
  • Complete basic Blockly puzzles
  • Transfer concepts between platforms

Key Concepts:

  • Blockly: Another visual programming language
  • Puzzle-based Learning: Learning through solving challenges
  • Logic Blocks: Making decisions in programs
  • Loops: Repeating actions

Week 4-5 Assessment: Blockly & Problem Solving

Format: Computer-based Blockly Challenges (25 minutes)

Part A: Blockly Basics (8 points)

  1. Complete the “Move Forward” puzzle in Blockly
  2. Complete the “Turn Left/Right” puzzle
  3. Complete the “Repeat Loop” puzzle
  4. Complete the “If/Else” puzzle

Part B: Logic Understanding (12 points) 5. Explain what this Blockly code does:

Repeat 4 times:
  Move forward
  Turn right 90 degrees

Answer: _

  1. Write Blockly code to make a character:
  • Move forward 3 steps
  • Turn left if path is blocked
  • Repeat until reaching goal

Part C: Transfer Learning (10 points) 7. How is Blockly similar to Scratch? List 3 similarities:


  1. Create a Scratch program that does the same thing as this Blockly code:
When started:  Repeat 5 times:    Move forward 20 steps    Wait 1 second

Assessment Rubric:

  • Advanced (90-100%): Completes all tasks efficiently with creative additions
  • Proficient (80-89%): Completes most tasks correctly with minor errors
  • Developing (70-79%): Completes basic tasks but struggles with complex problems
  • Beginning (Below 70%): Needs significant support to complete tasks

Week 5: Blockly Games for Scratch Programmers

Learning Objectives:

  • Apply Scratch knowledge to Blockly games
  • Solve increasingly complex puzzles
  • Understand programming logic and flow
  • Build problem-solving confidence

Key Concepts:

  • Game Logic: Rules that make games work
  • Progressive Difficulty: Challenges that get harder
  • Pattern Recognition: Seeing repeated solutions
  • Persistence: Keep trying when challenges are difficult

Week 4-5 Assessment: Blockly & Problem Solving

Format: Computer-based Blockly Challenges (25 minutes)

Part A: Blockly Basics (8 points)

  1. Complete the “Move Forward” puzzle in Blockly
  2. Complete the “Turn Left/Right” puzzle
  3. Complete the “Repeat Loop” puzzle
  4. Complete the “If/Else” puzzle

Part B: Logic Understanding (12 points) 5. Explain what this Blockly code does:

Repeat 4 times:
  Move forward
  Turn right 90 degrees

Answer: _

  1. Write Blockly code to make a character:
  • Move forward 3 steps
  • Turn left if path is blocked
  • Repeat until reaching goal

Part C: Transfer Learning (10 points) 7. How is Blockly similar to Scratch? List 3 similarities:


  1. Create a Scratch program that does the same thing as this Blockly code:
When started:  Repeat 5 times:    Move forward 20 steps    Wait 1 second

Assessment Rubric:

  • Advanced (90-100%): Completes all tasks efficiently with creative additions
  • Proficient (80-89%): Completes most tasks correctly with minor errors
  • Developing (70-79%): Completes basic tasks but struggles with complex problems
  • Beginning (Below 70%): Needs significant support to complete tasks

Grade 2-5 (7-11 Years) - Weeks 6-8

Advanced Scratch Programming & Game Development

Week 6: Game Structure and Design

Learning Objectives:

  • Understand basic game structure (start, play, end)
  • Use Scratch blocks to move characters and detect collisions
  • Make characters move between different scenes
  • Create scoring or win conditions

Key Concepts:

  • Game Design Elements: Characters, backgrounds, objectives, rules
  • Game Loop: Continuous cycle of input, processing, output
  • Collision Detection: Knowing when sprites touch each other
  • Scene Transitions: Moving between different game screens
  • Win/Lose Conditions: Rules that determine game outcomes
  • User Interface: Buttons, scores, and information displays

Advanced Scratch Concepts:

  • Sensing Blocks: “touching color”, “distance to”, “key pressed”
  • Variables: Storing score, lives, or time
  • Broadcast Messages: Communication between sprites
  • Clone Sprites: Creating multiple copies of objects
  • Custom Blocks: Making your own programming blocks

Game Development Process:

  1. Planning Phase: Sketch game idea, list needed sprites and backgrounds
  2. Prototype: Create basic movement and interaction
  3. Enhancement: Add sounds, effects, and polish
  4. Testing: Play game and fix bugs
  5. Sharing: Present to classmates

Example Game Structure:

When green flag clicked
Set score to 0
Set lives to 3
Say "Game Starting!" for 2 seconds
Show sprite
Forever:
    If key space pressed:
        Move player sprite
    If touching enemy:
        Change lives by -1
        If lives = 0:
            Say "Game Over!"
            Stop all

Grade 2-5 Assessment - Weeks 6-8

Week 6 Assessment: Game Development Project

Format: Scratch Game Creation + Presentation (45 minutes)

Part A: Game Planning (10 points)

  1. Game Design Document - Create a simple plan including:
  • Game objective (what’s the goal?)
  • Main character description
  • Basic rules (how do you win/lose?)
  • Required sprites and backgrounds
  1. Storyboard - Draw 3 screens showing:
  • Game start screen
  • Main gameplay
  • Win/lose screen

Part B: Game Implementation (25 points) 3. Core Functionality (15 points):

  • Character moves with arrow keys or WASD
  • At least one interactive element (enemy, collectible, obstacle)
  • Basic collision detection (touching = something happens)
  • Clear win or lose condition
  1. Polish and Enhancement (10 points):
  • Sound effects or music
  • Visual feedback (score, lives, timer)
  • Smooth sprite movement
  • Creative backgrounds or costumes

Part C: Presentation and Reflection (15 points) 5. Game Demo (10 points):

  • Explain game rules clearly
  • Demonstrate gameplay for 2 minutes
  • Show different game scenarios
  • Handle questions from classmates
  1. Technical Reflection (5 points):
  • Explain one challenging problem you solved
  • Describe one improvement you would make
  • Share one new Scratch skill you learned

Week 7: Transition to Text-Based Concepts

Learning Objectives:

  • Prepare learners for text-based coding
  • Understand basic programming concepts using blocks
  • Use logic and loops to control sprite or robot actions
  • Begin transition to robotics or advanced coding platforms

Key Concepts:

  • Programming Fundamentals: Sequence, selection, iteration
  • Logic Blocks: IF/ELSE statements in visual form
  • Loop Types: Forever, repeat until, repeat X times
  • Variables and Operations: Math in programming
  • Event-Driven Programming: Responding to user input
  • Modular Programming: Breaking code into smaller parts

Bridging Visual to Text:

  • Block-to-Code Thinking: Understanding what blocks represent
  • Pseudocode: Writing steps in plain English before coding
  • Debugging Strategies: Systematic problem-solving approaches
  • Code Organization: Keeping projects neat and logical

Advanced Programming Patterns:

// Pattern 1: State Machine
When green flag clicked
Set game state to "menu"
Forever:
    If game state = "menu":
        Show menu options
    If game state = "playing":
        Run game logic
    If game state = "game over":
        Show final score

// Pattern 2: Object Behavior
When I start as a clone:
    Go to random position
    Forever:
        Move 2 steps
        If on edge, bounce
        If touching player:
            Change score by 10
            Delete this clone


Week 7-8 Assessment: Programming Concepts Mastery

Format: Mixed Assessment - Blockly Challenges + Scratch Review (50 minutes)

Part A: Blockly Logic Challenges (20 points)

  1. Maze Navigation (8 points):
  • Complete 3 increasingly difficult maze puzzles
  • Use efficient solutions (minimal blocks)
  • Demonstrate understanding of loops and conditionals
  1. Pattern Recognition (6 points):
  • Solve sequence completion puzzles
  • Identify and extend number/color patterns
  • Create original pattern for others to solve
  1. Logic Puzzles (6 points):
  • Complete IF/THEN decision trees
  • Solve multi-step conditional problems
  • Optimize solutions for clarity

Part B: Concept Transfer (15 points) 4. Visual to Text Translation (10 points): Given this Scratch code block arrangement:

[When flag clicked] → [Forever] → [If touching mouse] → [Move 10 steps]

Write in pseudocode (plain English): “When the program starts, ____

  1. Problem Decomposition (5 points): Break down this challenge into steps: “Create a sprite that follows the mouse but stops when it touches the edge”

Step 1: ___ Step 2: ___ Step 3: ___ Step 4: ___

Part C: Creative Application (15 points) 6. Original Algorithm (15 points): Choose ONE to complete:

Option A - Scratch: Create a “digital pet” that:

  • Follows mouse cursor
  • Changes expression when clicked
  • Makes sound when hungry (timer-based)
  • Has at least 3 different costumes

Option B - Blockly: Design a solution for:

  • Robot that sorts colored objects
  • Path that avoids all obstacles
  • Pattern that creates art using loops

Assessment Rubric:

  • Expert (90-100%): Exceeds requirements with creative solutions and clear explanations
  • Proficient (80-89%): Meets all requirements with good understanding demonstrated
  • Developing (70-79%): Meets most requirements but may have gaps in complex concepts
  • Novice (60-69%): Shows basic understanding but struggles with application
  • Beginning (Below 60%): Needs significant support to demonstrate concepts

Week 8: Blockly Integration and Logic Puzzles

Learning Objectives:

  • Solve logic puzzles using visual programming concepts
  • Create games using Blockly platform
  • Demonstrate understanding of programming fundamentals
  • Apply creative problem-solving skills

Key Concepts:

  • Blockly Platform: Google’s visual programming language
  • Logic Puzzles: Problems requiring systematic thinking
  • Algorithm Efficiency: Finding the best solution method
  • Pattern Recognition: Identifying repeated solutions
  • Creative Programming: Using code for artistic expression

Blockly vs. Scratch Comparison:

FeatureScratchBlockly
FocusStorytelling & GamesLogic & Algorithms
InterfaceStage-basedPuzzle-based
OutputAnimated ProjectsProblem Solutions
ProgressionCreative ExpressionMathematical Thinking

Logic Puzzle Types:

  1. Maze Solving: Navigate through obstacles
  2. Pattern Completion: Fill in missing sequences
  3. Conditional Logic: IF/THEN decision making
  4. Loop Optimization: Repeat actions efficiently

Week 7-8 Assessment: Programming Concepts Mastery

Format: Mixed Assessment - Blockly Challenges + Scratch Review (50 minutes)

Part A: Blockly Logic Challenges (20 points)

  1. Maze Navigation (8 points):
  • Complete 3 increasingly difficult maze puzzles
  • Use efficient solutions (minimal blocks)
  • Demonstrate understanding of loops and conditionals
  1. Pattern Recognition (6 points):
  • Solve sequence completion puzzles
  • Identify and extend number/color patterns
  • Create original pattern for others to solve
  1. Logic Puzzles (6 points):
  • Complete IF/THEN decision trees
  • Solve multi-step conditional problems
  • Optimize solutions for clarity

Part B: Concept Transfer (15 points) 4. Visual to Text Translation (10 points): Given this Scratch code block arrangement:

[When flag clicked] → [Forever] → [If touching mouse] → [Move 10 steps]

Write in pseudocode (plain English): “When the program starts, ____

  1. Problem Decomposition (5 points): Break down this challenge into steps: “Create a sprite that follows the mouse but stops when it touches the edge”

Step 1: ___ Step 2: ___ Step 3: ___ Step 4: ___

Part C: Creative Application (15 points) 6. Original Algorithm (15 points): Choose ONE to complete:

Option A - Scratch: Create a “digital pet” that:

  • Follows mouse cursor
  • Changes expression when clicked
  • Makes sound when hungry (timer-based)
  • Has at least 3 different costumes

Option B - Blockly: Design a solution for:

  • Robot that sorts colored objects
  • Path that avoids all obstacles
  • Pattern that creates art using loops

Assessment Rubric:

  • Expert (90-100%): Exceeds requirements with creative solutions and clear explanations
  • Proficient (80-89%): Meets all requirements with good understanding demonstrated
  • Developing (70-79%): Meets most requirements but may have gaps in complex concepts
  • Novice (60-69%): Shows basic understanding but struggles with application
  • Beginning (Below 60%): Needs significant support to demonstrate concepts

IoT & Robotics Term 1 - Complete Notes & Assessment Tests

Table of Contents

  1. Preschoolers (4-6 Years) - STEM Storytelling & Coding Toys
  2. Grade 2-5 (7-11 Years) - Scratch & Blockly Programming
  3. Grade 6-9 (11-14 Years) - Drone Aviation Introduction
  4. Grade 10-12 (14-16 Years) - Python Basics

Preschoolers (4-6 Years)

Term 1: STEM Storytelling & Coding Toys

Week 1: Introduction to STEM

Learning Objectives:

  • Understand basic concepts of STEM (Science, Technology, Engineering, Math)
  • Spark excitement and curiosity about STEM through hands-on activities
  • Foster teamwork through group experiments
  • Develop early thinking through guided play and experimentation

Key Concepts:

  • Science: Learning about the world around us through observation
  • Technology: Simple tools and devices that help us
  • Engineering: Building and creating solutions
  • Mathematics: Numbers, shapes, and patterns in everyday life

Activities:

  • Floating vs. Sinking experiments with various objects
  • Basic robot interaction and exploration
  • STEM vocabulary building games
  • Classification activities

Materials: Water, buckets, floating items (paper, feathers), sinking items (stones, coins), toy robot, tablet

Week 2: STEM Play Corners

Learning Objectives:

  • Explore different STEM areas through play stations
  • Develop fine motor skills through hands-on manipulation
  • Practice problem-solving through guided discovery
  • Build confidence in exploring new concepts

Key Concepts:

  • Play-based learning: Learning through exploration and fun
  • Spatial awareness: Understanding shapes, sizes, and positions
  • Cause and effect: Understanding that actions have results
  • Collaboration: Working together to solve problems

Week 3: Simple Machines & Environmental Science

Learning Objectives:

  • Identify simple machines in everyday life
  • Understand basic environmental concepts
  • Develop observation skills
  • Connect STEM to the natural world

Key Concepts:

  • Simple Machines: Lever, pulley, wheel, ramp
  • Environment: Plants, animals, weather, seasons
  • Observation: Using our senses to learn
  • Nature patterns: Recognizing patterns in nature

Week 4: Unplugged Coding

Learning Objectives:

  • Introduction to coding concepts without computers
  • Understand sequence and order
  • Develop logical thinking
  • Practice following and giving instructions

Key Concepts:

  • Sequence: Steps in order
  • Instructions: Clear directions to follow
  • Algorithms: Step-by-step solutions
  • Patterns: Recognizing and creating patterns

Assessment Test - Preschoolers (4-6 Years)

Week 1-2 Assessment: STEM Basics

Format: Practical/Observational Assessment

  1. Floating or Sinking? (Show child various objects)
  • Point to objects that will float: feather, cork, plastic toy
  • Point to objects that will sink: stone, coin, marble
  • Explain why you think so (in simple words)
  1. STEM Matching (Picture cards)
  • Match the scientist to the magnifying glass
  • Match the engineer to the building blocks
  • Match the mathematician to the numbers
  • Match the technologist to the computer
  1. Following Instructions
  • Can follow 2-step instructions: “Pick up the red block and put it in the box”
  • Can give simple instructions to a friend
  • Can arrange objects in order (biggest to smallest)

Assessment Rubric:

  • Exceeding (3): Completes all tasks independently with explanation
  • Meeting (2): Completes most tasks with minimal guidance
  • Approaching (1): Attempts tasks with significant support
  • Beginning (0): Needs extensive help to participate

Week 3-4 Assessment: Simple Machines & Coding

Format: Hands-on Demonstration

  1. Simple Machines Hunt
  • Find the lever (seesaw, scissors)
  • Find the wheel (bicycle, toy car)
  • Find the ramp (slide, wedge)
  • Explain what each machine helps us do
  1. Nature Observation
  • Draw or point to living things vs. non-living things
  • Identify basic shapes in nature (circles in flowers, triangles in mountains)
  • Name things that grow vs. things that are made
  1. Unplugged Coding Challenge
  • Arrange sequence cards to show morning routine
  • Give directions to help friend reach the treasure
  • Complete a simple pattern with blocks or shapes

Grade 2-5 (7-11 Years)

Term 1: Scratch & Blockly Programming

Week 1: Introduction to Programming

Learning Objectives:

  • Understand what programming is
  • Learn about Scratch programming environment
  • Install and explore Scratch interface
  • Grasp the concept of sequencing

Key Concepts:

  • Programming: Giving instructions to computers
  • Scratch: Visual programming language using blocks
  • Interface: The screen where we work with Scratch
  • Sequencing: Putting commands in the right order
  • Sprites: Characters in Scratch programs
  • Stage: Where Scratch programs run

Core Activities:

  • Explore Scratch interface and tools
  • Identify different areas (sprite area, blocks palette, stage)
  • Learn about different block categories (Motion, Looks, Sound, etc.)
  • Create first simple animation

Week 2: Understanding Scratch Interface

Learning Objectives:

  • Navigate Scratch interface confidently
  • Understand different block categories
  • Create basic sprite movements
  • Save and load projects

Key Concepts:

  • Blocks Palette: Where programming blocks are stored
  • Scripts Area: Where we build our programs
  • Motion Blocks: Make sprites move
  • Looks Blocks: Change sprite appearance
  • Events: What starts our programs running

Week 3: Setting Up Scratch Projects

Learning Objectives:

  • Plan and organize Scratch projects
  • Understand project structure
  • Use backgrounds and sprites effectively
  • Practice debugging simple problems

Key Concepts:

  • Project Planning: Thinking before coding
  • Backgrounds: Scenes for our programs
  • Sprite Library: Ready-made characters
  • Debugging: Finding and fixing problems

Week 4: Introduction to Blockly

Learning Objectives:

  • Understand Blockly visual programming
  • Compare Blockly with Scratch
  • Complete basic Blockly puzzles
  • Transfer concepts between platforms

Key Concepts:

  • Blockly: Another visual programming language
  • Puzzle-based Learning: Learning through solving challenges
  • Logic Blocks: Making decisions in programs
  • Loops: Repeating actions

Week 5: Blockly Games for Scratch Programmers

Learning Objectives:

  • Apply Scratch knowledge to Blockly games
  • Solve increasingly complex puzzles
  • Understand programming logic and flow
  • Build problem-solving confidence

Key Concepts:

  • Game Logic: Rules that make games work
  • Progressive Difficulty: Challenges that get harder
  • Pattern Recognition: Seeing repeated solutions
  • Persistence: Keep trying when challenges are difficult

Assessment Test - Grade 2-5 (7-11 Years)

Week 1-3 Assessment: Scratch Fundamentals

Format: Practical Computer Assessment (30 minutes)

Part A: Interface Knowledge (10 points)

  1. Label the parts of Scratch interface:
  • Blocks Palette
  • Scripts Area
  • Stage
  • Sprite Area
  1. Match the block colors to their functions:
  • Motion blocks: _____ (Blue)
  • Looks blocks: _____ (Purple)
  • Sound blocks: _____ (Pink)
  • Events blocks: _____ (Yellow)

Part B: Basic Programming (15 points) 3. Create a program that makes a sprite:

  • Move 10 steps forward

  • Turn 90 degrees right

  • Say “Hello” for 2 seconds

  • Change color

  1. Fix this broken sequence (drag blocks in correct order):
[Say "Goodbye"][When green flag clicked][Move 100 steps][Say "Hello"]

Part C: Problem Solving (10 points) 5. Your sprite isn’t moving when you click the green flag. What might be wrong?

  • Missing “when green flag clicked” block

  • Sprite is already at the edge

  • Motion blocks aren’t connected

  • All of the above

  1. Create a simple animation showing a cat walking across the stage.

Week 4-5 Assessment: Blockly & Problem Solving

Format: Computer-based Blockly Challenges (25 minutes)

Part A: Blockly Basics (8 points)

  1. Complete the “Move Forward” puzzle in Blockly
  2. Complete the “Turn Left/Right” puzzle
  3. Complete the “Repeat Loop” puzzle
  4. Complete the “If/Else” puzzle

Part B: Logic Understanding (12 points) 5. Explain what this Blockly code does:

Repeat 4 times:
  Move forward
  Turn right 90 degrees

Answer: _________________

  1. Write Blockly code to make a character:
  • Move forward 3 steps
  • Turn left if path is blocked
  • Repeat until reaching goal

Part C: Transfer Learning (10 points) 7. How is Blockly similar to Scratch? List 3 similarities:




  1. Create a Scratch program that does the same thing as this Blockly code:
When started:  Repeat 5 times:    Move forward 20 steps    Wait 1 second

Assessment Rubric:

  • Advanced (90-100%): Completes all tasks efficiently with creative additions
  • Proficient (80-89%): Completes most tasks correctly with minor errors
  • Developing (70-79%): Completes basic tasks but struggles with complex problems
  • Beginning (Below 70%): Needs significant support to complete tasks

Grade 6-9 (11-14 Years)

Term 1: Drone Aviation Introduction

Week 1: Introduction to Drones and Aviation Basics

Learning Objectives:

  • Understand what drones are and their applications
  • Learn basic aviation principles
  • Identify different types of aircraft
  • Understand the evolution of flight

Key Concepts:

  • Unmanned Aerial Vehicle (UAV): Aircraft without a human pilot aboard
  • Remote Pilot: Person controlling the drone from the ground
  • Autonomous Flight: Drones flying with minimal human control
  • Commercial vs. Recreational Use: Different purposes for drones
  • Four Forces of Flight: Lift, Weight, Thrust, Drag
  • Aerodynamics: How air moves around objects in flight

Applications of Drones:

  • Photography and videography
  • Search and rescue operations
  • Agriculture monitoring
  • Package delivery
  • Scientific research
  • Military operations

Week 2: Drone Safety Rules and Best Practices

Learning Objectives:

  • Learn essential drone safety protocols
  • Understand pre-flight checklist procedures
  • Identify potential hazards and risks
  • Develop responsible drone operation habits

Key Concepts:

  • Pre-flight Inspection: Checking drone condition before flying
  • Weather Conditions: How weather affects drone flight
  • Battery Safety: Proper battery handling and storage
  • Emergency Procedures: What to do when things go wrong
  • Situational Awareness: Being aware of surroundings while flying

Safety Rules:

  1. Always maintain visual contact with drone
  2. Check weather conditions before flying
  3. Inspect drone and equipment before each flight
  4. Fly in open areas away from people and property
  5. Never fly above 400 feet
  6. Respect others’ privacy
  7. Land immediately if drone malfunctions

Week 3: FAA/UAS Regulations (Basic Overview)

Learning Objectives:

  • Understand basic aviation regulations
  • Learn about no-fly zones and restricted airspace
  • Understand registration requirements
  • Learn about pilot certification basics

Key Concepts:

  • Federal Aviation Administration (FAA): Government agency regulating aviation
  • Unmanned Aircraft Systems (UAS): Official term for drones and related equipment
  • No-Fly Zones: Areas where drone flight is prohibited
  • Remote Pilot Certificate: License required for commercial drone operations
  • Registration: Required identification for drones over 0.55 pounds

Basic Regulations:

  • Drones must be registered if over 0.55 lbs (250 grams)
  • Maximum altitude: 400 feet above ground level
  • Must yield right-of-way to manned aircraft
  • No flying over groups of people
  • No flying at night without special certification
  • Respect airport operational areas (usually 5-mile radius)

Week 4: Key Drone Types & Components

Learning Objectives:

  • Identify different drone configurations
  • Understand key drone components and their functions
  • Compare advantages and disadvantages of different designs
  • Learn basic maintenance requirements

Key Concepts:

  • Multirotor: Drones with multiple rotating propellers
  • Fixed-wing: Airplane-like drones with wings
  • Hybrid VTOL: Vertical takeoff and landing with forward flight capability
  • Frame: Main structure holding all components
  • Flight Controller: Computer controlling drone flight
  • ESC (Electronic Speed Controller): Controls motor speed
  • Gimbal: Stabilizes camera during flight

Drone Types:

  1. Quadcopter: 4 rotors, most common configuration
  2. Hexacopter: 6 rotors, more redundancy and payload capacity
  3. Octocopter: 8 rotors, highest redundancy and capacity
  4. Fixed-wing: Longer flight times, faster speeds
  5. Racing drones: Small, fast, agile for competitive flying

Week 5: Basic Principles of Flight

Learning Objectives:

  • Understand the four forces of flight in detail
  • Learn how drones achieve controlled flight
  • Understand stability and control concepts
  • Explore flight dynamics and physics

Key Concepts:

  • Lift: Upward force generated by rotors or wings
  • Weight (Gravity): Downward force pulling drone toward earth
  • Thrust: Forward force propelling drone through air
  • Drag: Resistance force opposing motion through air
  • Center of Gravity: Balance point of drone
  • Pitch, Roll, Yaw: Three axes of rotation
  • Gyroscopic Effect: How spinning rotors affect stability

Flight Control:

  • Throttle: Controls altitude (up/down)
  • Pitch: Controls forward/backward movement
  • Roll: Controls left/right movement
  • Yaw: Controls rotation (turning left/right)
  • Trim: Fine adjustments for balanced flight

Assessment Test - Grade 6-9 (11-14 Years)

Week 1-2 Assessment: Drone Basics and Safety

Format: Written Test + Practical Safety Demonstration (45 minutes)

Part A: Multiple Choice (20 points)

  1. What does UAV stand for? a) Universal Aviation Vehicle b) Unmanned Aerial Vehicle c) Ultra Aerodynamic Vehicle d) United Aviation Vehicle

  2. Which of the four forces of flight works against gravity? a) Thrust b) Drag c) Lift d) Weight

  3. What should you do FIRST before flying a drone? a) Start the motors b) Check weather conditions c) Take off immediately d) Turn on the camera

  4. The maximum altitude for recreational drone flight is: a) 200 feet b) 300 feet c) 400 feet d) 500 feet

  5. What is the main difference between commercial and recreational drone use? a) Size of drone b) Purpose and regulations c) Color of drone d) Number of rotors

Part B: Short Answer (25 points) 6. List 5 safety rules that must be followed when operating a drone: (10 points)






  1. Explain three commercial applications of drones: (9 points)



  1. Why is it important to maintain visual contact with your drone during flight? (6 points)

Part C: Practical Safety Assessment (15 points) 9. Demonstrate proper pre-flight inspection checklist 10. Identify suitable vs. unsuitable flying locations from photos 11. Explain emergency landing procedures

Week 3-5 Assessment: Regulations and Flight Principles

Format: Written Test + Flight Theory Application (50 minutes)

Part A: Regulations Knowledge (20 points)

  1. True/False (10 points)
  • Drones under 0.55 lbs need to be registered: ___
  • You can fly your drone anywhere as long as it’s daytime: ___
  • Commercial drone operations require a Remote Pilot Certificate: ___
  • Drones must always yield to manned aircraft: ___
  • Flying over groups of people is allowed with permission: ___
  1. What is a no-fly zone and give 3 examples: (10 points) Definition: ________________________________ Examples:



Part B: Drone Components (15 points) 3. Match the component to its function:

  • Flight Controller: _____ a) Provides power to motors

  • ESC: _____ b) Stabilizes camera

  • Gimbal: _____ c) Main structural support

  • Frame: _____ d) Controls drone flight

  • Battery: _____ e) Controls motor speed

  1. Compare quadcopter vs. fixed-wing drones (advantages/disadvantages): (10 points)

Part C: Flight Principles (25 points) 5. Draw and label the four forces of flight on a drone diagram: (12 points)

  1. Explain how a drone moves in each direction: (13 points)
  • Forward: ________________________________
  • Backward: ________________________________
  • Left: ________________________________
  • Right: ________________________________
  • Up: ________________________________
  • Rotate left: ________________________________

Assessment Rubric:

  • Expert (90-100%): Demonstrates comprehensive understanding with detailed explanations
  • Proficient (80-89%): Shows solid grasp of concepts with minor gaps
  • Developing (70-79%): Understands basic concepts but lacks detail in complex areas
  • Novice (Below 70%): Limited understanding, needs additional instruction

Grade 10-12 (14-16 Years)

Term 1: Introduction to Python Basics

Week 1: Writing Structured Python Code

Learning Objectives:

  • Understand Python syntax and structure
  • Learn proper code formatting and indentation
  • Write clean, readable code following best practices
  • Understand variables, data types, and basic operations

Key Concepts:

  • Python: High-level programming language
  • Syntax: Rules for writing Python code
  • Indentation: Using spaces to organize code structure
  • Variables: Named storage for data values
  • Data Types: int, float, string, boolean
  • Comments: Documentation within code using #
  • Print Statement: Displaying output to screen

Code Structure Best Practices:

# Header comment explaining the program
# Author: Your Name
# Date: Today's Date

# Import statements
import module_name

# Constants (UPPERCASE naming)
MAX_VALUE = 100

# Main program logic
def main():
    # Variable declarations
    user_name = "Student"
    age = 16

    # Program logic with proper indentation
    print(f"Hello, {user_name}!")
    print(f"You are {age} years old.")

# Run the program
if __name__ == "__main__":
    main()

Week 2: Functions and Loops

Learning Objectives:

  • Create and use custom functions
  • Understand function parameters and return values
  • Implement for loops and while loops
  • Apply loops to solve repetitive tasks

Key Concepts:

  • Function: Reusable block of code that performs a specific task
  • Parameters: Input values passed to functions
  • Return Value: Output value from a function
  • For Loop: Repeats code a specific number of times
  • While Loop: Repeats code while a condition is true
  • Range Function: Generates sequences of numbers
  • Iteration: Each repetition of a loop
  • Loop Control: Managing when loops start and stop

Function Examples:

# Simple function with no parameters
def greet():
    print("Hello, World!")

# Function with parameters
def greet_person(name, age):
    print(f"Hello, {name}! You are {age} years old.")

# Function with return value
def calculate_area(length, width):
    area = length * width
    return area

# Using functions
greet()
greet_person("Alice", 16)
room_area = calculate_area(10, 12)
print(f"Room area: {room_area} square meters")

Loop Examples:

# For loop with range
for i in range(5):
    print(f"Count: {i}")

# For loop with list
fruits = ["apple", "banana", "orange"]
for fruit in fruits:
    print(f"I like {fruit}")

# While loop
count = 0
while count < 3:
    print(f"While loop count: {count}")
    count += 1

Week 3: Using Python Libraries

Learning Objectives:

  • Understand what Python libraries are and why they’re useful
  • Learn to import and use common libraries
  • Work with GPIOZero and time libraries
  • Explore library documentation and help systems

Key Concepts:

  • Library/Module: Pre-written code that adds functionality
  • Import Statement: Bringing library functions into your program
  • GPIOZero: Library for controlling Raspberry Pi GPIO pins
  • Time Library: Functions for working with time and delays
  • Documentation: Instructions for using library functions
  • API: Application Programming Interface - how to use library functions

Library Usage Examples:

# Importing entire modules
import time
import math

# Importing specific functions
from gpiozero import LED, Button
from time import sleep

# Using time library
print("Starting program...")
time.sleep(2)  # Wait 2 seconds
print("2 seconds have passed!")

# Using math library
import math
radius = 5
area = math.pi * radius ** 2
print(f"Circle area: {area:.2f}")

# Using GPIOZero (for Raspberry Pi)
led = LED(18)  # LED connected to GPIO pin 18
button = Button(2)  # Button connected to GPIO pin 2

# Turn LED on and off
led.on()
sleep(1)
led.off()

Week 4: Controlling Motors with Python

Learning Objectives:

  • Understand how to interface with motors using Python
  • Learn about PWM (Pulse Width Modulation) for motor control
  • Control motor speed and direction
  • Implement safety features in motor control code

Key Concepts:

  • Motor Control: Using code to make motors move
  • PWM (Pulse Width Modulation): Method to control motor speed
  • Duty Cycle: Percentage of time signal is “on” vs “off”
  • Direction Control: Making motors spin clockwise/counterclockwise
  • Motor Driver: Electronics that interface between Python and motors
  • Safety Features: Code to prevent motor damage

Motor Control Examples:

from gpiozero import Motor, PWMOutputDevice
from time import sleep

# Create motor object (assuming H-bridge motor driver)
motor = Motor(forward=2, backward=3, enable=18)

# Basic motor control
def basic_motor_test():
    print("Motor forward at full speed")
    motor.forward(1.0)  # Full speed forward
    sleep(2)

    print("Motor forward at half speed")
    motor.forward(0.5)  # Half speed forward
    sleep(2)

    print("Motor stopped")
    motor.stop()
    sleep(1)

    print("Motor backward at full speed")
    motor.backward(1.0)  # Full speed backward
    sleep(2)

    motor.stop()
    print("Motor test complete")

# PWM speed control example
def speed_ramp_test():
    print("Ramping motor speed up...")
    for speed in range(0, 101, 10):  # 0 to 100% in 10% steps
        motor_speed = speed / 100.0
        motor.forward(motor_speed)
        print(f"Speed: {speed}%")
        sleep(0.5)

    motor.stop()
    print("Speed ramp complete")

# Run the tests
basic_motor_test()
sleep(2)
speed_ramp_test()

Week 5: Controlling Sensors with Python

Learning Objectives:

  • Interface with various sensors using Python
  • Read and process sensor data
  • Implement sensor-based decision making
  • Create responsive programs based on sensor input

Key Concepts:

  • Sensor: Device that detects and measures physical properties
  • Analog vs Digital: Different types of sensor signals
  • ADC (Analog-to-Digital Converter): Converts analog signals to digital
  • Sensor Calibration: Adjusting sensor readings for accuracy
  • Data Processing: Converting raw sensor data to useful information
  • Polling vs Interrupts: Different ways to read sensor data

Common Sensors:

  • Temperature sensors: Measure environmental temperature
  • Light sensors (LDR): Detect light intensity
  • Ultrasonic sensors: Measure distance using sound waves
  • Motion sensors (PIR): Detect movement
  • Pressure sensors: Measure force or pressure

Sensor Control Examples:

from gpiozero import MCP3008, DistanceSensor, MotionSensor, LED
from time import sleep
import statistics

# Temperature sensor (using analog input)
temp_sensor = MCP3008(channel=0)

def read_temperature():
    # Convert voltage to temperature (example conversion)
    voltage = temp_sensor.voltage
    temperature_c = (voltage - 0.5) * 100  # Example conversion formula
    temperature_f = (temperature_c * 9/5) + 32
    return temperature_c, temperature_f

# Distance sensor (ultrasonic)
distance_sensor = DistanceSensor(echo=24, trigger=23)

def monitor_distance():
    print("Distance monitoring (press Ctrl+C to stop)")
    try:
        while True:
            distance = distance_sensor.distance * 100  # Convert to cm
            print(f"Distance: {distance:.1f} cm")

            if distance < 10:
                print("WARNING: Object too close!")

            sleep(0.5)
    except KeyboardInterrupt:
        print("Distance monitoring stopped")

# Motion sensor with LED indicator
motion = MotionSensor(4)
alert_led = LED(18)

def motion_detector():
    print("Motion detector active...")

    def motion_detected():
        print("Motion detected!")
        alert_led.on()
        sleep(2)
        alert_led.off()

    def no_motion():
        print("No motion")
        alert_led.off()

    # Set up motion sensor callbacks
    motion.when_motion = motion_detected
    motion.when_no_motion = no_motion

    # Keep program running
    try:
        while True:
            sleep(0.1)
    except KeyboardInterrupt:
        print("Motion detector stopped")

# Data logging example
def log_sensor_data():
    readings = []
    print("Collecting sensor data for 30 seconds...")

    start_time = time.time()
    while time.time() - start_time < 30:
        temp_c, temp_f = read_temperature()
        distance = distance_sensor.distance * 100

        readings.append({
            'timestamp': time.time(),
            'temperature_c': temp_c,
            'temperature_f': temp_f,
            'distance_cm': distance
        })

        print(f"Temp: {temp_c:.1f}°C, Distance: {distance:.1f}cm")
        sleep(1)

    # Calculate statistics
    temps = [r['temperature_c'] for r in readings]
    distances = [r['distance_cm'] for r in readings]

    print(f"\nData Summary:")
    print(f"Average temperature: {statistics.mean(temps):.1f}°C")
    print(f"Min/Max temperature: {min(temps):.1f}°C / {max(temps):.1f}°C")
    print(f"Average distance: {statistics.mean(distances):.1f}cm")
    print(f"Min/Max distance: {min(distances):.1f}cm / {max(distances):.1f}cm")

# Example usage
if __name__ == "__main__":
    # Run different examples
    monitor_distance()  # Uncomment to run distance monitoring
    # motion_detector()  # Uncomment to run motion detection
    # log_sensor_data()  # Uncomment to run data logging

Assessment Test - Grade 10-12 (14-16 Years)

Week 1-2 Assessment: Python Fundamentals

Format: Coding Assignment + Written Questions (60 minutes)

Part A: Code Structure and Syntax (25 points)

  1. Fix the following code and explain what was wrong (10 points):
# Broken code:
def calculate average(num1, num2, num3)
average = num1 + num2 + num3 / 3
print("The average is" + average)
return average

calculate average(10, 20, 30)

Your corrected code:

# Write corrected version here

Explanation of errors: ________________________________

  1. Write a well-structured Python program (15 points): Create a program that:
  • Has proper header comments
  • Uses appropriate variable names
  • Calculates the area of different shapes (circle, rectangle, triangle)
  • Uses functions with parameters and return values
  • Follows proper indentation and formatting

Part B: Functions and Loops (30 points)

  1. Write a function called print_multiplication_table (15 points):
  • Takes one parameter: number
  • Prints multiplication table for that number (1-10)
  • Uses a for loop
  • Example output for print_multiplication_table(3):
3 x 1 = 3
3 x 2 = 6
3 x 3 = 9
... etc
  1. Password Checker Program (15 points): Write a program using while loop that:
  • Asks user to enter a password
  • Keeps asking until they enter “python123”
  • Counts number of attempts
  • Prints “Access granted” when correct
  • Prints number of attempts it took

Week 3-5 Assessment: Libraries and Hardware Control

Format: Practical Coding Project (75 minutes)

Part A: Library Usage (20 points)

  1. Complete this sensor reading program (20 points):
from gpiozero import MCP3008
from time import sleep
import ______  # What library do you need for calculating average?

# Create sensor object
light_sensor = MCP3008(channel=0)

def read_light_levels():
    readings = []

    # Collect 10 readings
    for i in range(______):  # Fill in the range
        reading = light_sensor.______  # What property gives the reading?
        readings.append(reading)
        print(f"Reading {i+1}: {reading:.3f}")
        sleep(0.5)

    # Calculate and print statistics
    average = ______.mean(readings)  # Which function calculates mean?
    maximum = ______(readings)  # Built-in function for maximum
    minimum = ______(readings)  # Built-in function for minimum

    print(f"Average: {average:.3f}")
    print(f"Maximum: {maximum:.3f}")
    print(f"Minimum: {minimum:.3f}")

# Call the function
read_light_levels()

Part B: Motor Control Project (25 points)

  1. Smart Fan Controller (25 points): Write a program that simulates a smart fan controller:
  • Use a temperature sensor to read room temperature
  • Control a motor (fan) based on temperature:
    • Below 20°C: Fan off
    • 20-25°C: Fan at 30% speed
    • 25-30°C: Fan at 60% speed
    • Above 30°C: Fan at 100% speed
  • Print current temperature and fan speed every 2 seconds
  • Include safety features (motor stop function)

Part C: Sensor Integration Challenge (30 points)

  1. Security System Prototype (30 points): Create a basic security system that:
  • Uses a motion sensor to detect movement
  • Uses a distance sensor to detect objects too close
  • Controls LEDs to indicate system status:
    • Green LED: System normal
    • Yellow LED: Motion detected
    • Red LED: Intrusion alert (object < 20cm)
  • Logs events with timestamps
  • Runs continuously until user presses Ctrl+C

Requirements:

  • Use at least 3 different libraries
  • Include proper error handling
  • Use functions to organize code
  • Add meaningful comments
  • Follow Python coding best practices

Sample code structure:

from gpiozero import MotionSensor, DistanceSensor, LED
from time import sleep
import time

# Hardware setup
motion = MotionSensor(4)
distance = DistanceSensor(echo=24, trigger=23)
green_led = LED(18)
yellow_led = LED(19)
red_led = LED(20)

def log_event(message):
    # Write function to log events with timestamp
    pass

def check_security():
    # Write function to check all sensors and control LEDs
    pass

def main():
    # Write main program loop
    pass

if __name__ == "__main__":
    main()

Assessment Rubric:

  • Exceptional (95-100%): Code runs flawlessly, excellent structure, creative additions, comprehensive error handling
  • Proficient (85-94%): Code works correctly, good structure, meets all requirements, minor improvements possible
  • Developing (75-84%): Code mostly works, basic structure present, meets most requirements, some bugs or missing features
  • Beginning (65-74%): Code has significant issues, poor structure, missing major requirements
  • Incomplete (Below 65%): Code doesn’t run or major portions missing

Additional Resources and Extensions

For All Grade Levels:

Vocabulary Glossary:

  • Algorithm: Step-by-step instructions to solve a problem
  • Bug: Error in code that prevents it from working correctly
  • Debug: Process of finding and fixing errors in code
  • Hardware: Physical components of computer systems
  • Software: Programs and applications that run on hardware
  • Interface: Way users interact with programs or devices
  • Sensor: Device that detects changes in environment
  • Actuator: Device that causes movement or action

Project Portfolio Suggestions:

  1. Weekly Reflection Journal: Students document learning and challenges
  2. Photo Documentation: Pictures of projects and experiments
  3. Video Demonstrations: Students explain their projects
  4. Peer Teaching: Advanced students help beginners
  5. Innovation Challenges: Open-ended problems to solve creatively

Cross-Curricular Connections:

  • Math: Geometry in robotics, statistics in data analysis
  • Science: Physics of flight, electronics principles
  • Art: Creative programming projects, design thinking
  • Social Studies: Impact of technology on society
  • Language Arts: Technical writing, documentation skills

Safety Reminders:

  • Always supervise young children with electronic components
  • Check battery connections before powering devices
  • Keep work area clean and organized
  • Wash hands after handling electronic components
  • Report any damaged equipment immediately
  • Follow proper shutdown procedures for all devices

Assessment Portfolio Checklist:

  • Completed weekly assessments
  • Project documentation with photos
  • Reflection essays on learning progress
  • Peer evaluation forms
  • Self-assessment rubrics
  • Evidence of problem-solving process
  • Creative extensions or improvements to basic projects

Continuation - Weeks 6-8 for All Grade Levels


Preschoolers (4-6 Years) - Weeks 6-8

Advanced STEM Exploration & Technology Awareness

Week 6: Technology Parts Awareness

Learning Objectives:

  • Use coding to tell stories, solve challenges, or navigate mazes
  • Recognize and follow simple algorithms using direction or action cards
  • Physically be able to follow code on floor grids
  • Build confidence and persistence through trial-and-error learning

Key Concepts:

  • Technology Components: Basic parts that make devices work
  • Circuits: Paths that electricity follows
  • Assembly/Disassembly: Taking apart and putting together
  • Electronics Safety: Safe handling of batteries and components
  • Problem-Solving: Trying different solutions when something doesn’t work

Activities:

  • Technology Exploration: Examine old keyboards, phones, calculators
  • Simple Circuits: Connect bulbs to batteries with safe materials
  • Assembly Practice: Take apart and reassemble simple toys
  • Tech Parts Sorting: Group similar technology components

Materials: Old keyboards, phones, calculators, batteries, bulbs for circuits, safe connectors

Week 7: Sequencing & Floor Grid Coding

Learning Objectives:

  • Develop understanding of sequencing by arranging steps in correct order
  • Recognize and follow simple algorithms using direction or action cards
  • Physically follow code on floor grids
  • Build confidence through trial-and-error learning

Key Concepts:

  • Sequencing: Putting steps in the right order
  • Algorithm Cards: Visual instructions to follow
  • Floor Grid Coding: Moving through spaces following directions
  • Left/Right/Forward/Back: Basic directional concepts
  • Trial and Error: Learning by trying and improving

Activities:

  • Obstacle Course Coding: Navigate through simple obstacles using arrow cards
  • Sequencing Games: Put daily routine cards in correct order
  • Paper Maze Coding: Use arrows to show path through printed mazes
  • Robot Friend: One child gives directions, another follows like a robot

Materials: Coding arrows/direction cards, floor grid mats, toys for navigation, printed maze worksheets

Week 8: Advanced Unplugged Coding & Storytelling

Learning Objectives:

  • Use coding to tell stories, solve challenges, or navigate mazes
  • Recognize and follow simple algorithms using direction or action cards
  • Physically follow code on floor grids
  • Build confidence and persistence through trial-and-error learning

Key Concepts:

  • Conditional Logic: IF/THEN thinking (“If you see red, then stop”)
  • Debugging: Finding and fixing mistakes in directions
  • Block Building: Using physical blocks to represent code
  • Story Algorithms: Step-by-step instructions for telling stories

Activities:

  • Debug the Path: Present incorrect direction sequences for children to fix
  • IF/THEN Games: “If you see a triangle, then clap your hands”
  • Story Coding: Use picture cards to create step-by-step stories
  • Block Code Building: Stack blocks to represent programming sequences

Materials: Building blocks, floor grid mats, toys, printed materials, picture cards for storytelling


Preschoolers Assessment - Weeks 6-8

Week 6 Assessment: Technology Awareness

Format: Hands-on Exploration + Observation (20 minutes)

  1. Technology Parts Recognition (10 points)
  • Point to and name 3 technology items from the collection
  • Show how a simple circuit works (bulb + battery)
  • Safely handle electronic components
  • Explain one thing each item helps us do
  1. Assembly Skills (10 points)
  • Take apart a simple toy or device
  • Put it back together correctly
  • Identify which parts go where
  • Ask for help when needed

Assessment Criteria:

  • Mastery (3): Handles all materials safely, explains purposes, completes tasks independently
  • Developing (2): Safe handling, completes most tasks with minimal help
  • Emerging (1): Needs guidance but participates actively
  • Beginning (0): Requires extensive support

Week 7-8 Assessment: Advanced Unplugged Coding

Format: Physical Coding Challenges (25 minutes)

  1. Sequencing Challenge (12 points)
  • Arrange 6 direction cards to navigate through obstacle course
  • Explain why each step comes in that order
  • Successfully complete the physical navigation
  • Fix mistakes when path doesn’t work
  1. IF/THEN Logic (8 points)
  • Follow conditional instructions: “IF you see blue, THEN hop”
  • Create own IF/THEN rule for a friend to follow
  • Demonstrate understanding with actions
  1. Story Algorithm (10 points)
  • Use 5 picture cards to create logical story sequence
  • Tell story following the card order
  • Explain what happens if cards are mixed up
  • Help fix a mixed-up story sequence

Practical Skills Rubric:

  • Advanced (25-30 points): Creates original sequences, helps others, shows deep understanding
  • Proficient (20-24 points): Completes all challenges correctly with minor guidance
  • Developing (15-19 points): Understands concepts but needs support for complex tasks
  • Beginning (Below 15 points): Requires significant help to participate

Grade 2-5 (7-11 Years) - Weeks 6-8

Advanced Scratch Programming & Game Development

Week 6: Game Structure and Design

Learning Objectives:

  • Understand basic game structure (start, play, end)
  • Use Scratch blocks to move characters and detect collisions
  • Make characters move between different scenes
  • Create scoring or win conditions

Key Concepts:

  • Game Design Elements: Characters, backgrounds, objectives, rules
  • Game Loop: Continuous cycle of input, processing, output
  • Collision Detection: Knowing when sprites touch each other
  • Scene Transitions: Moving between different game screens
  • Win/Lose Conditions: Rules that determine game outcomes
  • User Interface: Buttons, scores, and information displays

Advanced Scratch Concepts:

  • Sensing Blocks: “touching color”, “distance to”, “key pressed”
  • Variables: Storing score, lives, or time
  • Broadcast Messages: Communication between sprites
  • Clone Sprites: Creating multiple copies of objects
  • Custom Blocks: Making your own programming blocks

Game Development Process:

  1. Planning Phase: Sketch game idea, list needed sprites and backgrounds
  2. Prototype: Create basic movement and interaction
  3. Enhancement: Add sounds, effects, and polish
  4. Testing: Play game and fix bugs
  5. Sharing: Present to classmates

Example Game Structure:

When green flag clicked
Set score to 0
Set lives to 3
Say "Game Starting!" for 2 seconds
Show sprite
Forever:
    If key space pressed:
        Move player sprite
    If touching enemy:
        Change lives by -1
        If lives = 0:
            Say "Game Over!"
            Stop all

Week 7: Transition to Text-Based Concepts

Learning Objectives:

  • Prepare learners for text-based coding
  • Understand basic programming concepts using blocks
  • Use logic and loops to control sprite or robot actions
  • Begin transition to robotics or advanced coding platforms

Key Concepts:

  • Programming Fundamentals: Sequence, selection, iteration
  • Logic Blocks: IF/ELSE statements in visual form
  • Loop Types: Forever, repeat until, repeat X times
  • Variables and Operations: Math in programming
  • Event-Driven Programming: Responding to user input
  • Modular Programming: Breaking code into smaller parts

Bridging Visual to Text:

  • Block-to-Code Thinking: Understanding what blocks represent
  • Pseudocode: Writing steps in plain English before coding
  • Debugging Strategies: Systematic problem-solving approaches
  • Code Organization: Keeping projects neat and logical

Advanced Programming Patterns:

// Pattern 1: State Machine
When green flag clicked
Set game state to "menu"
Forever:
    If game state = "menu":
        Show menu options
    If game state = "playing":
        Run game logic
    If game state = "game over":
        Show final score

// Pattern 2: Object Behavior
When I start as a clone:
    Go to random position
    Forever:
        Move 2 steps
        If on edge, bounce
        If touching player:
            Change score by 10
            Delete this clone

Week 8: Blockly Integration and Logic Puzzles

Learning Objectives:

  • Solve logic puzzles using visual programming concepts
  • Create games using Blockly platform
  • Demonstrate understanding of programming fundamentals
  • Apply creative problem-solving skills

Key Concepts:

  • Blockly Platform: Google’s visual programming language
  • Logic Puzzles: Problems requiring systematic thinking
  • Algorithm Efficiency: Finding the best solution method
  • Pattern Recognition: Identifying repeated solutions
  • Creative Programming: Using code for artistic expression

Blockly vs. Scratch Comparison:

FeatureScratchBlockly
FocusStorytelling & GamesLogic & Algorithms
InterfaceStage-basedPuzzle-based
OutputAnimated ProjectsProblem Solutions
ProgressionCreative ExpressionMathematical Thinking

Logic Puzzle Types:

  1. Maze Solving: Navigate through obstacles
  2. Pattern Completion: Fill in missing sequences
  3. Conditional Logic: IF/THEN decision making
  4. Loop Optimization: Repeat actions efficiently

Grade 2-5 Assessment - Weeks 6-8

Week 6 Assessment: Game Development Project

Format: Scratch Game Creation + Presentation (45 minutes)

Part A: Game Planning (10 points)

  1. Game Design Document - Create a simple plan including:
  • Game objective (what’s the goal?)
  • Main character description
  • Basic rules (how do you win/lose?)
  • Required sprites and backgrounds
  1. Storyboard - Draw 3 screens showing:
  • Game start screen
  • Main gameplay
  • Win/lose screen

Part B: Game Implementation (25 points) 3. Core Functionality (15 points):

  • Character moves with arrow keys or WASD

  • At least one interactive element (enemy, collectible, obstacle)

  • Basic collision detection (touching = something happens)

  • Clear win or lose condition

  1. Polish and Enhancement (10 points):
  • Sound effects or music
  • Visual feedback (score, lives, timer)
  • Smooth sprite movement
  • Creative backgrounds or costumes

Part C: Presentation and Reflection (15 points) 5. Game Demo (10 points):

  • Explain game rules clearly

  • Demonstrate gameplay for 2 minutes

  • Show different game scenarios

  • Handle questions from classmates

  1. Technical Reflection (5 points):
  • Explain one challenging problem you solved
  • Describe one improvement you would make
  • Share one new Scratch skill you learned

Week 7-8 Assessment: Programming Concepts Mastery

Format: Mixed Assessment - Blockly Challenges + Scratch Review (50 minutes)

Part A: Blockly Logic Challenges (20 points)

  1. Maze Navigation (8 points):
  • Complete 3 increasingly difficult maze puzzles
  • Use efficient solutions (minimal blocks)
  • Demonstrate understanding of loops and conditionals
  1. Pattern Recognition (6 points):
  • Solve sequence completion puzzles
  • Identify and extend number/color patterns
  • Create original pattern for others to solve
  1. Logic Puzzles (6 points):
  • Complete IF/THEN decision trees
  • Solve multi-step conditional problems
  • Optimize solutions for clarity

Part B: Concept Transfer (15 points) 4. Visual to Text Translation (10 points): Given this Scratch code block arrangement:

[When flag clicked] → [Forever] → [If touching mouse] → [Move 10 steps]

Write in pseudocode (plain English): “When the program starts, ________________”

  1. Problem Decomposition (5 points): Break down this challenge into steps: “Create a sprite that follows the mouse but stops when it touches the edge”

Step 1: _______________ Step 2: _______________ Step 3: _______________ Step 4: _______________

Part C: Creative Application (15 points) 6. Original Algorithm (15 points): Choose ONE to complete:

Option A - Scratch: Create a “digital pet” that:

  • Follows mouse cursor
  • Changes expression when clicked
  • Makes sound when hungry (timer-based)
  • Has at least 3 different costumes

Option B - Blockly: Design a solution for:

  • Robot that sorts colored objects
  • Path that avoids all obstacles
  • Pattern that creates art using loops

Assessment Rubric:

  • Expert (90-100%): Exceeds requirements with creative solutions and clear explanations
  • Proficient (80-89%): Meets all requirements with good understanding demonstrated
  • Developing (70-79%): Meets most requirements but may have gaps in complex concepts
  • Novice (60-69%): Shows basic understanding but struggles with application
  • Beginning (Below 60%): Needs significant support to demonstrate concepts

Grade 6-9 (11-14 Years) - Weeks 6-8

Drone Laws, Emergency Procedures & Practical Flying

Week 6: Drone Laws and Regulations (Kenya Focus)

Learning Objectives:

  • Learn basic drone laws in Kenya (KCAA regulations)
  • Understand where and how children can fly drones legally
  • Develop awareness of responsible drone operation
  • Understand the importance of aviation safety

Key Concepts:

  • Kenya Civil Aviation Authority (KCAA): National aviation regulator
  • Drone Registration: Required identification and documentation
  • No-Fly Zones: Airports, government buildings, restricted areas
  • Altitude Restrictions: Maximum height limitations
  • Visual Line of Sight (VLOS): Maintaining visual contact
  • Privacy Laws: Respecting others’ rights and property

Kenya Drone Regulations Summary:

  1. Registration Requirements:
  • All drones over 250g must be registered with KCAA
  • Operator license required for commercial operations
  • Age restrictions for different categories of operation
  1. Operational Limits:
  • Maximum altitude: 400 feet (120 meters) AGL
  • Minimum distance from airports: 8km for major airports
  • No flying over crowds or public events
  • Daylight operations only (without special permits)
  1. Prohibited Areas:
  • Within 5km of any airport
  • Over government buildings and installations
  • National parks without permits
  • Private property without permission

Safety and Legal Guidelines for Young Pilots:

  • Always have adult supervision
  • Start with toy drones under 250g
  • Practice in open, safe areas
  • Respect others’ privacy and property
  • Learn emergency procedures
  • Keep drone in sight at all times

Week 7: Emergency Procedures and Responsible Flying

Learning Objectives:

  • Review key safety and legal concepts from previous weeks
  • Understand emergency basics for beginner flyers
  • Develop decision-making skills for unexpected situations
  • Practice responsible pilot behavior

Key Concepts:

  • Emergency Procedures: Systematic responses to problems
  • Risk Assessment: Evaluating dangers before flying
  • Decision Making: Choosing appropriate actions under pressure
  • Communication: Alerting others during emergencies
  • Equipment Failure: What to do when drone malfunctions
  • Weather Awareness: Recognizing dangerous conditions

Emergency Scenarios and Responses:

  1. Lost Communication with Drone:
  • Stay calm and observe drone behavior
  • Activate Return-to-Home (RTH) function if available
  • Move to higher ground for better signal
  • Prepare for manual landing if signal returns
  • Never chase after a flyaway drone
  1. Low Battery Warning:
  • Immediately begin landing sequence
  • Choose nearest safe landing spot
  • Avoid flying over people or property
  • Land even if not at original takeoff point
  • Safety is more important than convenience
  1. Unexpected Weather Changes:
  • Monitor weather conditions constantly
  • Land immediately if wind increases
  • Avoid flying in rain or snow
  • Watch for sudden temperature changes
  • When in doubt, don’t fly
  1. Equipment Malfunction:
  • Attempt controlled landing immediately
  • Don’t try to fix problems while airborne
  • Inform other people in the area
  • Document the problem for later analysis
  • Never continue flying with known issues

Mission Planning Process:

  1. Pre-flight Planning: Weather check, equipment inspection, route planning
  2. Risk Assessment: Identify potential hazards and mitigation strategies
  3. Communication Plan: Inform others of flight activities
  4. Emergency Procedures: Know what to do if things go wrong
  5. Post-flight Review: Analyze what went well and areas for improvement

Week 8: Practical Flying Skills and Team Challenges

Learning Objectives:

  • Demonstrate ability to control a mini drone (takeoff, hover, land)
  • Apply basic flight skills in problem-solving mission scenarios
  • Work as a team to complete drone-based challenges
  • Evaluate personal progress and set goals for improvement

Key Concepts:

  • Flight Control Mastery: Smooth, precise drone movements
  • Situational Awareness: Understanding surroundings during flight
  • Mission Planning: Preparing for specific flight objectives
  • Teamwork: Collaborative problem-solving with drones
  • Performance Evaluation: Self-assessment and peer feedback
  • Safety Leadership: Taking responsibility for safe operations

Basic Flight Skills Progression:

  1. Fundamental Controls:
  • Smooth takeoff to hover
  • Maintaining steady hover
  • Controlled landing
  • Forward/backward movement
  • Left/right movement
  • Rotation control
  1. Intermediate Maneuvers:
  • Figure-8 patterns
  • Precision landing on target
  • Obstacle avoidance
  • Following predetermined paths
  • Coordinated movements
  1. Advanced Challenges:
  • Team relay races
  • Rescue simulations
  • Precision delivery tasks
  • Group choreography
  • Time-based challenges

Mission Scenarios:

Mission 1: Search and Rescue

  • Objective: Locate “missing person” (target) in designated area
  • Skills: Systematic search patterns, communication, observation
  • Time limit: 5 minutes
  • Success criteria: Target identified and location communicated

Mission 2: Delivery Challenge

  • Objective: Transport small payload from Point A to Point B
  • Skills: Precision flying, cargo management, safe landing
  • Obstacles: Wind conditions, landing accuracy requirements
  • Success criteria: Payload delivered undamaged within time limit

Mission 3: Team Coordination

  • Objective: Multiple drones work together to complete complex task
  • Skills: Communication, timing, spatial awareness
  • Challenge: Choreographed flight pattern or group problem-solving
  • Success criteria: All drones complete task without collisions

Safety Protocols for Practical Flying:

  • Always maintain 10-foot safety zone around flying area
  • Designate specific roles: pilot, observer, safety officer
  • Use hand signals for communication during loud operations
  • Practice emergency landing procedures before each session
  • Rotate roles so everyone experiences different responsibilities

Grade 6-9 Assessment - Weeks 6-8

Week 6 Assessment: Drone Laws and Regulations

Format: Written Test + Legal Scenario Analysis (40 minutes)

Part A: Kenya Aviation Law Knowledge (25 points)

  1. KCAA Regulations (10 points) Fill in the blanks:
  • Drones over ______ grams must be registered with KCAA
  • Maximum altitude for recreational flying is ______ feet
  • Minimum distance from major airports is ______ kilometers
  • Commercial drone operations require a ______ license
  • Drones must remain within ______ line of sight
  1. No-Fly Zone Identification (10 points) Mark TRUE or FALSE for each flying location:
  • Your school playground during lunch break: ______
  • Open field 2km from Wilson Airport: ______
  • Your backyard with adult supervision: ______
  • Uhuru Park during a public event: ______
  • Private farm with owner’s permission: ______
  1. Legal Compliance (5 points) List 3 requirements for legally flying a drone in Kenya:



Part B: Scenario-Based Decision Making (20 points)

  1. Legal Scenarios (20 points) For each scenario, explain if the action is legal and why:

Scenario A: Sarah wants to fly her 300g drone over her neighbor’s house to take photos of her own backyard. Legal? _____ Why? _______________________________

Scenario B: James plans to fly his registered drone at 200 feet altitude in an open field 10km from any airport during daylight hours. Legal? _____ Why? _______________________________

Scenario C: A group of students want to use their drone for a school project, filming the school building from 100 feet up. Legal? _____ Why? _______________________________

Scenario D: Ahmed wants to fly his 150g toy drone in his compound for 10 minutes. Legal? _____ Why? _______________________________

Part C: Responsible Pilot Planning (15 points)

  1. Pre-flight Checklist (15 points) Create a 10-item pre-flight checklist that includes legal, safety, and equipment considerations:




[Continue through 10]

Week 7-8 Assessment: Emergency Procedures and Practical Skills

Format: Practical Flight Test + Emergency Response Simulation (60 minutes)

Part A: Emergency Response Knowledge (20 points)

  1. Emergency Procedures (15 points) Describe the correct response for each emergency:

Low Battery Warning: Step 1: _______________________________ Step 2: _______________________________ Step 3: _______________________________

Lost Radio Contact: Step 1: _______________________________ Step 2: _______________________________ Step 3: _______________________________

Sudden Weather Change: Step 1: _______________________________ Step 2: _______________________________ Step 3: _______________________________

  1. Risk Assessment (5 points) Identify 3 risks for flying in each environment:
  • School playground: ____________, ____________, ____________
  • Open field: ____________, ____________, ____________

Part B: Practical Flight Skills Assessment (30 points)

  1. Basic Flight Controls (15 points) Demonstrate competency in:
  • Smooth takeoff and landing (3 points)
  • Stable hovering for 30 seconds (3 points)
  • Forward/backward precision movement (3 points)
  • Left/right precision movement (3 points)
  • Controlled rotation (3 points)
  1. Mission Challenge (15 points) Complete ONE of the following missions:

Option A - Navigation Course:

  • Fly through 5 waypoints in sequence
  • Land within 1-meter target circle
  • Complete within 3 minutes

Option B - Team Coordination:

  • Work with partner to complete relay challenge
  • Communicate effectively during handoff
  • Maintain safety throughout mission

Part C: Leadership and Safety Evaluation (15 points)

  1. Safety Leadership (8 points) While others are flying, demonstrate:
  • Proper safety zone maintenance
  • Clear communication with pilot
  • Appropriate responses to unsafe situations
  • Helpful coaching and encouragement
  1. Self-Assessment and Goal Setting (7 points) Written reflection:
  • What flight skill are you most confident with? Why?
  • What area needs the most improvement?
  • Set one specific goal for future drone flying
  • Describe one way you can help others fly safely

Practical Skills Rubric:

  • Expert Pilot (90-100%): Demonstrates advanced skills, teaches others, shows exceptional safety awareness
  • Competent Pilot (80-89%): Performs all basic skills reliably, follows safety protocols consistently
  • Developing Pilot (70-79%): Shows improvement in most areas, occasional guidance needed
  • Novice Pilot (60-69%): Basic skills present but inconsistent, needs continued practice
  • Beginning Pilot (Below 60%): Requires significant instruction and supervision

Grade 10-12 (14-16 Years) - Weeks 6-8

Advanced Python Projects & Integration

Week 6-7: Integrated Systems Project (Combined Weeks)

Learning Objectives:

  • Combine motors and sensors in complex systems
  • Debug integrated hardware/software systems
  • Apply creative problem-solving to real-world challenges
  • Document projects professionally

Key Concepts:

  • Systems Integration: Combining multiple components into unified solutions
  • Hardware-Software Interface: Code that bridges digital and physical worlds
  • System Architecture: Planning complex projects with multiple subsystems
  • Error Handling: Managing failures gracefully in complex systems
  • Performance Optimization: Making systems run efficiently
  • Documentation Standards: Professional project recording

Advanced Integration Concepts:

1. Multi-Sensor Fusion

import threading
import queue
from gpiozero import DistanceSensor, MotionSensor, MCP3008
from time import sleep
import json

class SensorFusion:
    def __init__(self):
        self.distance_sensor = DistanceSensor(echo=24, trigger=23)
        self.motion_sensor = MotionSensor(4)
        self.light_sensor = MCP3008(channel=0)
        self.temp_sensor = MCP3008(channel=1)

        # Data queues for thread communication
        self.sensor_data = queue.Queue()
        self.running = False

    def read_sensors(self):
        """Continuous sensor reading in separate thread"""
        while self.running:
            try:
                data = {
                    'timestamp': time.time(),
                    'distance': self.distance_sensor.distance * 100,
                    'motion': self.motion_sensor.motion_detected,
                    'light_level': self.light_sensor.voltage,
                    'temperature': self.convert_temp(self.temp_sensor.voltage)
                }
                self.sensor_data.put(data)
                sleep(0.1)  # 10Hz sampling rate
            except Exception as e:
                print(f"Sensor reading error: {e}")

    def convert_temp(self, voltage):
        """Convert sensor voltage to temperature"""
        return (voltage - 0.5) * 100  # Example conversion

    def start_monitoring(self):
        """Start sensor monitoring thread"""
        self.running = True
        self.sensor_thread = threading.Thread(target=self.read_sensors)
        self.sensor_thread.start()

    def stop_monitoring(self):
        """Stop sensor monitoring"""
        self.running = False
        if hasattr(self, 'sensor_thread'):
            self.sensor_thread.join()

2. Intelligent Control Systems

class SmartEnvironmentController:
    def __init__(self):
        self.sensors = SensorFusion()
        self.fan_motor = Motor(forward=2, backward=3)
        self.heater_relay = OutputDevice(18)
        self.lights = PWMOutputDevice(19)

        # Control parameters
        self.target_temp = 22.0  # Target temperature in Celsius
        self.temp_tolerance = 1.0
        self.light_threshold = 0.3

        # Control state
        self.auto_mode = True
        self.manual_override = False

    def analyze_environment(self, sensor_data):
        """Intelligent decision making based on sensor data"""
        decisions = {
            'fan_speed': 0.0,
            'heater_on': False,
            'light_level': 0.0,
            'alert_status': 'normal'
        }

        # Temperature control logic
        temp_diff = sensor_data['temperature'] - self.target_temp

        if temp_diff > self.temp_tolerance:  # Too hot
            decisions['fan_speed'] = min(1.0, temp_diff / 5.0)  # Scale fan speed
            decisions['heater_on'] = False
        elif temp_diff < -self.temp_tolerance:  # Too cold
            decisions['fan_speed'] = 0.0
            decisions['heater_on'] = True

        # Light control logic
        if sensor_data['light_level'] < self.light_threshold:
            decisions['light_level'] = 1.0 - sensor_data['light_level']  # Complement lighting

        # Security monitoring
        if sensor_data['motion'] and sensor_data['distance'] < 20:  # Close motion
            decisions['alert_status'] = 'intrusion_detected'
        elif sensor_data['distance'] < 5:  # Very close object
            decisions['alert_status'] = 'obstacle_warning'

        return decisions

    def execute_controls(self, decisions):
        """Execute control decisions"""
        if not self.manual_override:
            # Motor control
            if decisions['fan_speed'] > 0:
                self.fan_motor.forward(decisions['fan_speed'])
            else:
                self.fan_motor.stop()

            # Heater control
            if decisions['heater_on']:
                self.heater_relay.on()
            else:
                self.heater_relay.off()

            # Light control
            self.lights.value = decisions['light_level']

    def run_control_loop(self):
        """Main control loop"""
        self.sensors.start_monitoring()

        try:
            while True:
                if not self.sensors.sensor_data.empty():
                    current_data = self.sensors.sensor_data.get()
                    decisions = self.analyze_environment(current_data)
                    self.execute_controls(decisions)

                    # Log system status
                    self.log_system_status(current_data, decisions)

                sleep(0.5)  # Control loop frequency

        except KeyboardInterrupt:
            print("Shutting down control system...")
        finally:
            self.sensors.stop_monitoring()
            self.fan_motor.stop()
            self.heater_relay.off()
            self.lights.off()

    def log_system_status(self, sensor_data, decisions):
        """Log system performance data"""
        log_entry = {
            'timestamp': sensor_data['timestamp'],
            'sensors': sensor_data,
            'controls': decisions,
            'mode': 'auto' if self.auto_mode else 'manual'
        }

        # In a real system, this would write to a file or database
        print(f"System Status: Temp={sensor_data['temperature']:.1f}°C, "
              f"Fan={decisions['fan_speed']:.1f}, "
              f"Alert={decisions['alert_status']}")

3. Project Documentation Standards

"""
Smart Environment Control System
================================

Project: IoT Environmental Controller
Author: Student Name
Date: Current Date
Version: 1.0

Description:
    An intelligent system that monitors environmental conditions and automatically
    adjusts heating, cooling, and lighting based on sensor feedback.

Hardware Requirements:
    - Raspberry Pi 4 or similar
    - Temperature sensor (DS18B20 or similar)
    - Light sensor (LDR with MCP3008 ADC)
    - Motion sensor (PIR)
    - Distance sensor (HC-SR04)
    - DC Motor (for fan simulation)
    - Relay module (for heater control)
    - PWM-controlled LED (for lighting)

Software Dependencies:
    - Python 3.7+
    - gpiozero library
    - threading module (standard library)
    - queue module (standard library)
    - json module (standard library)

Installation:
    pip install gpiozero

Usage:
    python smart_environment.py

Configuration:
    Modify target_temp and light_threshold variables in SmartEnvironmentController
    class to adjust system behavior.

Testing:
    Run included test functions to verify sensor readings and control outputs
    before deploying the full system.

Known Issues:
    - Temperature sensor calibration may need adjustment for local conditions
    - Motion sensor has 2-second reset time that affects rapid detection

Future Enhancements:
    - Web interface for remote monitoring
    - Data logging to CSV files
    - Machine learning for predictive control
    - Mobile app integration
"""

Project Examples for Students:

Project 1: Smart Garden Monitor

  • Monitors soil moisture, light, and temperature
  • Controls watering pump and grow lights
  • Logs plant growth data
  • Sends alerts when intervention needed

Project 2: Home Security System

  • Multiple sensor integration (motion, door, window)
  • Camera trigger on detection
  • SMS/email notifications
  • Mobile app control interface

Project 3: Weather Station

  • Measures temperature, humidity, pressure, wind
  • Data logging with timestamps
  • Weather prediction algorithms
  • Web dashboard for data visualization

Project 4: Automated Greenhouse

  • Climate control (temperature, humidity)
  • Automated watering system
  • Light cycle management
  • Growth optimization algorithms

Week 8: Project Presentations and Assessment

Learning Objectives:

  • Present technical projects professionally
  • Give and receive constructive feedback
  • Self-evaluate learning progress and achievements
  • Plan next steps for continued learning

Key Concepts:

  • Technical Communication: Explaining complex systems clearly
  • Presentation Skills: Engaging audiences with technical content
  • Peer Review: Constructive feedback and collaboration
  • Self-Assessment: Honest evaluation of own work
  • Professional Development: Planning continued learning paths
  • Portfolio Building: Documenting achievements for future opportunities

Presentation Structure:

  1. Project Overview (2 minutes)
  • Problem statement and objectives
  • Target audience and use cases
  • Key features and functionality
  1. Technical Demonstration (2 minutes)
  • Live system operation
  • Key components and how they work
  • Code walkthrough of critical sections
  1. Challenges and Solutions (1 minute)
  • Major obstacles encountered
  • Creative solutions implemented
  • Lessons learned from failures

Evaluation Criteria:

Technical Merit (40%):

  • System functionality and reliability
  • Code quality and organization
  • Creative problem-solving approach
  • Integration of multiple technologies

Communication (30%):

  • Clear explanation of technical concepts
  • Engaging presentation delivery
  • Appropriate use of visual aids
  • Effective response to questions

Documentation (20%):

  • Complete project documentation
  • Code comments and structure
  • User instructions and setup guides
  • Reflection on learning process

Collaboration (10%):

  • Constructive feedback to peers
  • Professional interaction during Q&A
  • Willingness to share knowledge
  • Respectful critique and discussion

Python Programming Trivia Challenge: End the term with fun technical questions:

  1. What does “PEP 8” refer to in Python?
  2. What’s the difference between == and is in Python?
  3. How do you handle exceptions in Python?
  4. What is a Python decorator?
  5. What’s the difference between a list and a tuple?

Grade 10-12 Final Assessment - Weeks 6-8

Integrated Systems Project Assessment

Format: Major Project + Technical Presentation + Peer Review (2 weeks + presentation day)

Project Requirements: Students must create an integrated system that combines:

  • At least 3 different sensors
  • At least 2 actuators (motors, lights, relays, etc.)
  • Data logging and analysis
  • User interface (command line or simple GUI)
  • Error handling and safety features

Part A: Technical Implementation (40 points)

System Design (10 points)

  • Clear problem definition and solution approach
  • System architecture diagram showing component relationships
  • Hardware schematic or connection diagram
  • Software flowchart or algorithm description

Code Quality (15 points)

  • Well-structured, modular code with functions/classes
  • Appropriate variable names and code organization
  • Comprehensive comments explaining complex sections
  • Error handling for hardware failures
  • Efficient algorithms and resource usage

Hardware Integration (15 points)

  • Stable sensor readings with appropriate filtering
  • Reliable actuator control with safety limits
  • Proper electrical connections and component usage
  • System operates reliably for extended periods
  • Professional cable management and mounting

Part B: Documentation and Communication (25 points)

Project Documentation (15 points) Create a complete project report including:

  • Executive summary of project goals and achievements
  • Detailed technical specifications and requirements
  • Installation and setup instructions
  • User manual with clear operating procedures
  • Troubleshooting guide for common problems
  • Code documentation with API reference

Technical Presentation (10 points)

  • Clear 5-minute presentation explaining project
  • Live demonstration of working system
  • Professional slides with technical diagrams
  • Confident handling of technical questions
  • Appropriate use of technical vocabulary

Part C: Innovation and Problem Solving (20 points)

Creative Solutions (10 points)

  • Original approach to solving chosen problem
  • Creative use of available hardware and software
  • Evidence of iterative design and improvement
  • Solutions show depth of understanding beyond basic requirements

Advanced Features (10 points) Choose and implement at least TWO:

  • Machine learning or AI decision making
  • Network communication (IoT connectivity)
  • Mobile app or web interface
  • Data visualization and analytics
  • Predictive algorithms or optimization
  • Integration with external APIs or services

Part D: Professional Skills (15 points)

Peer Collaboration (8 points)

  • Constructive feedback provided to classmates
  • Professional behavior during presentations
  • Willingness to help others debug problems
  • Respectful and insightful questions during Q&A

Self-Assessment (7 points) Written reflection addressing:

  • Most significant technical challenge and how you overcame it
  • What you would do differently if starting over
  • How this project connects to potential career interests
  • Specific skills you want to develop further
  • Your confidence level with different aspects of the project

Sample Project Evaluation Rubric:

Exceptional (90-100%)

  • System exceeds all requirements with innovative features
  • Code is publication-quality with comprehensive documentation
  • Presentation is engaging and demonstrates deep understanding
  • Shows leadership in helping others and contributing to class learning
  • Self-reflection shows sophisticated understanding of learning process

Proficient (80-89%)

  • System meets all requirements reliably
  • Code is well-structured with good documentation
  • Presentation is clear and technically accurate
  • Actively participates in peer learning and feedback
  • Self-reflection shows good awareness of strengths and growth areas

Developing (70-79%)

  • System meets most requirements with minor issues
  • Code works but may have organizational or documentation gaps
  • Presentation covers required topics but may lack depth
  • Participates adequately in class activities
  • Self-reflection shows basic understanding of learning process

Beginning (60-69%)

  • System meets basic requirements but has significant limitations
  • Code works for demonstration but has structural or reliability issues
  • Presentation covers basics but shows limited understanding
  • Minimal participation in peer activities
  • Self-reflection is superficial or lacks insight

Incomplete (Below 60%)

  • System fails to meet basic requirements or doesn’t function reliably
  • Code has major issues that prevent proper operation
  • Presentation is unclear or shows misunderstanding of concepts
  • Little to no participation in collaborative learning
  • Self-reflection missing or shows no evidence of learning

Term 1 Final Portfolio Assessment - All Grade Levels

Portfolio Components Checklist

For All Students:

  • Weekly reflection journals documenting learning progress
  • Photo documentation of all projects and experiments
  • Completed weekly assessments with corrections
  • Evidence of peer collaboration and teaching
  • Self-assessment of growth in each major topic area

Grade-Specific Additions:

Preschoolers (4-6 years):

  • Drawings of favorite STEM activities
  • Parent/teacher observation notes on engagement and skills
  • Examples of unplugged coding sequences created
  • Photos of technology exploration activities

Grade 2-5 (7-11 years):

  • Screenshots of completed Scratch projects
  • Blockly puzzle solutions and explanations
  • Game design documents and storyboards
  • Video explanations of programming concepts

Grade 6-9 (11-14 years):

  • Drone safety checklist created and used
  • Mission planning worksheets with risk assessments
  • Photos/videos of practical flying sessions
  • Research report on drone applications in chosen field

Grade 10-12 (14-16 years):

  • Complete code repositories with documentation
  • Hardware connection diagrams and schematics
  • Data analysis reports from sensor projects
  • Technical presentation slides and demonstration videos

Cross-Grade Learning Objectives Mastery

By the end of Term 1, students should demonstrate:

Preschoolers:

  • Basic understanding of STEM concepts through play
  • Ability to follow simple sequences and patterns
  • Safe interaction with age-appropriate technology
  • Curiosity and engagement with hands-on exploration

Grade 2-5:

  • Fundamental programming concepts using visual languages
  • Ability to create simple games and interactive stories
  • Understanding of sequence, loops, and basic logic
  • Confidence in debugging and problem-solving

Grade 6-9:

  • Comprehensive understanding of drone safety and regulations
  • Practical flying skills with safety awareness
  • Knowledge of aviation principles and laws
  • Teamwork and communication skills in technical contexts

Grade 10-12:

  • Proficiency in Python programming for hardware control
  • Ability to integrate multiple sensors and actuators
  • Professional documentation and presentation skills
  • Independent problem-solving and creative innovation

Preparation for Term 2

Preschoolers → Scratch Junior Programming:

  • Continue building sequencing skills
  • Introduction to tablet-based programming
  • Creative storytelling with technology

Grade 2-5 → IoT Integration with Sensors:

  • Bridge from visual programming to physical computing
  • Introduction to sensors and real-world data
  • Beginning electronics and circuit concepts

Grade 6-9 → Smart Home Security:

  • Apply drone safety concepts to IoT systems
  • Introduction to sensors and automation
  • Home automation and security principles

Grade 10-12 → Smart Cities:

  • Scale up from individual projects to community solutions
  • Advanced IoT networking and data analysis
  • Social impact of technology solutions

Additional Resources and Extensions

Online Learning Platforms:

  • Preschoolers: PBS Kids programming games, Kodable app
  • Grade 2-5: Scratch Jr., Code.org courses, Blockly games
  • Grade 6-9: DroneBlocks, FAA educational materials, aviation simulation games
  • Grade 10-12: Python.org tutorials, Raspberry Pi Foundation projects, GitHub learning labs

STEM Career Connections:

  • Robotics Engineer: Designs and builds robots for various applications
  • Software Developer: Creates programs and applications for computers and devices
  • Drone Pilot: Professional UAV operations for photography, surveying, delivery
  • IoT Developer: Connects everyday objects to the internet for smart automation
  • Data Scientist: Analyzes sensor data to find patterns and make predictions

Community Extension Activities:

  • Science Fair Projects: Using skills learned to create original investigations
  • STEM Club Leadership: Teaching younger students basic concepts
  • Community Problem Solving: Identifying local problems that technology could help solve
  • Maker Space Participation: Continuing projects in community workshop environments

Assessment Data Tracking: Teachers should maintain records of:

  • Individual student progress through learning objectives
  • Common areas of difficulty requiring additional support
  • Exceptional student work that could be showcased
  • Parent/guardian feedback on home engagement with STEM concepts
  • Equipment and resource needs for optimal program delivery

This completes the comprehensive Term 1 curriculum with detailed notes, assessments, and support materials for all grade levels in the IoT & Robotics program. Each grade level has age-appropriate challenges that build foundational skills while maintaining engagement and fostering creativity in STEM learning.


Notes

I’ve created a comprehensive set of notes and assessment tests for Term 1 across all grade levels (Preschoolers through Grade 10-12). The document includes:

What’s Included:

For Each Grade Level:

  • Detailed weekly lesson notes covering weeks 1-8 content
  • Key concepts and learning objectives for each topic
  • Practical examples and code samples (for programming grades)
  • Age-appropriate assessment tests with multiple formats

Assessment Formats:

  • Preschoolers (4-6): Practical/observational assessments with hands-on activities
  • Grade 2-5 (7-11): Computer-based Scratch/Blockly challenges
  • Grade 6-9 (11-14): Written tests + practical drone safety demonstrations
  • Grade 10-12 (14-16): Coding assignments + hardware integration projects

Key Features:

  • Covers all 8 weeks of Term 1 content
  • Aligned with curriculum from the IoT & Robotics document
  • Progressive difficulty appropriate for each age group
  • Practical assessments that test real understanding
  • Detailed rubrics for fair evaluation
  • Extension activities for advanced learners
  • Safety guidelines and best practices

Topics Covered:

  • Preschoolers: STEM basics, simple machines, unplugged coding
  • Grade 2-5: Scratch programming, Blockly games, interface navigation
  • Grade 6-9: Drone basics, aviation principles, safety regulations
  • Grade 10-12: Python programming, hardware control, sensor integration

Each assessment is designed to be practical and engaging, testing both theoretical knowledge and hands-on application skills. The rubrics provide clear criteria for evaluation at different skill levels.


Perfect! I’ve now completed the comprehensive Term 1 notes and assessment materials covering all 8 weeks for all grade levels. Here’s what’s now included:

Assessment Test

Assessment Test

Assessment Test

Assessment Test

Assessment Test

Assessment Test

Assessment Test

IoT & Robotics Term 1 - Complete Notes & Assessment Tests

Table of Contents

  1. Preschoolers (4-6 Years) - STEM Storytelling & Coding Toys
  2. Grade 2-5 (7-11 Years) - Scratch & Blockly Programming
  3. Grade 6-9 (11-14 Years) - Drone Aviation Introduction
  4. Grade 10-12 (14-16 Years) - Python Basics

Preschoolers (4-6 Years)

Term 1: STEM Storytelling & Coding Toys

Week 1: Introduction to STEM

Learning Objectives:

  • Understand basic concepts of STEM (Science, Technology, Engineering, Math)
  • Spark excitement and curiosity about STEM through hands-on activities
  • Foster teamwork through group experiments
  • Develop early thinking through guided play and experimentation

Key Concepts:

  • Science: Learning about the world around us through observation
  • Technology: Simple tools and devices that help us
  • Engineering: Building and creating solutions
  • Mathematics: Numbers, shapes, and patterns in everyday life

Activities:

  • Floating vs. Sinking experiments with various objects
  • Basic robot interaction and exploration
  • STEM vocabulary building games
  • Classification activities

Materials: Water, buckets, floating items (paper, feathers), sinking items (stones, coins), toy robot, tablet

Week 2: STEM Play Corners

Learning Objectives:

  • Explore different STEM areas through play stations
  • Develop fine motor skills through hands-on manipulation
  • Practice problem-solving through guided discovery
  • Build confidence in exploring new concepts

Key Concepts:

  • Play-based learning: Learning through exploration and fun
  • Spatial awareness: Understanding shapes, sizes, and positions
  • Cause and effect: Understanding that actions have results
  • Collaboration: Working together to solve problems

Week 3: Simple Machines & Environmental Science

Learning Objectives:

  • Identify simple machines in everyday life
  • Understand basic environmental concepts
  • Develop observation skills
  • Connect STEM to the natural world

Key Concepts:

  • Simple Machines: Lever, pulley, wheel, ramp
  • Environment: Plants, animals, weather, seasons
  • Observation: Using our senses to learn
  • Nature patterns: Recognizing patterns in nature

Week 4: Unplugged Coding

Learning Objectives:

  • Introduction to coding concepts without computers
  • Understand sequence and order
  • Develop logical thinking
  • Practice following and giving instructions

Key Concepts:

  • Sequence: Steps in order
  • Instructions: Clear directions to follow
  • Algorithms: Step-by-step solutions
  • Patterns: Recognizing and creating patterns

Assessment Test - Preschoolers (4-6 Years)

Week 1-2 Assessment: STEM Basics

Format: Practical/Observational Assessment

  1. Floating or Sinking? (Show child various objects)
  • Point to objects that will float: feather, cork, plastic toy
  • Point to objects that will sink: stone, coin, marble
  • Explain why you think so (in simple words)
  1. STEM Matching (Picture cards)
  • Match the scientist to the magnifying glass
  • Match the engineer to the building blocks
  • Match the mathematician to the numbers
  • Match the technologist to the computer
  1. Following Instructions
  • Can follow 2-step instructions: “Pick up the red block and put it in the box”
  • Can give simple instructions to a friend
  • Can arrange objects in order (biggest to smallest)

Assessment Rubric:

  • Exceeding (3): Completes all tasks independently with explanation
  • Meeting (2): Completes most tasks with minimal guidance
  • Approaching (1): Attempts tasks with significant support
  • Beginning (0): Needs extensive help to participate

Week 3-4 Assessment: Simple Machines & Coding

Format: Hands-on Demonstration

  1. Simple Machines Hunt
  • Find the lever (seesaw, scissors)
  • Find the wheel (bicycle, toy car)
  • Find the ramp (slide, wedge)
  • Explain what each machine helps us do
  1. Nature Observation
  • Draw or point to living things vs. non-living things
  • Identify basic shapes in nature (circles in flowers, triangles in mountains)
  • Name things that grow vs. things that are made
  1. Unplugged Coding Challenge
  • Arrange sequence cards to show morning routine
  • Give directions to help friend reach the treasure
  • Complete a simple pattern with blocks or shapes

Grade 2-5 (7-11 Years)

Term 1: Scratch & Blockly Programming

Week 1: Introduction to Programming

Learning Objectives:

  • Understand what programming is
  • Learn about Scratch programming environment
  • Install and explore Scratch interface
  • Grasp the concept of sequencing

Key Concepts:

  • Programming: Giving instructions to computers
  • Scratch: Visual programming language using blocks
  • Interface: The screen where we work with Scratch
  • Sequencing: Putting commands in the right order
  • Sprites: Characters in Scratch programs
  • Stage: Where Scratch programs run

Core Activities:

  • Explore Scratch interface and tools
  • Identify different areas (sprite area, blocks palette, stage)
  • Learn about different block categories (Motion, Looks, Sound, etc.)
  • Create first simple animation

Week 2: Understanding Scratch Interface

Learning Objectives:

  • Navigate Scratch interface confidently
  • Understand different block categories
  • Create basic sprite movements
  • Save and load projects

Key Concepts:

  • Blocks Palette: Where programming blocks are stored
  • Scripts Area: Where we build our programs
  • Motion Blocks: Make sprites move
  • Looks Blocks: Change sprite appearance
  • Events: What starts our programs running

Week 3: Setting Up Scratch Projects

Learning Objectives:

  • Plan and organize Scratch projects
  • Understand project structure
  • Use backgrounds and sprites effectively
  • Practice debugging simple problems

Key Concepts:

  • Project Planning: Thinking before coding
  • Backgrounds: Scenes for our programs
  • Sprite Library: Ready-made characters
  • Debugging: Finding and fixing problems

Week 4: Introduction to Blockly

Learning Objectives:

  • Understand Blockly visual programming
  • Compare Blockly with Scratch
  • Complete basic Blockly puzzles
  • Transfer concepts between platforms

Key Concepts:

  • Blockly: Another visual programming language
  • Puzzle-based Learning: Learning through solving challenges
  • Logic Blocks: Making decisions in programs
  • Loops: Repeating actions

Week 5: Blockly Games for Scratch Programmers

Learning Objectives:

  • Apply Scratch knowledge to Blockly games
  • Solve increasingly complex puzzles
  • Understand programming logic and flow
  • Build problem-solving confidence

Key Concepts:

  • Game Logic: Rules that make games work
  • Progressive Difficulty: Challenges that get harder
  • Pattern Recognition: Seeing repeated solutions
  • Persistence: Keep trying when challenges are difficult

Assessment Test - Grade 2-5 (7-11 Years)

Week 1-3 Assessment: Scratch Fundamentals

Format: Practical Computer Assessment (30 minutes)

Part A: Interface Knowledge (10 points)

  1. Label the parts of Scratch interface:
  • Blocks Palette
  • Scripts Area
  • Stage
  • Sprite Area
  1. Match the block colors to their functions:
  • Motion blocks: _____ (Blue)
  • Looks blocks: _____ (Purple)
  • Sound blocks: _____ (Pink)
  • Events blocks: _____ (Yellow)

Part B: Basic Programming (15 points) 3. Create a program that makes a sprite:

  • Move 10 steps forward

  • Turn 90 degrees right

  • Say “Hello” for 2 seconds

  • Change color

  1. Fix this broken sequence (drag blocks in correct order):
[Say "Goodbye"][When green flag clicked][Move 100 steps][Say "Hello"]

Part C: Problem Solving (10 points) 5. Your sprite isn’t moving when you click the green flag. What might be wrong?

  • Missing “when green flag clicked” block

  • Sprite is already at the edge

  • Motion blocks aren’t connected

  • All of the above

  1. Create a simple animation showing a cat walking across the stage.

Week 4-5 Assessment: Blockly & Problem Solving

Format: Computer-based Blockly Challenges (25 minutes)

Part A: Blockly Basics (8 points)

  1. Complete the “Move Forward” puzzle in Blockly
  2. Complete the “Turn Left/Right” puzzle
  3. Complete the “Repeat Loop” puzzle
  4. Complete the “If/Else” puzzle

Part B: Logic Understanding (12 points) 5. Explain what this Blockly code does:

Repeat 4 times:
  Move forward
  Turn right 90 degrees

Answer: _________________

  1. Write Blockly code to make a character:
  • Move forward 3 steps
  • Turn left if path is blocked
  • Repeat until reaching goal

Part C: Transfer Learning (10 points) 7. How is Blockly similar to Scratch? List 3 similarities:




  1. Create a Scratch program that does the same thing as this Blockly code:
When started:  Repeat 5 times:    Move forward 20 steps    Wait 1 second

Assessment Rubric:

  • Advanced (90-100%): Completes all tasks efficiently with creative additions
  • Proficient (80-89%): Completes most tasks correctly with minor errors
  • Developing (70-79%): Completes basic tasks but struggles with complex problems
  • Beginning (Below 70%): Needs significant support to complete tasks

Grade 6-9 (11-14 Years)

Term 1: Drone Aviation Introduction

Week 1: Introduction to Drones and Aviation Basics

Learning Objectives:

  • Understand what drones are and their applications
  • Learn basic aviation principles
  • Identify different types of aircraft
  • Understand the evolution of flight

Key Concepts:

  • Unmanned Aerial Vehicle (UAV): Aircraft without a human pilot aboard
  • Remote Pilot: Person controlling the drone from the ground
  • Autonomous Flight: Drones flying with minimal human control
  • Commercial vs. Recreational Use: Different purposes for drones
  • Four Forces of Flight: Lift, Weight, Thrust, Drag
  • Aerodynamics: How air moves around objects in flight

Applications of Drones:

  • Photography and videography
  • Search and rescue operations
  • Agriculture monitoring
  • Package delivery
  • Scientific research
  • Military operations

Week 2: Drone Safety Rules and Best Practices

Learning Objectives:

  • Learn essential drone safety protocols
  • Understand pre-flight checklist procedures
  • Identify potential hazards and risks
  • Develop responsible drone operation habits

Key Concepts:

  • Pre-flight Inspection: Checking drone condition before flying
  • Weather Conditions: How weather affects drone flight
  • Battery Safety: Proper battery handling and storage
  • Emergency Procedures: What to do when things go wrong
  • Situational Awareness: Being aware of surroundings while flying

Safety Rules:

  1. Always maintain visual contact with drone
  2. Check weather conditions before flying
  3. Inspect drone and equipment before each flight
  4. Fly in open areas away from people and property
  5. Never fly above 400 feet
  6. Respect others’ privacy
  7. Land immediately if drone malfunctions

Week 3: FAA/UAS Regulations (Basic Overview)

Learning Objectives:

  • Understand basic aviation regulations
  • Learn about no-fly zones and restricted airspace
  • Understand registration requirements
  • Learn about pilot certification basics

Key Concepts:

  • Federal Aviation Administration (FAA): Government agency regulating aviation
  • Unmanned Aircraft Systems (UAS): Official term for drones and related equipment
  • No-Fly Zones: Areas where drone flight is prohibited
  • Remote Pilot Certificate: License required for commercial drone operations
  • Registration: Required identification for drones over 0.55 pounds

Basic Regulations:

  • Drones must be registered if over 0.55 lbs (250 grams)
  • Maximum altitude: 400 feet above ground level
  • Must yield right-of-way to manned aircraft
  • No flying over groups of people
  • No flying at night without special certification
  • Respect airport operational areas (usually 5-mile radius)

Week 4: Key Drone Types & Components

Learning Objectives:

  • Identify different drone configurations
  • Understand key drone components and their functions
  • Compare advantages and disadvantages of different designs
  • Learn basic maintenance requirements

Key Concepts:

  • Multirotor: Drones with multiple rotating propellers
  • Fixed-wing: Airplane-like drones with wings
  • Hybrid VTOL: Vertical takeoff and landing with forward flight capability
  • Frame: Main structure holding all components
  • Flight Controller: Computer controlling drone flight
  • ESC (Electronic Speed Controller): Controls motor speed
  • Gimbal: Stabilizes camera during flight

Drone Types:

  1. Quadcopter: 4 rotors, most common configuration
  2. Hexacopter: 6 rotors, more redundancy and payload capacity
  3. Octocopter: 8 rotors, highest redundancy and capacity
  4. Fixed-wing: Longer flight times, faster speeds
  5. Racing drones: Small, fast, agile for competitive flying

Week 5: Basic Principles of Flight

Learning Objectives:

  • Understand the four forces of flight in detail
  • Learn how drones achieve controlled flight
  • Understand stability and control concepts
  • Explore flight dynamics and physics

Key Concepts:

  • Lift: Upward force generated by rotors or wings
  • Weight (Gravity): Downward force pulling drone toward earth
  • Thrust: Forward force propelling drone through air
  • Drag: Resistance force opposing motion through air
  • Center of Gravity: Balance point of drone
  • Pitch, Roll, Yaw: Three axes of rotation
  • Gyroscopic Effect: How spinning rotors affect stability

Flight Control:

  • Throttle: Controls altitude (up/down)
  • Pitch: Controls forward/backward movement
  • Roll: Controls left/right movement
  • Yaw: Controls rotation (turning left/right)
  • Trim: Fine adjustments for balanced flight

Assessment Test - Grade 6-9 (11-14 Years)

Week 1-2 Assessment: Drone Basics and Safety

Format: Written Test + Practical Safety Demonstration (45 minutes)

Part A: Multiple Choice (20 points)

  1. What does UAV stand for? a) Universal Aviation Vehicle b) Unmanned Aerial Vehicle c) Ultra Aerodynamic Vehicle d) United Aviation Vehicle

  2. Which of the four forces of flight works against gravity? a) Thrust b) Drag c) Lift d) Weight

  3. What should you do FIRST before flying a drone? a) Start the motors b) Check weather conditions c) Take off immediately d) Turn on the camera

  4. The maximum altitude for recreational drone flight is: a) 200 feet b) 300 feet c) 400 feet d) 500 feet

  5. What is the main difference between commercial and recreational drone use? a) Size of drone b) Purpose and regulations c) Color of drone d) Number of rotors

Part B: Short Answer (25 points) 6. List 5 safety rules that must be followed when operating a drone: (10 points)






  1. Explain three commercial applications of drones: (9 points)



  1. Why is it important to maintain visual contact with your drone during flight? (6 points)

Part C: Practical Safety Assessment (15 points) 9. Demonstrate proper pre-flight inspection checklist 10. Identify suitable vs. unsuitable flying locations from photos 11. Explain emergency landing procedures

Week 3-5 Assessment: Regulations and Flight Principles

Format: Written Test + Flight Theory Application (50 minutes)

Part A: Regulations Knowledge (20 points)

  1. True/False (10 points)
  • Drones under 0.55 lbs need to be registered: ___
  • You can fly your drone anywhere as long as it’s daytime: ___
  • Commercial drone operations require a Remote Pilot Certificate: ___
  • Drones must always yield to manned aircraft: ___
  • Flying over groups of people is allowed with permission: ___
  1. What is a no-fly zone and give 3 examples: (10 points) Definition: ________________________________ Examples:



Part B: Drone Components (15 points) 3. Match the component to its function:

  • Flight Controller: _____ a) Provides power to motors

  • ESC: _____ b) Stabilizes camera

  • Gimbal: _____ c) Main structural support

  • Frame: _____ d) Controls drone flight

  • Battery: _____ e) Controls motor speed

  1. Compare quadcopter vs. fixed-wing drones (advantages/disadvantages): (10 points)

Part C: Flight Principles (25 points) 5. Draw and label the four forces of flight on a drone diagram: (12 points)

  1. Explain how a drone moves in each direction: (13 points)
  • Forward: ________________________________
  • Backward: ________________________________
  • Left: ________________________________
  • Right: ________________________________
  • Up: ________________________________
  • Rotate left: ________________________________

Assessment Rubric:

  • Expert (90-100%): Demonstrates comprehensive understanding with detailed explanations
  • Proficient (80-89%): Shows solid grasp of concepts with minor gaps
  • Developing (70-79%): Understands basic concepts but lacks detail in complex areas
  • Novice (Below 70%): Limited understanding, needs additional instruction

Grade 10-12 (14-16 Years)

Term 1: Introduction to Python Basics

Week 1: Writing Structured Python Code

Learning Objectives:

  • Understand Python syntax and structure
  • Learn proper code formatting and indentation
  • Write clean, readable code following best practices
  • Understand variables, data types, and basic operations

Key Concepts:

  • Python: High-level programming language
  • Syntax: Rules for writing Python code
  • Indentation: Using spaces to organize code structure
  • Variables: Named storage for data values
  • Data Types: int, float, string, boolean
  • Comments: Documentation within code using #
  • Print Statement: Displaying output to screen

Code Structure Best Practices:

# Header comment explaining the program
# Author: Your Name
# Date: Today's Date

# Import statements
import module_name

# Constants (UPPERCASE naming)
MAX_VALUE = 100

# Main program logic
def main():
    # Variable declarations
    user_name = "Student"
    age = 16

    # Program logic with proper indentation
    print(f"Hello, {user_name}!")
    print(f"You are {age} years old.")

# Run the program
if __name__ == "__main__":
    main()

Week 2: Functions and Loops

Learning Objectives:

  • Create and use custom functions
  • Understand function parameters and return values
  • Implement for loops and while loops
  • Apply loops to solve repetitive tasks

Key Concepts:

  • Function: Reusable block of code that performs a specific task
  • Parameters: Input values passed to functions
  • Return Value: Output value from a function
  • For Loop: Repeats code a specific number of times
  • While Loop: Repeats code while a condition is true
  • Range Function: Generates sequences of numbers
  • Iteration: Each repetition of a loop
  • Loop Control: Managing when loops start and stop

Function Examples:

# Simple function with no parameters
def greet():
    print("Hello, World!")

# Function with parameters
def greet_person(name, age):
    print(f"Hello, {name}! You are {age} years old.")

# Function with return value
def calculate_area(length, width):
    area = length * width
    return area

# Using functions
greet()
greet_person("Alice", 16)
room_area = calculate_area(10, 12)
print(f"Room area: {room_area} square meters")

Loop Examples:

# For loop with range
for i in range(5):
    print(f"Count: {i}")

# For loop with list
fruits = ["apple", "banana", "orange"]
for fruit in fruits:
    print(f"I like {fruit}")

# While loop
count = 0
while count < 3:
    print(f"While loop count: {count}")
    count += 1

Week 3: Using Python Libraries

Learning Objectives:

  • Understand what Python libraries are and why they’re useful
  • Learn to import and use common libraries
  • Work with GPIOZero and time libraries
  • Explore library documentation and help systems

Key Concepts:

  • Library/Module: Pre-written code that adds functionality
  • Import Statement: Bringing library functions into your program
  • GPIOZero: Library for controlling Raspberry Pi GPIO pins
  • Time Library: Functions for working with time and delays
  • Documentation: Instructions for using library functions
  • API: Application Programming Interface - how to use library functions

Library Usage Examples:

# Importing entire modules
import time
import math

# Importing specific functions
from gpiozero import LED, Button
from time import sleep

# Using time library
print("Starting program...")
time.sleep(2)  # Wait 2 seconds
print("2 seconds have passed!")

# Using math library
import math
radius = 5
area = math.pi * radius ** 2
print(f"Circle area: {area:.2f}")

# Using GPIOZero (for Raspberry Pi)
led = LED(18)  # LED connected to GPIO pin 18
button = Button(2)  # Button connected to GPIO pin 2

# Turn LED on and off
led.on()
sleep(1)
led.off()

Week 4: Controlling Motors with Python

Learning Objectives:

  • Understand how to interface with motors using Python
  • Learn about PWM (Pulse Width Modulation) for motor control
  • Control motor speed and direction
  • Implement safety features in motor control code

Key Concepts:

  • Motor Control: Using code to make motors move
  • PWM (Pulse Width Modulation): Method to control motor speed
  • Duty Cycle: Percentage of time signal is “on” vs “off”
  • Direction Control: Making motors spin clockwise/counterclockwise
  • Motor Driver: Electronics that interface between Python and motors
  • Safety Features: Code to prevent motor damage

Motor Control Examples:

from gpiozero import Motor, PWMOutputDevice
from time import sleep

# Create motor object (assuming H-bridge motor driver)
motor = Motor(forward=2, backward=3, enable=18)

# Basic motor control
def basic_motor_test():
    print("Motor forward at full speed")
    motor.forward(1.0)  # Full speed forward
    sleep(2)

    print("Motor forward at half speed")
    motor.forward(0.5)  # Half speed forward
    sleep(2)

    print("Motor stopped")
    motor.stop()
    sleep(1)

    print("Motor backward at full speed")
    motor.backward(1.0)  # Full speed backward
    sleep(2)

    motor.stop()
    print("Motor test complete")

# PWM speed control example
def speed_ramp_test():
    print("Ramping motor speed up...")
    for speed in range(0, 101, 10):  # 0 to 100% in 10% steps
        motor_speed = speed / 100.0
        motor.forward(motor_speed)
        print(f"Speed: {speed}%")
        sleep(0.5)

    motor.stop()
    print("Speed ramp complete")

# Run the tests
basic_motor_test()
sleep(2)
speed_ramp_test()

Week 5: Controlling Sensors with Python

Learning Objectives:

  • Interface with various sensors using Python
  • Read and process sensor data
  • Implement sensor-based decision making
  • Create responsive programs based on sensor input

Key Concepts:

  • Sensor: Device that detects and measures physical properties
  • Analog vs Digital: Different types of sensor signals
  • ADC (Analog-to-Digital Converter): Converts analog signals to digital
  • Sensor Calibration: Adjusting sensor readings for accuracy
  • Data Processing: Converting raw sensor data to useful information
  • Polling vs Interrupts: Different ways to read sensor data

Common Sensors:

  • Temperature sensors: Measure environmental temperature
  • Light sensors (LDR): Detect light intensity
  • Ultrasonic sensors: Measure distance using sound waves
  • Motion sensors (PIR): Detect movement
  • Pressure sensors: Measure force or pressure

Sensor Control Examples:

from gpiozero import MCP3008, DistanceSensor, MotionSensor, LED
from time import sleep
import statistics

# Temperature sensor (using analog input)
temp_sensor = MCP3008(channel=0)

def read_temperature():
    # Convert voltage to temperature (example conversion)
    voltage = temp_sensor.voltage
    temperature_c = (voltage - 0.5) * 100  # Example conversion formula
    temperature_f = (temperature_c * 9/5) + 32
    return temperature_c, temperature_f

# Distance sensor (ultrasonic)
distance_sensor = DistanceSensor(echo=24, trigger=23)

def monitor_distance():
    print("Distance monitoring (press Ctrl+C to stop)")
    try:
        while True:
            distance = distance_sensor.distance * 100  # Convert to cm
            print(f"Distance: {distance:.1f} cm")

            if distance < 10:
                print("WARNING: Object too close!")

            sleep(0.5)
    except KeyboardInterrupt:
        print("Distance monitoring stopped")

# Motion sensor with LED indicator
motion = MotionSensor(4)
alert_led = LED(18)

def motion_detector():
    print("Motion detector active...")

    def motion_detected():
        print("Motion detected!")
        alert_led.on()
        sleep(2)
        alert_led.off()

    def no_motion():
        print("No motion")
        alert_led.off()

    # Set up motion sensor callbacks
    motion.when_motion = motion_detected
    motion.when_no_motion = no_motion

    # Keep program running
    try:
        while True:
            sleep(0.1)
    except KeyboardInterrupt:
        print("Motion detector stopped")

# Data logging example
def log_sensor_data():
    readings = []
    print("Collecting sensor data for 30 seconds...")

    start_time = time.time()
    while time.time() - start_time < 30:
        temp_c, temp_f = read_temperature()
        distance = distance_sensor.distance * 100

        readings.append({
            'timestamp': time.time(),
            'temperature_c': temp_c,
            'temperature_f': temp_f,
            'distance_cm': distance
        })

        print(f"Temp: {temp_c:.1f}°C, Distance: {distance:.1f}cm")
        sleep(1)

    # Calculate statistics
    temps = [r['temperature_c'] for r in readings]
    distances = [r['distance_cm'] for r in readings]

    print(f"\nData Summary:")
    print(f"Average temperature: {statistics.mean(temps):.1f}°C")
    print(f"Min/Max temperature: {min(temps):.1f}°C / {max(temps):.1f}°C")
    print(f"Average distance: {statistics.mean(distances):.1f}cm")
    print(f"Min/Max distance: {min(distances):.1f}cm / {max(distances):.1f}cm")

# Example usage
if __name__ == "__main__":
    # Run different examples
    monitor_distance()  # Uncomment to run distance monitoring
    # motion_detector()  # Uncomment to run motion detection
    # log_sensor_data()  # Uncomment to run data logging

Assessment Test - Grade 10-12 (14-16 Years)

Week 1-2 Assessment: Python Fundamentals

Format: Coding Assignment + Written Questions (60 minutes)

Part A: Code Structure and Syntax (25 points)

  1. Fix the following code and explain what was wrong (10 points):
# Broken code:
def calculate average(num1, num2, num3)
average = num1 + num2 + num3 / 3
print("The average is" + average)
return average

calculate average(10, 20, 30)

Your corrected code:

# Write corrected version here

Explanation of errors: ________________________________

  1. Write a well-structured Python program (15 points): Create a program that:
  • Has proper header comments
  • Uses appropriate variable names
  • Calculates the area of different shapes (circle, rectangle, triangle)
  • Uses functions with parameters and return values
  • Follows proper indentation and formatting

Part B: Functions and Loops (30 points)

  1. Write a function called print_multiplication_table (15 points):
  • Takes one parameter: number
  • Prints multiplication table for that number (1-10)
  • Uses a for loop
  • Example output for print_multiplication_table(3):
3 x 1 = 3
3 x 2 = 6
3 x 3 = 9
... etc
  1. Password Checker Program (15 points): Write a program using while loop that:
  • Asks user to enter a password
  • Keeps asking until they enter “python123”
  • Counts number of attempts
  • Prints “Access granted” when correct
  • Prints number of attempts it took

Week 3-5 Assessment: Libraries and Hardware Control

Format: Practical Coding Project (75 minutes)

Part A: Library Usage (20 points)

  1. Complete this sensor reading program (20 points):
from gpiozero import MCP3008
from time import sleep
import ______  # What library do you need for calculating average?

# Create sensor object
light_sensor = MCP3008(channel=0)

def read_light_levels():
    readings = []

    # Collect 10 readings
    for i in range(______):  # Fill in the range
        reading = light_sensor.______  # What property gives the reading?
        readings.append(reading)
        print(f"Reading {i+1}: {reading:.3f}")
        sleep(0.5)

    # Calculate and print statistics
    average = ______.mean(readings)  # Which function calculates mean?
    maximum = ______(readings)  # Built-in function for maximum
    minimum = ______(readings)  # Built-in function for minimum

    print(f"Average: {average:.3f}")
    print(f"Maximum: {maximum:.3f}")
    print(f"Minimum: {minimum:.3f}")

# Call the function
read_light_levels()

Part B: Motor Control Project (25 points)

  1. Smart Fan Controller (25 points): Write a program that simulates a smart fan controller:
  • Use a temperature sensor to read room temperature
  • Control a motor (fan) based on temperature:
    • Below 20°C: Fan off
    • 20-25°C: Fan at 30% speed
    • 25-30°C: Fan at 60% speed
    • Above 30°C: Fan at 100% speed
  • Print current temperature and fan speed every 2 seconds
  • Include safety features (motor stop function)

Part C: Sensor Integration Challenge (30 points)

  1. Security System Prototype (30 points): Create a basic security system that:
  • Uses a motion sensor to detect movement
  • Uses a distance sensor to detect objects too close
  • Controls LEDs to indicate system status:
    • Green LED: System normal
    • Yellow LED: Motion detected
    • Red LED: Intrusion alert (object < 20cm)
  • Logs events with timestamps
  • Runs continuously until user presses Ctrl+C

Requirements:

  • Use at least 3 different libraries
  • Include proper error handling
  • Use functions to organize code
  • Add meaningful comments
  • Follow Python coding best practices

Sample code structure:

from gpiozero import MotionSensor, DistanceSensor, LED
from time import sleep
import time

# Hardware setup
motion = MotionSensor(4)
distance = DistanceSensor(echo=24, trigger=23)
green_led = LED(18)
yellow_led = LED(19)
red_led = LED(20)

def log_event(message):
    # Write function to log events with timestamp
    pass

def check_security():
    # Write function to check all sensors and control LEDs
    pass

def main():
    # Write main program loop
    pass

if __name__ == "__main__":
    main()

Assessment Rubric:

  • Exceptional (95-100%): Code runs flawlessly, excellent structure, creative additions, comprehensive error handling
  • Proficient (85-94%): Code works correctly, good structure, meets all requirements, minor improvements possible
  • Developing (75-84%): Code mostly works, basic structure present, meets most requirements, some bugs or missing features
  • Beginning (65-74%): Code has significant issues, poor structure, missing major requirements
  • Incomplete (Below 65%): Code doesn’t run or major portions missing

Additional Resources and Extensions

For All Grade Levels:

Vocabulary Glossary:

  • Algorithm: Step-by-step instructions to solve a problem
  • Bug: Error in code that prevents it from working correctly
  • Debug: Process of finding and fixing errors in code
  • Hardware: Physical components of computer systems
  • Software: Programs and applications that run on hardware
  • Interface: Way users interact with programs or devices
  • Sensor: Device that detects changes in environment
  • Actuator: Device that causes movement or action

Project Portfolio Suggestions:

  1. Weekly Reflection Journal: Students document learning and challenges
  2. Photo Documentation: Pictures of projects and experiments
  3. Video Demonstrations: Students explain their projects
  4. Peer Teaching: Advanced students help beginners
  5. Innovation Challenges: Open-ended problems to solve creatively

Cross-Curricular Connections:

  • Math: Geometry in robotics, statistics in data analysis
  • Science: Physics of flight, electronics principles
  • Art: Creative programming projects, design thinking
  • Social Studies: Impact of technology on society
  • Language Arts: Technical writing, documentation skills

Safety Reminders:

  • Always supervise young children with electronic components
  • Check battery connections before powering devices
  • Keep work area clean and organized
  • Wash hands after handling electronic components
  • Report any damaged equipment immediately
  • Follow proper shutdown procedures for all devices

Assessment Portfolio Checklist:

  • Completed weekly assessments
  • Project documentation with photos
  • Reflection essays on learning progress
  • Peer evaluation forms
  • Self-assessment rubrics
  • Evidence of problem-solving process
  • Creative extensions or improvements to basic projects

Continuation - Weeks 6-8 for All Grade Levels


Preschoolers (4-6 Years) - Weeks 6-8

Advanced STEM Exploration & Technology Awareness

Week 6: Technology Parts Awareness

Learning Objectives:

  • Use coding to tell stories, solve challenges, or navigate mazes
  • Recognize and follow simple algorithms using direction or action cards
  • Physically be able to follow code on floor grids
  • Build confidence and persistence through trial-and-error learning

Key Concepts:

  • Technology Components: Basic parts that make devices work
  • Circuits: Paths that electricity follows
  • Assembly/Disassembly: Taking apart and putting together
  • Electronics Safety: Safe handling of batteries and components
  • Problem-Solving: Trying different solutions when something doesn’t work

Activities:

  • Technology Exploration: Examine old keyboards, phones, calculators
  • Simple Circuits: Connect bulbs to batteries with safe materials
  • Assembly Practice: Take apart and reassemble simple toys
  • Tech Parts Sorting: Group similar technology components

Materials: Old keyboards, phones, calculators, batteries, bulbs for circuits, safe connectors

Week 7: Sequencing & Floor Grid Coding

Learning Objectives:

  • Develop understanding of sequencing by arranging steps in correct order
  • Recognize and follow simple algorithms using direction or action cards
  • Physically follow code on floor grids
  • Build confidence through trial-and-error learning

Key Concepts:

  • Sequencing: Putting steps in the right order
  • Algorithm Cards: Visual instructions to follow
  • Floor Grid Coding: Moving through spaces following directions
  • Left/Right/Forward/Back: Basic directional concepts
  • Trial and Error: Learning by trying and improving

Activities:

  • Obstacle Course Coding: Navigate through simple obstacles using arrow cards
  • Sequencing Games: Put daily routine cards in correct order
  • Paper Maze Coding: Use arrows to show path through printed mazes
  • Robot Friend: One child gives directions, another follows like a robot

Materials: Coding arrows/direction cards, floor grid mats, toys for navigation, printed maze worksheets

Week 8: Advanced Unplugged Coding & Storytelling

Learning Objectives:

  • Use coding to tell stories, solve challenges, or navigate mazes
  • Recognize and follow simple algorithms using direction or action cards
  • Physically follow code on floor grids
  • Build confidence and persistence through trial-and-error learning

Key Concepts:

  • Conditional Logic: IF/THEN thinking (“If you see red, then stop”)
  • Debugging: Finding and fixing mistakes in directions
  • Block Building: Using physical blocks to represent code
  • Story Algorithms: Step-by-step instructions for telling stories

Activities:

  • Debug the Path: Present incorrect direction sequences for children to fix
  • IF/THEN Games: “If you see a triangle, then clap your hands”
  • Story Coding: Use picture cards to create step-by-step stories
  • Block Code Building: Stack blocks to represent programming sequences

Materials: Building blocks, floor grid mats, toys, printed materials, picture cards for storytelling


Preschoolers Assessment - Weeks 6-8

Week 6 Assessment: Technology Awareness

Format: Hands-on Exploration + Observation (20 minutes)

  1. Technology Parts Recognition (10 points)
  • Point to and name 3 technology items from the collection
  • Show how a simple circuit works (bulb + battery)
  • Safely handle electronic components
  • Explain one thing each item helps us do
  1. Assembly Skills (10 points)
  • Take apart a simple toy or device
  • Put it back together correctly
  • Identify which parts go where
  • Ask for help when needed

Assessment Criteria:

  • Mastery (3): Handles all materials safely, explains purposes, completes tasks independently
  • Developing (2): Safe handling, completes most tasks with minimal help
  • Emerging (1): Needs guidance but participates actively
  • Beginning (0): Requires extensive support

Week 7-8 Assessment: Advanced Unplugged Coding

Format: Physical Coding Challenges (25 minutes)

  1. Sequencing Challenge (12 points)
  • Arrange 6 direction cards to navigate through obstacle course
  • Explain why each step comes in that order
  • Successfully complete the physical navigation
  • Fix mistakes when path doesn’t work
  1. IF/THEN Logic (8 points)
  • Follow conditional instructions: “IF you see blue, THEN hop”
  • Create own IF/THEN rule for a friend to follow
  • Demonstrate understanding with actions
  1. Story Algorithm (10 points)
  • Use 5 picture cards to create logical story sequence
  • Tell story following the card order
  • Explain what happens if cards are mixed up
  • Help fix a mixed-up story sequence

Practical Skills Rubric:

  • Advanced (25-30 points): Creates original sequences, helps others, shows deep understanding
  • Proficient (20-24 points): Completes all challenges correctly with minor guidance
  • Developing (15-19 points): Understands concepts but needs support for complex tasks
  • Beginning (Below 15 points): Requires significant help to participate

Grade 2-5 (7-11 Years) - Weeks 6-8

Advanced Scratch Programming & Game Development

Week 6: Game Structure and Design

Learning Objectives:

  • Understand basic game structure (start, play, end)
  • Use Scratch blocks to move characters and detect collisions
  • Make characters move between different scenes
  • Create scoring or win conditions

Key Concepts:

  • Game Design Elements: Characters, backgrounds, objectives, rules
  • Game Loop: Continuous cycle of input, processing, output
  • Collision Detection: Knowing when sprites touch each other
  • Scene Transitions: Moving between different game screens
  • Win/Lose Conditions: Rules that determine game outcomes
  • User Interface: Buttons, scores, and information displays

Advanced Scratch Concepts:

  • Sensing Blocks: “touching color”, “distance to”, “key pressed”
  • Variables: Storing score, lives, or time
  • Broadcast Messages: Communication between sprites
  • Clone Sprites: Creating multiple copies of objects
  • Custom Blocks: Making your own programming blocks

Game Development Process:

  1. Planning Phase: Sketch game idea, list needed sprites and backgrounds
  2. Prototype: Create basic movement and interaction
  3. Enhancement: Add sounds, effects, and polish
  4. Testing: Play game and fix bugs
  5. Sharing: Present to classmates

Example Game Structure:

When green flag clicked
Set score to 0
Set lives to 3
Say "Game Starting!" for 2 seconds
Show sprite
Forever:
    If key space pressed:
        Move player sprite
    If touching enemy:
        Change lives by -1
        If lives = 0:
            Say "Game Over!"
            Stop all

Week 7: Transition to Text-Based Concepts

Learning Objectives:

  • Prepare learners for text-based coding
  • Understand basic programming concepts using blocks
  • Use logic and loops to control sprite or robot actions
  • Begin transition to robotics or advanced coding platforms

Key Concepts:

  • Programming Fundamentals: Sequence, selection, iteration
  • Logic Blocks: IF/ELSE statements in visual form
  • Loop Types: Forever, repeat until, repeat X times
  • Variables and Operations: Math in programming
  • Event-Driven Programming: Responding to user input
  • Modular Programming: Breaking code into smaller parts

Bridging Visual to Text:

  • Block-to-Code Thinking: Understanding what blocks represent
  • Pseudocode: Writing steps in plain English before coding
  • Debugging Strategies: Systematic problem-solving approaches
  • Code Organization: Keeping projects neat and logical

Advanced Programming Patterns:

// Pattern 1: State Machine
When green flag clicked
Set game state to "menu"
Forever:
    If game state = "menu":
        Show menu options
    If game state = "playing":
        Run game logic
    If game state = "game over":
        Show final score

// Pattern 2: Object Behavior
When I start as a clone:
    Go to random position
    Forever:
        Move 2 steps
        If on edge, bounce
        If touching player:
            Change score by 10
            Delete this clone

Week 8: Blockly Integration and Logic Puzzles

Learning Objectives:

  • Solve logic puzzles using visual programming concepts
  • Create games using Blockly platform
  • Demonstrate understanding of programming fundamentals
  • Apply creative problem-solving skills

Key Concepts:

  • Blockly Platform: Google’s visual programming language
  • Logic Puzzles: Problems requiring systematic thinking
  • Algorithm Efficiency: Finding the best solution method
  • Pattern Recognition: Identifying repeated solutions
  • Creative Programming: Using code for artistic expression

Blockly vs. Scratch Comparison:

FeatureScratchBlockly
FocusStorytelling & GamesLogic & Algorithms
InterfaceStage-basedPuzzle-based
OutputAnimated ProjectsProblem Solutions
ProgressionCreative ExpressionMathematical Thinking

Logic Puzzle Types:

  1. Maze Solving: Navigate through obstacles
  2. Pattern Completion: Fill in missing sequences
  3. Conditional Logic: IF/THEN decision making
  4. Loop Optimization: Repeat actions efficiently

Grade 2-5 Assessment - Weeks 6-8

Week 6 Assessment: Game Development Project

Format: Scratch Game Creation + Presentation (45 minutes)

Part A: Game Planning (10 points)

  1. Game Design Document - Create a simple plan including:
  • Game objective (what’s the goal?)
  • Main character description
  • Basic rules (how do you win/lose?)
  • Required sprites and backgrounds
  1. Storyboard - Draw 3 screens showing:
  • Game start screen
  • Main gameplay
  • Win/lose screen

Part B: Game Implementation (25 points) 3. Core Functionality (15 points):

  • Character moves with arrow keys or WASD

  • At least one interactive element (enemy, collectible, obstacle)

  • Basic collision detection (touching = something happens)

  • Clear win or lose condition

  1. Polish and Enhancement (10 points):
  • Sound effects or music
  • Visual feedback (score, lives, timer)
  • Smooth sprite movement
  • Creative backgrounds or costumes

Part C: Presentation and Reflection (15 points) 5. Game Demo (10 points):

  • Explain game rules clearly

  • Demonstrate gameplay for 2 minutes

  • Show different game scenarios

  • Handle questions from classmates

  1. Technical Reflection (5 points):
  • Explain one challenging problem you solved
  • Describe one improvement you would make
  • Share one new Scratch skill you learned

Week 7-8 Assessment: Programming Concepts Mastery

Format: Mixed Assessment - Blockly Challenges + Scratch Review (50 minutes)

Part A: Blockly Logic Challenges (20 points)

  1. Maze Navigation (8 points):
  • Complete 3 increasingly difficult maze puzzles
  • Use efficient solutions (minimal blocks)
  • Demonstrate understanding of loops and conditionals
  1. Pattern Recognition (6 points):
  • Solve sequence completion puzzles
  • Identify and extend number/color patterns
  • Create original pattern for others to solve
  1. Logic Puzzles (6 points):
  • Complete IF/THEN decision trees
  • Solve multi-step conditional problems
  • Optimize solutions for clarity

Part B: Concept Transfer (15 points) 4. Visual to Text Translation (10 points): Given this Scratch code block arrangement:

[When flag clicked] → [Forever] → [If touching mouse] → [Move 10 steps]

Write in pseudocode (plain English): “When the program starts, ________________”

  1. Problem Decomposition (5 points): Break down this challenge into steps: “Create a sprite that follows the mouse but stops when it touches the edge”

Step 1: _______________ Step 2: _______________ Step 3: _______________ Step 4: _______________

Part C: Creative Application (15 points) 6. Original Algorithm (15 points): Choose ONE to complete:

Option A - Scratch: Create a “digital pet” that:

  • Follows mouse cursor
  • Changes expression when clicked
  • Makes sound when hungry (timer-based)
  • Has at least 3 different costumes

Option B - Blockly: Design a solution for:

  • Robot that sorts colored objects
  • Path that avoids all obstacles
  • Pattern that creates art using loops

Assessment Rubric:

  • Expert (90-100%): Exceeds requirements with creative solutions and clear explanations
  • Proficient (80-89%): Meets all requirements with good understanding demonstrated
  • Developing (70-79%): Meets most requirements but may have gaps in complex concepts
  • Novice (60-69%): Shows basic understanding but struggles with application
  • Beginning (Below 60%): Needs significant support to demonstrate concepts

Grade 6-9 (11-14 Years) - Weeks 6-8

Drone Laws, Emergency Procedures & Practical Flying

Week 6: Drone Laws and Regulations (Kenya Focus)

Learning Objectives:

  • Learn basic drone laws in Kenya (KCAA regulations)
  • Understand where and how children can fly drones legally
  • Develop awareness of responsible drone operation
  • Understand the importance of aviation safety

Key Concepts:

  • Kenya Civil Aviation Authority (KCAA): National aviation regulator
  • Drone Registration: Required identification and documentation
  • No-Fly Zones: Airports, government buildings, restricted areas
  • Altitude Restrictions: Maximum height limitations
  • Visual Line of Sight (VLOS): Maintaining visual contact
  • Privacy Laws: Respecting others’ rights and property

Kenya Drone Regulations Summary:

  1. Registration Requirements:
  • All drones over 250g must be registered with KCAA
  • Operator license required for commercial operations
  • Age restrictions for different categories of operation
  1. Operational Limits:
  • Maximum altitude: 400 feet (120 meters) AGL
  • Minimum distance from airports: 8km for major airports
  • No flying over crowds or public events
  • Daylight operations only (without special permits)
  1. Prohibited Areas:
  • Within 5km of any airport
  • Over government buildings and installations
  • National parks without permits
  • Private property without permission

Safety and Legal Guidelines for Young Pilots:

  • Always have adult supervision
  • Start with toy drones under 250g
  • Practice in open, safe areas
  • Respect others’ privacy and property
  • Learn emergency procedures
  • Keep drone in sight at all times

Week 7: Emergency Procedures and Responsible Flying

Learning Objectives:

  • Review key safety and legal concepts from previous weeks
  • Understand emergency basics for beginner flyers
  • Develop decision-making skills for unexpected situations
  • Practice responsible pilot behavior

Key Concepts:

  • Emergency Procedures: Systematic responses to problems
  • Risk Assessment: Evaluating dangers before flying
  • Decision Making: Choosing appropriate actions under pressure
  • Communication: Alerting others during emergencies
  • Equipment Failure: What to do when drone malfunctions
  • Weather Awareness: Recognizing dangerous conditions

Emergency Scenarios and Responses:

  1. Lost Communication with Drone:
  • Stay calm and observe drone behavior
  • Activate Return-to-Home (RTH) function if available
  • Move to higher ground for better signal
  • Prepare for manual landing if signal returns
  • Never chase after a flyaway drone
  1. Low Battery Warning:
  • Immediately begin landing sequence
  • Choose nearest safe landing spot
  • Avoid flying over people or property
  • Land even if not at original takeoff point
  • Safety is more important than convenience
  1. Unexpected Weather Changes:
  • Monitor weather conditions constantly
  • Land immediately if wind increases
  • Avoid flying in rain or snow
  • Watch for sudden temperature changes
  • When in doubt, don’t fly
  1. Equipment Malfunction:
  • Attempt controlled landing immediately
  • Don’t try to fix problems while airborne
  • Inform other people in the area
  • Document the problem for later analysis
  • Never continue flying with known issues

Mission Planning Process:

  1. Pre-flight Planning: Weather check, equipment inspection, route planning
  2. Risk Assessment: Identify potential hazards and mitigation strategies
  3. Communication Plan: Inform others of flight activities
  4. Emergency Procedures: Know what to do if things go wrong
  5. Post-flight Review: Analyze what went well and areas for improvement

Week 8: Practical Flying Skills and Team Challenges

Learning Objectives:

  • Demonstrate ability to control a mini drone (takeoff, hover, land)
  • Apply basic flight skills in problem-solving mission scenarios
  • Work as a team to complete drone-based challenges
  • Evaluate personal progress and set goals for improvement

Key Concepts:

  • Flight Control Mastery: Smooth, precise drone movements
  • Situational Awareness: Understanding surroundings during flight
  • Mission Planning: Preparing for specific flight objectives
  • Teamwork: Collaborative problem-solving with drones
  • Performance Evaluation: Self-assessment and peer feedback
  • Safety Leadership: Taking responsibility for safe operations

Basic Flight Skills Progression:

  1. Fundamental Controls:
  • Smooth takeoff to hover
  • Maintaining steady hover
  • Controlled landing
  • Forward/backward movement
  • Left/right movement
  • Rotation control
  1. Intermediate Maneuvers:
  • Figure-8 patterns
  • Precision landing on target
  • Obstacle avoidance
  • Following predetermined paths
  • Coordinated movements
  1. Advanced Challenges:
  • Team relay races
  • Rescue simulations
  • Precision delivery tasks
  • Group choreography
  • Time-based challenges

Mission Scenarios:

Mission 1: Search and Rescue

  • Objective: Locate “missing person” (target) in designated area
  • Skills: Systematic search patterns, communication, observation
  • Time limit: 5 minutes
  • Success criteria: Target identified and location communicated

Mission 2: Delivery Challenge

  • Objective: Transport small payload from Point A to Point B
  • Skills: Precision flying, cargo management, safe landing
  • Obstacles: Wind conditions, landing accuracy requirements
  • Success criteria: Payload delivered undamaged within time limit

Mission 3: Team Coordination

  • Objective: Multiple drones work together to complete complex task
  • Skills: Communication, timing, spatial awareness
  • Challenge: Choreographed flight pattern or group problem-solving
  • Success criteria: All drones complete task without collisions

Safety Protocols for Practical Flying:

  • Always maintain 10-foot safety zone around flying area
  • Designate specific roles: pilot, observer, safety officer
  • Use hand signals for communication during loud operations
  • Practice emergency landing procedures before each session
  • Rotate roles so everyone experiences different responsibilities

Grade 6-9 Assessment - Weeks 6-8

Week 6 Assessment: Drone Laws and Regulations

Format: Written Test + Legal Scenario Analysis (40 minutes)

Part A: Kenya Aviation Law Knowledge (25 points)

  1. KCAA Regulations (10 points) Fill in the blanks:
  • Drones over ______ grams must be registered with KCAA
  • Maximum altitude for recreational flying is ______ feet
  • Minimum distance from major airports is ______ kilometers
  • Commercial drone operations require a ______ license
  • Drones must remain within ______ line of sight
  1. No-Fly Zone Identification (10 points) Mark TRUE or FALSE for each flying location:
  • Your school playground during lunch break: ______
  • Open field 2km from Wilson Airport: ______
  • Your backyard with adult supervision: ______
  • Uhuru Park during a public event: ______
  • Private farm with owner’s permission: ______
  1. Legal Compliance (5 points) List 3 requirements for legally flying a drone in Kenya:



Part B: Scenario-Based Decision Making (20 points)

  1. Legal Scenarios (20 points) For each scenario, explain if the action is legal and why:

Scenario A: Sarah wants to fly her 300g drone over her neighbor’s house to take photos of her own backyard. Legal? _____ Why? _______________________________

Scenario B: James plans to fly his registered drone at 200 feet altitude in an open field 10km from any airport during daylight hours. Legal? _____ Why? _______________________________

Scenario C: A group of students want to use their drone for a school project, filming the school building from 100 feet up. Legal? _____ Why? _______________________________

Scenario D: Ahmed wants to fly his 150g toy drone in his compound for 10 minutes. Legal? _____ Why? _______________________________

Part C: Responsible Pilot Planning (15 points)

  1. Pre-flight Checklist (15 points) Create a 10-item pre-flight checklist that includes legal, safety, and equipment considerations:




[Continue through 10]

Week 7-8 Assessment: Emergency Procedures and Practical Skills

Format: Practical Flight Test + Emergency Response Simulation (60 minutes)

Part A: Emergency Response Knowledge (20 points)

  1. Emergency Procedures (15 points) Describe the correct response for each emergency:

Low Battery Warning: Step 1: _______________________________ Step 2: _______________________________ Step 3: _______________________________

Lost Radio Contact: Step 1: _______________________________ Step 2: _______________________________ Step 3: _______________________________

Sudden Weather Change: Step 1: _______________________________ Step 2: _______________________________ Step 3: _______________________________

  1. Risk Assessment (5 points) Identify 3 risks for flying in each environment:
  • School playground: ____________, ____________, ____________
  • Open field: ____________, ____________, ____________

Part B: Practical Flight Skills Assessment (30 points)

  1. Basic Flight Controls (15 points) Demonstrate competency in:
  • Smooth takeoff and landing (3 points)
  • Stable hovering for 30 seconds (3 points)
  • Forward/backward precision movement (3 points)
  • Left/right precision movement (3 points)
  • Controlled rotation (3 points)
  1. Mission Challenge (15 points) Complete ONE of the following missions:

Option A - Navigation Course:

  • Fly through 5 waypoints in sequence
  • Land within 1-meter target circle
  • Complete within 3 minutes

Option B - Team Coordination:

  • Work with partner to complete relay challenge
  • Communicate effectively during handoff
  • Maintain safety throughout mission

Part C: Leadership and Safety Evaluation (15 points)

  1. Safety Leadership (8 points) While others are flying, demonstrate:
  • Proper safety zone maintenance
  • Clear communication with pilot
  • Appropriate responses to unsafe situations
  • Helpful coaching and encouragement
  1. Self-Assessment and Goal Setting (7 points) Written reflection:
  • What flight skill are you most confident with? Why?
  • What area needs the most improvement?
  • Set one specific goal for future drone flying
  • Describe one way you can help others fly safely

Practical Skills Rubric:

  • Expert Pilot (90-100%): Demonstrates advanced skills, teaches others, shows exceptional safety awareness
  • Competent Pilot (80-89%): Performs all basic skills reliably, follows safety protocols consistently
  • Developing Pilot (70-79%): Shows improvement in most areas, occasional guidance needed
  • Novice Pilot (60-69%): Basic skills present but inconsistent, needs continued practice
  • Beginning Pilot (Below 60%): Requires significant instruction and supervision

Grade 10-12 (14-16 Years) - Weeks 6-8

Advanced Python Projects & Integration

Week 6-7: Integrated Systems Project (Combined Weeks)

Learning Objectives:

  • Combine motors and sensors in complex systems
  • Debug integrated hardware/software systems
  • Apply creative problem-solving to real-world challenges
  • Document projects professionally

Key Concepts:

  • Systems Integration: Combining multiple components into unified solutions
  • Hardware-Software Interface: Code that bridges digital and physical worlds
  • System Architecture: Planning complex projects with multiple subsystems
  • Error Handling: Managing failures gracefully in complex systems
  • Performance Optimization: Making systems run efficiently
  • Documentation Standards: Professional project recording

Advanced Integration Concepts:

1. Multi-Sensor Fusion

import threading
import queue
from gpiozero import DistanceSensor, MotionSensor, MCP3008
from time import sleep
import json

class SensorFusion:
    def __init__(self):
        self.distance_sensor = DistanceSensor(echo=24, trigger=23)
        self.motion_sensor = MotionSensor(4)
        self.light_sensor = MCP3008(channel=0)
        self.temp_sensor = MCP3008(channel=1)

        # Data queues for thread communication
        self.sensor_data = queue.Queue()
        self.running = False

    def read_sensors(self):
        """Continuous sensor reading in separate thread"""
        while self.running:
            try:
                data = {
                    'timestamp': time.time(),
                    'distance': self.distance_sensor.distance * 100,
                    'motion': self.motion_sensor.motion_detected,
                    'light_level': self.light_sensor.voltage,
                    'temperature': self.convert_temp(self.temp_sensor.voltage)
                }
                self.sensor_data.put(data)
                sleep(0.1)  # 10Hz sampling rate
            except Exception as e:
                print(f"Sensor reading error: {e}")

    def convert_temp(self, voltage):
        """Convert sensor voltage to temperature"""
        return (voltage - 0.5) * 100  # Example conversion

    def start_monitoring(self):
        """Start sensor monitoring thread"""
        self.running = True
        self.sensor_thread = threading.Thread(target=self.read_sensors)
        self.sensor_thread.start()

    def stop_monitoring(self):
        """Stop sensor monitoring"""
        self.running = False
        if hasattr(self, 'sensor_thread'):
            self.sensor_thread.join()

2. Intelligent Control Systems

class SmartEnvironmentController:
    def __init__(self):
        self.sensors = SensorFusion()
        self.fan_motor = Motor(forward=2, backward=3)
        self.heater_relay = OutputDevice(18)
        self.lights = PWMOutputDevice(19)

        # Control parameters
        self.target_temp = 22.0  # Target temperature in Celsius
        self.temp_tolerance = 1.0
        self.light_threshold = 0.3

        # Control state
        self.auto_mode = True
        self.manual_override = False

    def analyze_environment(self, sensor_data):
        """Intelligent decision making based on sensor data"""
        decisions = {
            'fan_speed': 0.0,
            'heater_on': False,
            'light_level': 0.0,
            'alert_status': 'normal'
        }

        # Temperature control logic
        temp_diff = sensor_data['temperature'] - self.target_temp

        if temp_diff > self.temp_tolerance:  # Too hot
            decisions['fan_speed'] = min(1.0, temp_diff / 5.0)  # Scale fan speed
            decisions['heater_on'] = False
        elif temp_diff < -self.temp_tolerance:  # Too cold
            decisions['fan_speed'] = 0.0
            decisions['heater_on'] = True

        # Light control logic
        if sensor_data['light_level'] < self.light_threshold:
            decisions['light_level'] = 1.0 - sensor_data['light_level']  # Complement lighting

        # Security monitoring
        if sensor_data['motion'] and sensor_data['distance'] < 20:  # Close motion
            decisions['alert_status'] = 'intrusion_detected'
        elif sensor_data['distance'] < 5:  # Very close object
            decisions['alert_status'] = 'obstacle_warning'

        return decisions

    def execute_controls(self, decisions):
        """Execute control decisions"""
        if not self.manual_override:
            # Motor control
            if decisions['fan_speed'] > 0:
                self.fan_motor.forward(decisions['fan_speed'])
            else:
                self.fan_motor.stop()

            # Heater control
            if decisions['heater_on']:
                self.heater_relay.on()
            else:
                self.heater_relay.off()

            # Light control
            self.lights.value = decisions['light_level']

    def run_control_loop(self):
        """Main control loop"""
        self.sensors.start_monitoring()

        try:
            while True:
                if not self.sensors.sensor_data.empty():
                    current_data = self.sensors.sensor_data.get()
                    decisions = self.analyze_environment(current_data)
                    self.execute_controls(decisions)

                    # Log system status
                    self.log_system_status(current_data, decisions)

                sleep(0.5)  # Control loop frequency

        except KeyboardInterrupt:
            print("Shutting down control system...")
        finally:
            self.sensors.stop_monitoring()
            self.fan_motor.stop()
            self.heater_relay.off()
            self.lights.off()

    def log_system_status(self, sensor_data, decisions):
        """Log system performance data"""
        log_entry = {
            'timestamp': sensor_data['timestamp'],
            'sensors': sensor_data,
            'controls': decisions,
            'mode': 'auto' if self.auto_mode else 'manual'
        }

        # In a real system, this would write to a file or database
        print(f"System Status: Temp={sensor_data['temperature']:.1f}°C, "
              f"Fan={decisions['fan_speed']:.1f}, "
              f"Alert={decisions['alert_status']}")

3. Project Documentation Standards

"""
Smart Environment Control System
================================

Project: IoT Environmental Controller
Author: Student Name
Date: Current Date
Version: 1.0

Description:
    An intelligent system that monitors environmental conditions and automatically
    adjusts heating, cooling, and lighting based on sensor feedback.

Hardware Requirements:
    - Raspberry Pi 4 or similar
    - Temperature sensor (DS18B20 or similar)
    - Light sensor (LDR with MCP3008 ADC)
    - Motion sensor (PIR)
    - Distance sensor (HC-SR04)
    - DC Motor (for fan simulation)
    - Relay module (for heater control)
    - PWM-controlled LED (for lighting)

Software Dependencies:
    - Python 3.7+
    - gpiozero library
    - threading module (standard library)
    - queue module (standard library)
    - json module (standard library)

Installation:
    pip install gpiozero

Usage:
    python smart_environment.py

Configuration:
    Modify target_temp and light_threshold variables in SmartEnvironmentController
    class to adjust system behavior.

Testing:
    Run included test functions to verify sensor readings and control outputs
    before deploying the full system.

Known Issues:
    - Temperature sensor calibration may need adjustment for local conditions
    - Motion sensor has 2-second reset time that affects rapid detection

Future Enhancements:
    - Web interface for remote monitoring
    - Data logging to CSV files
    - Machine learning for predictive control
    - Mobile app integration
"""

Project Examples for Students:

Project 1: Smart Garden Monitor

  • Monitors soil moisture, light, and temperature
  • Controls watering pump and grow lights
  • Logs plant growth data
  • Sends alerts when intervention needed

Project 2: Home Security System

  • Multiple sensor integration (motion, door, window)
  • Camera trigger on detection
  • SMS/email notifications
  • Mobile app control interface

Project 3: Weather Station

  • Measures temperature, humidity, pressure, wind
  • Data logging with timestamps
  • Weather prediction algorithms
  • Web dashboard for data visualization

Project 4: Automated Greenhouse

  • Climate control (temperature, humidity)
  • Automated watering system
  • Light cycle management
  • Growth optimization algorithms

Week 8: Project Presentations and Assessment

Learning Objectives:

  • Present technical projects professionally
  • Give and receive constructive feedback
  • Self-evaluate learning progress and achievements
  • Plan next steps for continued learning

Key Concepts:

  • Technical Communication: Explaining complex systems clearly
  • Presentation Skills: Engaging audiences with technical content
  • Peer Review: Constructive feedback and collaboration
  • Self-Assessment: Honest evaluation of own work
  • Professional Development: Planning continued learning paths
  • Portfolio Building: Documenting achievements for future opportunities

Presentation Structure:

  1. Project Overview (2 minutes)
  • Problem statement and objectives
  • Target audience and use cases
  • Key features and functionality
  1. Technical Demonstration (2 minutes)
  • Live system operation
  • Key components and how they work
  • Code walkthrough of critical sections
  1. Challenges and Solutions (1 minute)
  • Major obstacles encountered
  • Creative solutions implemented
  • Lessons learned from failures

Evaluation Criteria:

Technical Merit (40%):

  • System functionality and reliability
  • Code quality and organization
  • Creative problem-solving approach
  • Integration of multiple technologies

Communication (30%):

  • Clear explanation of technical concepts
  • Engaging presentation delivery
  • Appropriate use of visual aids
  • Effective response to questions

Documentation (20%):

  • Complete project documentation
  • Code comments and structure
  • User instructions and setup guides
  • Reflection on learning process

Collaboration (10%):

  • Constructive feedback to peers
  • Professional interaction during Q&A
  • Willingness to share knowledge
  • Respectful critique and discussion

Python Programming Trivia Challenge: End the term with fun technical questions:

  1. What does “PEP 8” refer to in Python?
  2. What’s the difference between == and is in Python?
  3. How do you handle exceptions in Python?
  4. What is a Python decorator?
  5. What’s the difference between a list and a tuple?

Grade 10-12 Final Assessment - Weeks 6-8

Integrated Systems Project Assessment

Format: Major Project + Technical Presentation + Peer Review (2 weeks + presentation day)

Project Requirements: Students must create an integrated system that combines:

  • At least 3 different sensors
  • At least 2 actuators (motors, lights, relays, etc.)
  • Data logging and analysis
  • User interface (command line or simple GUI)
  • Error handling and safety features

Part A: Technical Implementation (40 points)

System Design (10 points)

  • Clear problem definition and solution approach
  • System architecture diagram showing component relationships
  • Hardware schematic or connection diagram
  • Software flowchart or algorithm description

Code Quality (15 points)

  • Well-structured, modular code with functions/classes
  • Appropriate variable names and code organization
  • Comprehensive comments explaining complex sections
  • Error handling for hardware failures
  • Efficient algorithms and resource usage

Hardware Integration (15 points)

  • Stable sensor readings with appropriate filtering
  • Reliable actuator control with safety limits
  • Proper electrical connections and component usage
  • System operates reliably for extended periods
  • Professional cable management and mounting

Part B: Documentation and Communication (25 points)

Project Documentation (15 points) Create a complete project report including:

  • Executive summary of project goals and achievements
  • Detailed technical specifications and requirements
  • Installation and setup instructions
  • User manual with clear operating procedures
  • Troubleshooting guide for common problems
  • Code documentation with API reference

Technical Presentation (10 points)

  • Clear 5-minute presentation explaining project
  • Live demonstration of working system
  • Professional slides with technical diagrams
  • Confident handling of technical questions
  • Appropriate use of technical vocabulary

Part C: Innovation and Problem Solving (20 points)

Creative Solutions (10 points)

  • Original approach to solving chosen problem
  • Creative use of available hardware and software
  • Evidence of iterative design and improvement
  • Solutions show depth of understanding beyond basic requirements

Advanced Features (10 points) Choose and implement at least TWO:

  • Machine learning or AI decision making
  • Network communication (IoT connectivity)
  • Mobile app or web interface
  • Data visualization and analytics
  • Predictive algorithms or optimization
  • Integration with external APIs or services

Part D: Professional Skills (15 points)

Peer Collaboration (8 points)

  • Constructive feedback provided to classmates
  • Professional behavior during presentations
  • Willingness to help others debug problems
  • Respectful and insightful questions during Q&A

Self-Assessment (7 points) Written reflection addressing:

  • Most significant technical challenge and how you overcame it
  • What you would do differently if starting over
  • How this project connects to potential career interests
  • Specific skills you want to develop further
  • Your confidence level with different aspects of the project

Sample Project Evaluation Rubric:

Exceptional (90-100%)

  • System exceeds all requirements with innovative features
  • Code is publication-quality with comprehensive documentation
  • Presentation is engaging and demonstrates deep understanding
  • Shows leadership in helping others and contributing to class learning
  • Self-reflection shows sophisticated understanding of learning process

Proficient (80-89%)

  • System meets all requirements reliably
  • Code is well-structured with good documentation
  • Presentation is clear and technically accurate
  • Actively participates in peer learning and feedback
  • Self-reflection shows good awareness of strengths and growth areas

Developing (70-79%)

  • System meets most requirements with minor issues
  • Code works but may have organizational or documentation gaps
  • Presentation covers required topics but may lack depth
  • Participates adequately in class activities
  • Self-reflection shows basic understanding of learning process

Beginning (60-69%)

  • System meets basic requirements but has significant limitations
  • Code works for demonstration but has structural or reliability issues
  • Presentation covers basics but shows limited understanding
  • Minimal participation in peer activities
  • Self-reflection is superficial or lacks insight

Incomplete (Below 60%)

  • System fails to meet basic requirements or doesn’t function reliably
  • Code has major issues that prevent proper operation
  • Presentation is unclear or shows misunderstanding of concepts
  • Little to no participation in collaborative learning
  • Self-reflection missing or shows no evidence of learning

Term 1 Final Portfolio Assessment - All Grade Levels

Portfolio Components Checklist

For All Students:

  • Weekly reflection journals documenting learning progress
  • Photo documentation of all projects and experiments
  • Completed weekly assessments with corrections
  • Evidence of peer collaboration and teaching
  • Self-assessment of growth in each major topic area

Grade-Specific Additions:

Preschoolers (4-6 years):

  • Drawings of favorite STEM activities
  • Parent/teacher observation notes on engagement and skills
  • Examples of unplugged coding sequences created
  • Photos of technology exploration activities

Grade 2-5 (7-11 years):

  • Screenshots of completed Scratch projects
  • Blockly puzzle solutions and explanations
  • Game design documents and storyboards
  • Video explanations of programming concepts

Grade 6-9 (11-14 years):

  • Drone safety checklist created and used
  • Mission planning worksheets with risk assessments
  • Photos/videos of practical flying sessions
  • Research report on drone applications in chosen field

Grade 10-12 (14-16 years):

  • Complete code repositories with documentation
  • Hardware connection diagrams and schematics
  • Data analysis reports from sensor projects
  • Technical presentation slides and demonstration videos

Cross-Grade Learning Objectives Mastery

By the end of Term 1, students should demonstrate:

Preschoolers:

  • Basic understanding of STEM concepts through play
  • Ability to follow simple sequences and patterns
  • Safe interaction with age-appropriate technology
  • Curiosity and engagement with hands-on exploration

Grade 2-5:

  • Fundamental programming concepts using visual languages
  • Ability to create simple games and interactive stories
  • Understanding of sequence, loops, and basic logic
  • Confidence in debugging and problem-solving

Grade 6-9:

  • Comprehensive understanding of drone safety and regulations
  • Practical flying skills with safety awareness
  • Knowledge of aviation principles and laws
  • Teamwork and communication skills in technical contexts

Grade 10-12:

  • Proficiency in Python programming for hardware control
  • Ability to integrate multiple sensors and actuators
  • Professional documentation and presentation skills
  • Independent problem-solving and creative innovation

Preparation for Term 2

Preschoolers → Scratch Junior Programming:

  • Continue building sequencing skills
  • Introduction to tablet-based programming
  • Creative storytelling with technology

Grade 2-5 → IoT Integration with Sensors:

  • Bridge from visual programming to physical computing
  • Introduction to sensors and real-world data
  • Beginning electronics and circuit concepts

Grade 6-9 → Smart Home Security:

  • Apply drone safety concepts to IoT systems
  • Introduction to sensors and automation
  • Home automation and security principles

Grade 10-12 → Smart Cities:

  • Scale up from individual projects to community solutions
  • Advanced IoT networking and data analysis
  • Social impact of technology solutions

Additional Resources and Extensions

Online Learning Platforms:

  • Preschoolers: PBS Kids programming games, Kodable app
  • Grade 2-5: Scratch Jr., Code.org courses, Blockly games
  • Grade 6-9: DroneBlocks, FAA educational materials, aviation simulation games
  • Grade 10-12: Python.org tutorials, Raspberry Pi Foundation projects, GitHub learning labs

STEM Career Connections:

  • Robotics Engineer: Designs and builds robots for various applications
  • Software Developer: Creates programs and applications for computers and devices
  • Drone Pilot: Professional UAV operations for photography, surveying, delivery
  • IoT Developer: Connects everyday objects to the internet for smart automation
  • Data Scientist: Analyzes sensor data to find patterns and make predictions

Community Extension Activities:

  • Science Fair Projects: Using skills learned to create original investigations
  • STEM Club Leadership: Teaching younger students basic concepts
  • Community Problem Solving: Identifying local problems that technology could help solve
  • Maker Space Participation: Continuing projects in community workshop environments

Assessment Data Tracking: Teachers should maintain records of:

  • Individual student progress through learning objectives
  • Common areas of difficulty requiring additional support
  • Exceptional student work that could be showcased
  • Parent/guardian feedback on home engagement with STEM concepts
  • Equipment and resource needs for optimal program delivery

This completes the comprehensive Term 1 curriculum with detailed notes, assessments, and support materials for all grade levels in the IoT & Robotics program. Each grade level has age-appropriate challenges that build foundational skills while maintaining engagement and fostering creativity in STEM learning.


Notes

I’ve created a comprehensive set of notes and assessment tests for Term 1 across all grade levels (Preschoolers through Grade 10-12). The document includes:

What’s Included:

For Each Grade Level:

  • Detailed weekly lesson notes covering weeks 1-8 content
  • Key concepts and learning objectives for each topic
  • Practical examples and code samples (for programming grades)
  • Age-appropriate assessment tests with multiple formats

Assessment Formats:

  • Preschoolers (4-6): Practical/observational assessments with hands-on activities
  • Grade 2-5 (7-11): Computer-based Scratch/Blockly challenges
  • Grade 6-9 (11-14): Written tests + practical drone safety demonstrations
  • Grade 10-12 (14-16): Coding assignments + hardware integration projects

Key Features:

  • Covers all 8 weeks of Term 1 content
  • Aligned with curriculum from the IoT & Robotics document
  • Progressive difficulty appropriate for each age group
  • Practical assessments that test real understanding
  • Detailed rubrics for fair evaluation
  • Extension activities for advanced learners
  • Safety guidelines and best practices

Topics Covered:

  • Preschoolers: STEM basics, simple machines, unplugged coding
  • Grade 2-5: Scratch programming, Blockly games, interface navigation
  • Grade 6-9: Drone basics, aviation principles, safety regulations
  • Grade 10-12: Python programming, hardware control, sensor integration

Each assessment is designed to be practical and engaging, testing both theoretical knowledge and hands-on application skills. The rubrics provide clear criteria for evaluation at different skill levels.


Perfect! I’ve now completed the comprehensive Term 1 notes and assessment materials covering all 8 weeks for all grade levels. Here’s what’s now included:

Assessment Test

Assessment Test

Assessment Test

Assessment Test

Assessment Test

Assessment Test

Assessment Test

Intro - Grade 6 - 9

Term 1 Final Portfolio Assessment - All Grade Levels

Portfolio Components Checklist

For All Students:

  • Weekly reflection journals documenting learning progress
  • Photo documentation of all projects and experiments
  • Completed weekly assessments with corrections
  • Evidence of peer collaboration and teaching
  • Self-assessment of growth in each major topic area

Grade-Specific Additions:

Preschoolers (4-6 years):

  • Drawings of favorite STEM activities
  • Parent/teacher observation notes on engagement and skills
  • Examples of unplugged coding sequences created
  • Photos of technology exploration activities

Grade 2-5 (7-11 years):

  • Screenshots of completed Scratch projects
  • Blockly puzzle solutions and explanations
  • Game design documents and storyboards
  • Video explanations of programming concepts

Grade 6-9 (11-14 years):

  • Drone safety checklist created and used
  • Mission planning worksheets with risk assessments
  • Photos/videos of practical flying sessions
  • Research report on drone applications in chosen field

Grade 10-12 (14-16 years):

  • Complete code repositories with documentation
  • Hardware connection diagrams and schematics
  • Data analysis reports from sensor projects
  • Technical presentation slides and demonstration videos

Cross-Grade Learning Objectives Mastery

By the end of Term 1, students should demonstrate:

Preschoolers:

  • Basic understanding of STEM concepts through play
  • Ability to follow simple sequences and patterns
  • Safe interaction with age-appropriate technology
  • Curiosity and engagement with hands-on exploration

Grade 2-5:

  • Fundamental programming concepts using visual languages
  • Ability to create simple games and interactive stories
  • Understanding of sequence, loops, and basic logic
  • Confidence in debugging and problem-solving

Grade 6-9:

  • Comprehensive understanding of drone safety and regulations
  • Practical flying skills with safety awareness
  • Knowledge of aviation principles and laws
  • Teamwork and communication skills in technical contexts

Grade 10-12:

  • Proficiency in Python programming for hardware control
  • Ability to integrate multiple sensors and actuators
  • Professional documentation and presentation skills
  • Independent problem-solving and creative innovation

Preparation for Term 2

Preschoolers → Scratch Junior Programming:

  • Continue building sequencing skills
  • Introduction to tablet-based programming
  • Creative storytelling with technology

Grade 2-5 → IoT Integration with Sensors:

  • Bridge from visual programming to physical computing
  • Introduction to sensors and real-world data
  • Beginning electronics and circuit concepts

Grade 6-9 → Smart Home Security:

  • Apply drone safety concepts to IoT systems
  • Introduction to sensors and automation
  • Home automation and security principles

Grade 10-12 → Smart Cities:

  • Scale up from individual projects to community solutions
  • Advanced IoT networking and data analysis
  • Social impact of technology solutions

Additional Resources and Extensions

Online Learning Platforms:

  • Preschoolers: PBS Kids programming games, Kodable app
  • Grade 2-5: Scratch Jr., Code.org courses, Blockly games
  • Grade 6-9: DroneBlocks, FAA educational materials, aviation simulation games
  • Grade 10-12: Python.org tutorials, Raspberry Pi Foundation projects, GitHub learning labs

STEM Career Connections:

  • Robotics Engineer: Designs and builds robots for various applications
  • Software Developer: Creates programs and applications for computers and devices
  • Drone Pilot: Professional UAV operations for photography, surveying, delivery
  • IoT Developer: Connects everyday objects to the internet for smart automation
  • Data Scientist: Analyzes sensor data to find patterns and make predictions

Community Extension Activities:

  • Science Fair Projects: Using skills learned to create original investigations
  • STEM Club Leadership: Teaching younger students basic concepts
  • Community Problem Solving: Identifying local problems that technology could help solve
  • Maker Space Participation: Continuing projects in community workshop environments

Assessment Data Tracking: Teachers should maintain records of:

  • Individual student progress through learning objectives
  • Common areas of difficulty requiring additional support
  • Exceptional student work that could be showcased
  • Parent/guardian feedback on home engagement with STEM concepts
  • Equipment and resource needs for optimal program delivery

This completes the comprehensive Term 1 curriculum with detailed notes, assessments, and support materials for all grade levels in the IoT & Robotics program. Each grade level has age-appropriate challenges that build foundational skills while maintaining engagement and fostering creativity in STEM learning.


Grade 6-9 (11-14 Years)

Term 1: Drone Aviation Introduction

Week 1: Introduction to Drones and Aviation Basics

Learning Objectives:

  • Understand what drones are and their applications
  • Learn basic aviation principles
  • Identify different types of aircraft
  • Understand the evolution of flight

Key Concepts:

  • Unmanned Aerial Vehicle (UAV): Aircraft without a human pilot aboard
  • Remote Pilot: Person controlling the drone from the ground
  • Autonomous Flight: Drones flying with minimal human control
  • Commercial vs. Recreational Use: Different purposes for drones
  • Four Forces of Flight: Lift, Weight, Thrust, Drag
  • Aerodynamics: How air moves around objects in flight

Applications of Drones:

  • Photography and videography
  • Search and rescue operations
  • Agriculture monitoring
  • Package delivery
  • Scientific research
  • Military operations

Assessment Test - Grade 6-9 (11-14 Years)

Week 1-2 Assessment: Drone Basics and Safety

Format: Written Test + Practical Safety Demonstration (45 minutes)

Part A: Multiple Choice (20 points)

  1. What does UAV stand for? a) Universal Aviation Vehicle b) Unmanned Aerial Vehicle c) Ultra Aerodynamic Vehicle d) United Aviation Vehicle

  2. Which of the four forces of flight works against gravity? a) Thrust b) Drag c) Lift d) Weight

  3. What should you do FIRST before flying a drone? a) Start the motors b) Check weather conditions c) Take off immediately d) Turn on the camera

  4. The maximum altitude for recreational drone flight is: a) 200 feet b) 300 feet c) 400 feet d) 500 feet

  5. What is the main difference between commercial and recreational drone use? a) Size of drone b) Purpose and regulations c) Color of drone d) Number of rotors

Part B: Short Answer (25 points) 6. List 5 safety rules that must be followed when operating a drone: (10 points)






  1. Explain three commercial applications of drones: (9 points)




  2. Why is it important to maintain visual contact with your drone during flight? (6 points)


Part C: Practical Safety Assessment (15 points) 9. Demonstrate proper pre-flight inspection checklist 10. Identify suitable vs. unsuitable flying locations from photos 11. Explain emergency landing procedures

Week 2: Drone Safety Rules and Best Practices

Learning Objectives:

  • Learn essential drone safety protocols
  • Understand pre-flight checklist procedures
  • Identify potential hazards and risks
  • Develop responsible drone operation habits

Key Concepts:

  • Pre-flight Inspection: Checking drone condition before flying
  • Weather Conditions: How weather affects drone flight
  • Battery Safety: Proper battery handling and storage
  • Emergency Procedures: What to do when things go wrong
  • Situational Awareness: Being aware of surroundings while flying

Safety Rules:

  1. Always maintain visual contact with drone
  2. Check weather conditions before flying
  3. Inspect drone and equipment before each flight
  4. Fly in open areas away from people and property
  5. Never fly above 400 feet
  6. Respect others’ privacy
  7. Land immediately if drone malfunctions

Assessment Test - Grade 6-9 (11-14 Years)

Week 1-2 Assessment: Drone Basics and Safety

Format: Written Test + Practical Safety Demonstration (45 minutes)

Part A: Multiple Choice (20 points)

  1. What does UAV stand for? a) Universal Aviation Vehicle b) Unmanned Aerial Vehicle c) Ultra Aerodynamic Vehicle d) United Aviation Vehicle

  2. Which of the four forces of flight works against gravity? a) Thrust b) Drag c) Lift d) Weight

  3. What should you do FIRST before flying a drone? a) Start the motors b) Check weather conditions c) Take off immediately d) Turn on the camera

  4. The maximum altitude for recreational drone flight is: a) 200 feet b) 300 feet c) 400 feet d) 500 feet

  5. What is the main difference between commercial and recreational drone use? a) Size of drone b) Purpose and regulations c) Color of drone d) Number of rotors

Part B: Short Answer (25 points) 6. List 5 safety rules that must be followed when operating a drone: (10 points)






  1. Explain three commercial applications of drones: (9 points)




  2. Why is it important to maintain visual contact with your drone during flight? (6 points)


Part C: Practical Safety Assessment (15 points) 9. Demonstrate proper pre-flight inspection checklist 10. Identify suitable vs. unsuitable flying locations from photos 11. Explain emergency landing procedures

Week 3: FAA/UAS Regulations (Basic Overview)

Learning Objectives:

  • Understand basic aviation regulations
  • Learn about no-fly zones and restricted airspace
  • Understand registration requirements
  • Learn about pilot certification basics

Key Concepts:

  • Federal Aviation Administration (FAA): Government agency regulating aviation
  • Unmanned Aircraft Systems (UAS): Official term for drones and related equipment
  • No-Fly Zones: Areas where drone flight is prohibited
  • Remote Pilot Certificate: License required for commercial drone operations
  • Registration: Required identification for drones over 0.55 pounds

Basic Regulations:

  • Drones must be registered if over 0.55 lbs (250 grams)
  • Maximum altitude: 400 feet above ground level
  • Must yield right-of-way to manned aircraft
  • No flying over groups of people
  • No flying at night without special certification
  • Respect airport operational areas (usually 5-mile radius)

Week 3-5 Assessment: Regulations and Flight Principles

Format: Written Test + Flight Theory Application (50 minutes)

Part A: Regulations Knowledge (20 points)

  1. True/False (10 points)
  • Drones under 0.55 lbs need to be registered: ___
  • You can fly your drone anywhere as long as it’s daytime: ___
  • Commercial drone operations require a Remote Pilot Certificate: ___
  • Drones must always yield to manned aircraft: ___
  • Flying over groups of people is allowed with permission: ___
  1. What is a no-fly zone and give 3 examples: (10 points) Definition: ____ Examples:




Part B: Drone Components (15 points) 3. Match the component to its function:

  • Flight Controller: _ a) Provides power to motors
  • ESC: _ b) Stabilizes camera
  • Gimbal: _ c) Main structural support
  • Frame: _ d) Controls drone flight
  • Battery: _ e) Controls motor speed
  1. Compare quadcopter vs. fixed-wing drones (advantages/disadvantages): (10 points)

Part C: Flight Principles (25 points) 5. Draw and label the four forces of flight on a drone diagram: (12 points)

  1. Explain how a drone moves in each direction: (13 points)
  • Forward: ____
  • Backward: ____
  • Left: ____
  • Right: ____
  • Up: ____
  • Rotate left: ____

Assessment Rubric:

  • Expert (90-100%): Demonstrates comprehensive understanding with detailed explanations
  • Proficient (80-89%): Shows solid grasp of concepts with minor gaps
  • Developing (70-79%): Understands basic concepts but lacks detail in complex areas
  • Novice (Below 70%): Limited understanding, needs additional instruction

Week 4: Key Drone Types & Components

Learning Objectives:

  • Identify different drone configurations
  • Understand key drone components and their functions
  • Compare advantages and disadvantages of different designs
  • Learn basic maintenance requirements

Key Concepts:

  • Multirotor: Drones with multiple rotating propellers
  • Fixed-wing: Airplane-like drones with wings
  • Hybrid VTOL: Vertical takeoff and landing with forward flight capability
  • Frame: Main structure holding all components
  • Flight Controller: Computer controlling drone flight
  • ESC (Electronic Speed Controller): Controls motor speed
  • Gimbal: Stabilizes camera during flight

Drone Types:

  1. Quadcopter: 4 rotors, most common configuration
  2. Hexacopter: 6 rotors, more redundancy and payload capacity
  3. Octocopter: 8 rotors, highest redundancy and capacity
  4. Fixed-wing: Longer flight times, faster speeds
  5. Racing drones: Small, fast, agile for competitive flying

Week 3-5 Assessment: Regulations and Flight Principles

Format: Written Test + Flight Theory Application (50 minutes)

Part A: Regulations Knowledge (20 points)

  1. True/False (10 points)
  • Drones under 0.55 lbs need to be registered: ___
  • You can fly your drone anywhere as long as it’s daytime: ___
  • Commercial drone operations require a Remote Pilot Certificate: ___
  • Drones must always yield to manned aircraft: ___
  • Flying over groups of people is allowed with permission: ___
  1. What is a no-fly zone and give 3 examples: (10 points) Definition: ____ Examples:




Part B: Drone Components (15 points) 3. Match the component to its function:

  • Flight Controller: _ a) Provides power to motors
  • ESC: _ b) Stabilizes camera
  • Gimbal: _ c) Main structural support
  • Frame: _ d) Controls drone flight
  • Battery: _ e) Controls motor speed
  1. Compare quadcopter vs. fixed-wing drones (advantages/disadvantages): (10 points)

Part C: Flight Principles (25 points) 5. Draw and label the four forces of flight on a drone diagram: (12 points)

  1. Explain how a drone moves in each direction: (13 points)
  • Forward: ____
  • Backward: ____
  • Left: ____
  • Right: ____
  • Up: ____
  • Rotate left: ____

Assessment Rubric:

  • Expert (90-100%): Demonstrates comprehensive understanding with detailed explanations
  • Proficient (80-89%): Shows solid grasp of concepts with minor gaps
  • Developing (70-79%): Understands basic concepts but lacks detail in complex areas
  • Novice (Below 70%): Limited understanding, needs additional instruction

Week 5: Basic Principles of Flight

Learning Objectives:

  • Understand the four forces of flight in detail
  • Learn how drones achieve controlled flight
  • Understand stability and control concepts
  • Explore flight dynamics and physics

Key Concepts:

  • Lift: Upward force generated by rotors or wings
  • Weight (Gravity): Downward force pulling drone toward earth
  • Thrust: Forward force propelling drone through air
  • Drag: Resistance force opposing motion through air
  • Center of Gravity: Balance point of drone
  • Pitch, Roll, Yaw: Three axes of rotation
  • Gyroscopic Effect: How spinning rotors affect stability

Flight Control:

  • Throttle: Controls altitude (up/down)
  • Pitch: Controls forward/backward movement
  • Roll: Controls left/right movement
  • Yaw: Controls rotation (turning left/right)
  • Trim: Fine adjustments for balanced flight

Week 3-5 Assessment: Regulations and Flight Principles

Format: Written Test + Flight Theory Application (50 minutes)

Part A: Regulations Knowledge (20 points)

  1. True/False (10 points)
  • Drones under 0.55 lbs need to be registered: ___
  • You can fly your drone anywhere as long as it’s daytime: ___
  • Commercial drone operations require a Remote Pilot Certificate: ___
  • Drones must always yield to manned aircraft: ___
  • Flying over groups of people is allowed with permission: ___
  1. What is a no-fly zone and give 3 examples: (10 points) Definition: ____ Examples:




Part B: Drone Components (15 points) 3. Match the component to its function:

  • Flight Controller: _ a) Provides power to motors
  • ESC: _ b) Stabilizes camera
  • Gimbal: _ c) Main structural support
  • Frame: _ d) Controls drone flight
  • Battery: _ e) Controls motor speed
  1. Compare quadcopter vs. fixed-wing drones (advantages/disadvantages): (10 points)

Part C: Flight Principles (25 points) 5. Draw and label the four forces of flight on a drone diagram: (12 points)

  1. Explain how a drone moves in each direction: (13 points)
  • Forward: ____
  • Backward: ____
  • Left: ____
  • Right: ____
  • Up: ____
  • Rotate left: ____

Assessment Rubric:

  • Expert (90-100%): Demonstrates comprehensive understanding with detailed explanations
  • Proficient (80-89%): Shows solid grasp of concepts with minor gaps
  • Developing (70-79%): Understands basic concepts but lacks detail in complex areas
  • Novice (Below 70%): Limited understanding, needs additional instruction

Grade 6-9 (11-14 Years) - Weeks 6-8

Drone Laws, Emergency Procedures & Practical Flying

Week 6: Drone Laws and Regulations (Kenya Focus)

Learning Objectives:

  • Learn basic drone laws in Kenya (KCAA regulations)
  • Understand where and how children can fly drones legally
  • Develop awareness of responsible drone operation
  • Understand the importance of aviation safety

Key Concepts:

  • Kenya Civil Aviation Authority (KCAA): National aviation regulator
  • Drone Registration: Required identification and documentation
  • No-Fly Zones: Airports, government buildings, restricted areas
  • Altitude Restrictions: Maximum height limitations
  • Visual Line of Sight (VLOS): Maintaining visual contact
  • Privacy Laws: Respecting others’ rights and property

Kenya Drone Regulations Summary:

  1. Registration Requirements:
  • All drones over 250g must be registered with KCAA
  • Operator license required for commercial operations
  • Age restrictions for different categories of operation
  1. Operational Limits:
  • Maximum altitude: 400 feet (120 meters) AGL
  • Minimum distance from airports: 8km for major airports
  • No flying over crowds or public events
  • Daylight operations only (without special permits)
  1. Prohibited Areas:
  • Within 5km of any airport
  • Over government buildings and installations
  • National parks without permits
  • Private property without permission

Safety and Legal Guidelines for Young Pilots:

  • Always have adult supervision
  • Start with toy drones under 250g
  • Practice in open, safe areas
  • Respect others’ privacy and property
  • Learn emergency procedures
  • Keep drone in sight at all times

Grade 6-9 Assessment - Weeks 6-8

Week 6 Assessment: Drone Laws and Regulations

Format: Written Test + Legal Scenario Analysis (40 minutes)

Part A: Kenya Aviation Law Knowledge (25 points)

  1. KCAA Regulations (10 points) Fill in the blanks:
  • Drones over __ grams must be registered with KCAA
  • Maximum altitude for recreational flying is __ feet
  • Minimum distance from major airports is __ kilometers
  • Commercial drone operations require a __ license
  • Drones must remain within __ line of sight
  1. No-Fly Zone Identification (10 points) Mark TRUE or FALSE for each flying location:
  • Your school playground during lunch break: __
  • Open field 2km from Wilson Airport: __
  • Your backyard with adult supervision: __
  • Uhuru Park during a public event: __
  • Private farm with owner’s permission: __
  1. Legal Compliance (5 points) List 3 requirements for legally flying a drone in Kenya:




Part B: Scenario-Based Decision Making (20 points)

  1. Legal Scenarios (20 points) For each scenario, explain if the action is legal and why:

    Scenario A: Sarah wants to fly her 300g drone over her neighbor’s house to take photos of her own backyard. Legal? _ Why? ___

    Scenario B: James plans to fly his registered drone at 200 feet altitude in an open field 10km from any airport during daylight hours. Legal? _ Why? ___

    Scenario C: A group of students want to use their drone for a school project, filming the school building from 100 feet up. Legal? _ Why? ___

    Scenario D: Ahmed wants to fly his 150g toy drone in his compound for 10 minutes. Legal? _ Why? ___

Part C: Responsible Pilot Planning (15 points)

  1. Pre-flight Checklist (15 points) Create a 10-item pre-flight checklist that includes legal, safety, and equipment considerations:




  2. [Continue through 10]

Week 7: Emergency Procedures and Responsible Flying

Learning Objectives:

  • Review key safety and legal concepts from previous weeks
  • Understand emergency basics for beginner flyers
  • Develop decision-making skills for unexpected situations
  • Practice responsible pilot behavior

Key Concepts:

  • Emergency Procedures: Systematic responses to problems
  • Risk Assessment: Evaluating dangers before flying
  • Decision Making: Choosing appropriate actions under pressure
  • Communication: Alerting others during emergencies
  • Equipment Failure: What to do when drone malfunctions
  • Weather Awareness: Recognizing dangerous conditions

Emergency Scenarios and Responses:

  1. Lost Communication with Drone:
  • Stay calm and observe drone behavior
  • Activate Return-to-Home (RTH) function if available
  • Move to higher ground for better signal
  • Prepare for manual landing if signal returns
  • Never chase after a flyaway drone
  1. Low Battery Warning:
  • Immediately begin landing sequence
  • Choose nearest safe landing spot
  • Avoid flying over people or property
  • Land even if not at original takeoff point
  • Safety is more important than convenience
  1. Unexpected Weather Changes:
  • Monitor weather conditions constantly
  • Land immediately if wind increases
  • Avoid flying in rain or snow
  • Watch for sudden temperature changes
  • When in doubt, don’t fly
  1. Equipment Malfunction:
  • Attempt controlled landing immediately
  • Don’t try to fix problems while airborne
  • Inform other people in the area
  • Document the problem for later analysis
  • Never continue flying with known issues

Mission Planning Process:

  1. Pre-flight Planning: Weather check, equipment inspection, route planning
  2. Risk Assessment: Identify potential hazards and mitigation strategies
  3. Communication Plan: Inform others of flight activities
  4. Emergency Procedures: Know what to do if things go wrong
  5. Post-flight Review: Analyze what went well and areas for improvement

Week 7-8 Assessment: Emergency Procedures and Practical Skills

Format: Practical Flight Test + Emergency Response Simulation (60 minutes)

Part A: Emergency Response Knowledge (20 points)

  1. Emergency Procedures (15 points) Describe the correct response for each emergency:

    Low Battery Warning: Step 1: ___ Step 2: ___ Step 3: ___

    Lost Radio Contact: Step 1: ___ Step 2: ___ Step 3: ___

    Sudden Weather Change: Step 1: ___ Step 2: ___ Step 3: ___

  2. Risk Assessment (5 points) Identify 3 risks for flying in each environment:

  • School playground: ____, ____, ____
  • Open field: ____, ____, ____

Part B: Practical Flight Skills Assessment (30 points)

  1. Basic Flight Controls (15 points) Demonstrate competency in:
  • Smooth takeoff and landing (3 points)
  • Stable hovering for 30 seconds (3 points)
  • Forward/backward precision movement (3 points)
  • Left/right precision movement (3 points)
  • Controlled rotation (3 points)
  1. Mission Challenge (15 points) Complete ONE of the following missions:

    Option A - Navigation Course:

  • Fly through 5 waypoints in sequence
  • Land within 1-meter target circle
  • Complete within 3 minutes

Option B - Team Coordination:

  • Work with partner to complete relay challenge
  • Communicate effectively during handoff
  • Maintain safety throughout mission

Part C: Leadership and Safety Evaluation (15 points)

  1. Safety Leadership (8 points) While others are flying, demonstrate:
  • Proper safety zone maintenance
  • Clear communication with pilot
  • Appropriate responses to unsafe situations
  • Helpful coaching and encouragement
  1. Self-Assessment and Goal Setting (7 points) Written reflection:
  • What flight skill are you most confident with? Why?
  • What area needs the most improvement?
  • Set one specific goal for future drone flying
  • Describe one way you can help others fly safely

Practical Skills Rubric:

  • Expert Pilot (90-100%): Demonstrates advanced skills, teaches others, shows exceptional safety awareness
  • Competent Pilot (80-89%): Performs all basic skills reliably, follows safety protocols consistently
  • Developing Pilot (70-79%): Shows improvement in most areas, occasional guidance needed
  • Novice Pilot (60-69%): Basic skills present but inconsistent, needs continued practice
  • Beginning Pilot (Below 60%): Requires significant instruction and supervision

Week 8: Practical Flying Skills and Team Challenges

Learning Objectives:

  • Demonstrate ability to control a mini drone (takeoff, hover, land)
  • Apply basic flight skills in problem-solving mission scenarios
  • Work as a team to complete drone-based challenges
  • Evaluate personal progress and set goals for improvement

Key Concepts:

  • Flight Control Mastery: Smooth, precise drone movements
  • Situational Awareness: Understanding surroundings during flight
  • Mission Planning: Preparing for specific flight objectives
  • Teamwork: Collaborative problem-solving with drones
  • Performance Evaluation: Self-assessment and peer feedback
  • Safety Leadership: Taking responsibility for safe operations

Basic Flight Skills Progression:

  1. Fundamental Controls:
  • Smooth takeoff to hover
  • Maintaining steady hover
  • Controlled landing
  • Forward/backward movement
  • Left/right movement
  • Rotation control
  1. Intermediate Maneuvers:
  • Figure-8 patterns
  • Precision landing on target
  • Obstacle avoidance
  • Following predetermined paths
  • Coordinated movements
  1. Advanced Challenges:
  • Team relay races
  • Rescue simulations
  • Precision delivery tasks
  • Group choreography
  • Time-based challenges

Mission Scenarios:

Mission 1: Search and Rescue

  • Objective: Locate “missing person” (target) in designated area
  • Skills: Systematic search patterns, communication, observation
  • Time limit: 5 minutes
  • Success criteria: Target identified and location communicated

Mission 2: Delivery Challenge

  • Objective: Transport small payload from Point A to Point B
  • Skills: Precision flying, cargo management, safe landing
  • Obstacles: Wind conditions, landing accuracy requirements
  • Success criteria: Payload delivered undamaged within time limit

Mission 3: Team Coordination

  • Objective: Multiple drones work together to complete complex task
  • Skills: Communication, timing, spatial awareness
  • Challenge: Choreographed flight pattern or group problem-solving
  • Success criteria: All drones complete task without collisions

Safety Protocols for Practical Flying:

  • Always maintain 10-foot safety zone around flying area
  • Designate specific roles: pilot, observer, safety officer
  • Use hand signals for communication during loud operations
  • Practice emergency landing procedures before each session
  • Rotate roles so everyone experiences different responsibilities

Week 7-8 Assessment: Emergency Procedures and Practical Skills

Format: Practical Flight Test + Emergency Response Simulation (60 minutes)

Part A: Emergency Response Knowledge (20 points)

  1. Emergency Procedures (15 points) Describe the correct response for each emergency:

    Low Battery Warning: Step 1: **___** Step 2: **___** Step 3: **___**

    Lost Radio Contact: Step 1: **___** Step 2: **___** Step 3: **___**

    Sudden Weather Change: Step 1: **___** Step 2: **___** Step 3: **___**

  2. Risk Assessment (5 points) Identify 3 risks for flying in each environment:

  • School playground: **____**, **____**, **____**
  • Open field: **____**, **____**, **____**

Part B: Practical Flight Skills Assessment (30 points)

  1. Basic Flight Controls (15 points) Demonstrate competency in:
  • Smooth takeoff and landing (3 points)
  • Stable hovering for 30 seconds (3 points)
  • Forward/backward precision movement (3 points)
  • Left/right precision movement (3 points)
  • Controlled rotation (3 points)
  1. Mission Challenge (15 points) Complete ONE of the following missions:

    Option A - Navigation Course:

  • Fly through 5 waypoints in sequence
  • Land within 1-meter target circle
  • Complete within 3 minutes

Option B - Team Coordination:

  • Work with partner to complete relay challenge
  • Communicate effectively during handoff
  • Maintain safety throughout mission

Part C: Leadership and Safety Evaluation (15 points)

  1. Safety Leadership (8 points) While others are flying, demonstrate:
  • Proper safety zone maintenance
  • Clear communication with pilot
  • Appropriate responses to unsafe situations
  • Helpful coaching and encouragement
  1. Self-Assessment and Goal Setting (7 points) Written reflection:
  • What flight skill are you most confident with? Why?
  • What area needs the most improvement?
  • Set one specific goal for future drone flying
  • Describe one way you can help others fly safely

Practical Skills Rubric:

  • Expert Pilot (90-100%): Demonstrates advanced skills, teaches others, shows exceptional safety awareness
  • Competent Pilot (80-89%): Performs all basic skills reliably, follows safety protocols consistently
  • Developing Pilot (70-79%): Shows improvement in most areas, occasional guidance needed
  • Novice Pilot (60-69%): Basic skills present but inconsistent, needs continued practice
  • Beginning Pilot (Below 60%): Requires significant instruction and supervision

IoT & Robotics Term 1 - Complete Notes & Assessment Tests

Table of Contents

  1. Preschoolers (4-6 Years) - STEM Storytelling & Coding Toys
  2. Grade 2-5 (7-11 Years) - Scratch & Blockly Programming
  3. Grade 6-9 (11-14 Years) - Drone Aviation Introduction
  4. Grade 10-12 (14-16 Years) - Python Basics

Preschoolers (4-6 Years)

Term 1: STEM Storytelling & Coding Toys

Week 1: Introduction to STEM

Learning Objectives:

  • Understand basic concepts of STEM (Science, Technology, Engineering, Math)
  • Spark excitement and curiosity about STEM through hands-on activities
  • Foster teamwork through group experiments
  • Develop early thinking through guided play and experimentation

Key Concepts:

  • Science: Learning about the world around us through observation
  • Technology: Simple tools and devices that help us
  • Engineering: Building and creating solutions
  • Mathematics: Numbers, shapes, and patterns in everyday life

Activities:

  • Floating vs. Sinking experiments with various objects
  • Basic robot interaction and exploration
  • STEM vocabulary building games
  • Classification activities

Materials: Water, buckets, floating items (paper, feathers), sinking items (stones, coins), toy robot, tablet

Week 2: STEM Play Corners

Learning Objectives:

  • Explore different STEM areas through play stations
  • Develop fine motor skills through hands-on manipulation
  • Practice problem-solving through guided discovery
  • Build confidence in exploring new concepts

Key Concepts:

  • Play-based learning: Learning through exploration and fun
  • Spatial awareness: Understanding shapes, sizes, and positions
  • Cause and effect: Understanding that actions have results
  • Collaboration: Working together to solve problems

Week 3: Simple Machines & Environmental Science

Learning Objectives:

  • Identify simple machines in everyday life
  • Understand basic environmental concepts
  • Develop observation skills
  • Connect STEM to the natural world

Key Concepts:

  • Simple Machines: Lever, pulley, wheel, ramp
  • Environment: Plants, animals, weather, seasons
  • Observation: Using our senses to learn
  • Nature patterns: Recognizing patterns in nature

Week 4: Unplugged Coding

Learning Objectives:

  • Introduction to coding concepts without computers
  • Understand sequence and order
  • Develop logical thinking
  • Practice following and giving instructions

Key Concepts:

  • Sequence: Steps in order
  • Instructions: Clear directions to follow
  • Algorithms: Step-by-step solutions
  • Patterns: Recognizing and creating patterns

Assessment Test - Preschoolers (4-6 Years)

Week 1-2 Assessment: STEM Basics

Format: Practical/Observational Assessment

  1. Floating or Sinking? (Show child various objects)
  • Point to objects that will float: feather, cork, plastic toy
  • Point to objects that will sink: stone, coin, marble
  • Explain why you think so (in simple words)
  1. STEM Matching (Picture cards)
  • Match the scientist to the magnifying glass
  • Match the engineer to the building blocks
  • Match the mathematician to the numbers
  • Match the technologist to the computer
  1. Following Instructions
  • Can follow 2-step instructions: “Pick up the red block and put it in the box”
  • Can give simple instructions to a friend
  • Can arrange objects in order (biggest to smallest)

Assessment Rubric:

  • Exceeding (3): Completes all tasks independently with explanation
  • Meeting (2): Completes most tasks with minimal guidance
  • Approaching (1): Attempts tasks with significant support
  • Beginning (0): Needs extensive help to participate

Week 3-4 Assessment: Simple Machines & Coding

Format: Hands-on Demonstration

  1. Simple Machines Hunt
  • Find the lever (seesaw, scissors)
  • Find the wheel (bicycle, toy car)
  • Find the ramp (slide, wedge)
  • Explain what each machine helps us do
  1. Nature Observation
  • Draw or point to living things vs. non-living things
  • Identify basic shapes in nature (circles in flowers, triangles in mountains)
  • Name things that grow vs. things that are made
  1. Unplugged Coding Challenge
  • Arrange sequence cards to show morning routine
  • Give directions to help friend reach the treasure
  • Complete a simple pattern with blocks or shapes

Grade 2-5 (7-11 Years)

Term 1: Scratch & Blockly Programming

Week 1: Introduction to Programming

Learning Objectives:

  • Understand what programming is
  • Learn about Scratch programming environment
  • Install and explore Scratch interface
  • Grasp the concept of sequencing

Key Concepts:

  • Programming: Giving instructions to computers
  • Scratch: Visual programming language using blocks
  • Interface: The screen where we work with Scratch
  • Sequencing: Putting commands in the right order
  • Sprites: Characters in Scratch programs
  • Stage: Where Scratch programs run

Core Activities:

  • Explore Scratch interface and tools
  • Identify different areas (sprite area, blocks palette, stage)
  • Learn about different block categories (Motion, Looks, Sound, etc.)
  • Create first simple animation

Week 2: Understanding Scratch Interface

Learning Objectives:

  • Navigate Scratch interface confidently
  • Understand different block categories
  • Create basic sprite movements
  • Save and load projects

Key Concepts:

  • Blocks Palette: Where programming blocks are stored
  • Scripts Area: Where we build our programs
  • Motion Blocks: Make sprites move
  • Looks Blocks: Change sprite appearance
  • Events: What starts our programs running

Week 3: Setting Up Scratch Projects

Learning Objectives:

  • Plan and organize Scratch projects
  • Understand project structure
  • Use backgrounds and sprites effectively
  • Practice debugging simple problems

Key Concepts:

  • Project Planning: Thinking before coding
  • Backgrounds: Scenes for our programs
  • Sprite Library: Ready-made characters
  • Debugging: Finding and fixing problems

Week 4: Introduction to Blockly

Learning Objectives:

  • Understand Blockly visual programming
  • Compare Blockly with Scratch
  • Complete basic Blockly puzzles
  • Transfer concepts between platforms

Key Concepts:

  • Blockly: Another visual programming language
  • Puzzle-based Learning: Learning through solving challenges
  • Logic Blocks: Making decisions in programs
  • Loops: Repeating actions

Week 5: Blockly Games for Scratch Programmers

Learning Objectives:

  • Apply Scratch knowledge to Blockly games
  • Solve increasingly complex puzzles
  • Understand programming logic and flow
  • Build problem-solving confidence

Key Concepts:

  • Game Logic: Rules that make games work
  • Progressive Difficulty: Challenges that get harder
  • Pattern Recognition: Seeing repeated solutions
  • Persistence: Keep trying when challenges are difficult

Assessment Test - Grade 2-5 (7-11 Years)

Week 1-3 Assessment: Scratch Fundamentals

Format: Practical Computer Assessment (30 minutes)

Part A: Interface Knowledge (10 points)

  1. Label the parts of Scratch interface:
  • Blocks Palette
  • Scripts Area
  • Stage
  • Sprite Area
  1. Match the block colors to their functions:
  • Motion blocks: _____ (Blue)
  • Looks blocks: _____ (Purple)
  • Sound blocks: _____ (Pink)
  • Events blocks: _____ (Yellow)

Part B: Basic Programming (15 points) 3. Create a program that makes a sprite:

  • Move 10 steps forward

  • Turn 90 degrees right

  • Say “Hello” for 2 seconds

  • Change color

  1. Fix this broken sequence (drag blocks in correct order):
[Say "Goodbye"][When green flag clicked][Move 100 steps][Say "Hello"]

Part C: Problem Solving (10 points) 5. Your sprite isn’t moving when you click the green flag. What might be wrong?

  • Missing “when green flag clicked” block

  • Sprite is already at the edge

  • Motion blocks aren’t connected

  • All of the above

  1. Create a simple animation showing a cat walking across the stage.

Week 4-5 Assessment: Blockly & Problem Solving

Format: Computer-based Blockly Challenges (25 minutes)

Part A: Blockly Basics (8 points)

  1. Complete the “Move Forward” puzzle in Blockly
  2. Complete the “Turn Left/Right” puzzle
  3. Complete the “Repeat Loop” puzzle
  4. Complete the “If/Else” puzzle

Part B: Logic Understanding (12 points) 5. Explain what this Blockly code does:

Repeat 4 times:
  Move forward
  Turn right 90 degrees

Answer: _________________

  1. Write Blockly code to make a character:
  • Move forward 3 steps
  • Turn left if path is blocked
  • Repeat until reaching goal

Part C: Transfer Learning (10 points) 7. How is Blockly similar to Scratch? List 3 similarities:




  1. Create a Scratch program that does the same thing as this Blockly code:
When started:  Repeat 5 times:    Move forward 20 steps    Wait 1 second

Assessment Rubric:

  • Advanced (90-100%): Completes all tasks efficiently with creative additions
  • Proficient (80-89%): Completes most tasks correctly with minor errors
  • Developing (70-79%): Completes basic tasks but struggles with complex problems
  • Beginning (Below 70%): Needs significant support to complete tasks

Grade 6-9 (11-14 Years)

Term 1: Drone Aviation Introduction

Week 1: Introduction to Drones and Aviation Basics

Learning Objectives:

  • Understand what drones are and their applications
  • Learn basic aviation principles
  • Identify different types of aircraft
  • Understand the evolution of flight

Key Concepts:

  • Unmanned Aerial Vehicle (UAV): Aircraft without a human pilot aboard
  • Remote Pilot: Person controlling the drone from the ground
  • Autonomous Flight: Drones flying with minimal human control
  • Commercial vs. Recreational Use: Different purposes for drones
  • Four Forces of Flight: Lift, Weight, Thrust, Drag
  • Aerodynamics: How air moves around objects in flight

Applications of Drones:

  • Photography and videography
  • Search and rescue operations
  • Agriculture monitoring
  • Package delivery
  • Scientific research
  • Military operations

Week 2: Drone Safety Rules and Best Practices

Learning Objectives:

  • Learn essential drone safety protocols
  • Understand pre-flight checklist procedures
  • Identify potential hazards and risks
  • Develop responsible drone operation habits

Key Concepts:

  • Pre-flight Inspection: Checking drone condition before flying
  • Weather Conditions: How weather affects drone flight
  • Battery Safety: Proper battery handling and storage
  • Emergency Procedures: What to do when things go wrong
  • Situational Awareness: Being aware of surroundings while flying

Safety Rules:

  1. Always maintain visual contact with drone
  2. Check weather conditions before flying
  3. Inspect drone and equipment before each flight
  4. Fly in open areas away from people and property
  5. Never fly above 400 feet
  6. Respect others’ privacy
  7. Land immediately if drone malfunctions

Week 3: FAA/UAS Regulations (Basic Overview)

Learning Objectives:

  • Understand basic aviation regulations
  • Learn about no-fly zones and restricted airspace
  • Understand registration requirements
  • Learn about pilot certification basics

Key Concepts:

  • Federal Aviation Administration (FAA): Government agency regulating aviation
  • Unmanned Aircraft Systems (UAS): Official term for drones and related equipment
  • No-Fly Zones: Areas where drone flight is prohibited
  • Remote Pilot Certificate: License required for commercial drone operations
  • Registration: Required identification for drones over 0.55 pounds

Basic Regulations:

  • Drones must be registered if over 0.55 lbs (250 grams)
  • Maximum altitude: 400 feet above ground level
  • Must yield right-of-way to manned aircraft
  • No flying over groups of people
  • No flying at night without special certification
  • Respect airport operational areas (usually 5-mile radius)

Week 4: Key Drone Types & Components

Learning Objectives:

  • Identify different drone configurations
  • Understand key drone components and their functions
  • Compare advantages and disadvantages of different designs
  • Learn basic maintenance requirements

Key Concepts:

  • Multirotor: Drones with multiple rotating propellers
  • Fixed-wing: Airplane-like drones with wings
  • Hybrid VTOL: Vertical takeoff and landing with forward flight capability
  • Frame: Main structure holding all components
  • Flight Controller: Computer controlling drone flight
  • ESC (Electronic Speed Controller): Controls motor speed
  • Gimbal: Stabilizes camera during flight

Drone Types:

  1. Quadcopter: 4 rotors, most common configuration
  2. Hexacopter: 6 rotors, more redundancy and payload capacity
  3. Octocopter: 8 rotors, highest redundancy and capacity
  4. Fixed-wing: Longer flight times, faster speeds
  5. Racing drones: Small, fast, agile for competitive flying

Week 5: Basic Principles of Flight

Learning Objectives:

  • Understand the four forces of flight in detail
  • Learn how drones achieve controlled flight
  • Understand stability and control concepts
  • Explore flight dynamics and physics

Key Concepts:

  • Lift: Upward force generated by rotors or wings
  • Weight (Gravity): Downward force pulling drone toward earth
  • Thrust: Forward force propelling drone through air
  • Drag: Resistance force opposing motion through air
  • Center of Gravity: Balance point of drone
  • Pitch, Roll, Yaw: Three axes of rotation
  • Gyroscopic Effect: How spinning rotors affect stability

Flight Control:

  • Throttle: Controls altitude (up/down)
  • Pitch: Controls forward/backward movement
  • Roll: Controls left/right movement
  • Yaw: Controls rotation (turning left/right)
  • Trim: Fine adjustments for balanced flight

Assessment Test - Grade 6-9 (11-14 Years)

Week 1-2 Assessment: Drone Basics and Safety

Format: Written Test + Practical Safety Demonstration (45 minutes)

Part A: Multiple Choice (20 points)

  1. What does UAV stand for? a) Universal Aviation Vehicle b) Unmanned Aerial Vehicle c) Ultra Aerodynamic Vehicle d) United Aviation Vehicle

  2. Which of the four forces of flight works against gravity? a) Thrust b) Drag c) Lift d) Weight

  3. What should you do FIRST before flying a drone? a) Start the motors b) Check weather conditions c) Take off immediately d) Turn on the camera

  4. The maximum altitude for recreational drone flight is: a) 200 feet b) 300 feet c) 400 feet d) 500 feet

  5. What is the main difference between commercial and recreational drone use? a) Size of drone b) Purpose and regulations c) Color of drone d) Number of rotors

Part B: Short Answer (25 points) 6. List 5 safety rules that must be followed when operating a drone: (10 points)






  1. Explain three commercial applications of drones: (9 points)



  1. Why is it important to maintain visual contact with your drone during flight? (6 points)

Part C: Practical Safety Assessment (15 points) 9. Demonstrate proper pre-flight inspection checklist 10. Identify suitable vs. unsuitable flying locations from photos 11. Explain emergency landing procedures

Week 3-5 Assessment: Regulations and Flight Principles

Format: Written Test + Flight Theory Application (50 minutes)

Part A: Regulations Knowledge (20 points)

  1. True/False (10 points)
  • Drones under 0.55 lbs need to be registered: ___
  • You can fly your drone anywhere as long as it’s daytime: ___
  • Commercial drone operations require a Remote Pilot Certificate: ___
  • Drones must always yield to manned aircraft: ___
  • Flying over groups of people is allowed with permission: ___
  1. What is a no-fly zone and give 3 examples: (10 points) Definition: ________________________________ Examples:



Part B: Drone Components (15 points) 3. Match the component to its function:

  • Flight Controller: _____ a) Provides power to motors

  • ESC: _____ b) Stabilizes camera

  • Gimbal: _____ c) Main structural support

  • Frame: _____ d) Controls drone flight

  • Battery: _____ e) Controls motor speed

  1. Compare quadcopter vs. fixed-wing drones (advantages/disadvantages): (10 points)

Part C: Flight Principles (25 points) 5. Draw and label the four forces of flight on a drone diagram: (12 points)

  1. Explain how a drone moves in each direction: (13 points)
  • Forward: ________________________________
  • Backward: ________________________________
  • Left: ________________________________
  • Right: ________________________________
  • Up: ________________________________
  • Rotate left: ________________________________

Assessment Rubric:

  • Expert (90-100%): Demonstrates comprehensive understanding with detailed explanations
  • Proficient (80-89%): Shows solid grasp of concepts with minor gaps
  • Developing (70-79%): Understands basic concepts but lacks detail in complex areas
  • Novice (Below 70%): Limited understanding, needs additional instruction

Grade 10-12 (14-16 Years)

Term 1: Introduction to Python Basics

Week 1: Writing Structured Python Code

Learning Objectives:

  • Understand Python syntax and structure
  • Learn proper code formatting and indentation
  • Write clean, readable code following best practices
  • Understand variables, data types, and basic operations

Key Concepts:

  • Python: High-level programming language
  • Syntax: Rules for writing Python code
  • Indentation: Using spaces to organize code structure
  • Variables: Named storage for data values
  • Data Types: int, float, string, boolean
  • Comments: Documentation within code using #
  • Print Statement: Displaying output to screen

Code Structure Best Practices:

# Header comment explaining the program
# Author: Your Name
# Date: Today's Date

# Import statements
import module_name

# Constants (UPPERCASE naming)
MAX_VALUE = 100

# Main program logic
def main():
    # Variable declarations
    user_name = "Student"
    age = 16

    # Program logic with proper indentation
    print(f"Hello, {user_name}!")
    print(f"You are {age} years old.")

# Run the program
if __name__ == "__main__":
    main()

Week 2: Functions and Loops

Learning Objectives:

  • Create and use custom functions
  • Understand function parameters and return values
  • Implement for loops and while loops
  • Apply loops to solve repetitive tasks

Key Concepts:

  • Function: Reusable block of code that performs a specific task
  • Parameters: Input values passed to functions
  • Return Value: Output value from a function
  • For Loop: Repeats code a specific number of times
  • While Loop: Repeats code while a condition is true
  • Range Function: Generates sequences of numbers
  • Iteration: Each repetition of a loop
  • Loop Control: Managing when loops start and stop

Function Examples:

# Simple function with no parameters
def greet():
    print("Hello, World!")

# Function with parameters
def greet_person(name, age):
    print(f"Hello, {name}! You are {age} years old.")

# Function with return value
def calculate_area(length, width):
    area = length * width
    return area

# Using functions
greet()
greet_person("Alice", 16)
room_area = calculate_area(10, 12)
print(f"Room area: {room_area} square meters")

Loop Examples:

# For loop with range
for i in range(5):
    print(f"Count: {i}")

# For loop with list
fruits = ["apple", "banana", "orange"]
for fruit in fruits:
    print(f"I like {fruit}")

# While loop
count = 0
while count < 3:
    print(f"While loop count: {count}")
    count += 1

Week 3: Using Python Libraries

Learning Objectives:

  • Understand what Python libraries are and why they’re useful
  • Learn to import and use common libraries
  • Work with GPIOZero and time libraries
  • Explore library documentation and help systems

Key Concepts:

  • Library/Module: Pre-written code that adds functionality
  • Import Statement: Bringing library functions into your program
  • GPIOZero: Library for controlling Raspberry Pi GPIO pins
  • Time Library: Functions for working with time and delays
  • Documentation: Instructions for using library functions
  • API: Application Programming Interface - how to use library functions

Library Usage Examples:

# Importing entire modules
import time
import math

# Importing specific functions
from gpiozero import LED, Button
from time import sleep

# Using time library
print("Starting program...")
time.sleep(2)  # Wait 2 seconds
print("2 seconds have passed!")

# Using math library
import math
radius = 5
area = math.pi * radius ** 2
print(f"Circle area: {area:.2f}")

# Using GPIOZero (for Raspberry Pi)
led = LED(18)  # LED connected to GPIO pin 18
button = Button(2)  # Button connected to GPIO pin 2

# Turn LED on and off
led.on()
sleep(1)
led.off()

Week 4: Controlling Motors with Python

Learning Objectives:

  • Understand how to interface with motors using Python
  • Learn about PWM (Pulse Width Modulation) for motor control
  • Control motor speed and direction
  • Implement safety features in motor control code

Key Concepts:

  • Motor Control: Using code to make motors move
  • PWM (Pulse Width Modulation): Method to control motor speed
  • Duty Cycle: Percentage of time signal is “on” vs “off”
  • Direction Control: Making motors spin clockwise/counterclockwise
  • Motor Driver: Electronics that interface between Python and motors
  • Safety Features: Code to prevent motor damage

Motor Control Examples:

from gpiozero import Motor, PWMOutputDevice
from time import sleep

# Create motor object (assuming H-bridge motor driver)
motor = Motor(forward=2, backward=3, enable=18)

# Basic motor control
def basic_motor_test():
    print("Motor forward at full speed")
    motor.forward(1.0)  # Full speed forward
    sleep(2)

    print("Motor forward at half speed")
    motor.forward(0.5)  # Half speed forward
    sleep(2)

    print("Motor stopped")
    motor.stop()
    sleep(1)

    print("Motor backward at full speed")
    motor.backward(1.0)  # Full speed backward
    sleep(2)

    motor.stop()
    print("Motor test complete")

# PWM speed control example
def speed_ramp_test():
    print("Ramping motor speed up...")
    for speed in range(0, 101, 10):  # 0 to 100% in 10% steps
        motor_speed = speed / 100.0
        motor.forward(motor_speed)
        print(f"Speed: {speed}%")
        sleep(0.5)

    motor.stop()
    print("Speed ramp complete")

# Run the tests
basic_motor_test()
sleep(2)
speed_ramp_test()

Week 5: Controlling Sensors with Python

Learning Objectives:

  • Interface with various sensors using Python
  • Read and process sensor data
  • Implement sensor-based decision making
  • Create responsive programs based on sensor input

Key Concepts:

  • Sensor: Device that detects and measures physical properties
  • Analog vs Digital: Different types of sensor signals
  • ADC (Analog-to-Digital Converter): Converts analog signals to digital
  • Sensor Calibration: Adjusting sensor readings for accuracy
  • Data Processing: Converting raw sensor data to useful information
  • Polling vs Interrupts: Different ways to read sensor data

Common Sensors:

  • Temperature sensors: Measure environmental temperature
  • Light sensors (LDR): Detect light intensity
  • Ultrasonic sensors: Measure distance using sound waves
  • Motion sensors (PIR): Detect movement
  • Pressure sensors: Measure force or pressure

Sensor Control Examples:

from gpiozero import MCP3008, DistanceSensor, MotionSensor, LED
from time import sleep
import statistics

# Temperature sensor (using analog input)
temp_sensor = MCP3008(channel=0)

def read_temperature():
    # Convert voltage to temperature (example conversion)
    voltage = temp_sensor.voltage
    temperature_c = (voltage - 0.5) * 100  # Example conversion formula
    temperature_f = (temperature_c * 9/5) + 32
    return temperature_c, temperature_f

# Distance sensor (ultrasonic)
distance_sensor = DistanceSensor(echo=24, trigger=23)

def monitor_distance():
    print("Distance monitoring (press Ctrl+C to stop)")
    try:
        while True:
            distance = distance_sensor.distance * 100  # Convert to cm
            print(f"Distance: {distance:.1f} cm")

            if distance < 10:
                print("WARNING: Object too close!")

            sleep(0.5)
    except KeyboardInterrupt:
        print("Distance monitoring stopped")

# Motion sensor with LED indicator
motion = MotionSensor(4)
alert_led = LED(18)

def motion_detector():
    print("Motion detector active...")

    def motion_detected():
        print("Motion detected!")
        alert_led.on()
        sleep(2)
        alert_led.off()

    def no_motion():
        print("No motion")
        alert_led.off()

    # Set up motion sensor callbacks
    motion.when_motion = motion_detected
    motion.when_no_motion = no_motion

    # Keep program running
    try:
        while True:
            sleep(0.1)
    except KeyboardInterrupt:
        print("Motion detector stopped")

# Data logging example
def log_sensor_data():
    readings = []
    print("Collecting sensor data for 30 seconds...")

    start_time = time.time()
    while time.time() - start_time < 30:
        temp_c, temp_f = read_temperature()
        distance = distance_sensor.distance * 100

        readings.append({
            'timestamp': time.time(),
            'temperature_c': temp_c,
            'temperature_f': temp_f,
            'distance_cm': distance
        })

        print(f"Temp: {temp_c:.1f}°C, Distance: {distance:.1f}cm")
        sleep(1)

    # Calculate statistics
    temps = [r['temperature_c'] for r in readings]
    distances = [r['distance_cm'] for r in readings]

    print(f"\nData Summary:")
    print(f"Average temperature: {statistics.mean(temps):.1f}°C")
    print(f"Min/Max temperature: {min(temps):.1f}°C / {max(temps):.1f}°C")
    print(f"Average distance: {statistics.mean(distances):.1f}cm")
    print(f"Min/Max distance: {min(distances):.1f}cm / {max(distances):.1f}cm")

# Example usage
if __name__ == "__main__":
    # Run different examples
    monitor_distance()  # Uncomment to run distance monitoring
    # motion_detector()  # Uncomment to run motion detection
    # log_sensor_data()  # Uncomment to run data logging

Assessment Test - Grade 10-12 (14-16 Years)

Week 1-2 Assessment: Python Fundamentals

Format: Coding Assignment + Written Questions (60 minutes)

Part A: Code Structure and Syntax (25 points)

  1. Fix the following code and explain what was wrong (10 points):
# Broken code:
def calculate average(num1, num2, num3)
average = num1 + num2 + num3 / 3
print("The average is" + average)
return average

calculate average(10, 20, 30)

Your corrected code:

# Write corrected version here

Explanation of errors: ________________________________

  1. Write a well-structured Python program (15 points): Create a program that:
  • Has proper header comments
  • Uses appropriate variable names
  • Calculates the area of different shapes (circle, rectangle, triangle)
  • Uses functions with parameters and return values
  • Follows proper indentation and formatting

Part B: Functions and Loops (30 points)

  1. Write a function called print_multiplication_table (15 points):
  • Takes one parameter: number
  • Prints multiplication table for that number (1-10)
  • Uses a for loop
  • Example output for print_multiplication_table(3):
3 x 1 = 3
3 x 2 = 6
3 x 3 = 9
... etc
  1. Password Checker Program (15 points): Write a program using while loop that:
  • Asks user to enter a password
  • Keeps asking until they enter “python123”
  • Counts number of attempts
  • Prints “Access granted” when correct
  • Prints number of attempts it took

Week 3-5 Assessment: Libraries and Hardware Control

Format: Practical Coding Project (75 minutes)

Part A: Library Usage (20 points)

  1. Complete this sensor reading program (20 points):
from gpiozero import MCP3008
from time import sleep
import ______  # What library do you need for calculating average?

# Create sensor object
light_sensor = MCP3008(channel=0)

def read_light_levels():
    readings = []

    # Collect 10 readings
    for i in range(______):  # Fill in the range
        reading = light_sensor.______  # What property gives the reading?
        readings.append(reading)
        print(f"Reading {i+1}: {reading:.3f}")
        sleep(0.5)

    # Calculate and print statistics
    average = ______.mean(readings)  # Which function calculates mean?
    maximum = ______(readings)  # Built-in function for maximum
    minimum = ______(readings)  # Built-in function for minimum

    print(f"Average: {average:.3f}")
    print(f"Maximum: {maximum:.3f}")
    print(f"Minimum: {minimum:.3f}")

# Call the function
read_light_levels()

Part B: Motor Control Project (25 points)

  1. Smart Fan Controller (25 points): Write a program that simulates a smart fan controller:
  • Use a temperature sensor to read room temperature
  • Control a motor (fan) based on temperature:
    • Below 20°C: Fan off
    • 20-25°C: Fan at 30% speed
    • 25-30°C: Fan at 60% speed
    • Above 30°C: Fan at 100% speed
  • Print current temperature and fan speed every 2 seconds
  • Include safety features (motor stop function)

Part C: Sensor Integration Challenge (30 points)

  1. Security System Prototype (30 points): Create a basic security system that:
  • Uses a motion sensor to detect movement
  • Uses a distance sensor to detect objects too close
  • Controls LEDs to indicate system status:
    • Green LED: System normal
    • Yellow LED: Motion detected
    • Red LED: Intrusion alert (object < 20cm)
  • Logs events with timestamps
  • Runs continuously until user presses Ctrl+C

Requirements:

  • Use at least 3 different libraries
  • Include proper error handling
  • Use functions to organize code
  • Add meaningful comments
  • Follow Python coding best practices

Sample code structure:

from gpiozero import MotionSensor, DistanceSensor, LED
from time import sleep
import time

# Hardware setup
motion = MotionSensor(4)
distance = DistanceSensor(echo=24, trigger=23)
green_led = LED(18)
yellow_led = LED(19)
red_led = LED(20)

def log_event(message):
    # Write function to log events with timestamp
    pass

def check_security():
    # Write function to check all sensors and control LEDs
    pass

def main():
    # Write main program loop
    pass

if __name__ == "__main__":
    main()

Assessment Rubric:

  • Exceptional (95-100%): Code runs flawlessly, excellent structure, creative additions, comprehensive error handling
  • Proficient (85-94%): Code works correctly, good structure, meets all requirements, minor improvements possible
  • Developing (75-84%): Code mostly works, basic structure present, meets most requirements, some bugs or missing features
  • Beginning (65-74%): Code has significant issues, poor structure, missing major requirements
  • Incomplete (Below 65%): Code doesn’t run or major portions missing

Additional Resources and Extensions

For All Grade Levels:

Vocabulary Glossary:

  • Algorithm: Step-by-step instructions to solve a problem
  • Bug: Error in code that prevents it from working correctly
  • Debug: Process of finding and fixing errors in code
  • Hardware: Physical components of computer systems
  • Software: Programs and applications that run on hardware
  • Interface: Way users interact with programs or devices
  • Sensor: Device that detects changes in environment
  • Actuator: Device that causes movement or action

Project Portfolio Suggestions:

  1. Weekly Reflection Journal: Students document learning and challenges
  2. Photo Documentation: Pictures of projects and experiments
  3. Video Demonstrations: Students explain their projects
  4. Peer Teaching: Advanced students help beginners
  5. Innovation Challenges: Open-ended problems to solve creatively

Cross-Curricular Connections:

  • Math: Geometry in robotics, statistics in data analysis
  • Science: Physics of flight, electronics principles
  • Art: Creative programming projects, design thinking
  • Social Studies: Impact of technology on society
  • Language Arts: Technical writing, documentation skills

Safety Reminders:

  • Always supervise young children with electronic components
  • Check battery connections before powering devices
  • Keep work area clean and organized
  • Wash hands after handling electronic components
  • Report any damaged equipment immediately
  • Follow proper shutdown procedures for all devices

Assessment Portfolio Checklist:

  • Completed weekly assessments
  • Project documentation with photos
  • Reflection essays on learning progress
  • Peer evaluation forms
  • Self-assessment rubrics
  • Evidence of problem-solving process
  • Creative extensions or improvements to basic projects

Continuation - Weeks 6-8 for All Grade Levels


Preschoolers (4-6 Years) - Weeks 6-8

Advanced STEM Exploration & Technology Awareness

Week 6: Technology Parts Awareness

Learning Objectives:

  • Use coding to tell stories, solve challenges, or navigate mazes
  • Recognize and follow simple algorithms using direction or action cards
  • Physically be able to follow code on floor grids
  • Build confidence and persistence through trial-and-error learning

Key Concepts:

  • Technology Components: Basic parts that make devices work
  • Circuits: Paths that electricity follows
  • Assembly/Disassembly: Taking apart and putting together
  • Electronics Safety: Safe handling of batteries and components
  • Problem-Solving: Trying different solutions when something doesn’t work

Activities:

  • Technology Exploration: Examine old keyboards, phones, calculators
  • Simple Circuits: Connect bulbs to batteries with safe materials
  • Assembly Practice: Take apart and reassemble simple toys
  • Tech Parts Sorting: Group similar technology components

Materials: Old keyboards, phones, calculators, batteries, bulbs for circuits, safe connectors

Week 7: Sequencing & Floor Grid Coding

Learning Objectives:

  • Develop understanding of sequencing by arranging steps in correct order
  • Recognize and follow simple algorithms using direction or action cards
  • Physically follow code on floor grids
  • Build confidence through trial-and-error learning

Key Concepts:

  • Sequencing: Putting steps in the right order
  • Algorithm Cards: Visual instructions to follow
  • Floor Grid Coding: Moving through spaces following directions
  • Left/Right/Forward/Back: Basic directional concepts
  • Trial and Error: Learning by trying and improving

Activities:

  • Obstacle Course Coding: Navigate through simple obstacles using arrow cards
  • Sequencing Games: Put daily routine cards in correct order
  • Paper Maze Coding: Use arrows to show path through printed mazes
  • Robot Friend: One child gives directions, another follows like a robot

Materials: Coding arrows/direction cards, floor grid mats, toys for navigation, printed maze worksheets

Week 8: Advanced Unplugged Coding & Storytelling

Learning Objectives:

  • Use coding to tell stories, solve challenges, or navigate mazes
  • Recognize and follow simple algorithms using direction or action cards
  • Physically follow code on floor grids
  • Build confidence and persistence through trial-and-error learning

Key Concepts:

  • Conditional Logic: IF/THEN thinking (“If you see red, then stop”)
  • Debugging: Finding and fixing mistakes in directions
  • Block Building: Using physical blocks to represent code
  • Story Algorithms: Step-by-step instructions for telling stories

Activities:

  • Debug the Path: Present incorrect direction sequences for children to fix
  • IF/THEN Games: “If you see a triangle, then clap your hands”
  • Story Coding: Use picture cards to create step-by-step stories
  • Block Code Building: Stack blocks to represent programming sequences

Materials: Building blocks, floor grid mats, toys, printed materials, picture cards for storytelling


Preschoolers Assessment - Weeks 6-8

Week 6 Assessment: Technology Awareness

Format: Hands-on Exploration + Observation (20 minutes)

  1. Technology Parts Recognition (10 points)
  • Point to and name 3 technology items from the collection
  • Show how a simple circuit works (bulb + battery)
  • Safely handle electronic components
  • Explain one thing each item helps us do
  1. Assembly Skills (10 points)
  • Take apart a simple toy or device
  • Put it back together correctly
  • Identify which parts go where
  • Ask for help when needed

Assessment Criteria:

  • Mastery (3): Handles all materials safely, explains purposes, completes tasks independently
  • Developing (2): Safe handling, completes most tasks with minimal help
  • Emerging (1): Needs guidance but participates actively
  • Beginning (0): Requires extensive support

Week 7-8 Assessment: Advanced Unplugged Coding

Format: Physical Coding Challenges (25 minutes)

  1. Sequencing Challenge (12 points)
  • Arrange 6 direction cards to navigate through obstacle course
  • Explain why each step comes in that order
  • Successfully complete the physical navigation
  • Fix mistakes when path doesn’t work
  1. IF/THEN Logic (8 points)
  • Follow conditional instructions: “IF you see blue, THEN hop”
  • Create own IF/THEN rule for a friend to follow
  • Demonstrate understanding with actions
  1. Story Algorithm (10 points)
  • Use 5 picture cards to create logical story sequence
  • Tell story following the card order
  • Explain what happens if cards are mixed up
  • Help fix a mixed-up story sequence

Practical Skills Rubric:

  • Advanced (25-30 points): Creates original sequences, helps others, shows deep understanding
  • Proficient (20-24 points): Completes all challenges correctly with minor guidance
  • Developing (15-19 points): Understands concepts but needs support for complex tasks
  • Beginning (Below 15 points): Requires significant help to participate

Grade 2-5 (7-11 Years) - Weeks 6-8

Advanced Scratch Programming & Game Development

Week 6: Game Structure and Design

Learning Objectives:

  • Understand basic game structure (start, play, end)
  • Use Scratch blocks to move characters and detect collisions
  • Make characters move between different scenes
  • Create scoring or win conditions

Key Concepts:

  • Game Design Elements: Characters, backgrounds, objectives, rules
  • Game Loop: Continuous cycle of input, processing, output
  • Collision Detection: Knowing when sprites touch each other
  • Scene Transitions: Moving between different game screens
  • Win/Lose Conditions: Rules that determine game outcomes
  • User Interface: Buttons, scores, and information displays

Advanced Scratch Concepts:

  • Sensing Blocks: “touching color”, “distance to”, “key pressed”
  • Variables: Storing score, lives, or time
  • Broadcast Messages: Communication between sprites
  • Clone Sprites: Creating multiple copies of objects
  • Custom Blocks: Making your own programming blocks

Game Development Process:

  1. Planning Phase: Sketch game idea, list needed sprites and backgrounds
  2. Prototype: Create basic movement and interaction
  3. Enhancement: Add sounds, effects, and polish
  4. Testing: Play game and fix bugs
  5. Sharing: Present to classmates

Example Game Structure:

When green flag clicked
Set score to 0
Set lives to 3
Say "Game Starting!" for 2 seconds
Show sprite
Forever:
    If key space pressed:
        Move player sprite
    If touching enemy:
        Change lives by -1
        If lives = 0:
            Say "Game Over!"
            Stop all

Week 7: Transition to Text-Based Concepts

Learning Objectives:

  • Prepare learners for text-based coding
  • Understand basic programming concepts using blocks
  • Use logic and loops to control sprite or robot actions
  • Begin transition to robotics or advanced coding platforms

Key Concepts:

  • Programming Fundamentals: Sequence, selection, iteration
  • Logic Blocks: IF/ELSE statements in visual form
  • Loop Types: Forever, repeat until, repeat X times
  • Variables and Operations: Math in programming
  • Event-Driven Programming: Responding to user input
  • Modular Programming: Breaking code into smaller parts

Bridging Visual to Text:

  • Block-to-Code Thinking: Understanding what blocks represent
  • Pseudocode: Writing steps in plain English before coding
  • Debugging Strategies: Systematic problem-solving approaches
  • Code Organization: Keeping projects neat and logical

Advanced Programming Patterns:

// Pattern 1: State Machine
When green flag clicked
Set game state to "menu"
Forever:
    If game state = "menu":
        Show menu options
    If game state = "playing":
        Run game logic
    If game state = "game over":
        Show final score

// Pattern 2: Object Behavior
When I start as a clone:
    Go to random position
    Forever:
        Move 2 steps
        If on edge, bounce
        If touching player:
            Change score by 10
            Delete this clone

Week 8: Blockly Integration and Logic Puzzles

Learning Objectives:

  • Solve logic puzzles using visual programming concepts
  • Create games using Blockly platform
  • Demonstrate understanding of programming fundamentals
  • Apply creative problem-solving skills

Key Concepts:

  • Blockly Platform: Google’s visual programming language
  • Logic Puzzles: Problems requiring systematic thinking
  • Algorithm Efficiency: Finding the best solution method
  • Pattern Recognition: Identifying repeated solutions
  • Creative Programming: Using code for artistic expression

Blockly vs. Scratch Comparison:

FeatureScratchBlockly
FocusStorytelling & GamesLogic & Algorithms
InterfaceStage-basedPuzzle-based
OutputAnimated ProjectsProblem Solutions
ProgressionCreative ExpressionMathematical Thinking

Logic Puzzle Types:

  1. Maze Solving: Navigate through obstacles
  2. Pattern Completion: Fill in missing sequences
  3. Conditional Logic: IF/THEN decision making
  4. Loop Optimization: Repeat actions efficiently

Grade 2-5 Assessment - Weeks 6-8

Week 6 Assessment: Game Development Project

Format: Scratch Game Creation + Presentation (45 minutes)

Part A: Game Planning (10 points)

  1. Game Design Document - Create a simple plan including:
  • Game objective (what’s the goal?)
  • Main character description
  • Basic rules (how do you win/lose?)
  • Required sprites and backgrounds
  1. Storyboard - Draw 3 screens showing:
  • Game start screen
  • Main gameplay
  • Win/lose screen

Part B: Game Implementation (25 points) 3. Core Functionality (15 points):

  • Character moves with arrow keys or WASD

  • At least one interactive element (enemy, collectible, obstacle)

  • Basic collision detection (touching = something happens)

  • Clear win or lose condition

  1. Polish and Enhancement (10 points):
  • Sound effects or music
  • Visual feedback (score, lives, timer)
  • Smooth sprite movement
  • Creative backgrounds or costumes

Part C: Presentation and Reflection (15 points) 5. Game Demo (10 points):

  • Explain game rules clearly

  • Demonstrate gameplay for 2 minutes

  • Show different game scenarios

  • Handle questions from classmates

  1. Technical Reflection (5 points):
  • Explain one challenging problem you solved
  • Describe one improvement you would make
  • Share one new Scratch skill you learned

Week 7-8 Assessment: Programming Concepts Mastery

Format: Mixed Assessment - Blockly Challenges + Scratch Review (50 minutes)

Part A: Blockly Logic Challenges (20 points)

  1. Maze Navigation (8 points):
  • Complete 3 increasingly difficult maze puzzles
  • Use efficient solutions (minimal blocks)
  • Demonstrate understanding of loops and conditionals
  1. Pattern Recognition (6 points):
  • Solve sequence completion puzzles
  • Identify and extend number/color patterns
  • Create original pattern for others to solve
  1. Logic Puzzles (6 points):
  • Complete IF/THEN decision trees
  • Solve multi-step conditional problems
  • Optimize solutions for clarity

Part B: Concept Transfer (15 points) 4. Visual to Text Translation (10 points): Given this Scratch code block arrangement:

[When flag clicked] → [Forever] → [If touching mouse] → [Move 10 steps]

Write in pseudocode (plain English): “When the program starts, ________________”

  1. Problem Decomposition (5 points): Break down this challenge into steps: “Create a sprite that follows the mouse but stops when it touches the edge”

Step 1: _______________ Step 2: _______________ Step 3: _______________ Step 4: _______________

Part C: Creative Application (15 points) 6. Original Algorithm (15 points): Choose ONE to complete:

Option A - Scratch: Create a “digital pet” that:

  • Follows mouse cursor
  • Changes expression when clicked
  • Makes sound when hungry (timer-based)
  • Has at least 3 different costumes

Option B - Blockly: Design a solution for:

  • Robot that sorts colored objects
  • Path that avoids all obstacles
  • Pattern that creates art using loops

Assessment Rubric:

  • Expert (90-100%): Exceeds requirements with creative solutions and clear explanations
  • Proficient (80-89%): Meets all requirements with good understanding demonstrated
  • Developing (70-79%): Meets most requirements but may have gaps in complex concepts
  • Novice (60-69%): Shows basic understanding but struggles with application
  • Beginning (Below 60%): Needs significant support to demonstrate concepts

Grade 6-9 (11-14 Years) - Weeks 6-8

Drone Laws, Emergency Procedures & Practical Flying

Week 6: Drone Laws and Regulations (Kenya Focus)

Learning Objectives:

  • Learn basic drone laws in Kenya (KCAA regulations)
  • Understand where and how children can fly drones legally
  • Develop awareness of responsible drone operation
  • Understand the importance of aviation safety

Key Concepts:

  • Kenya Civil Aviation Authority (KCAA): National aviation regulator
  • Drone Registration: Required identification and documentation
  • No-Fly Zones: Airports, government buildings, restricted areas
  • Altitude Restrictions: Maximum height limitations
  • Visual Line of Sight (VLOS): Maintaining visual contact
  • Privacy Laws: Respecting others’ rights and property

Kenya Drone Regulations Summary:

  1. Registration Requirements:
  • All drones over 250g must be registered with KCAA
  • Operator license required for commercial operations
  • Age restrictions for different categories of operation
  1. Operational Limits:
  • Maximum altitude: 400 feet (120 meters) AGL
  • Minimum distance from airports: 8km for major airports
  • No flying over crowds or public events
  • Daylight operations only (without special permits)
  1. Prohibited Areas:
  • Within 5km of any airport
  • Over government buildings and installations
  • National parks without permits
  • Private property without permission

Safety and Legal Guidelines for Young Pilots:

  • Always have adult supervision
  • Start with toy drones under 250g
  • Practice in open, safe areas
  • Respect others’ privacy and property
  • Learn emergency procedures
  • Keep drone in sight at all times

Week 7: Emergency Procedures and Responsible Flying

Learning Objectives:

  • Review key safety and legal concepts from previous weeks
  • Understand emergency basics for beginner flyers
  • Develop decision-making skills for unexpected situations
  • Practice responsible pilot behavior

Key Concepts:

  • Emergency Procedures: Systematic responses to problems
  • Risk Assessment: Evaluating dangers before flying
  • Decision Making: Choosing appropriate actions under pressure
  • Communication: Alerting others during emergencies
  • Equipment Failure: What to do when drone malfunctions
  • Weather Awareness: Recognizing dangerous conditions

Emergency Scenarios and Responses:

  1. Lost Communication with Drone:
  • Stay calm and observe drone behavior
  • Activate Return-to-Home (RTH) function if available
  • Move to higher ground for better signal
  • Prepare for manual landing if signal returns
  • Never chase after a flyaway drone
  1. Low Battery Warning:
  • Immediately begin landing sequence
  • Choose nearest safe landing spot
  • Avoid flying over people or property
  • Land even if not at original takeoff point
  • Safety is more important than convenience
  1. Unexpected Weather Changes:
  • Monitor weather conditions constantly
  • Land immediately if wind increases
  • Avoid flying in rain or snow
  • Watch for sudden temperature changes
  • When in doubt, don’t fly
  1. Equipment Malfunction:
  • Attempt controlled landing immediately
  • Don’t try to fix problems while airborne
  • Inform other people in the area
  • Document the problem for later analysis
  • Never continue flying with known issues

Mission Planning Process:

  1. Pre-flight Planning: Weather check, equipment inspection, route planning
  2. Risk Assessment: Identify potential hazards and mitigation strategies
  3. Communication Plan: Inform others of flight activities
  4. Emergency Procedures: Know what to do if things go wrong
  5. Post-flight Review: Analyze what went well and areas for improvement

Week 8: Practical Flying Skills and Team Challenges

Learning Objectives:

  • Demonstrate ability to control a mini drone (takeoff, hover, land)
  • Apply basic flight skills in problem-solving mission scenarios
  • Work as a team to complete drone-based challenges
  • Evaluate personal progress and set goals for improvement

Key Concepts:

  • Flight Control Mastery: Smooth, precise drone movements
  • Situational Awareness: Understanding surroundings during flight
  • Mission Planning: Preparing for specific flight objectives
  • Teamwork: Collaborative problem-solving with drones
  • Performance Evaluation: Self-assessment and peer feedback
  • Safety Leadership: Taking responsibility for safe operations

Basic Flight Skills Progression:

  1. Fundamental Controls:
  • Smooth takeoff to hover
  • Maintaining steady hover
  • Controlled landing
  • Forward/backward movement
  • Left/right movement
  • Rotation control
  1. Intermediate Maneuvers:
  • Figure-8 patterns
  • Precision landing on target
  • Obstacle avoidance
  • Following predetermined paths
  • Coordinated movements
  1. Advanced Challenges:
  • Team relay races
  • Rescue simulations
  • Precision delivery tasks
  • Group choreography
  • Time-based challenges

Mission Scenarios:

Mission 1: Search and Rescue

  • Objective: Locate “missing person” (target) in designated area
  • Skills: Systematic search patterns, communication, observation
  • Time limit: 5 minutes
  • Success criteria: Target identified and location communicated

Mission 2: Delivery Challenge

  • Objective: Transport small payload from Point A to Point B
  • Skills: Precision flying, cargo management, safe landing
  • Obstacles: Wind conditions, landing accuracy requirements
  • Success criteria: Payload delivered undamaged within time limit

Mission 3: Team Coordination

  • Objective: Multiple drones work together to complete complex task
  • Skills: Communication, timing, spatial awareness
  • Challenge: Choreographed flight pattern or group problem-solving
  • Success criteria: All drones complete task without collisions

Safety Protocols for Practical Flying:

  • Always maintain 10-foot safety zone around flying area
  • Designate specific roles: pilot, observer, safety officer
  • Use hand signals for communication during loud operations
  • Practice emergency landing procedures before each session
  • Rotate roles so everyone experiences different responsibilities

Grade 6-9 Assessment - Weeks 6-8

Week 6 Assessment: Drone Laws and Regulations

Format: Written Test + Legal Scenario Analysis (40 minutes)

Part A: Kenya Aviation Law Knowledge (25 points)

  1. KCAA Regulations (10 points) Fill in the blanks:
  • Drones over ______ grams must be registered with KCAA
  • Maximum altitude for recreational flying is ______ feet
  • Minimum distance from major airports is ______ kilometers
  • Commercial drone operations require a ______ license
  • Drones must remain within ______ line of sight
  1. No-Fly Zone Identification (10 points) Mark TRUE or FALSE for each flying location:
  • Your school playground during lunch break: ______
  • Open field 2km from Wilson Airport: ______
  • Your backyard with adult supervision: ______
  • Uhuru Park during a public event: ______
  • Private farm with owner’s permission: ______
  1. Legal Compliance (5 points) List 3 requirements for legally flying a drone in Kenya:



Part B: Scenario-Based Decision Making (20 points)

  1. Legal Scenarios (20 points) For each scenario, explain if the action is legal and why:

Scenario A: Sarah wants to fly her 300g drone over her neighbor’s house to take photos of her own backyard. Legal? _____ Why? _______________________________

Scenario B: James plans to fly his registered drone at 200 feet altitude in an open field 10km from any airport during daylight hours. Legal? _____ Why? _______________________________

Scenario C: A group of students want to use their drone for a school project, filming the school building from 100 feet up. Legal? _____ Why? _______________________________

Scenario D: Ahmed wants to fly his 150g toy drone in his compound for 10 minutes. Legal? _____ Why? _______________________________

Part C: Responsible Pilot Planning (15 points)

  1. Pre-flight Checklist (15 points) Create a 10-item pre-flight checklist that includes legal, safety, and equipment considerations:




[Continue through 10]

Week 7-8 Assessment: Emergency Procedures and Practical Skills

Format: Practical Flight Test + Emergency Response Simulation (60 minutes)

Part A: Emergency Response Knowledge (20 points)

  1. Emergency Procedures (15 points) Describe the correct response for each emergency:

Low Battery Warning: Step 1: _______________________________ Step 2: _______________________________ Step 3: _______________________________

Lost Radio Contact: Step 1: _______________________________ Step 2: _______________________________ Step 3: _______________________________

Sudden Weather Change: Step 1: _______________________________ Step 2: _______________________________ Step 3: _______________________________

  1. Risk Assessment (5 points) Identify 3 risks for flying in each environment:
  • School playground: ____________, ____________, ____________
  • Open field: ____________, ____________, ____________

Part B: Practical Flight Skills Assessment (30 points)

  1. Basic Flight Controls (15 points) Demonstrate competency in:
  • Smooth takeoff and landing (3 points)
  • Stable hovering for 30 seconds (3 points)
  • Forward/backward precision movement (3 points)
  • Left/right precision movement (3 points)
  • Controlled rotation (3 points)
  1. Mission Challenge (15 points) Complete ONE of the following missions:

Option A - Navigation Course:

  • Fly through 5 waypoints in sequence
  • Land within 1-meter target circle
  • Complete within 3 minutes

Option B - Team Coordination:

  • Work with partner to complete relay challenge
  • Communicate effectively during handoff
  • Maintain safety throughout mission

Part C: Leadership and Safety Evaluation (15 points)

  1. Safety Leadership (8 points) While others are flying, demonstrate:
  • Proper safety zone maintenance
  • Clear communication with pilot
  • Appropriate responses to unsafe situations
  • Helpful coaching and encouragement
  1. Self-Assessment and Goal Setting (7 points) Written reflection:
  • What flight skill are you most confident with? Why?
  • What area needs the most improvement?
  • Set one specific goal for future drone flying
  • Describe one way you can help others fly safely

Practical Skills Rubric:

  • Expert Pilot (90-100%): Demonstrates advanced skills, teaches others, shows exceptional safety awareness
  • Competent Pilot (80-89%): Performs all basic skills reliably, follows safety protocols consistently
  • Developing Pilot (70-79%): Shows improvement in most areas, occasional guidance needed
  • Novice Pilot (60-69%): Basic skills present but inconsistent, needs continued practice
  • Beginning Pilot (Below 60%): Requires significant instruction and supervision

Grade 10-12 (14-16 Years) - Weeks 6-8

Advanced Python Projects & Integration

Week 6-7: Integrated Systems Project (Combined Weeks)

Learning Objectives:

  • Combine motors and sensors in complex systems
  • Debug integrated hardware/software systems
  • Apply creative problem-solving to real-world challenges
  • Document projects professionally

Key Concepts:

  • Systems Integration: Combining multiple components into unified solutions
  • Hardware-Software Interface: Code that bridges digital and physical worlds
  • System Architecture: Planning complex projects with multiple subsystems
  • Error Handling: Managing failures gracefully in complex systems
  • Performance Optimization: Making systems run efficiently
  • Documentation Standards: Professional project recording

Advanced Integration Concepts:

1. Multi-Sensor Fusion

import threading
import queue
from gpiozero import DistanceSensor, MotionSensor, MCP3008
from time import sleep
import json

class SensorFusion:
    def __init__(self):
        self.distance_sensor = DistanceSensor(echo=24, trigger=23)
        self.motion_sensor = MotionSensor(4)
        self.light_sensor = MCP3008(channel=0)
        self.temp_sensor = MCP3008(channel=1)

        # Data queues for thread communication
        self.sensor_data = queue.Queue()
        self.running = False

    def read_sensors(self):
        """Continuous sensor reading in separate thread"""
        while self.running:
            try:
                data = {
                    'timestamp': time.time(),
                    'distance': self.distance_sensor.distance * 100,
                    'motion': self.motion_sensor.motion_detected,
                    'light_level': self.light_sensor.voltage,
                    'temperature': self.convert_temp(self.temp_sensor.voltage)
                }
                self.sensor_data.put(data)
                sleep(0.1)  # 10Hz sampling rate
            except Exception as e:
                print(f"Sensor reading error: {e}")

    def convert_temp(self, voltage):
        """Convert sensor voltage to temperature"""
        return (voltage - 0.5) * 100  # Example conversion

    def start_monitoring(self):
        """Start sensor monitoring thread"""
        self.running = True
        self.sensor_thread = threading.Thread(target=self.read_sensors)
        self.sensor_thread.start()

    def stop_monitoring(self):
        """Stop sensor monitoring"""
        self.running = False
        if hasattr(self, 'sensor_thread'):
            self.sensor_thread.join()

2. Intelligent Control Systems

class SmartEnvironmentController:
    def __init__(self):
        self.sensors = SensorFusion()
        self.fan_motor = Motor(forward=2, backward=3)
        self.heater_relay = OutputDevice(18)
        self.lights = PWMOutputDevice(19)

        # Control parameters
        self.target_temp = 22.0  # Target temperature in Celsius
        self.temp_tolerance = 1.0
        self.light_threshold = 0.3

        # Control state
        self.auto_mode = True
        self.manual_override = False

    def analyze_environment(self, sensor_data):
        """Intelligent decision making based on sensor data"""
        decisions = {
            'fan_speed': 0.0,
            'heater_on': False,
            'light_level': 0.0,
            'alert_status': 'normal'
        }

        # Temperature control logic
        temp_diff = sensor_data['temperature'] - self.target_temp

        if temp_diff > self.temp_tolerance:  # Too hot
            decisions['fan_speed'] = min(1.0, temp_diff / 5.0)  # Scale fan speed
            decisions['heater_on'] = False
        elif temp_diff < -self.temp_tolerance:  # Too cold
            decisions['fan_speed'] = 0.0
            decisions['heater_on'] = True

        # Light control logic
        if sensor_data['light_level'] < self.light_threshold:
            decisions['light_level'] = 1.0 - sensor_data['light_level']  # Complement lighting

        # Security monitoring
        if sensor_data['motion'] and sensor_data['distance'] < 20:  # Close motion
            decisions['alert_status'] = 'intrusion_detected'
        elif sensor_data['distance'] < 5:  # Very close object
            decisions['alert_status'] = 'obstacle_warning'

        return decisions

    def execute_controls(self, decisions):
        """Execute control decisions"""
        if not self.manual_override:
            # Motor control
            if decisions['fan_speed'] > 0:
                self.fan_motor.forward(decisions['fan_speed'])
            else:
                self.fan_motor.stop()

            # Heater control
            if decisions['heater_on']:
                self.heater_relay.on()
            else:
                self.heater_relay.off()

            # Light control
            self.lights.value = decisions['light_level']

    def run_control_loop(self):
        """Main control loop"""
        self.sensors.start_monitoring()

        try:
            while True:
                if not self.sensors.sensor_data.empty():
                    current_data = self.sensors.sensor_data.get()
                    decisions = self.analyze_environment(current_data)
                    self.execute_controls(decisions)

                    # Log system status
                    self.log_system_status(current_data, decisions)

                sleep(0.5)  # Control loop frequency

        except KeyboardInterrupt:
            print("Shutting down control system...")
        finally:
            self.sensors.stop_monitoring()
            self.fan_motor.stop()
            self.heater_relay.off()
            self.lights.off()

    def log_system_status(self, sensor_data, decisions):
        """Log system performance data"""
        log_entry = {
            'timestamp': sensor_data['timestamp'],
            'sensors': sensor_data,
            'controls': decisions,
            'mode': 'auto' if self.auto_mode else 'manual'
        }

        # In a real system, this would write to a file or database
        print(f"System Status: Temp={sensor_data['temperature']:.1f}°C, "
              f"Fan={decisions['fan_speed']:.1f}, "
              f"Alert={decisions['alert_status']}")

3. Project Documentation Standards

"""
Smart Environment Control System
================================

Project: IoT Environmental Controller
Author: Student Name
Date: Current Date
Version: 1.0

Description:
    An intelligent system that monitors environmental conditions and automatically
    adjusts heating, cooling, and lighting based on sensor feedback.

Hardware Requirements:
    - Raspberry Pi 4 or similar
    - Temperature sensor (DS18B20 or similar)
    - Light sensor (LDR with MCP3008 ADC)
    - Motion sensor (PIR)
    - Distance sensor (HC-SR04)
    - DC Motor (for fan simulation)
    - Relay module (for heater control)
    - PWM-controlled LED (for lighting)

Software Dependencies:
    - Python 3.7+
    - gpiozero library
    - threading module (standard library)
    - queue module (standard library)
    - json module (standard library)

Installation:
    pip install gpiozero

Usage:
    python smart_environment.py

Configuration:
    Modify target_temp and light_threshold variables in SmartEnvironmentController
    class to adjust system behavior.

Testing:
    Run included test functions to verify sensor readings and control outputs
    before deploying the full system.

Known Issues:
    - Temperature sensor calibration may need adjustment for local conditions
    - Motion sensor has 2-second reset time that affects rapid detection

Future Enhancements:
    - Web interface for remote monitoring
    - Data logging to CSV files
    - Machine learning for predictive control
    - Mobile app integration
"""

Project Examples for Students:

Project 1: Smart Garden Monitor

  • Monitors soil moisture, light, and temperature
  • Controls watering pump and grow lights
  • Logs plant growth data
  • Sends alerts when intervention needed

Project 2: Home Security System

  • Multiple sensor integration (motion, door, window)
  • Camera trigger on detection
  • SMS/email notifications
  • Mobile app control interface

Project 3: Weather Station

  • Measures temperature, humidity, pressure, wind
  • Data logging with timestamps
  • Weather prediction algorithms
  • Web dashboard for data visualization

Project 4: Automated Greenhouse

  • Climate control (temperature, humidity)
  • Automated watering system
  • Light cycle management
  • Growth optimization algorithms

Week 8: Project Presentations and Assessment

Learning Objectives:

  • Present technical projects professionally
  • Give and receive constructive feedback
  • Self-evaluate learning progress and achievements
  • Plan next steps for continued learning

Key Concepts:

  • Technical Communication: Explaining complex systems clearly
  • Presentation Skills: Engaging audiences with technical content
  • Peer Review: Constructive feedback and collaboration
  • Self-Assessment: Honest evaluation of own work
  • Professional Development: Planning continued learning paths
  • Portfolio Building: Documenting achievements for future opportunities

Presentation Structure:

  1. Project Overview (2 minutes)
  • Problem statement and objectives
  • Target audience and use cases
  • Key features and functionality
  1. Technical Demonstration (2 minutes)
  • Live system operation
  • Key components and how they work
  • Code walkthrough of critical sections
  1. Challenges and Solutions (1 minute)
  • Major obstacles encountered
  • Creative solutions implemented
  • Lessons learned from failures

Evaluation Criteria:

Technical Merit (40%):

  • System functionality and reliability
  • Code quality and organization
  • Creative problem-solving approach
  • Integration of multiple technologies

Communication (30%):

  • Clear explanation of technical concepts
  • Engaging presentation delivery
  • Appropriate use of visual aids
  • Effective response to questions

Documentation (20%):

  • Complete project documentation
  • Code comments and structure
  • User instructions and setup guides
  • Reflection on learning process

Collaboration (10%):

  • Constructive feedback to peers
  • Professional interaction during Q&A
  • Willingness to share knowledge
  • Respectful critique and discussion

Python Programming Trivia Challenge: End the term with fun technical questions:

  1. What does “PEP 8” refer to in Python?
  2. What’s the difference between == and is in Python?
  3. How do you handle exceptions in Python?
  4. What is a Python decorator?
  5. What’s the difference between a list and a tuple?

Grade 10-12 Final Assessment - Weeks 6-8

Integrated Systems Project Assessment

Format: Major Project + Technical Presentation + Peer Review (2 weeks + presentation day)

Project Requirements: Students must create an integrated system that combines:

  • At least 3 different sensors
  • At least 2 actuators (motors, lights, relays, etc.)
  • Data logging and analysis
  • User interface (command line or simple GUI)
  • Error handling and safety features

Part A: Technical Implementation (40 points)

System Design (10 points)

  • Clear problem definition and solution approach
  • System architecture diagram showing component relationships
  • Hardware schematic or connection diagram
  • Software flowchart or algorithm description

Code Quality (15 points)

  • Well-structured, modular code with functions/classes
  • Appropriate variable names and code organization
  • Comprehensive comments explaining complex sections
  • Error handling for hardware failures
  • Efficient algorithms and resource usage

Hardware Integration (15 points)

  • Stable sensor readings with appropriate filtering
  • Reliable actuator control with safety limits
  • Proper electrical connections and component usage
  • System operates reliably for extended periods
  • Professional cable management and mounting

Part B: Documentation and Communication (25 points)

Project Documentation (15 points) Create a complete project report including:

  • Executive summary of project goals and achievements
  • Detailed technical specifications and requirements
  • Installation and setup instructions
  • User manual with clear operating procedures
  • Troubleshooting guide for common problems
  • Code documentation with API reference

Technical Presentation (10 points)

  • Clear 5-minute presentation explaining project
  • Live demonstration of working system
  • Professional slides with technical diagrams
  • Confident handling of technical questions
  • Appropriate use of technical vocabulary

Part C: Innovation and Problem Solving (20 points)

Creative Solutions (10 points)

  • Original approach to solving chosen problem
  • Creative use of available hardware and software
  • Evidence of iterative design and improvement
  • Solutions show depth of understanding beyond basic requirements

Advanced Features (10 points) Choose and implement at least TWO:

  • Machine learning or AI decision making
  • Network communication (IoT connectivity)
  • Mobile app or web interface
  • Data visualization and analytics
  • Predictive algorithms or optimization
  • Integration with external APIs or services

Part D: Professional Skills (15 points)

Peer Collaboration (8 points)

  • Constructive feedback provided to classmates
  • Professional behavior during presentations
  • Willingness to help others debug problems
  • Respectful and insightful questions during Q&A

Self-Assessment (7 points) Written reflection addressing:

  • Most significant technical challenge and how you overcame it
  • What you would do differently if starting over
  • How this project connects to potential career interests
  • Specific skills you want to develop further
  • Your confidence level with different aspects of the project

Sample Project Evaluation Rubric:

Exceptional (90-100%)

  • System exceeds all requirements with innovative features
  • Code is publication-quality with comprehensive documentation
  • Presentation is engaging and demonstrates deep understanding
  • Shows leadership in helping others and contributing to class learning
  • Self-reflection shows sophisticated understanding of learning process

Proficient (80-89%)

  • System meets all requirements reliably
  • Code is well-structured with good documentation
  • Presentation is clear and technically accurate
  • Actively participates in peer learning and feedback
  • Self-reflection shows good awareness of strengths and growth areas

Developing (70-79%)

  • System meets most requirements with minor issues
  • Code works but may have organizational or documentation gaps
  • Presentation covers required topics but may lack depth
  • Participates adequately in class activities
  • Self-reflection shows basic understanding of learning process

Beginning (60-69%)

  • System meets basic requirements but has significant limitations
  • Code works for demonstration but has structural or reliability issues
  • Presentation covers basics but shows limited understanding
  • Minimal participation in peer activities
  • Self-reflection is superficial or lacks insight

Incomplete (Below 60%)

  • System fails to meet basic requirements or doesn’t function reliably
  • Code has major issues that prevent proper operation
  • Presentation is unclear or shows misunderstanding of concepts
  • Little to no participation in collaborative learning
  • Self-reflection missing or shows no evidence of learning

Term 1 Final Portfolio Assessment - All Grade Levels

Portfolio Components Checklist

For All Students:

  • Weekly reflection journals documenting learning progress
  • Photo documentation of all projects and experiments
  • Completed weekly assessments with corrections
  • Evidence of peer collaboration and teaching
  • Self-assessment of growth in each major topic area

Grade-Specific Additions:

Preschoolers (4-6 years):

  • Drawings of favorite STEM activities
  • Parent/teacher observation notes on engagement and skills
  • Examples of unplugged coding sequences created
  • Photos of technology exploration activities

Grade 2-5 (7-11 years):

  • Screenshots of completed Scratch projects
  • Blockly puzzle solutions and explanations
  • Game design documents and storyboards
  • Video explanations of programming concepts

Grade 6-9 (11-14 years):

  • Drone safety checklist created and used
  • Mission planning worksheets with risk assessments
  • Photos/videos of practical flying sessions
  • Research report on drone applications in chosen field

Grade 10-12 (14-16 years):

  • Complete code repositories with documentation
  • Hardware connection diagrams and schematics
  • Data analysis reports from sensor projects
  • Technical presentation slides and demonstration videos

Cross-Grade Learning Objectives Mastery

By the end of Term 1, students should demonstrate:

Preschoolers:

  • Basic understanding of STEM concepts through play
  • Ability to follow simple sequences and patterns
  • Safe interaction with age-appropriate technology
  • Curiosity and engagement with hands-on exploration

Grade 2-5:

  • Fundamental programming concepts using visual languages
  • Ability to create simple games and interactive stories
  • Understanding of sequence, loops, and basic logic
  • Confidence in debugging and problem-solving

Grade 6-9:

  • Comprehensive understanding of drone safety and regulations
  • Practical flying skills with safety awareness
  • Knowledge of aviation principles and laws
  • Teamwork and communication skills in technical contexts

Grade 10-12:

  • Proficiency in Python programming for hardware control
  • Ability to integrate multiple sensors and actuators
  • Professional documentation and presentation skills
  • Independent problem-solving and creative innovation

Preparation for Term 2

Preschoolers → Scratch Junior Programming:

  • Continue building sequencing skills
  • Introduction to tablet-based programming
  • Creative storytelling with technology

Grade 2-5 → IoT Integration with Sensors:

  • Bridge from visual programming to physical computing
  • Introduction to sensors and real-world data
  • Beginning electronics and circuit concepts

Grade 6-9 → Smart Home Security:

  • Apply drone safety concepts to IoT systems
  • Introduction to sensors and automation
  • Home automation and security principles

Grade 10-12 → Smart Cities:

  • Scale up from individual projects to community solutions
  • Advanced IoT networking and data analysis
  • Social impact of technology solutions

Additional Resources and Extensions

Online Learning Platforms:

  • Preschoolers: PBS Kids programming games, Kodable app
  • Grade 2-5: Scratch Jr., Code.org courses, Blockly games
  • Grade 6-9: DroneBlocks, FAA educational materials, aviation simulation games
  • Grade 10-12: Python.org tutorials, Raspberry Pi Foundation projects, GitHub learning labs

STEM Career Connections:

  • Robotics Engineer: Designs and builds robots for various applications
  • Software Developer: Creates programs and applications for computers and devices
  • Drone Pilot: Professional UAV operations for photography, surveying, delivery
  • IoT Developer: Connects everyday objects to the internet for smart automation
  • Data Scientist: Analyzes sensor data to find patterns and make predictions

Community Extension Activities:

  • Science Fair Projects: Using skills learned to create original investigations
  • STEM Club Leadership: Teaching younger students basic concepts
  • Community Problem Solving: Identifying local problems that technology could help solve
  • Maker Space Participation: Continuing projects in community workshop environments

Assessment Data Tracking: Teachers should maintain records of:

  • Individual student progress through learning objectives
  • Common areas of difficulty requiring additional support
  • Exceptional student work that could be showcased
  • Parent/guardian feedback on home engagement with STEM concepts
  • Equipment and resource needs for optimal program delivery

This completes the comprehensive Term 1 curriculum with detailed notes, assessments, and support materials for all grade levels in the IoT & Robotics program. Each grade level has age-appropriate challenges that build foundational skills while maintaining engagement and fostering creativity in STEM learning.


Notes

I’ve created a comprehensive set of notes and assessment tests for Term 1 across all grade levels (Preschoolers through Grade 10-12). The document includes:

What’s Included:

For Each Grade Level:

  • Detailed weekly lesson notes covering weeks 1-8 content
  • Key concepts and learning objectives for each topic
  • Practical examples and code samples (for programming grades)
  • Age-appropriate assessment tests with multiple formats

Assessment Formats:

  • Preschoolers (4-6): Practical/observational assessments with hands-on activities
  • Grade 2-5 (7-11): Computer-based Scratch/Blockly challenges
  • Grade 6-9 (11-14): Written tests + practical drone safety demonstrations
  • Grade 10-12 (14-16): Coding assignments + hardware integration projects

Key Features:

  • Covers all 8 weeks of Term 1 content
  • Aligned with curriculum from the IoT & Robotics document
  • Progressive difficulty appropriate for each age group
  • Practical assessments that test real understanding
  • Detailed rubrics for fair evaluation
  • Extension activities for advanced learners
  • Safety guidelines and best practices

Topics Covered:

  • Preschoolers: STEM basics, simple machines, unplugged coding
  • Grade 2-5: Scratch programming, Blockly games, interface navigation
  • Grade 6-9: Drone basics, aviation principles, safety regulations
  • Grade 10-12: Python programming, hardware control, sensor integration

Each assessment is designed to be practical and engaging, testing both theoretical knowledge and hands-on application skills. The rubrics provide clear criteria for evaluation at different skill levels.


Perfect! I’ve now completed the comprehensive Term 1 notes and assessment materials covering all 8 weeks for all grade levels. Here’s what’s now included:

Assessment Test

Assessment Test

Assessment Test

Assessment Test

Assessment Test

Assessment Test

Assessment Test

IoT & Robotics Term 1 - Complete Notes & Assessment Tests

Table of Contents

  1. Preschoolers (4-6 Years) - STEM Storytelling & Coding Toys
  2. Grade 2-5 (7-11 Years) - Scratch & Blockly Programming
  3. Grade 6-9 (11-14 Years) - Drone Aviation Introduction
  4. Grade 10-12 (14-16 Years) - Python Basics

Preschoolers (4-6 Years)

Term 1: STEM Storytelling & Coding Toys

Week 1: Introduction to STEM

Learning Objectives:

  • Understand basic concepts of STEM (Science, Technology, Engineering, Math)
  • Spark excitement and curiosity about STEM through hands-on activities
  • Foster teamwork through group experiments
  • Develop early thinking through guided play and experimentation

Key Concepts:

  • Science: Learning about the world around us through observation
  • Technology: Simple tools and devices that help us
  • Engineering: Building and creating solutions
  • Mathematics: Numbers, shapes, and patterns in everyday life

Activities:

  • Floating vs. Sinking experiments with various objects
  • Basic robot interaction and exploration
  • STEM vocabulary building games
  • Classification activities

Materials: Water, buckets, floating items (paper, feathers), sinking items (stones, coins), toy robot, tablet

Week 2: STEM Play Corners

Learning Objectives:

  • Explore different STEM areas through play stations
  • Develop fine motor skills through hands-on manipulation
  • Practice problem-solving through guided discovery
  • Build confidence in exploring new concepts

Key Concepts:

  • Play-based learning: Learning through exploration and fun
  • Spatial awareness: Understanding shapes, sizes, and positions
  • Cause and effect: Understanding that actions have results
  • Collaboration: Working together to solve problems

Week 3: Simple Machines & Environmental Science

Learning Objectives:

  • Identify simple machines in everyday life
  • Understand basic environmental concepts
  • Develop observation skills
  • Connect STEM to the natural world

Key Concepts:

  • Simple Machines: Lever, pulley, wheel, ramp
  • Environment: Plants, animals, weather, seasons
  • Observation: Using our senses to learn
  • Nature patterns: Recognizing patterns in nature

Week 4: Unplugged Coding

Learning Objectives:

  • Introduction to coding concepts without computers
  • Understand sequence and order
  • Develop logical thinking
  • Practice following and giving instructions

Key Concepts:

  • Sequence: Steps in order
  • Instructions: Clear directions to follow
  • Algorithms: Step-by-step solutions
  • Patterns: Recognizing and creating patterns

Assessment Test - Preschoolers (4-6 Years)

Week 1-2 Assessment: STEM Basics

Format: Practical/Observational Assessment

  1. Floating or Sinking? (Show child various objects)
  • Point to objects that will float: feather, cork, plastic toy
  • Point to objects that will sink: stone, coin, marble
  • Explain why you think so (in simple words)
  1. STEM Matching (Picture cards)
  • Match the scientist to the magnifying glass
  • Match the engineer to the building blocks
  • Match the mathematician to the numbers
  • Match the technologist to the computer
  1. Following Instructions
  • Can follow 2-step instructions: “Pick up the red block and put it in the box”
  • Can give simple instructions to a friend
  • Can arrange objects in order (biggest to smallest)

Assessment Rubric:

  • Exceeding (3): Completes all tasks independently with explanation
  • Meeting (2): Completes most tasks with minimal guidance
  • Approaching (1): Attempts tasks with significant support
  • Beginning (0): Needs extensive help to participate

Week 3-4 Assessment: Simple Machines & Coding

Format: Hands-on Demonstration

  1. Simple Machines Hunt
  • Find the lever (seesaw, scissors)
  • Find the wheel (bicycle, toy car)
  • Find the ramp (slide, wedge)
  • Explain what each machine helps us do
  1. Nature Observation
  • Draw or point to living things vs. non-living things
  • Identify basic shapes in nature (circles in flowers, triangles in mountains)
  • Name things that grow vs. things that are made
  1. Unplugged Coding Challenge
  • Arrange sequence cards to show morning routine
  • Give directions to help friend reach the treasure
  • Complete a simple pattern with blocks or shapes

Grade 2-5 (7-11 Years)

Term 1: Scratch & Blockly Programming

Week 1: Introduction to Programming

Learning Objectives:

  • Understand what programming is
  • Learn about Scratch programming environment
  • Install and explore Scratch interface
  • Grasp the concept of sequencing

Key Concepts:

  • Programming: Giving instructions to computers
  • Scratch: Visual programming language using blocks
  • Interface: The screen where we work with Scratch
  • Sequencing: Putting commands in the right order
  • Sprites: Characters in Scratch programs
  • Stage: Where Scratch programs run

Core Activities:

  • Explore Scratch interface and tools
  • Identify different areas (sprite area, blocks palette, stage)
  • Learn about different block categories (Motion, Looks, Sound, etc.)
  • Create first simple animation

Week 2: Understanding Scratch Interface

Learning Objectives:

  • Navigate Scratch interface confidently
  • Understand different block categories
  • Create basic sprite movements
  • Save and load projects

Key Concepts:

  • Blocks Palette: Where programming blocks are stored
  • Scripts Area: Where we build our programs
  • Motion Blocks: Make sprites move
  • Looks Blocks: Change sprite appearance
  • Events: What starts our programs running

Week 3: Setting Up Scratch Projects

Learning Objectives:

  • Plan and organize Scratch projects
  • Understand project structure
  • Use backgrounds and sprites effectively
  • Practice debugging simple problems

Key Concepts:

  • Project Planning: Thinking before coding
  • Backgrounds: Scenes for our programs
  • Sprite Library: Ready-made characters
  • Debugging: Finding and fixing problems

Week 4: Introduction to Blockly

Learning Objectives:

  • Understand Blockly visual programming
  • Compare Blockly with Scratch
  • Complete basic Blockly puzzles
  • Transfer concepts between platforms

Key Concepts:

  • Blockly: Another visual programming language
  • Puzzle-based Learning: Learning through solving challenges
  • Logic Blocks: Making decisions in programs
  • Loops: Repeating actions

Week 5: Blockly Games for Scratch Programmers

Learning Objectives:

  • Apply Scratch knowledge to Blockly games
  • Solve increasingly complex puzzles
  • Understand programming logic and flow
  • Build problem-solving confidence

Key Concepts:

  • Game Logic: Rules that make games work
  • Progressive Difficulty: Challenges that get harder
  • Pattern Recognition: Seeing repeated solutions
  • Persistence: Keep trying when challenges are difficult

Assessment Test - Grade 2-5 (7-11 Years)

Week 1-3 Assessment: Scratch Fundamentals

Format: Practical Computer Assessment (30 minutes)

Part A: Interface Knowledge (10 points)

  1. Label the parts of Scratch interface:
  • Blocks Palette
  • Scripts Area
  • Stage
  • Sprite Area
  1. Match the block colors to their functions:
  • Motion blocks: _____ (Blue)
  • Looks blocks: _____ (Purple)
  • Sound blocks: _____ (Pink)
  • Events blocks: _____ (Yellow)

Part B: Basic Programming (15 points) 3. Create a program that makes a sprite:

  • Move 10 steps forward

  • Turn 90 degrees right

  • Say “Hello” for 2 seconds

  • Change color

  1. Fix this broken sequence (drag blocks in correct order):
[Say "Goodbye"][When green flag clicked][Move 100 steps][Say "Hello"]

Part C: Problem Solving (10 points) 5. Your sprite isn’t moving when you click the green flag. What might be wrong?

  • Missing “when green flag clicked” block

  • Sprite is already at the edge

  • Motion blocks aren’t connected

  • All of the above

  1. Create a simple animation showing a cat walking across the stage.

Week 4-5 Assessment: Blockly & Problem Solving

Format: Computer-based Blockly Challenges (25 minutes)

Part A: Blockly Basics (8 points)

  1. Complete the “Move Forward” puzzle in Blockly
  2. Complete the “Turn Left/Right” puzzle
  3. Complete the “Repeat Loop” puzzle
  4. Complete the “If/Else” puzzle

Part B: Logic Understanding (12 points) 5. Explain what this Blockly code does:

Repeat 4 times:
  Move forward
  Turn right 90 degrees

Answer: _________________

  1. Write Blockly code to make a character:
  • Move forward 3 steps
  • Turn left if path is blocked
  • Repeat until reaching goal

Part C: Transfer Learning (10 points) 7. How is Blockly similar to Scratch? List 3 similarities:




  1. Create a Scratch program that does the same thing as this Blockly code:
When started:  Repeat 5 times:    Move forward 20 steps    Wait 1 second

Assessment Rubric:

  • Advanced (90-100%): Completes all tasks efficiently with creative additions
  • Proficient (80-89%): Completes most tasks correctly with minor errors
  • Developing (70-79%): Completes basic tasks but struggles with complex problems
  • Beginning (Below 70%): Needs significant support to complete tasks

Grade 6-9 (11-14 Years)

Term 1: Drone Aviation Introduction

Week 1: Introduction to Drones and Aviation Basics

Learning Objectives:

  • Understand what drones are and their applications
  • Learn basic aviation principles
  • Identify different types of aircraft
  • Understand the evolution of flight

Key Concepts:

  • Unmanned Aerial Vehicle (UAV): Aircraft without a human pilot aboard
  • Remote Pilot: Person controlling the drone from the ground
  • Autonomous Flight: Drones flying with minimal human control
  • Commercial vs. Recreational Use: Different purposes for drones
  • Four Forces of Flight: Lift, Weight, Thrust, Drag
  • Aerodynamics: How air moves around objects in flight

Applications of Drones:

  • Photography and videography
  • Search and rescue operations
  • Agriculture monitoring
  • Package delivery
  • Scientific research
  • Military operations

Week 2: Drone Safety Rules and Best Practices

Learning Objectives:

  • Learn essential drone safety protocols
  • Understand pre-flight checklist procedures
  • Identify potential hazards and risks
  • Develop responsible drone operation habits

Key Concepts:

  • Pre-flight Inspection: Checking drone condition before flying
  • Weather Conditions: How weather affects drone flight
  • Battery Safety: Proper battery handling and storage
  • Emergency Procedures: What to do when things go wrong
  • Situational Awareness: Being aware of surroundings while flying

Safety Rules:

  1. Always maintain visual contact with drone
  2. Check weather conditions before flying
  3. Inspect drone and equipment before each flight
  4. Fly in open areas away from people and property
  5. Never fly above 400 feet
  6. Respect others’ privacy
  7. Land immediately if drone malfunctions

Week 3: FAA/UAS Regulations (Basic Overview)

Learning Objectives:

  • Understand basic aviation regulations
  • Learn about no-fly zones and restricted airspace
  • Understand registration requirements
  • Learn about pilot certification basics

Key Concepts:

  • Federal Aviation Administration (FAA): Government agency regulating aviation
  • Unmanned Aircraft Systems (UAS): Official term for drones and related equipment
  • No-Fly Zones: Areas where drone flight is prohibited
  • Remote Pilot Certificate: License required for commercial drone operations
  • Registration: Required identification for drones over 0.55 pounds

Basic Regulations:

  • Drones must be registered if over 0.55 lbs (250 grams)
  • Maximum altitude: 400 feet above ground level
  • Must yield right-of-way to manned aircraft
  • No flying over groups of people
  • No flying at night without special certification
  • Respect airport operational areas (usually 5-mile radius)

Week 4: Key Drone Types & Components

Learning Objectives:

  • Identify different drone configurations
  • Understand key drone components and their functions
  • Compare advantages and disadvantages of different designs
  • Learn basic maintenance requirements

Key Concepts:

  • Multirotor: Drones with multiple rotating propellers
  • Fixed-wing: Airplane-like drones with wings
  • Hybrid VTOL: Vertical takeoff and landing with forward flight capability
  • Frame: Main structure holding all components
  • Flight Controller: Computer controlling drone flight
  • ESC (Electronic Speed Controller): Controls motor speed
  • Gimbal: Stabilizes camera during flight

Drone Types:

  1. Quadcopter: 4 rotors, most common configuration
  2. Hexacopter: 6 rotors, more redundancy and payload capacity
  3. Octocopter: 8 rotors, highest redundancy and capacity
  4. Fixed-wing: Longer flight times, faster speeds
  5. Racing drones: Small, fast, agile for competitive flying

Week 5: Basic Principles of Flight

Learning Objectives:

  • Understand the four forces of flight in detail
  • Learn how drones achieve controlled flight
  • Understand stability and control concepts
  • Explore flight dynamics and physics

Key Concepts:

  • Lift: Upward force generated by rotors or wings
  • Weight (Gravity): Downward force pulling drone toward earth
  • Thrust: Forward force propelling drone through air
  • Drag: Resistance force opposing motion through air
  • Center of Gravity: Balance point of drone
  • Pitch, Roll, Yaw: Three axes of rotation
  • Gyroscopic Effect: How spinning rotors affect stability

Flight Control:

  • Throttle: Controls altitude (up/down)
  • Pitch: Controls forward/backward movement
  • Roll: Controls left/right movement
  • Yaw: Controls rotation (turning left/right)
  • Trim: Fine adjustments for balanced flight

Assessment Test - Grade 6-9 (11-14 Years)

Week 1-2 Assessment: Drone Basics and Safety

Format: Written Test + Practical Safety Demonstration (45 minutes)

Part A: Multiple Choice (20 points)

  1. What does UAV stand for? a) Universal Aviation Vehicle b) Unmanned Aerial Vehicle c) Ultra Aerodynamic Vehicle d) United Aviation Vehicle

  2. Which of the four forces of flight works against gravity? a) Thrust b) Drag c) Lift d) Weight

  3. What should you do FIRST before flying a drone? a) Start the motors b) Check weather conditions c) Take off immediately d) Turn on the camera

  4. The maximum altitude for recreational drone flight is: a) 200 feet b) 300 feet c) 400 feet d) 500 feet

  5. What is the main difference between commercial and recreational drone use? a) Size of drone b) Purpose and regulations c) Color of drone d) Number of rotors

Part B: Short Answer (25 points) 6. List 5 safety rules that must be followed when operating a drone: (10 points)






  1. Explain three commercial applications of drones: (9 points)



  1. Why is it important to maintain visual contact with your drone during flight? (6 points)

Part C: Practical Safety Assessment (15 points) 9. Demonstrate proper pre-flight inspection checklist 10. Identify suitable vs. unsuitable flying locations from photos 11. Explain emergency landing procedures

Week 3-5 Assessment: Regulations and Flight Principles

Format: Written Test + Flight Theory Application (50 minutes)

Part A: Regulations Knowledge (20 points)

  1. True/False (10 points)
  • Drones under 0.55 lbs need to be registered: ___
  • You can fly your drone anywhere as long as it’s daytime: ___
  • Commercial drone operations require a Remote Pilot Certificate: ___
  • Drones must always yield to manned aircraft: ___
  • Flying over groups of people is allowed with permission: ___
  1. What is a no-fly zone and give 3 examples: (10 points) Definition: ________________________________ Examples:



Part B: Drone Components (15 points) 3. Match the component to its function:

  • Flight Controller: _____ a) Provides power to motors

  • ESC: _____ b) Stabilizes camera

  • Gimbal: _____ c) Main structural support

  • Frame: _____ d) Controls drone flight

  • Battery: _____ e) Controls motor speed

  1. Compare quadcopter vs. fixed-wing drones (advantages/disadvantages): (10 points)

Part C: Flight Principles (25 points) 5. Draw and label the four forces of flight on a drone diagram: (12 points)

  1. Explain how a drone moves in each direction: (13 points)
  • Forward: ________________________________
  • Backward: ________________________________
  • Left: ________________________________
  • Right: ________________________________
  • Up: ________________________________
  • Rotate left: ________________________________

Assessment Rubric:

  • Expert (90-100%): Demonstrates comprehensive understanding with detailed explanations
  • Proficient (80-89%): Shows solid grasp of concepts with minor gaps
  • Developing (70-79%): Understands basic concepts but lacks detail in complex areas
  • Novice (Below 70%): Limited understanding, needs additional instruction

Grade 10-12 (14-16 Years)

Term 1: Introduction to Python Basics

Week 1: Writing Structured Python Code

Learning Objectives:

  • Understand Python syntax and structure
  • Learn proper code formatting and indentation
  • Write clean, readable code following best practices
  • Understand variables, data types, and basic operations

Key Concepts:

  • Python: High-level programming language
  • Syntax: Rules for writing Python code
  • Indentation: Using spaces to organize code structure
  • Variables: Named storage for data values
  • Data Types: int, float, string, boolean
  • Comments: Documentation within code using #
  • Print Statement: Displaying output to screen

Code Structure Best Practices:

# Header comment explaining the program
# Author: Your Name
# Date: Today's Date

# Import statements
import module_name

# Constants (UPPERCASE naming)
MAX_VALUE = 100

# Main program logic
def main():
    # Variable declarations
    user_name = "Student"
    age = 16

    # Program logic with proper indentation
    print(f"Hello, {user_name}!")
    print(f"You are {age} years old.")

# Run the program
if __name__ == "__main__":
    main()

Week 2: Functions and Loops

Learning Objectives:

  • Create and use custom functions
  • Understand function parameters and return values
  • Implement for loops and while loops
  • Apply loops to solve repetitive tasks

Key Concepts:

  • Function: Reusable block of code that performs a specific task
  • Parameters: Input values passed to functions
  • Return Value: Output value from a function
  • For Loop: Repeats code a specific number of times
  • While Loop: Repeats code while a condition is true
  • Range Function: Generates sequences of numbers
  • Iteration: Each repetition of a loop
  • Loop Control: Managing when loops start and stop

Function Examples:

# Simple function with no parameters
def greet():
    print("Hello, World!")

# Function with parameters
def greet_person(name, age):
    print(f"Hello, {name}! You are {age} years old.")

# Function with return value
def calculate_area(length, width):
    area = length * width
    return area

# Using functions
greet()
greet_person("Alice", 16)
room_area = calculate_area(10, 12)
print(f"Room area: {room_area} square meters")

Loop Examples:

# For loop with range
for i in range(5):
    print(f"Count: {i}")

# For loop with list
fruits = ["apple", "banana", "orange"]
for fruit in fruits:
    print(f"I like {fruit}")

# While loop
count = 0
while count < 3:
    print(f"While loop count: {count}")
    count += 1

Week 3: Using Python Libraries

Learning Objectives:

  • Understand what Python libraries are and why they’re useful
  • Learn to import and use common libraries
  • Work with GPIOZero and time libraries
  • Explore library documentation and help systems

Key Concepts:

  • Library/Module: Pre-written code that adds functionality
  • Import Statement: Bringing library functions into your program
  • GPIOZero: Library for controlling Raspberry Pi GPIO pins
  • Time Library: Functions for working with time and delays
  • Documentation: Instructions for using library functions
  • API: Application Programming Interface - how to use library functions

Library Usage Examples:

# Importing entire modules
import time
import math

# Importing specific functions
from gpiozero import LED, Button
from time import sleep

# Using time library
print("Starting program...")
time.sleep(2)  # Wait 2 seconds
print("2 seconds have passed!")

# Using math library
import math
radius = 5
area = math.pi * radius ** 2
print(f"Circle area: {area:.2f}")

# Using GPIOZero (for Raspberry Pi)
led = LED(18)  # LED connected to GPIO pin 18
button = Button(2)  # Button connected to GPIO pin 2

# Turn LED on and off
led.on()
sleep(1)
led.off()

Week 4: Controlling Motors with Python

Learning Objectives:

  • Understand how to interface with motors using Python
  • Learn about PWM (Pulse Width Modulation) for motor control
  • Control motor speed and direction
  • Implement safety features in motor control code

Key Concepts:

  • Motor Control: Using code to make motors move
  • PWM (Pulse Width Modulation): Method to control motor speed
  • Duty Cycle: Percentage of time signal is “on” vs “off”
  • Direction Control: Making motors spin clockwise/counterclockwise
  • Motor Driver: Electronics that interface between Python and motors
  • Safety Features: Code to prevent motor damage

Motor Control Examples:

from gpiozero import Motor, PWMOutputDevice
from time import sleep

# Create motor object (assuming H-bridge motor driver)
motor = Motor(forward=2, backward=3, enable=18)

# Basic motor control
def basic_motor_test():
    print("Motor forward at full speed")
    motor.forward(1.0)  # Full speed forward
    sleep(2)

    print("Motor forward at half speed")
    motor.forward(0.5)  # Half speed forward
    sleep(2)

    print("Motor stopped")
    motor.stop()
    sleep(1)

    print("Motor backward at full speed")
    motor.backward(1.0)  # Full speed backward
    sleep(2)

    motor.stop()
    print("Motor test complete")

# PWM speed control example
def speed_ramp_test():
    print("Ramping motor speed up...")
    for speed in range(0, 101, 10):  # 0 to 100% in 10% steps
        motor_speed = speed / 100.0
        motor.forward(motor_speed)
        print(f"Speed: {speed}%")
        sleep(0.5)

    motor.stop()
    print("Speed ramp complete")

# Run the tests
basic_motor_test()
sleep(2)
speed_ramp_test()

Week 5: Controlling Sensors with Python

Learning Objectives:

  • Interface with various sensors using Python
  • Read and process sensor data
  • Implement sensor-based decision making
  • Create responsive programs based on sensor input

Key Concepts:

  • Sensor: Device that detects and measures physical properties
  • Analog vs Digital: Different types of sensor signals
  • ADC (Analog-to-Digital Converter): Converts analog signals to digital
  • Sensor Calibration: Adjusting sensor readings for accuracy
  • Data Processing: Converting raw sensor data to useful information
  • Polling vs Interrupts: Different ways to read sensor data

Common Sensors:

  • Temperature sensors: Measure environmental temperature
  • Light sensors (LDR): Detect light intensity
  • Ultrasonic sensors: Measure distance using sound waves
  • Motion sensors (PIR): Detect movement
  • Pressure sensors: Measure force or pressure

Sensor Control Examples:

from gpiozero import MCP3008, DistanceSensor, MotionSensor, LED
from time import sleep
import statistics

# Temperature sensor (using analog input)
temp_sensor = MCP3008(channel=0)

def read_temperature():
    # Convert voltage to temperature (example conversion)
    voltage = temp_sensor.voltage
    temperature_c = (voltage - 0.5) * 100  # Example conversion formula
    temperature_f = (temperature_c * 9/5) + 32
    return temperature_c, temperature_f

# Distance sensor (ultrasonic)
distance_sensor = DistanceSensor(echo=24, trigger=23)

def monitor_distance():
    print("Distance monitoring (press Ctrl+C to stop)")
    try:
        while True:
            distance = distance_sensor.distance * 100  # Convert to cm
            print(f"Distance: {distance:.1f} cm")

            if distance < 10:
                print("WARNING: Object too close!")

            sleep(0.5)
    except KeyboardInterrupt:
        print("Distance monitoring stopped")

# Motion sensor with LED indicator
motion = MotionSensor(4)
alert_led = LED(18)

def motion_detector():
    print("Motion detector active...")

    def motion_detected():
        print("Motion detected!")
        alert_led.on()
        sleep(2)
        alert_led.off()

    def no_motion():
        print("No motion")
        alert_led.off()

    # Set up motion sensor callbacks
    motion.when_motion = motion_detected
    motion.when_no_motion = no_motion

    # Keep program running
    try:
        while True:
            sleep(0.1)
    except KeyboardInterrupt:
        print("Motion detector stopped")

# Data logging example
def log_sensor_data():
    readings = []
    print("Collecting sensor data for 30 seconds...")

    start_time = time.time()
    while time.time() - start_time < 30:
        temp_c, temp_f = read_temperature()
        distance = distance_sensor.distance * 100

        readings.append({
            'timestamp': time.time(),
            'temperature_c': temp_c,
            'temperature_f': temp_f,
            'distance_cm': distance
        })

        print(f"Temp: {temp_c:.1f}°C, Distance: {distance:.1f}cm")
        sleep(1)

    # Calculate statistics
    temps = [r['temperature_c'] for r in readings]
    distances = [r['distance_cm'] for r in readings]

    print(f"\nData Summary:")
    print(f"Average temperature: {statistics.mean(temps):.1f}°C")
    print(f"Min/Max temperature: {min(temps):.1f}°C / {max(temps):.1f}°C")
    print(f"Average distance: {statistics.mean(distances):.1f}cm")
    print(f"Min/Max distance: {min(distances):.1f}cm / {max(distances):.1f}cm")

# Example usage
if __name__ == "__main__":
    # Run different examples
    monitor_distance()  # Uncomment to run distance monitoring
    # motion_detector()  # Uncomment to run motion detection
    # log_sensor_data()  # Uncomment to run data logging

Assessment Test - Grade 10-12 (14-16 Years)

Week 1-2 Assessment: Python Fundamentals

Format: Coding Assignment + Written Questions (60 minutes)

Part A: Code Structure and Syntax (25 points)

  1. Fix the following code and explain what was wrong (10 points):
# Broken code:
def calculate average(num1, num2, num3)
average = num1 + num2 + num3 / 3
print("The average is" + average)
return average

calculate average(10, 20, 30)

Your corrected code:

# Write corrected version here

Explanation of errors: ________________________________

  1. Write a well-structured Python program (15 points): Create a program that:
  • Has proper header comments
  • Uses appropriate variable names
  • Calculates the area of different shapes (circle, rectangle, triangle)
  • Uses functions with parameters and return values
  • Follows proper indentation and formatting

Part B: Functions and Loops (30 points)

  1. Write a function called print_multiplication_table (15 points):
  • Takes one parameter: number
  • Prints multiplication table for that number (1-10)
  • Uses a for loop
  • Example output for print_multiplication_table(3):
3 x 1 = 3
3 x 2 = 6
3 x 3 = 9
... etc
  1. Password Checker Program (15 points): Write a program using while loop that:
  • Asks user to enter a password
  • Keeps asking until they enter “python123”
  • Counts number of attempts
  • Prints “Access granted” when correct
  • Prints number of attempts it took

Week 3-5 Assessment: Libraries and Hardware Control

Format: Practical Coding Project (75 minutes)

Part A: Library Usage (20 points)

  1. Complete this sensor reading program (20 points):
from gpiozero import MCP3008
from time import sleep
import ______  # What library do you need for calculating average?

# Create sensor object
light_sensor = MCP3008(channel=0)

def read_light_levels():
    readings = []

    # Collect 10 readings
    for i in range(______):  # Fill in the range
        reading = light_sensor.______  # What property gives the reading?
        readings.append(reading)
        print(f"Reading {i+1}: {reading:.3f}")
        sleep(0.5)

    # Calculate and print statistics
    average = ______.mean(readings)  # Which function calculates mean?
    maximum = ______(readings)  # Built-in function for maximum
    minimum = ______(readings)  # Built-in function for minimum

    print(f"Average: {average:.3f}")
    print(f"Maximum: {maximum:.3f}")
    print(f"Minimum: {minimum:.3f}")

# Call the function
read_light_levels()

Part B: Motor Control Project (25 points)

  1. Smart Fan Controller (25 points): Write a program that simulates a smart fan controller:
  • Use a temperature sensor to read room temperature
  • Control a motor (fan) based on temperature:
    • Below 20°C: Fan off
    • 20-25°C: Fan at 30% speed
    • 25-30°C: Fan at 60% speed
    • Above 30°C: Fan at 100% speed
  • Print current temperature and fan speed every 2 seconds
  • Include safety features (motor stop function)

Part C: Sensor Integration Challenge (30 points)

  1. Security System Prototype (30 points): Create a basic security system that:
  • Uses a motion sensor to detect movement
  • Uses a distance sensor to detect objects too close
  • Controls LEDs to indicate system status:
    • Green LED: System normal
    • Yellow LED: Motion detected
    • Red LED: Intrusion alert (object < 20cm)
  • Logs events with timestamps
  • Runs continuously until user presses Ctrl+C

Requirements:

  • Use at least 3 different libraries
  • Include proper error handling
  • Use functions to organize code
  • Add meaningful comments
  • Follow Python coding best practices

Sample code structure:

from gpiozero import MotionSensor, DistanceSensor, LED
from time import sleep
import time

# Hardware setup
motion = MotionSensor(4)
distance = DistanceSensor(echo=24, trigger=23)
green_led = LED(18)
yellow_led = LED(19)
red_led = LED(20)

def log_event(message):
    # Write function to log events with timestamp
    pass

def check_security():
    # Write function to check all sensors and control LEDs
    pass

def main():
    # Write main program loop
    pass

if __name__ == "__main__":
    main()

Assessment Rubric:

  • Exceptional (95-100%): Code runs flawlessly, excellent structure, creative additions, comprehensive error handling
  • Proficient (85-94%): Code works correctly, good structure, meets all requirements, minor improvements possible
  • Developing (75-84%): Code mostly works, basic structure present, meets most requirements, some bugs or missing features
  • Beginning (65-74%): Code has significant issues, poor structure, missing major requirements
  • Incomplete (Below 65%): Code doesn’t run or major portions missing

Additional Resources and Extensions

For All Grade Levels:

Vocabulary Glossary:

  • Algorithm: Step-by-step instructions to solve a problem
  • Bug: Error in code that prevents it from working correctly
  • Debug: Process of finding and fixing errors in code
  • Hardware: Physical components of computer systems
  • Software: Programs and applications that run on hardware
  • Interface: Way users interact with programs or devices
  • Sensor: Device that detects changes in environment
  • Actuator: Device that causes movement or action

Project Portfolio Suggestions:

  1. Weekly Reflection Journal: Students document learning and challenges
  2. Photo Documentation: Pictures of projects and experiments
  3. Video Demonstrations: Students explain their projects
  4. Peer Teaching: Advanced students help beginners
  5. Innovation Challenges: Open-ended problems to solve creatively

Cross-Curricular Connections:

  • Math: Geometry in robotics, statistics in data analysis
  • Science: Physics of flight, electronics principles
  • Art: Creative programming projects, design thinking
  • Social Studies: Impact of technology on society
  • Language Arts: Technical writing, documentation skills

Safety Reminders:

  • Always supervise young children with electronic components
  • Check battery connections before powering devices
  • Keep work area clean and organized
  • Wash hands after handling electronic components
  • Report any damaged equipment immediately
  • Follow proper shutdown procedures for all devices

Assessment Portfolio Checklist:

  • Completed weekly assessments
  • Project documentation with photos
  • Reflection essays on learning progress
  • Peer evaluation forms
  • Self-assessment rubrics
  • Evidence of problem-solving process
  • Creative extensions or improvements to basic projects

Continuation - Weeks 6-8 for All Grade Levels


Preschoolers (4-6 Years) - Weeks 6-8

Advanced STEM Exploration & Technology Awareness

Week 6: Technology Parts Awareness

Learning Objectives:

  • Use coding to tell stories, solve challenges, or navigate mazes
  • Recognize and follow simple algorithms using direction or action cards
  • Physically be able to follow code on floor grids
  • Build confidence and persistence through trial-and-error learning

Key Concepts:

  • Technology Components: Basic parts that make devices work
  • Circuits: Paths that electricity follows
  • Assembly/Disassembly: Taking apart and putting together
  • Electronics Safety: Safe handling of batteries and components
  • Problem-Solving: Trying different solutions when something doesn’t work

Activities:

  • Technology Exploration: Examine old keyboards, phones, calculators
  • Simple Circuits: Connect bulbs to batteries with safe materials
  • Assembly Practice: Take apart and reassemble simple toys
  • Tech Parts Sorting: Group similar technology components

Materials: Old keyboards, phones, calculators, batteries, bulbs for circuits, safe connectors

Week 7: Sequencing & Floor Grid Coding

Learning Objectives:

  • Develop understanding of sequencing by arranging steps in correct order
  • Recognize and follow simple algorithms using direction or action cards
  • Physically follow code on floor grids
  • Build confidence through trial-and-error learning

Key Concepts:

  • Sequencing: Putting steps in the right order
  • Algorithm Cards: Visual instructions to follow
  • Floor Grid Coding: Moving through spaces following directions
  • Left/Right/Forward/Back: Basic directional concepts
  • Trial and Error: Learning by trying and improving

Activities:

  • Obstacle Course Coding: Navigate through simple obstacles using arrow cards
  • Sequencing Games: Put daily routine cards in correct order
  • Paper Maze Coding: Use arrows to show path through printed mazes
  • Robot Friend: One child gives directions, another follows like a robot

Materials: Coding arrows/direction cards, floor grid mats, toys for navigation, printed maze worksheets

Week 8: Advanced Unplugged Coding & Storytelling

Learning Objectives:

  • Use coding to tell stories, solve challenges, or navigate mazes
  • Recognize and follow simple algorithms using direction or action cards
  • Physically follow code on floor grids
  • Build confidence and persistence through trial-and-error learning

Key Concepts:

  • Conditional Logic: IF/THEN thinking (“If you see red, then stop”)
  • Debugging: Finding and fixing mistakes in directions
  • Block Building: Using physical blocks to represent code
  • Story Algorithms: Step-by-step instructions for telling stories

Activities:

  • Debug the Path: Present incorrect direction sequences for children to fix
  • IF/THEN Games: “If you see a triangle, then clap your hands”
  • Story Coding: Use picture cards to create step-by-step stories
  • Block Code Building: Stack blocks to represent programming sequences

Materials: Building blocks, floor grid mats, toys, printed materials, picture cards for storytelling


Preschoolers Assessment - Weeks 6-8

Week 6 Assessment: Technology Awareness

Format: Hands-on Exploration + Observation (20 minutes)

  1. Technology Parts Recognition (10 points)
  • Point to and name 3 technology items from the collection
  • Show how a simple circuit works (bulb + battery)
  • Safely handle electronic components
  • Explain one thing each item helps us do
  1. Assembly Skills (10 points)
  • Take apart a simple toy or device
  • Put it back together correctly
  • Identify which parts go where
  • Ask for help when needed

Assessment Criteria:

  • Mastery (3): Handles all materials safely, explains purposes, completes tasks independently
  • Developing (2): Safe handling, completes most tasks with minimal help
  • Emerging (1): Needs guidance but participates actively
  • Beginning (0): Requires extensive support

Week 7-8 Assessment: Advanced Unplugged Coding

Format: Physical Coding Challenges (25 minutes)

  1. Sequencing Challenge (12 points)
  • Arrange 6 direction cards to navigate through obstacle course
  • Explain why each step comes in that order
  • Successfully complete the physical navigation
  • Fix mistakes when path doesn’t work
  1. IF/THEN Logic (8 points)
  • Follow conditional instructions: “IF you see blue, THEN hop”
  • Create own IF/THEN rule for a friend to follow
  • Demonstrate understanding with actions
  1. Story Algorithm (10 points)
  • Use 5 picture cards to create logical story sequence
  • Tell story following the card order
  • Explain what happens if cards are mixed up
  • Help fix a mixed-up story sequence

Practical Skills Rubric:

  • Advanced (25-30 points): Creates original sequences, helps others, shows deep understanding
  • Proficient (20-24 points): Completes all challenges correctly with minor guidance
  • Developing (15-19 points): Understands concepts but needs support for complex tasks
  • Beginning (Below 15 points): Requires significant help to participate

Grade 2-5 (7-11 Years) - Weeks 6-8

Advanced Scratch Programming & Game Development

Week 6: Game Structure and Design

Learning Objectives:

  • Understand basic game structure (start, play, end)
  • Use Scratch blocks to move characters and detect collisions
  • Make characters move between different scenes
  • Create scoring or win conditions

Key Concepts:

  • Game Design Elements: Characters, backgrounds, objectives, rules
  • Game Loop: Continuous cycle of input, processing, output
  • Collision Detection: Knowing when sprites touch each other
  • Scene Transitions: Moving between different game screens
  • Win/Lose Conditions: Rules that determine game outcomes
  • User Interface: Buttons, scores, and information displays

Advanced Scratch Concepts:

  • Sensing Blocks: “touching color”, “distance to”, “key pressed”
  • Variables: Storing score, lives, or time
  • Broadcast Messages: Communication between sprites
  • Clone Sprites: Creating multiple copies of objects
  • Custom Blocks: Making your own programming blocks

Game Development Process:

  1. Planning Phase: Sketch game idea, list needed sprites and backgrounds
  2. Prototype: Create basic movement and interaction
  3. Enhancement: Add sounds, effects, and polish
  4. Testing: Play game and fix bugs
  5. Sharing: Present to classmates

Example Game Structure:

When green flag clicked
Set score to 0
Set lives to 3
Say "Game Starting!" for 2 seconds
Show sprite
Forever:
    If key space pressed:
        Move player sprite
    If touching enemy:
        Change lives by -1
        If lives = 0:
            Say "Game Over!"
            Stop all

Week 7: Transition to Text-Based Concepts

Learning Objectives:

  • Prepare learners for text-based coding
  • Understand basic programming concepts using blocks
  • Use logic and loops to control sprite or robot actions
  • Begin transition to robotics or advanced coding platforms

Key Concepts:

  • Programming Fundamentals: Sequence, selection, iteration
  • Logic Blocks: IF/ELSE statements in visual form
  • Loop Types: Forever, repeat until, repeat X times
  • Variables and Operations: Math in programming
  • Event-Driven Programming: Responding to user input
  • Modular Programming: Breaking code into smaller parts

Bridging Visual to Text:

  • Block-to-Code Thinking: Understanding what blocks represent
  • Pseudocode: Writing steps in plain English before coding
  • Debugging Strategies: Systematic problem-solving approaches
  • Code Organization: Keeping projects neat and logical

Advanced Programming Patterns:

// Pattern 1: State Machine
When green flag clicked
Set game state to "menu"
Forever:
    If game state = "menu":
        Show menu options
    If game state = "playing":
        Run game logic
    If game state = "game over":
        Show final score

// Pattern 2: Object Behavior
When I start as a clone:
    Go to random position
    Forever:
        Move 2 steps
        If on edge, bounce
        If touching player:
            Change score by 10
            Delete this clone

Week 8: Blockly Integration and Logic Puzzles

Learning Objectives:

  • Solve logic puzzles using visual programming concepts
  • Create games using Blockly platform
  • Demonstrate understanding of programming fundamentals
  • Apply creative problem-solving skills

Key Concepts:

  • Blockly Platform: Google’s visual programming language
  • Logic Puzzles: Problems requiring systematic thinking
  • Algorithm Efficiency: Finding the best solution method
  • Pattern Recognition: Identifying repeated solutions
  • Creative Programming: Using code for artistic expression

Blockly vs. Scratch Comparison:

FeatureScratchBlockly
FocusStorytelling & GamesLogic & Algorithms
InterfaceStage-basedPuzzle-based
OutputAnimated ProjectsProblem Solutions
ProgressionCreative ExpressionMathematical Thinking

Logic Puzzle Types:

  1. Maze Solving: Navigate through obstacles
  2. Pattern Completion: Fill in missing sequences
  3. Conditional Logic: IF/THEN decision making
  4. Loop Optimization: Repeat actions efficiently

Grade 2-5 Assessment - Weeks 6-8

Week 6 Assessment: Game Development Project

Format: Scratch Game Creation + Presentation (45 minutes)

Part A: Game Planning (10 points)

  1. Game Design Document - Create a simple plan including:
  • Game objective (what’s the goal?)
  • Main character description
  • Basic rules (how do you win/lose?)
  • Required sprites and backgrounds
  1. Storyboard - Draw 3 screens showing:
  • Game start screen
  • Main gameplay
  • Win/lose screen

Part B: Game Implementation (25 points) 3. Core Functionality (15 points):

  • Character moves with arrow keys or WASD

  • At least one interactive element (enemy, collectible, obstacle)

  • Basic collision detection (touching = something happens)

  • Clear win or lose condition

  1. Polish and Enhancement (10 points):
  • Sound effects or music
  • Visual feedback (score, lives, timer)
  • Smooth sprite movement
  • Creative backgrounds or costumes

Part C: Presentation and Reflection (15 points) 5. Game Demo (10 points):

  • Explain game rules clearly

  • Demonstrate gameplay for 2 minutes

  • Show different game scenarios

  • Handle questions from classmates

  1. Technical Reflection (5 points):
  • Explain one challenging problem you solved
  • Describe one improvement you would make
  • Share one new Scratch skill you learned

Week 7-8 Assessment: Programming Concepts Mastery

Format: Mixed Assessment - Blockly Challenges + Scratch Review (50 minutes)

Part A: Blockly Logic Challenges (20 points)

  1. Maze Navigation (8 points):
  • Complete 3 increasingly difficult maze puzzles
  • Use efficient solutions (minimal blocks)
  • Demonstrate understanding of loops and conditionals
  1. Pattern Recognition (6 points):
  • Solve sequence completion puzzles
  • Identify and extend number/color patterns
  • Create original pattern for others to solve
  1. Logic Puzzles (6 points):
  • Complete IF/THEN decision trees
  • Solve multi-step conditional problems
  • Optimize solutions for clarity

Part B: Concept Transfer (15 points) 4. Visual to Text Translation (10 points): Given this Scratch code block arrangement:

[When flag clicked] → [Forever] → [If touching mouse] → [Move 10 steps]

Write in pseudocode (plain English): “When the program starts, ________________”

  1. Problem Decomposition (5 points): Break down this challenge into steps: “Create a sprite that follows the mouse but stops when it touches the edge”

Step 1: _______________ Step 2: _______________ Step 3: _______________ Step 4: _______________

Part C: Creative Application (15 points) 6. Original Algorithm (15 points): Choose ONE to complete:

Option A - Scratch: Create a “digital pet” that:

  • Follows mouse cursor
  • Changes expression when clicked
  • Makes sound when hungry (timer-based)
  • Has at least 3 different costumes

Option B - Blockly: Design a solution for:

  • Robot that sorts colored objects
  • Path that avoids all obstacles
  • Pattern that creates art using loops

Assessment Rubric:

  • Expert (90-100%): Exceeds requirements with creative solutions and clear explanations
  • Proficient (80-89%): Meets all requirements with good understanding demonstrated
  • Developing (70-79%): Meets most requirements but may have gaps in complex concepts
  • Novice (60-69%): Shows basic understanding but struggles with application
  • Beginning (Below 60%): Needs significant support to demonstrate concepts

Grade 6-9 (11-14 Years) - Weeks 6-8

Drone Laws, Emergency Procedures & Practical Flying

Week 6: Drone Laws and Regulations (Kenya Focus)

Learning Objectives:

  • Learn basic drone laws in Kenya (KCAA regulations)
  • Understand where and how children can fly drones legally
  • Develop awareness of responsible drone operation
  • Understand the importance of aviation safety

Key Concepts:

  • Kenya Civil Aviation Authority (KCAA): National aviation regulator
  • Drone Registration: Required identification and documentation
  • No-Fly Zones: Airports, government buildings, restricted areas
  • Altitude Restrictions: Maximum height limitations
  • Visual Line of Sight (VLOS): Maintaining visual contact
  • Privacy Laws: Respecting others’ rights and property

Kenya Drone Regulations Summary:

  1. Registration Requirements:
  • All drones over 250g must be registered with KCAA
  • Operator license required for commercial operations
  • Age restrictions for different categories of operation
  1. Operational Limits:
  • Maximum altitude: 400 feet (120 meters) AGL
  • Minimum distance from airports: 8km for major airports
  • No flying over crowds or public events
  • Daylight operations only (without special permits)
  1. Prohibited Areas:
  • Within 5km of any airport
  • Over government buildings and installations
  • National parks without permits
  • Private property without permission

Safety and Legal Guidelines for Young Pilots:

  • Always have adult supervision
  • Start with toy drones under 250g
  • Practice in open, safe areas
  • Respect others’ privacy and property
  • Learn emergency procedures
  • Keep drone in sight at all times

Week 7: Emergency Procedures and Responsible Flying

Learning Objectives:

  • Review key safety and legal concepts from previous weeks
  • Understand emergency basics for beginner flyers
  • Develop decision-making skills for unexpected situations
  • Practice responsible pilot behavior

Key Concepts:

  • Emergency Procedures: Systematic responses to problems
  • Risk Assessment: Evaluating dangers before flying
  • Decision Making: Choosing appropriate actions under pressure
  • Communication: Alerting others during emergencies
  • Equipment Failure: What to do when drone malfunctions
  • Weather Awareness: Recognizing dangerous conditions

Emergency Scenarios and Responses:

  1. Lost Communication with Drone:
  • Stay calm and observe drone behavior
  • Activate Return-to-Home (RTH) function if available
  • Move to higher ground for better signal
  • Prepare for manual landing if signal returns
  • Never chase after a flyaway drone
  1. Low Battery Warning:
  • Immediately begin landing sequence
  • Choose nearest safe landing spot
  • Avoid flying over people or property
  • Land even if not at original takeoff point
  • Safety is more important than convenience
  1. Unexpected Weather Changes:
  • Monitor weather conditions constantly
  • Land immediately if wind increases
  • Avoid flying in rain or snow
  • Watch for sudden temperature changes
  • When in doubt, don’t fly
  1. Equipment Malfunction:
  • Attempt controlled landing immediately
  • Don’t try to fix problems while airborne
  • Inform other people in the area
  • Document the problem for later analysis
  • Never continue flying with known issues

Mission Planning Process:

  1. Pre-flight Planning: Weather check, equipment inspection, route planning
  2. Risk Assessment: Identify potential hazards and mitigation strategies
  3. Communication Plan: Inform others of flight activities
  4. Emergency Procedures: Know what to do if things go wrong
  5. Post-flight Review: Analyze what went well and areas for improvement

Week 8: Practical Flying Skills and Team Challenges

Learning Objectives:

  • Demonstrate ability to control a mini drone (takeoff, hover, land)
  • Apply basic flight skills in problem-solving mission scenarios
  • Work as a team to complete drone-based challenges
  • Evaluate personal progress and set goals for improvement

Key Concepts:

  • Flight Control Mastery: Smooth, precise drone movements
  • Situational Awareness: Understanding surroundings during flight
  • Mission Planning: Preparing for specific flight objectives
  • Teamwork: Collaborative problem-solving with drones
  • Performance Evaluation: Self-assessment and peer feedback
  • Safety Leadership: Taking responsibility for safe operations

Basic Flight Skills Progression:

  1. Fundamental Controls:
  • Smooth takeoff to hover
  • Maintaining steady hover
  • Controlled landing
  • Forward/backward movement
  • Left/right movement
  • Rotation control
  1. Intermediate Maneuvers:
  • Figure-8 patterns
  • Precision landing on target
  • Obstacle avoidance
  • Following predetermined paths
  • Coordinated movements
  1. Advanced Challenges:
  • Team relay races
  • Rescue simulations
  • Precision delivery tasks
  • Group choreography
  • Time-based challenges

Mission Scenarios:

Mission 1: Search and Rescue

  • Objective: Locate “missing person” (target) in designated area
  • Skills: Systematic search patterns, communication, observation
  • Time limit: 5 minutes
  • Success criteria: Target identified and location communicated

Mission 2: Delivery Challenge

  • Objective: Transport small payload from Point A to Point B
  • Skills: Precision flying, cargo management, safe landing
  • Obstacles: Wind conditions, landing accuracy requirements
  • Success criteria: Payload delivered undamaged within time limit

Mission 3: Team Coordination

  • Objective: Multiple drones work together to complete complex task
  • Skills: Communication, timing, spatial awareness
  • Challenge: Choreographed flight pattern or group problem-solving
  • Success criteria: All drones complete task without collisions

Safety Protocols for Practical Flying:

  • Always maintain 10-foot safety zone around flying area
  • Designate specific roles: pilot, observer, safety officer
  • Use hand signals for communication during loud operations
  • Practice emergency landing procedures before each session
  • Rotate roles so everyone experiences different responsibilities

Grade 6-9 Assessment - Weeks 6-8

Week 6 Assessment: Drone Laws and Regulations

Format: Written Test + Legal Scenario Analysis (40 minutes)

Part A: Kenya Aviation Law Knowledge (25 points)

  1. KCAA Regulations (10 points) Fill in the blanks:
  • Drones over ______ grams must be registered with KCAA
  • Maximum altitude for recreational flying is ______ feet
  • Minimum distance from major airports is ______ kilometers
  • Commercial drone operations require a ______ license
  • Drones must remain within ______ line of sight
  1. No-Fly Zone Identification (10 points) Mark TRUE or FALSE for each flying location:
  • Your school playground during lunch break: ______
  • Open field 2km from Wilson Airport: ______
  • Your backyard with adult supervision: ______
  • Uhuru Park during a public event: ______
  • Private farm with owner’s permission: ______
  1. Legal Compliance (5 points) List 3 requirements for legally flying a drone in Kenya:



Part B: Scenario-Based Decision Making (20 points)

  1. Legal Scenarios (20 points) For each scenario, explain if the action is legal and why:

Scenario A: Sarah wants to fly her 300g drone over her neighbor’s house to take photos of her own backyard. Legal? _____ Why? _______________________________

Scenario B: James plans to fly his registered drone at 200 feet altitude in an open field 10km from any airport during daylight hours. Legal? _____ Why? _______________________________

Scenario C: A group of students want to use their drone for a school project, filming the school building from 100 feet up. Legal? _____ Why? _______________________________

Scenario D: Ahmed wants to fly his 150g toy drone in his compound for 10 minutes. Legal? _____ Why? _______________________________

Part C: Responsible Pilot Planning (15 points)

  1. Pre-flight Checklist (15 points) Create a 10-item pre-flight checklist that includes legal, safety, and equipment considerations:




[Continue through 10]

Week 7-8 Assessment: Emergency Procedures and Practical Skills

Format: Practical Flight Test + Emergency Response Simulation (60 minutes)

Part A: Emergency Response Knowledge (20 points)

  1. Emergency Procedures (15 points) Describe the correct response for each emergency:

Low Battery Warning: Step 1: _______________________________ Step 2: _______________________________ Step 3: _______________________________

Lost Radio Contact: Step 1: _______________________________ Step 2: _______________________________ Step 3: _______________________________

Sudden Weather Change: Step 1: _______________________________ Step 2: _______________________________ Step 3: _______________________________

  1. Risk Assessment (5 points) Identify 3 risks for flying in each environment:
  • School playground: ____________, ____________, ____________
  • Open field: ____________, ____________, ____________

Part B: Practical Flight Skills Assessment (30 points)

  1. Basic Flight Controls (15 points) Demonstrate competency in:
  • Smooth takeoff and landing (3 points)
  • Stable hovering for 30 seconds (3 points)
  • Forward/backward precision movement (3 points)
  • Left/right precision movement (3 points)
  • Controlled rotation (3 points)
  1. Mission Challenge (15 points) Complete ONE of the following missions:

Option A - Navigation Course:

  • Fly through 5 waypoints in sequence
  • Land within 1-meter target circle
  • Complete within 3 minutes

Option B - Team Coordination:

  • Work with partner to complete relay challenge
  • Communicate effectively during handoff
  • Maintain safety throughout mission

Part C: Leadership and Safety Evaluation (15 points)

  1. Safety Leadership (8 points) While others are flying, demonstrate:
  • Proper safety zone maintenance
  • Clear communication with pilot
  • Appropriate responses to unsafe situations
  • Helpful coaching and encouragement
  1. Self-Assessment and Goal Setting (7 points) Written reflection:
  • What flight skill are you most confident with? Why?
  • What area needs the most improvement?
  • Set one specific goal for future drone flying
  • Describe one way you can help others fly safely

Practical Skills Rubric:

  • Expert Pilot (90-100%): Demonstrates advanced skills, teaches others, shows exceptional safety awareness
  • Competent Pilot (80-89%): Performs all basic skills reliably, follows safety protocols consistently
  • Developing Pilot (70-79%): Shows improvement in most areas, occasional guidance needed
  • Novice Pilot (60-69%): Basic skills present but inconsistent, needs continued practice
  • Beginning Pilot (Below 60%): Requires significant instruction and supervision

Grade 10-12 (14-16 Years) - Weeks 6-8

Advanced Python Projects & Integration

Week 6-7: Integrated Systems Project (Combined Weeks)

Learning Objectives:

  • Combine motors and sensors in complex systems
  • Debug integrated hardware/software systems
  • Apply creative problem-solving to real-world challenges
  • Document projects professionally

Key Concepts:

  • Systems Integration: Combining multiple components into unified solutions
  • Hardware-Software Interface: Code that bridges digital and physical worlds
  • System Architecture: Planning complex projects with multiple subsystems
  • Error Handling: Managing failures gracefully in complex systems
  • Performance Optimization: Making systems run efficiently
  • Documentation Standards: Professional project recording

Advanced Integration Concepts:

1. Multi-Sensor Fusion

import threading
import queue
from gpiozero import DistanceSensor, MotionSensor, MCP3008
from time import sleep
import json

class SensorFusion:
    def __init__(self):
        self.distance_sensor = DistanceSensor(echo=24, trigger=23)
        self.motion_sensor = MotionSensor(4)
        self.light_sensor = MCP3008(channel=0)
        self.temp_sensor = MCP3008(channel=1)

        # Data queues for thread communication
        self.sensor_data = queue.Queue()
        self.running = False

    def read_sensors(self):
        """Continuous sensor reading in separate thread"""
        while self.running:
            try:
                data = {
                    'timestamp': time.time(),
                    'distance': self.distance_sensor.distance * 100,
                    'motion': self.motion_sensor.motion_detected,
                    'light_level': self.light_sensor.voltage,
                    'temperature': self.convert_temp(self.temp_sensor.voltage)
                }
                self.sensor_data.put(data)
                sleep(0.1)  # 10Hz sampling rate
            except Exception as e:
                print(f"Sensor reading error: {e}")

    def convert_temp(self, voltage):
        """Convert sensor voltage to temperature"""
        return (voltage - 0.5) * 100  # Example conversion

    def start_monitoring(self):
        """Start sensor monitoring thread"""
        self.running = True
        self.sensor_thread = threading.Thread(target=self.read_sensors)
        self.sensor_thread.start()

    def stop_monitoring(self):
        """Stop sensor monitoring"""
        self.running = False
        if hasattr(self, 'sensor_thread'):
            self.sensor_thread.join()

2. Intelligent Control Systems

class SmartEnvironmentController:
    def __init__(self):
        self.sensors = SensorFusion()
        self.fan_motor = Motor(forward=2, backward=3)
        self.heater_relay = OutputDevice(18)
        self.lights = PWMOutputDevice(19)

        # Control parameters
        self.target_temp = 22.0  # Target temperature in Celsius
        self.temp_tolerance = 1.0
        self.light_threshold = 0.3

        # Control state
        self.auto_mode = True
        self.manual_override = False

    def analyze_environment(self, sensor_data):
        """Intelligent decision making based on sensor data"""
        decisions = {
            'fan_speed': 0.0,
            'heater_on': False,
            'light_level': 0.0,
            'alert_status': 'normal'
        }

        # Temperature control logic
        temp_diff = sensor_data['temperature'] - self.target_temp

        if temp_diff > self.temp_tolerance:  # Too hot
            decisions['fan_speed'] = min(1.0, temp_diff / 5.0)  # Scale fan speed
            decisions['heater_on'] = False
        elif temp_diff < -self.temp_tolerance:  # Too cold
            decisions['fan_speed'] = 0.0
            decisions['heater_on'] = True

        # Light control logic
        if sensor_data['light_level'] < self.light_threshold:
            decisions['light_level'] = 1.0 - sensor_data['light_level']  # Complement lighting

        # Security monitoring
        if sensor_data['motion'] and sensor_data['distance'] < 20:  # Close motion
            decisions['alert_status'] = 'intrusion_detected'
        elif sensor_data['distance'] < 5:  # Very close object
            decisions['alert_status'] = 'obstacle_warning'

        return decisions

    def execute_controls(self, decisions):
        """Execute control decisions"""
        if not self.manual_override:
            # Motor control
            if decisions['fan_speed'] > 0:
                self.fan_motor.forward(decisions['fan_speed'])
            else:
                self.fan_motor.stop()

            # Heater control
            if decisions['heater_on']:
                self.heater_relay.on()
            else:
                self.heater_relay.off()

            # Light control
            self.lights.value = decisions['light_level']

    def run_control_loop(self):
        """Main control loop"""
        self.sensors.start_monitoring()

        try:
            while True:
                if not self.sensors.sensor_data.empty():
                    current_data = self.sensors.sensor_data.get()
                    decisions = self.analyze_environment(current_data)
                    self.execute_controls(decisions)

                    # Log system status
                    self.log_system_status(current_data, decisions)

                sleep(0.5)  # Control loop frequency

        except KeyboardInterrupt:
            print("Shutting down control system...")
        finally:
            self.sensors.stop_monitoring()
            self.fan_motor.stop()
            self.heater_relay.off()
            self.lights.off()

    def log_system_status(self, sensor_data, decisions):
        """Log system performance data"""
        log_entry = {
            'timestamp': sensor_data['timestamp'],
            'sensors': sensor_data,
            'controls': decisions,
            'mode': 'auto' if self.auto_mode else 'manual'
        }

        # In a real system, this would write to a file or database
        print(f"System Status: Temp={sensor_data['temperature']:.1f}°C, "
              f"Fan={decisions['fan_speed']:.1f}, "
              f"Alert={decisions['alert_status']}")

3. Project Documentation Standards

"""
Smart Environment Control System
================================

Project: IoT Environmental Controller
Author: Student Name
Date: Current Date
Version: 1.0

Description:
    An intelligent system that monitors environmental conditions and automatically
    adjusts heating, cooling, and lighting based on sensor feedback.

Hardware Requirements:
    - Raspberry Pi 4 or similar
    - Temperature sensor (DS18B20 or similar)
    - Light sensor (LDR with MCP3008 ADC)
    - Motion sensor (PIR)
    - Distance sensor (HC-SR04)
    - DC Motor (for fan simulation)
    - Relay module (for heater control)
    - PWM-controlled LED (for lighting)

Software Dependencies:
    - Python 3.7+
    - gpiozero library
    - threading module (standard library)
    - queue module (standard library)
    - json module (standard library)

Installation:
    pip install gpiozero

Usage:
    python smart_environment.py

Configuration:
    Modify target_temp and light_threshold variables in SmartEnvironmentController
    class to adjust system behavior.

Testing:
    Run included test functions to verify sensor readings and control outputs
    before deploying the full system.

Known Issues:
    - Temperature sensor calibration may need adjustment for local conditions
    - Motion sensor has 2-second reset time that affects rapid detection

Future Enhancements:
    - Web interface for remote monitoring
    - Data logging to CSV files
    - Machine learning for predictive control
    - Mobile app integration
"""

Project Examples for Students:

Project 1: Smart Garden Monitor

  • Monitors soil moisture, light, and temperature
  • Controls watering pump and grow lights
  • Logs plant growth data
  • Sends alerts when intervention needed

Project 2: Home Security System

  • Multiple sensor integration (motion, door, window)
  • Camera trigger on detection
  • SMS/email notifications
  • Mobile app control interface

Project 3: Weather Station

  • Measures temperature, humidity, pressure, wind
  • Data logging with timestamps
  • Weather prediction algorithms
  • Web dashboard for data visualization

Project 4: Automated Greenhouse

  • Climate control (temperature, humidity)
  • Automated watering system
  • Light cycle management
  • Growth optimization algorithms

Week 8: Project Presentations and Assessment

Learning Objectives:

  • Present technical projects professionally
  • Give and receive constructive feedback
  • Self-evaluate learning progress and achievements
  • Plan next steps for continued learning

Key Concepts:

  • Technical Communication: Explaining complex systems clearly
  • Presentation Skills: Engaging audiences with technical content
  • Peer Review: Constructive feedback and collaboration
  • Self-Assessment: Honest evaluation of own work
  • Professional Development: Planning continued learning paths
  • Portfolio Building: Documenting achievements for future opportunities

Presentation Structure:

  1. Project Overview (2 minutes)
  • Problem statement and objectives
  • Target audience and use cases
  • Key features and functionality
  1. Technical Demonstration (2 minutes)
  • Live system operation
  • Key components and how they work
  • Code walkthrough of critical sections
  1. Challenges and Solutions (1 minute)
  • Major obstacles encountered
  • Creative solutions implemented
  • Lessons learned from failures

Evaluation Criteria:

Technical Merit (40%):

  • System functionality and reliability
  • Code quality and organization
  • Creative problem-solving approach
  • Integration of multiple technologies

Communication (30%):

  • Clear explanation of technical concepts
  • Engaging presentation delivery
  • Appropriate use of visual aids
  • Effective response to questions

Documentation (20%):

  • Complete project documentation
  • Code comments and structure
  • User instructions and setup guides
  • Reflection on learning process

Collaboration (10%):

  • Constructive feedback to peers
  • Professional interaction during Q&A
  • Willingness to share knowledge
  • Respectful critique and discussion

Python Programming Trivia Challenge: End the term with fun technical questions:

  1. What does “PEP 8” refer to in Python?
  2. What’s the difference between == and is in Python?
  3. How do you handle exceptions in Python?
  4. What is a Python decorator?
  5. What’s the difference between a list and a tuple?

Grade 10-12 Final Assessment - Weeks 6-8

Integrated Systems Project Assessment

Format: Major Project + Technical Presentation + Peer Review (2 weeks + presentation day)

Project Requirements: Students must create an integrated system that combines:

  • At least 3 different sensors
  • At least 2 actuators (motors, lights, relays, etc.)
  • Data logging and analysis
  • User interface (command line or simple GUI)
  • Error handling and safety features

Part A: Technical Implementation (40 points)

System Design (10 points)

  • Clear problem definition and solution approach
  • System architecture diagram showing component relationships
  • Hardware schematic or connection diagram
  • Software flowchart or algorithm description

Code Quality (15 points)

  • Well-structured, modular code with functions/classes
  • Appropriate variable names and code organization
  • Comprehensive comments explaining complex sections
  • Error handling for hardware failures
  • Efficient algorithms and resource usage

Hardware Integration (15 points)

  • Stable sensor readings with appropriate filtering
  • Reliable actuator control with safety limits
  • Proper electrical connections and component usage
  • System operates reliably for extended periods
  • Professional cable management and mounting

Part B: Documentation and Communication (25 points)

Project Documentation (15 points) Create a complete project report including:

  • Executive summary of project goals and achievements
  • Detailed technical specifications and requirements
  • Installation and setup instructions
  • User manual with clear operating procedures
  • Troubleshooting guide for common problems
  • Code documentation with API reference

Technical Presentation (10 points)

  • Clear 5-minute presentation explaining project
  • Live demonstration of working system
  • Professional slides with technical diagrams
  • Confident handling of technical questions
  • Appropriate use of technical vocabulary

Part C: Innovation and Problem Solving (20 points)

Creative Solutions (10 points)

  • Original approach to solving chosen problem
  • Creative use of available hardware and software
  • Evidence of iterative design and improvement
  • Solutions show depth of understanding beyond basic requirements

Advanced Features (10 points) Choose and implement at least TWO:

  • Machine learning or AI decision making
  • Network communication (IoT connectivity)
  • Mobile app or web interface
  • Data visualization and analytics
  • Predictive algorithms or optimization
  • Integration with external APIs or services

Part D: Professional Skills (15 points)

Peer Collaboration (8 points)

  • Constructive feedback provided to classmates
  • Professional behavior during presentations
  • Willingness to help others debug problems
  • Respectful and insightful questions during Q&A

Self-Assessment (7 points) Written reflection addressing:

  • Most significant technical challenge and how you overcame it
  • What you would do differently if starting over
  • How this project connects to potential career interests
  • Specific skills you want to develop further
  • Your confidence level with different aspects of the project

Sample Project Evaluation Rubric:

Exceptional (90-100%)

  • System exceeds all requirements with innovative features
  • Code is publication-quality with comprehensive documentation
  • Presentation is engaging and demonstrates deep understanding
  • Shows leadership in helping others and contributing to class learning
  • Self-reflection shows sophisticated understanding of learning process

Proficient (80-89%)

  • System meets all requirements reliably
  • Code is well-structured with good documentation
  • Presentation is clear and technically accurate
  • Actively participates in peer learning and feedback
  • Self-reflection shows good awareness of strengths and growth areas

Developing (70-79%)

  • System meets most requirements with minor issues
  • Code works but may have organizational or documentation gaps
  • Presentation covers required topics but may lack depth
  • Participates adequately in class activities
  • Self-reflection shows basic understanding of learning process

Beginning (60-69%)

  • System meets basic requirements but has significant limitations
  • Code works for demonstration but has structural or reliability issues
  • Presentation covers basics but shows limited understanding
  • Minimal participation in peer activities
  • Self-reflection is superficial or lacks insight

Incomplete (Below 60%)

  • System fails to meet basic requirements or doesn’t function reliably
  • Code has major issues that prevent proper operation
  • Presentation is unclear or shows misunderstanding of concepts
  • Little to no participation in collaborative learning
  • Self-reflection missing or shows no evidence of learning

Term 1 Final Portfolio Assessment - All Grade Levels

Portfolio Components Checklist

For All Students:

  • Weekly reflection journals documenting learning progress
  • Photo documentation of all projects and experiments
  • Completed weekly assessments with corrections
  • Evidence of peer collaboration and teaching
  • Self-assessment of growth in each major topic area

Grade-Specific Additions:

Preschoolers (4-6 years):

  • Drawings of favorite STEM activities
  • Parent/teacher observation notes on engagement and skills
  • Examples of unplugged coding sequences created
  • Photos of technology exploration activities

Grade 2-5 (7-11 years):

  • Screenshots of completed Scratch projects
  • Blockly puzzle solutions and explanations
  • Game design documents and storyboards
  • Video explanations of programming concepts

Grade 6-9 (11-14 years):

  • Drone safety checklist created and used
  • Mission planning worksheets with risk assessments
  • Photos/videos of practical flying sessions
  • Research report on drone applications in chosen field

Grade 10-12 (14-16 years):

  • Complete code repositories with documentation
  • Hardware connection diagrams and schematics
  • Data analysis reports from sensor projects
  • Technical presentation slides and demonstration videos

Cross-Grade Learning Objectives Mastery

By the end of Term 1, students should demonstrate:

Preschoolers:

  • Basic understanding of STEM concepts through play
  • Ability to follow simple sequences and patterns
  • Safe interaction with age-appropriate technology
  • Curiosity and engagement with hands-on exploration

Grade 2-5:

  • Fundamental programming concepts using visual languages
  • Ability to create simple games and interactive stories
  • Understanding of sequence, loops, and basic logic
  • Confidence in debugging and problem-solving

Grade 6-9:

  • Comprehensive understanding of drone safety and regulations
  • Practical flying skills with safety awareness
  • Knowledge of aviation principles and laws
  • Teamwork and communication skills in technical contexts

Grade 10-12:

  • Proficiency in Python programming for hardware control
  • Ability to integrate multiple sensors and actuators
  • Professional documentation and presentation skills
  • Independent problem-solving and creative innovation

Preparation for Term 2

Preschoolers → Scratch Junior Programming:

  • Continue building sequencing skills
  • Introduction to tablet-based programming
  • Creative storytelling with technology

Grade 2-5 → IoT Integration with Sensors:

  • Bridge from visual programming to physical computing
  • Introduction to sensors and real-world data
  • Beginning electronics and circuit concepts

Grade 6-9 → Smart Home Security:

  • Apply drone safety concepts to IoT systems
  • Introduction to sensors and automation
  • Home automation and security principles

Grade 10-12 → Smart Cities:

  • Scale up from individual projects to community solutions
  • Advanced IoT networking and data analysis
  • Social impact of technology solutions

Additional Resources and Extensions

Online Learning Platforms:

  • Preschoolers: PBS Kids programming games, Kodable app
  • Grade 2-5: Scratch Jr., Code.org courses, Blockly games
  • Grade 6-9: DroneBlocks, FAA educational materials, aviation simulation games
  • Grade 10-12: Python.org tutorials, Raspberry Pi Foundation projects, GitHub learning labs

STEM Career Connections:

  • Robotics Engineer: Designs and builds robots for various applications
  • Software Developer: Creates programs and applications for computers and devices
  • Drone Pilot: Professional UAV operations for photography, surveying, delivery
  • IoT Developer: Connects everyday objects to the internet for smart automation
  • Data Scientist: Analyzes sensor data to find patterns and make predictions

Community Extension Activities:

  • Science Fair Projects: Using skills learned to create original investigations
  • STEM Club Leadership: Teaching younger students basic concepts
  • Community Problem Solving: Identifying local problems that technology could help solve
  • Maker Space Participation: Continuing projects in community workshop environments

Assessment Data Tracking: Teachers should maintain records of:

  • Individual student progress through learning objectives
  • Common areas of difficulty requiring additional support
  • Exceptional student work that could be showcased
  • Parent/guardian feedback on home engagement with STEM concepts
  • Equipment and resource needs for optimal program delivery

This completes the comprehensive Term 1 curriculum with detailed notes, assessments, and support materials for all grade levels in the IoT & Robotics program. Each grade level has age-appropriate challenges that build foundational skills while maintaining engagement and fostering creativity in STEM learning.


Notes

I’ve created a comprehensive set of notes and assessment tests for Term 1 across all grade levels (Preschoolers through Grade 10-12). The document includes:

What’s Included:

For Each Grade Level:

  • Detailed weekly lesson notes covering weeks 1-8 content
  • Key concepts and learning objectives for each topic
  • Practical examples and code samples (for programming grades)
  • Age-appropriate assessment tests with multiple formats

Assessment Formats:

  • Preschoolers (4-6): Practical/observational assessments with hands-on activities
  • Grade 2-5 (7-11): Computer-based Scratch/Blockly challenges
  • Grade 6-9 (11-14): Written tests + practical drone safety demonstrations
  • Grade 10-12 (14-16): Coding assignments + hardware integration projects

Key Features:

  • Covers all 8 weeks of Term 1 content
  • Aligned with curriculum from the IoT & Robotics document
  • Progressive difficulty appropriate for each age group
  • Practical assessments that test real understanding
  • Detailed rubrics for fair evaluation
  • Extension activities for advanced learners
  • Safety guidelines and best practices

Topics Covered:

  • Preschoolers: STEM basics, simple machines, unplugged coding
  • Grade 2-5: Scratch programming, Blockly games, interface navigation
  • Grade 6-9: Drone basics, aviation principles, safety regulations
  • Grade 10-12: Python programming, hardware control, sensor integration

Each assessment is designed to be practical and engaging, testing both theoretical knowledge and hands-on application skills. The rubrics provide clear criteria for evaluation at different skill levels.


Perfect! I’ve now completed the comprehensive Term 1 notes and assessment materials covering all 8 weeks for all grade levels. Here’s what’s now included:

Assessment Test

Assessment Test

Assessment Test

Assessment Test

Assessment Test

Assessment Test

Assessment Test

Intro - Grade 10 - 12

Term 1 Final Portfolio Assessment - All Grade Levels

Portfolio Components Checklist

For All Students:

  • Weekly reflection journals documenting learning progress
  • Photo documentation of all projects and experiments
  • Completed weekly assessments with corrections
  • Evidence of peer collaboration and teaching
  • Self-assessment of growth in each major topic area

Grade-Specific Additions:

Preschoolers (4-6 years):

  • Drawings of favorite STEM activities
  • Parent/teacher observation notes on engagement and skills
  • Examples of unplugged coding sequences created
  • Photos of technology exploration activities

Grade 2-5 (7-11 years):

  • Screenshots of completed Scratch projects
  • Blockly puzzle solutions and explanations
  • Game design documents and storyboards
  • Video explanations of programming concepts

Grade 6-9 (11-14 years):

  • Drone safety checklist created and used
  • Mission planning worksheets with risk assessments
  • Photos/videos of practical flying sessions
  • Research report on drone applications in chosen field

Grade 10-12 (14-16 years):

  • Complete code repositories with documentation
  • Hardware connection diagrams and schematics
  • Data analysis reports from sensor projects
  • Technical presentation slides and demonstration videos

Cross-Grade Learning Objectives Mastery

By the end of Term 1, students should demonstrate:

Preschoolers:

  • Basic understanding of STEM concepts through play
  • Ability to follow simple sequences and patterns
  • Safe interaction with age-appropriate technology
  • Curiosity and engagement with hands-on exploration

Grade 2-5:

  • Fundamental programming concepts using visual languages
  • Ability to create simple games and interactive stories
  • Understanding of sequence, loops, and basic logic
  • Confidence in debugging and problem-solving

Grade 6-9:

  • Comprehensive understanding of drone safety and regulations
  • Practical flying skills with safety awareness
  • Knowledge of aviation principles and laws
  • Teamwork and communication skills in technical contexts

Grade 10-12:

  • Proficiency in Python programming for hardware control
  • Ability to integrate multiple sensors and actuators
  • Professional documentation and presentation skills
  • Independent problem-solving and creative innovation

Preparation for Term 2

Preschoolers → Scratch Junior Programming:

  • Continue building sequencing skills
  • Introduction to tablet-based programming
  • Creative storytelling with technology

Grade 2-5 → IoT Integration with Sensors:

  • Bridge from visual programming to physical computing
  • Introduction to sensors and real-world data
  • Beginning electronics and circuit concepts

Grade 6-9 → Smart Home Security:

  • Apply drone safety concepts to IoT systems
  • Introduction to sensors and automation
  • Home automation and security principles

Grade 10-12 → Smart Cities:

  • Scale up from individual projects to community solutions
  • Advanced IoT networking and data analysis
  • Social impact of technology solutions

Additional Resources and Extensions

Online Learning Platforms:

  • Preschoolers: PBS Kids programming games, Kodable app
  • Grade 2-5: Scratch Jr., Code.org courses, Blockly games
  • Grade 6-9: DroneBlocks, FAA educational materials, aviation simulation games
  • Grade 10-12: Python.org tutorials, Raspberry Pi Foundation projects, GitHub learning labs

STEM Career Connections:

  • Robotics Engineer: Designs and builds robots for various applications
  • Software Developer: Creates programs and applications for computers and devices
  • Drone Pilot: Professional UAV operations for photography, surveying, delivery
  • IoT Developer: Connects everyday objects to the internet for smart automation
  • Data Scientist: Analyzes sensor data to find patterns and make predictions

Community Extension Activities:

  • Science Fair Projects: Using skills learned to create original investigations
  • STEM Club Leadership: Teaching younger students basic concepts
  • Community Problem Solving: Identifying local problems that technology could help solve
  • Maker Space Participation: Continuing projects in community workshop environments

Assessment Data Tracking: Teachers should maintain records of:

  • Individual student progress through learning objectives
  • Common areas of difficulty requiring additional support
  • Exceptional student work that could be showcased
  • Parent/guardian feedback on home engagement with STEM concepts
  • Equipment and resource needs for optimal program delivery

This completes the comprehensive Term 1 curriculum with detailed notes, assessments, and support materials for all grade levels in the IoT & Robotics program. Each grade level has age-appropriate challenges that build foundational skills while maintaining engagement and fostering creativity in STEM learning.


Grade 10-12 (14-16 Years)

Term 1: Introduction to Python Basics

Week 1: Writing Structured Python Code

Learning Objectives:

  • Understand Python syntax and structure
  • Learn proper code formatting and indentation
  • Write clean, readable code following best practices
  • Understand variables, data types, and basic operations

Key Concepts:

  • Python: High-level programming language
  • Syntax: Rules for writing Python code
  • Indentation: Using spaces to organize code structure
  • Variables: Named storage for data values
  • Data Types: int, float, string, boolean
  • Comments: Documentation within code using #
  • Print Statement: Displaying output to screen

Code Structure Best Practices:

# Header comment explaining the program
# Author: Your Name
# Date: Today's Date

# Import statements
import module_name

# Constants (UPPERCASE naming)
MAX_VALUE = 100

# Main program logic
def main():
    # Variable declarations
    user_name = "Student"
    age = 16

    # Program logic with proper indentation
    print(f"Hello, {user_name}!")
    print(f"You are {age} years old.")

# Run the program
if __name__ == "__main__":
    main()

Week 2: Functions and Loops

Learning Objectives:

  • Create and use custom functions
  • Understand function parameters and return values
  • Implement for loops and while loops
  • Apply loops to solve repetitive tasks

Key Concepts:

  • Function: Reusable block of code that performs a specific task
  • Parameters: Input values passed to functions
  • Return Value: Output value from a function
  • For Loop: Repeats code a specific number of times
  • While Loop: Repeats code while a condition is true
  • Range Function: Generates sequences of numbers
  • Iteration: Each repetition of a loop
  • Loop Control: Managing when loops start and stop

Function Examples:

# Simple function with no parameters
def greet():
    print("Hello, World!")

# Function with parameters
def greet_person(name, age):
    print(f"Hello, {name}! You are {age} years old.")

# Function with return value
def calculate_area(length, width):
    area = length * width
    return area

# Using functions
greet()
greet_person("Alice", 16)
room_area = calculate_area(10, 12)
print(f"Room area: {room_area} square meters")

Loop Examples:

# For loop with range
for i in range(5):
    print(f"Count: {i}")

# For loop with list
fruits = ["apple", "banana", "orange"]
for fruit in fruits:
    print(f"I like {fruit}")

# While loop
count = 0
while count < 3:
    print(f"While loop count: {count}")
    count += 1

Week 3: Using Python Libraries

Learning Objectives:

  • Understand what Python libraries are and why they’re useful
  • Learn to import and use common libraries
  • Work with GPIOZero and time libraries
  • Explore library documentation and help systems

Key Concepts:

  • Library/Module: Pre-written code that adds functionality
  • Import Statement: Bringing library functions into your program
  • GPIOZero: Library for controlling Raspberry Pi GPIO pins
  • Time Library: Functions for working with time and delays
  • Documentation: Instructions for using library functions
  • API: Application Programming Interface - how to use library functions

Library Usage Examples:

# Importing entire modules
import time
import math

# Importing specific functions
from gpiozero import LED, Button
from time import sleep

# Using time library
print("Starting program...")
time.sleep(2)  # Wait 2 seconds
print("2 seconds have passed!")

# Using math library
import math
radius = 5
area = math.pi * radius ** 2
print(f"Circle area: {area:.2f}")

# Using GPIOZero (for Raspberry Pi)
led = LED(18)  # LED connected to GPIO pin 18
button = Button(2)  # Button connected to GPIO pin 2

# Turn LED on and off
led.on()
sleep(1)
led.off()

Week 4: Controlling Motors with Python

Learning Objectives:

  • Understand how to interface with motors using Python
  • Learn about PWM (Pulse Width Modulation) for motor control
  • Control motor speed and direction
  • Implement safety features in motor control code

Key Concepts:

  • Motor Control: Using code to make motors move
  • PWM (Pulse Width Modulation): Method to control motor speed
  • Duty Cycle: Percentage of time signal is “on” vs “off”
  • Direction Control: Making motors spin clockwise/counterclockwise
  • Motor Driver: Electronics that interface between Python and motors
  • Safety Features: Code to prevent motor damage

Motor Control Examples:

from gpiozero import Motor, PWMOutputDevice
from time import sleep

# Create motor object (assuming H-bridge motor driver)
motor = Motor(forward=2, backward=3, enable=18)

# Basic motor control
def basic_motor_test():
    print("Motor forward at full speed")
    motor.forward(1.0)  # Full speed forward
    sleep(2)

    print("Motor forward at half speed")
    motor.forward(0.5)  # Half speed forward
    sleep(2)

    print("Motor stopped")
    motor.stop()
    sleep(1)

    print("Motor backward at full speed")
    motor.backward(1.0)  # Full speed backward
    sleep(2)

    motor.stop()
    print("Motor test complete")

# PWM speed control example
def speed_ramp_test():
    print("Ramping motor speed up...")
    for speed in range(0, 101, 10):  # 0 to 100% in 10% steps
        motor_speed = speed / 100.0
        motor.forward(motor_speed)
        print(f"Speed: {speed}%")
        sleep(0.5)

    motor.stop()
    print("Speed ramp complete")

# Run the tests
basic_motor_test()
sleep(2)
speed_ramp_test()

Week 5: Controlling Sensors with Python

Learning Objectives:

  • Interface with various sensors using Python
  • Read and process sensor data
  • Implement sensor-based decision making
  • Create responsive programs based on sensor input

Key Concepts:

  • Sensor: Device that detects and measures physical properties
  • Analog vs Digital: Different types of sensor signals
  • ADC (Analog-to-Digital Converter): Converts analog signals to digital
  • Sensor Calibration: Adjusting sensor readings for accuracy
  • Data Processing: Converting raw sensor data to useful information
  • Polling vs Interrupts: Different ways to read sensor data

Common Sensors:

  • Temperature sensors: Measure environmental temperature
  • Light sensors (LDR): Detect light intensity
  • Ultrasonic sensors: Measure distance using sound waves
  • Motion sensors (PIR): Detect movement
  • Pressure sensors: Measure force or pressure

Sensor Control Examples:

from gpiozero import MCP3008, DistanceSensor, MotionSensor, LED
from time import sleep
import statistics

# Temperature sensor (using analog input)
temp_sensor = MCP3008(channel=0)

def read_temperature():
    # Convert voltage to temperature (example conversion)
    voltage = temp_sensor.voltage
    temperature_c = (voltage - 0.5) * 100  # Example conversion formula
    temperature_f = (temperature_c * 9/5) + 32
    return temperature_c, temperature_f

# Distance sensor (ultrasonic)
distance_sensor = DistanceSensor(echo=24, trigger=23)

def monitor_distance():
    print("Distance monitoring (press Ctrl+C to stop)")
    try:
        while True:
            distance = distance_sensor.distance * 100  # Convert to cm
            print(f"Distance: {distance:.1f} cm")

            if distance < 10:
                print("WARNING: Object too close!")

            sleep(0.5)
    except KeyboardInterrupt:
        print("Distance monitoring stopped")

# Motion sensor with LED indicator
motion = MotionSensor(4)
alert_led = LED(18)

def motion_detector():
    print("Motion detector active...")

    def motion_detected():
        print("Motion detected!")
        alert_led.on()
        sleep(2)
        alert_led.off()

    def no_motion():
        print("No motion")
        alert_led.off()

    # Set up motion sensor callbacks
    motion.when_motion = motion_detected
    motion.when_no_motion = no_motion

    # Keep program running
    try:
        while True:
            sleep(0.1)
    except KeyboardInterrupt:
        print("Motion detector stopped")

# Data logging example
def log_sensor_data():
    readings = []
    print("Collecting sensor data for 30 seconds...")

    start_time = time.time()
    while time.time() - start_time < 30:
        temp_c, temp_f = read_temperature()
        distance = distance_sensor.distance * 100

        readings.append({
            'timestamp': time.time(),
            'temperature_c': temp_c,
            'temperature_f': temp_f,
            'distance_cm': distance
        })

        print(f"Temp: {temp_c:.1f}°C, Distance: {distance:.1f}cm")
        sleep(1)

    # Calculate statistics
    temps = [r['temperature_c'] for r in readings]
    distances = [r['distance_cm'] for r in readings]

    print(f"\nData Summary:")
    print(f"Average temperature: {statistics.mean(temps):.1f}°C")
    print(f"Min/Max temperature: {min(temps):.1f}°C / {max(temps):.1f}°C")
    print(f"Average distance: {statistics.mean(distances):.1f}cm")
    print(f"Min/Max distance: {min(distances):.1f}cm / {max(distances):.1f}cm")

# Example usage
if __name__ == "__main__":
    # Run different examples
    monitor_distance()  # Uncomment to run distance monitoring
    # motion_detector()  # Uncomment to run motion detection
    # log_sensor_data()  # Uncomment to run data logging

Assessment Test - Grade 10-12 (14-16 Years)

Week 1-2 Assessment: Python Fundamentals

Format: Coding Assignment + Written Questions (60 minutes)

Part A: Code Structure and Syntax (25 points)

  1. Fix the following code and explain what was wrong (10 points):
# Broken code:
def calculate average(num1, num2, num3)
average = num1 + num2 + num3 / 3
print("The average is" + average)
return average

calculate average(10, 20, 30)

Your corrected code:

# Write corrected version here

Explanation of errors: ____

  1. Write a well-structured Python program (15 points): Create a program that:
  • Has proper header comments
  • Uses appropriate variable names
  • Calculates the area of different shapes (circle, rectangle, triangle)
  • Uses functions with parameters and return values
  • Follows proper indentation and formatting

Part B: Functions and Loops (30 points)

  1. Write a function called print_multiplication_table (15 points):
  • Takes one parameter: number
  • Prints multiplication table for that number (1-10)
  • Uses a for loop
  • Example output for print_multiplication_table(3):
3 x 1 = 3
3 x 2 = 6
3 x 3 = 9
... etc
  1. Password Checker Program (15 points): Write a program using while loop that:
  • Asks user to enter a password
  • Keeps asking until they enter “python123”
  • Counts number of attempts
  • Prints “Access granted” when correct
  • Prints number of attempts it took

Week 3-5 Assessment: Libraries and Hardware Control

Format: Practical Coding Project (75 minutes)

Part A: Library Usage (20 points)

  1. Complete this sensor reading program (20 points):
from gpiozero import MCP3008
from time import sleep
import ______  # What library do you need for calculating average?

# Create sensor object
light_sensor = MCP3008(channel=0)

def read_light_levels():
    readings = []

    # Collect 10 readings
    for i in range(______):  # Fill in the range
        reading = light_sensor.______  # What property gives the reading?
        readings.append(reading)
        print(f"Reading {i+1}: {reading:.3f}")
        sleep(0.5)

    # Calculate and print statistics
    average = ______.mean(readings)  # Which function calculates mean?
    maximum = ______(readings)  # Built-in function for maximum
    minimum = ______(readings)  # Built-in function for minimum

    print(f"Average: {average:.3f}")
    print(f"Maximum: {maximum:.3f}")
    print(f"Minimum: {minimum:.3f}")

# Call the function
read_light_levels()

Part B: Motor Control Project (25 points)

  1. Smart Fan Controller (25 points): Write a program that simulates a smart fan controller:
  • Use a temperature sensor to read room temperature
  • Control a motor (fan) based on temperature:
    • Below 20°C: Fan off
    • 20-25°C: Fan at 30% speed
    • 25-30°C: Fan at 60% speed
    • Above 30°C: Fan at 100% speed
  • Print current temperature and fan speed every 2 seconds
  • Include safety features (motor stop function)

Part C: Sensor Integration Challenge (30 points)

  1. Security System Prototype (30 points): Create a basic security system that:
  • Uses a motion sensor to detect movement
  • Uses a distance sensor to detect objects too close
  • Controls LEDs to indicate system status:
    • Green LED: System normal
    • Yellow LED: Motion detected
    • Red LED: Intrusion alert (object < 20cm)
  • Logs events with timestamps
  • Runs continuously until user presses Ctrl+C

Requirements:

  • Use at least 3 different libraries
  • Include proper error handling
  • Use functions to organize code
  • Add meaningful comments
  • Follow Python coding best practices

Sample code structure:

from gpiozero import MotionSensor, DistanceSensor, LED
from time import sleep
import time

# Hardware setup
motion = MotionSensor(4)
distance = DistanceSensor(echo=24, trigger=23)
green_led = LED(18)
yellow_led = LED(19)
red_led = LED(20)

def log_event(message):
    # Write function to log events with timestamp
    pass

def check_security():
    # Write function to check all sensors and control LEDs
    pass

def main():
    # Write main program loop
    pass

if __name__ == "__main__":
    main()

Continuation - Weeks 6-8 for All Grade Levels


Preschoolers (4-6 Years) - Weeks 6-8

Advanced STEM Exploration & Technology Awareness

Week 6: Technology Parts Awareness

Learning Objectives:

  • Use coding to tell stories, solve challenges, or navigate mazes
  • Recognize and follow simple algorithms using direction or action cards
  • Physically be able to follow code on floor grids
  • Build confidence and persistence through trial-and-error learning

Key Concepts:

  • Technology Components: Basic parts that make devices work
  • Circuits: Paths that electricity follows
  • Assembly/Disassembly: Taking apart and putting together
  • Electronics Safety: Safe handling of batteries and components
  • Problem-Solving: Trying different solutions when something doesn’t work

Activities:

  • Technology Exploration: Examine old keyboards, phones, calculators
  • Simple Circuits: Connect bulbs to batteries with safe materials
  • Assembly Practice: Take apart and reassemble simple toys
  • Tech Parts Sorting: Group similar technology components

Materials: Old keyboards, phones, calculators, batteries, bulbs for circuits, safe connectors

Week 7: Sequencing & Floor Grid Coding

Learning Objectives:

  • Develop understanding of sequencing by arranging steps in correct order
  • Recognize and follow simple algorithms using direction or action cards
  • Physically follow code on floor grids
  • Build confidence through trial-and-error learning

Key Concepts:

  • Sequencing: Putting steps in the right order
  • Algorithm Cards: Visual instructions to follow
  • Floor Grid Coding: Moving through spaces following directions
  • Left/Right/Forward/Back: Basic directional concepts
  • Trial and Error: Learning by trying and improving

Activities:

  • Obstacle Course Coding: Navigate through simple obstacles using arrow cards
  • Sequencing Games: Put daily routine cards in correct order
  • Paper Maze Coding: Use arrows to show path through printed mazes
  • Robot Friend: One child gives directions, another follows like a robot

Materials: Coding arrows/direction cards, floor grid mats, toys for navigation, printed maze worksheets

Week 8: Advanced Unplugged Coding & Storytelling

Learning Objectives:

  • Use coding to tell stories, solve challenges, or navigate mazes
  • Recognize and follow simple algorithms using direction or action cards
  • Physically follow code on floor grids
  • Build confidence and persistence through trial-and-error learning

Key Concepts:

  • Conditional Logic: IF/THEN thinking (“If you see red, then stop”)
  • Debugging: Finding and fixing mistakes in directions
  • Block Building: Using physical blocks to represent code
  • Story Algorithms: Step-by-step instructions for telling stories

Activities:

  • Debug the Path: Present incorrect direction sequences for children to fix
  • IF/THEN Games: “If you see a triangle, then clap your hands”
  • Story Coding: Use picture cards to create step-by-step stories
  • Block Code Building: Stack blocks to represent programming sequences

Materials: Building blocks, floor grid mats, toys, printed materials, picture cards for storytelling


Preschoolers Assessment - Weeks 6-8

Week 6 Assessment: Technology Awareness

Format: Hands-on Exploration + Observation (20 minutes)

  1. Technology Parts Recognition (10 points)
  • Point to and name 3 technology items from the collection
  • Show how a simple circuit works (bulb + battery)
  • Safely handle electronic components
  • Explain one thing each item helps us do
  1. Assembly Skills (10 points)
  • Take apart a simple toy or device
  • Put it back together correctly
  • Identify which parts go where
  • Ask for help when needed

Assessment Criteria:

  • Mastery (3): Handles all materials safely, explains purposes, completes tasks independently
  • Developing (2): Safe handling, completes most tasks with minimal help
  • Emerging (1): Needs guidance but participates actively
  • Beginning (0): Requires extensive support

Week 7-8 Assessment: Advanced Unplugged Coding

Format: Physical Coding Challenges (25 minutes)

  1. Sequencing Challenge (12 points)
  • Arrange 6 direction cards to navigate through obstacle course
  • Explain why each step comes in that order
  • Successfully complete the physical navigation
  • Fix mistakes when path doesn’t work
  1. IF/THEN Logic (8 points)
  • Follow conditional instructions: “IF you see blue, THEN hop”
  • Create own IF/THEN rule for a friend to follow
  • Demonstrate understanding with actions
  1. Story Algorithm (10 points)
  • Use 5 picture cards to create logical story sequence
  • Tell story following the card order
  • Explain what happens if cards are mixed up
  • Help fix a mixed-up story sequence

Practical Skills Rubric:

  • Advanced (25-30 points): Creates original sequences, helps others, shows deep understanding
  • Proficient (20-24 points): Completes all challenges correctly with minor guidance
  • Developing (15-19 points): Understands concepts but needs support for complex tasks
  • Beginning (Below 15 points): Requires significant help to participate

Grade 2-5 (7-11 Years) - Weeks 6-8

Advanced Scratch Programming & Game Development

Week 6: Game Structure and Design

Learning Objectives:

  • Understand basic game structure (start, play, end)
  • Use Scratch blocks to move characters and detect collisions
  • Make characters move between different scenes
  • Create scoring or win conditions

Key Concepts:

  • Game Design Elements: Characters, backgrounds, objectives, rules
  • Game Loop: Continuous cycle of input, processing, output
  • Collision Detection: Knowing when sprites touch each other
  • Scene Transitions: Moving between different game screens
  • Win/Lose Conditions: Rules that determine game outcomes
  • User Interface: Buttons, scores, and information displays

Advanced Scratch Concepts:

  • Sensing Blocks: “touching color”, “distance to”, “key pressed”
  • Variables: Storing score, lives, or time
  • Broadcast Messages: Communication between sprites
  • Clone Sprites: Creating multiple copies of objects
  • Custom Blocks: Making your own programming blocks

Game Development Process:

  1. Planning Phase: Sketch game idea, list needed sprites and backgrounds
  2. Prototype: Create basic movement and interaction
  3. Enhancement: Add sounds, effects, and polish
  4. Testing: Play game and fix bugs
  5. Sharing: Present to classmates

Example Game Structure:

When green flag clicked
Set score to 0
Set lives to 3
Say "Game Starting!" for 2 seconds
Show sprite
Forever:
    If key space pressed:
        Move player sprite
    If touching enemy:
        Change lives by -1
        If lives = 0:
            Say "Game Over!"
            Stop all

Week 7: Transition to Text-Based Concepts

Learning Objectives:

  • Prepare learners for text-based coding
  • Understand basic programming concepts using blocks
  • Use logic and loops to control sprite or robot actions
  • Begin transition to robotics or advanced coding platforms

Key Concepts:

  • Programming Fundamentals: Sequence, selection, iteration
  • Logic Blocks: IF/ELSE statements in visual form
  • Loop Types: Forever, repeat until, repeat X times
  • Variables and Operations: Math in programming
  • Event-Driven Programming: Responding to user input
  • Modular Programming: Breaking code into smaller parts

Bridging Visual to Text:

  • Block-to-Code Thinking: Understanding what blocks represent
  • Pseudocode: Writing steps in plain English before coding
  • Debugging Strategies: Systematic problem-solving approaches
  • Code Organization: Keeping projects neat and logical

Advanced Programming Patterns:

// Pattern 1: State Machine
When green flag clicked
Set game state to "menu"
Forever:
    If game state = "menu":
        Show menu options
    If game state = "playing":
        Run game logic
    If game state = "game over":
        Show final score

// Pattern 2: Object Behavior
When I start as a clone:
    Go to random position
    Forever:
        Move 2 steps
        If on edge, bounce
        If touching player:
            Change score by 10
            Delete this clone

Week 8: Blockly Integration and Logic Puzzles

Learning Objectives:

  • Solve logic puzzles using visual programming concepts
  • Create games using Blockly platform
  • Demonstrate understanding of programming fundamentals
  • Apply creative problem-solving skills

Key Concepts:

  • Blockly Platform: Google’s visual programming language
  • Logic Puzzles: Problems requiring systematic thinking
  • Algorithm Efficiency: Finding the best solution method
  • Pattern Recognition: Identifying repeated solutions
  • Creative Programming: Using code for artistic expression

Blockly vs. Scratch Comparison:

FeatureScratchBlockly
FocusStorytelling & GamesLogic & Algorithms
InterfaceStage-basedPuzzle-based
OutputAnimated ProjectsProblem Solutions
ProgressionCreative ExpressionMathematical Thinking

Logic Puzzle Types:

  1. Maze Solving: Navigate through obstacles
  2. Pattern Completion: Fill in missing sequences
  3. Conditional Logic: IF/THEN decision making
  4. Loop Optimization: Repeat actions efficiently

Grade 2-5 Assessment - Weeks 6-8

Week 6 Assessment: Game Development Project

Format: Scratch Game Creation + Presentation (45 minutes)

Part A: Game Planning (10 points)

  1. Game Design Document - Create a simple plan including:
  • Game objective (what’s the goal?)
  • Main character description
  • Basic rules (how do you win/lose?)
  • Required sprites and backgrounds
  1. Storyboard - Draw 3 screens showing:
  • Game start screen
  • Main gameplay
  • Win/lose screen

Part B: Game Implementation (25 points) 3. Core Functionality (15 points):

  • Character moves with arrow keys or WASD

  • At least one interactive element (enemy, collectible, obstacle)

  • Basic collision detection (touching = something happens)

  • Clear win or lose condition

  1. Polish and Enhancement (10 points):
  • Sound effects or music
  • Visual feedback (score, lives, timer)
  • Smooth sprite movement
  • Creative backgrounds or costumes

Part C: Presentation and Reflection (15 points) 5. Game Demo (10 points):

  • Explain game rules clearly

  • Demonstrate gameplay for 2 minutes

  • Show different game scenarios

  • Handle questions from classmates

  1. Technical Reflection (5 points):
  • Explain one challenging problem you solved
  • Describe one improvement you would make
  • Share one new Scratch skill you learned

Week 7-8 Assessment: Programming Concepts Mastery

Format: Mixed Assessment - Blockly Challenges + Scratch Review (50 minutes)

Part A: Blockly Logic Challenges (20 points)

  1. Maze Navigation (8 points):
  • Complete 3 increasingly difficult maze puzzles
  • Use efficient solutions (minimal blocks)
  • Demonstrate understanding of loops and conditionals
  1. Pattern Recognition (6 points):
  • Solve sequence completion puzzles
  • Identify and extend number/color patterns
  • Create original pattern for others to solve
  1. Logic Puzzles (6 points):
  • Complete IF/THEN decision trees
  • Solve multi-step conditional problems
  • Optimize solutions for clarity

Part B: Concept Transfer (15 points) 4. Visual to Text Translation (10 points): Given this Scratch code block arrangement:

[When flag clicked] → [Forever] → [If touching mouse] → [Move 10 steps]

Write in pseudocode (plain English): “When the program starts, ________________”

  1. Problem Decomposition (5 points): Break down this challenge into steps: “Create a sprite that follows the mouse but stops when it touches the edge”

Step 1: _______________ Step 2: _______________ Step 3: _______________ Step 4: _______________

Part C: Creative Application (15 points) 6. Original Algorithm (15 points): Choose ONE to complete:

Option A - Scratch: Create a “digital pet” that:

  • Follows mouse cursor
  • Changes expression when clicked
  • Makes sound when hungry (timer-based)
  • Has at least 3 different costumes

Option B - Blockly: Design a solution for:

  • Robot that sorts colored objects
  • Path that avoids all obstacles
  • Pattern that creates art using loops

Assessment Rubric:

  • Expert (90-100%): Exceeds requirements with creative solutions and clear explanations
  • Proficient (80-89%): Meets all requirements with good understanding demonstrated
  • Developing (70-79%): Meets most requirements but may have gaps in complex concepts
  • Novice (60-69%): Shows basic understanding but struggles with application
  • Beginning (Below 60%): Needs significant support to demonstrate concepts

Grade 6-9 (11-14 Years) - Weeks 6-8

Drone Laws, Emergency Procedures & Practical Flying

Week 6: Drone Laws and Regulations (Kenya Focus)

Learning Objectives:

  • Learn basic drone laws in Kenya (KCAA regulations)
  • Understand where and how children can fly drones legally
  • Develop awareness of responsible drone operation
  • Understand the importance of aviation safety

Key Concepts:

  • Kenya Civil Aviation Authority (KCAA): National aviation regulator
  • Drone Registration: Required identification and documentation
  • No-Fly Zones: Airports, government buildings, restricted areas
  • Altitude Restrictions: Maximum height limitations
  • Visual Line of Sight (VLOS): Maintaining visual contact
  • Privacy Laws: Respecting others’ rights and property

Kenya Drone Regulations Summary:

  1. Registration Requirements:
  • All drones over 250g must be registered with KCAA
  • Operator license required for commercial operations
  • Age restrictions for different categories of operation
  1. Operational Limits:
  • Maximum altitude: 400 feet (120 meters) AGL
  • Minimum distance from airports: 8km for major airports
  • No flying over crowds or public events
  • Daylight operations only (without special permits)
  1. Prohibited Areas:
  • Within 5km of any airport
  • Over government buildings and installations
  • National parks without permits
  • Private property without permission

Safety and Legal Guidelines for Young Pilots:

  • Always have adult supervision
  • Start with toy drones under 250g
  • Practice in open, safe areas
  • Respect others’ privacy and property
  • Learn emergency procedures
  • Keep drone in sight at all times

Week 7: Emergency Procedures and Responsible Flying

Learning Objectives:

  • Review key safety and legal concepts from previous weeks
  • Understand emergency basics for beginner flyers
  • Develop decision-making skills for unexpected situations
  • Practice responsible pilot behavior

Key Concepts:

  • Emergency Procedures: Systematic responses to problems
  • Risk Assessment: Evaluating dangers before flying
  • Decision Making: Choosing appropriate actions under pressure
  • Communication: Alerting others during emergencies
  • Equipment Failure: What to do when drone malfunctions
  • Weather Awareness: Recognizing dangerous conditions

Emergency Scenarios and Responses:

  1. Lost Communication with Drone:
  • Stay calm and observe drone behavior
  • Activate Return-to-Home (RTH) function if available
  • Move to higher ground for better signal
  • Prepare for manual landing if signal returns
  • Never chase after a flyaway drone
  1. Low Battery Warning:
  • Immediately begin landing sequence
  • Choose nearest safe landing spot
  • Avoid flying over people or property
  • Land even if not at original takeoff point
  • Safety is more important than convenience
  1. Unexpected Weather Changes:
  • Monitor weather conditions constantly
  • Land immediately if wind increases
  • Avoid flying in rain or snow
  • Watch for sudden temperature changes
  • When in doubt, don’t fly
  1. Equipment Malfunction:
  • Attempt controlled landing immediately
  • Don’t try to fix problems while airborne
  • Inform other people in the area
  • Document the problem for later analysis
  • Never continue flying with known issues

Mission Planning Process:

  1. Pre-flight Planning: Weather check, equipment inspection, route planning
  2. Risk Assessment: Identify potential hazards and mitigation strategies
  3. Communication Plan: Inform others of flight activities
  4. Emergency Procedures: Know what to do if things go wrong
  5. Post-flight Review: Analyze what went well and areas for improvement

Week 8: Practical Flying Skills and Team Challenges

Learning Objectives:

  • Demonstrate ability to control a mini drone (takeoff, hover, land)
  • Apply basic flight skills in problem-solving mission scenarios
  • Work as a team to complete drone-based challenges
  • Evaluate personal progress and set goals for improvement

Key Concepts:

  • Flight Control Mastery: Smooth, precise drone movements
  • Situational Awareness: Understanding surroundings during flight
  • Mission Planning: Preparing for specific flight objectives
  • Teamwork: Collaborative problem-solving with drones
  • Performance Evaluation: Self-assessment and peer feedback
  • Safety Leadership: Taking responsibility for safe operations

Basic Flight Skills Progression:

  1. Fundamental Controls:
  • Smooth takeoff to hover
  • Maintaining steady hover
  • Controlled landing
  • Forward/backward movement
  • Left/right movement
  • Rotation control
  1. Intermediate Maneuvers:
  • Figure-8 patterns
  • Precision landing on target
  • Obstacle avoidance
  • Following predetermined paths
  • Coordinated movements
  1. Advanced Challenges:
  • Team relay races
  • Rescue simulations
  • Precision delivery tasks
  • Group choreography
  • Time-based challenges

Mission Scenarios:

Mission 1: Search and Rescue

  • Objective: Locate “missing person” (target) in designated area
  • Skills: Systematic search patterns, communication, observation
  • Time limit: 5 minutes
  • Success criteria: Target identified and location communicated

Mission 2: Delivery Challenge

  • Objective: Transport small payload from Point A to Point B
  • Skills: Precision flying, cargo management, safe landing
  • Obstacles: Wind conditions, landing accuracy requirements
  • Success criteria: Payload delivered undamaged within time limit

Mission 3: Team Coordination

  • Objective: Multiple drones work together to complete complex task
  • Skills: Communication, timing, spatial awareness
  • Challenge: Choreographed flight pattern or group problem-solving
  • Success criteria: All drones complete task without collisions

Safety Protocols for Practical Flying:

  • Always maintain 10-foot safety zone around flying area
  • Designate specific roles: pilot, observer, safety officer
  • Use hand signals for communication during loud operations
  • Practice emergency landing procedures before each session
  • Rotate roles so everyone experiences different responsibilities

Grade 6-9 Assessment - Weeks 6-8

Week 6 Assessment: Drone Laws and Regulations

Format: Written Test + Legal Scenario Analysis (40 minutes)

Part A: Kenya Aviation Law Knowledge (25 points)

  1. KCAA Regulations (10 points) Fill in the blanks:
  • Drones over ______ grams must be registered with KCAA
  • Maximum altitude for recreational flying is ______ feet
  • Minimum distance from major airports is ______ kilometers
  • Commercial drone operations require a ______ license
  • Drones must remain within ______ line of sight
  1. No-Fly Zone Identification (10 points) Mark TRUE or FALSE for each flying location:
  • Your school playground during lunch break: ______
  • Open field 2km from Wilson Airport: ______
  • Your backyard with adult supervision: ______
  • Uhuru Park during a public event: ______
  • Private farm with owner’s permission: ______
  1. Legal Compliance (5 points) List 3 requirements for legally flying a drone in Kenya:



Part B: Scenario-Based Decision Making (20 points)

  1. Legal Scenarios (20 points) For each scenario, explain if the action is legal and why:

Scenario A: Sarah wants to fly her 300g drone over her neighbor’s house to take photos of her own backyard. Legal? _____ Why? _______________________________

Scenario B: James plans to fly his registered drone at 200 feet altitude in an open field 10km from any airport during daylight hours. Legal? _____ Why? _______________________________

Scenario C: A group of students want to use their drone for a school project, filming the school building from 100 feet up. Legal? _____ Why? _______________________________

Scenario D: Ahmed wants to fly his 150g toy drone in his compound for 10 minutes. Legal? _____ Why? _______________________________

Part C: Responsible Pilot Planning (15 points)

  1. Pre-flight Checklist (15 points) Create a 10-item pre-flight checklist that includes legal, safety, and equipment considerations:




[Continue through 10]

Week 7-8 Assessment: Emergency Procedures and Practical Skills

Format: Practical Flight Test + Emergency Response Simulation (60 minutes)

Part A: Emergency Response Knowledge (20 points)

  1. Emergency Procedures (15 points) Describe the correct response for each emergency:

Low Battery Warning: Step 1: _______________________________ Step 2: _______________________________ Step 3: _______________________________

Lost Radio Contact: Step 1: _______________________________ Step 2: _______________________________ Step 3: _______________________________

Sudden Weather Change: Step 1: _______________________________ Step 2: _______________________________ Step 3: _______________________________

  1. Risk Assessment (5 points) Identify 3 risks for flying in each environment:
  • School playground: ____________, ____________, ____________
  • Open field: ____________, ____________, ____________

Part B: Practical Flight Skills Assessment (30 points)

  1. Basic Flight Controls (15 points) Demonstrate competency in:
  • Smooth takeoff and landing (3 points)
  • Stable hovering for 30 seconds (3 points)
  • Forward/backward precision movement (3 points)
  • Left/right precision movement (3 points)
  • Controlled rotation (3 points)
  1. Mission Challenge (15 points) Complete ONE of the following missions:

Option A - Navigation Course:

  • Fly through 5 waypoints in sequence
  • Land within 1-meter target circle
  • Complete within 3 minutes

Option B - Team Coordination:

  • Work with partner to complete relay challenge
  • Communicate effectively during handoff
  • Maintain safety throughout mission

Part C: Leadership and Safety Evaluation (15 points)

  1. Safety Leadership (8 points) While others are flying, demonstrate:
  • Proper safety zone maintenance
  • Clear communication with pilot
  • Appropriate responses to unsafe situations
  • Helpful coaching and encouragement
  1. Self-Assessment and Goal Setting (7 points) Written reflection:
  • What flight skill are you most confident with? Why?
  • What area needs the most improvement?
  • Set one specific goal for future drone flying
  • Describe one way you can help others fly safely

Practical Skills Rubric:

  • Expert Pilot (90-100%): Demonstrates advanced skills, teaches others, shows exceptional safety awareness
  • Competent Pilot (80-89%): Performs all basic skills reliably, follows safety protocols consistently
  • Developing Pilot (70-79%): Shows improvement in most areas, occasional guidance needed
  • Novice Pilot (60-69%): Basic skills present but inconsistent, needs continued practice
  • Beginning Pilot (Below 60%): Requires significant instruction and supervision

Grade 10-12 (14-16 Years) - Weeks 6-8

Advanced Python Projects & Integration

Week 6-7: Integrated Systems Project (Combined Weeks)

Learning Objectives:

  • Combine motors and sensors in complex systems
  • Debug integrated hardware/software systems
  • Apply creative problem-solving to real-world challenges
  • Document projects professionally

Key Concepts:

  • Systems Integration: Combining multiple components into unified solutions
  • Hardware-Software Interface: Code that bridges digital and physical worlds
  • System Architecture: Planning complex projects with multiple subsystems
  • Error Handling: Managing failures gracefully in complex systems
  • Performance Optimization: Making systems run efficiently
  • Documentation Standards: Professional project recording

Advanced Integration Concepts:

1. Multi-Sensor Fusion

import threading
import queue
from gpiozero import DistanceSensor, MotionSensor, MCP3008
from time import sleep
import json

class SensorFusion:
    def __init__(self):
        self.distance_sensor = DistanceSensor(echo=24, trigger=23)
        self.motion_sensor = MotionSensor(4)
        self.light_sensor = MCP3008(channel=0)
        self.temp_sensor = MCP3008(channel=1)

        # Data queues for thread communication
        self.sensor_data = queue.Queue()
        self.running = False

    def read_sensors(self):
        """Continuous sensor reading in separate thread"""
        while self.running:
            try:
                data = {
                    'timestamp': time.time(),
                    'distance': self.distance_sensor.distance * 100,
                    'motion': self.motion_sensor.motion_detected,
                    'light_level': self.light_sensor.voltage,
                    'temperature': self.convert_temp(self.temp_sensor.voltage)
                }
                self.sensor_data.put(data)
                sleep(0.1)  # 10Hz sampling rate
            except Exception as e:
                print(f"Sensor reading error: {e}")

    def convert_temp(self, voltage):
        """Convert sensor voltage to temperature"""
        return (voltage - 0.5) * 100  # Example conversion

    def start_monitoring(self):
        """Start sensor monitoring thread"""
        self.running = True
        self.sensor_thread = threading.Thread(target=self.read_sensors)
        self.sensor_thread.start()

    def stop_monitoring(self):
        """Stop sensor monitoring"""
        self.running = False
        if hasattr(self, 'sensor_thread'):
            self.sensor_thread.join()

2. Intelligent Control Systems

class SmartEnvironmentController:
    def __init__(self):
        self.sensors = SensorFusion()
        self.fan_motor = Motor(forward=2, backward=3)
        self.heater_relay = OutputDevice(18)
        self.lights = PWMOutputDevice(19)

        # Control parameters
        self.target_temp = 22.0  # Target temperature in Celsius
        self.temp_tolerance = 1.0
        self.light_threshold = 0.3

        # Control state
        self.auto_mode = True
        self.manual_override = False

    def analyze_environment(self, sensor_data):
        """Intelligent decision making based on sensor data"""
        decisions = {
            'fan_speed': 0.0,
            'heater_on': False,
            'light_level': 0.0,
            'alert_status': 'normal'
        }

        # Temperature control logic
        temp_diff = sensor_data['temperature'] - self.target_temp

        if temp_diff > self.temp_tolerance:  # Too hot
            decisions['fan_speed'] = min(1.0, temp_diff / 5.0)  # Scale fan speed
            decisions['heater_on'] = False
        elif temp_diff < -self.temp_tolerance:  # Too cold
            decisions['fan_speed'] = 0.0
            decisions['heater_on'] = True

        # Light control logic
        if sensor_data['light_level'] < self.light_threshold:
            decisions['light_level'] = 1.0 - sensor_data['light_level']  # Complement lighting

        # Security monitoring
        if sensor_data['motion'] and sensor_data['distance'] < 20:  # Close motion
            decisions['alert_status'] = 'intrusion_detected'
        elif sensor_data['distance'] < 5:  # Very close object
            decisions['alert_status'] = 'obstacle_warning'

        return decisions

    def execute_controls(self, decisions):
        """Execute control decisions"""
        if not self.manual_override:
            # Motor control
            if decisions['fan_speed'] > 0:
                self.fan_motor.forward(decisions['fan_speed'])
            else:
                self.fan_motor.stop()

            # Heater control
            if decisions['heater_on']:
                self.heater_relay.on()
            else:
                self.heater_relay.off()

            # Light control
            self.lights.value = decisions['light_level']

    def run_control_loop(self):
        """Main control loop"""
        self.sensors.start_monitoring()

        try:
            while True:
                if not self.sensors.sensor_data.empty():
                    current_data = self.sensors.sensor_data.get()
                    decisions = self.analyze_environment(current_data)
                    self.execute_controls(decisions)

                    # Log system status
                    self.log_system_status(current_data, decisions)

                sleep(0.5)  # Control loop frequency

        except KeyboardInterrupt:
            print("Shutting down control system...")
        finally:
            self.sensors.stop_monitoring()
            self.fan_motor.stop()
            self.heater_relay.off()
            self.lights.off()

    def log_system_status(self, sensor_data, decisions):
        """Log system performance data"""
        log_entry = {
            'timestamp': sensor_data['timestamp'],
            'sensors': sensor_data,
            'controls': decisions,
            'mode': 'auto' if self.auto_mode else 'manual'
        }

        # In a real system, this would write to a file or database
        print(f"System Status: Temp={sensor_data['temperature']:.1f}°C, "
              f"Fan={decisions['fan_speed']:.1f}, "
              f"Alert={decisions['alert_status']}")

3. Project Documentation Standards

"""
Smart Environment Control System
================================

Project: IoT Environmental Controller
Author: Student Name
Date: Current Date
Version: 1.0

Description:
    An intelligent system that monitors environmental conditions and automatically
    adjusts heating, cooling, and lighting based on sensor feedback.

Hardware Requirements:
    - Raspberry Pi 4 or similar
    - Temperature sensor (DS18B20 or similar)
    - Light sensor (LDR with MCP3008 ADC)
    - Motion sensor (PIR)
    - Distance sensor (HC-SR04)
    - DC Motor (for fan simulation)
    - Relay module (for heater control)
    - PWM-controlled LED (for lighting)

Software Dependencies:
    - Python 3.7+
    - gpiozero library
    - threading module (standard library)
    - queue module (standard library)
    - json module (standard library)

Installation:
    pip install gpiozero

Usage:
    python smart_environment.py

Configuration:
    Modify target_temp and light_threshold variables in SmartEnvironmentController
    class to adjust system behavior.

Testing:
    Run included test functions to verify sensor readings and control outputs
    before deploying the full system.

Known Issues:
    - Temperature sensor calibration may need adjustment for local conditions
    - Motion sensor has 2-second reset time that affects rapid detection

Future Enhancements:
    - Web interface for remote monitoring
    - Data logging to CSV files
    - Machine learning for predictive control
    - Mobile app integration
"""

Project Examples for Students:

Project 1: Smart Garden Monitor

  • Monitors soil moisture, light, and temperature
  • Controls watering pump and grow lights
  • Logs plant growth data
  • Sends alerts when intervention needed

Project 2: Home Security System

  • Multiple sensor integration (motion, door, window)
  • Camera trigger on detection
  • SMS/email notifications
  • Mobile app control interface

Project 3: Weather Station

  • Measures temperature, humidity, pressure, wind
  • Data logging with timestamps
  • Weather prediction algorithms
  • Web dashboard for data visualization

Project 4: Automated Greenhouse

  • Climate control (temperature, humidity)
  • Automated watering system
  • Light cycle management
  • Growth optimization algorithms

Week 8: Project Presentations and Assessment

Learning Objectives:

  • Present technical projects professionally
  • Give and receive constructive feedback
  • Self-evaluate learning progress and achievements
  • Plan next steps for continued learning

Key Concepts:

  • Technical Communication: Explaining complex systems clearly
  • Presentation Skills: Engaging audiences with technical content
  • Peer Review: Constructive feedback and collaboration
  • Self-Assessment: Honest evaluation of own work
  • Professional Development: Planning continued learning paths
  • Portfolio Building: Documenting achievements for future opportunities

Presentation Structure:

  1. Project Overview (2 minutes)
  • Problem statement and objectives
  • Target audience and use cases
  • Key features and functionality
  1. Technical Demonstration (2 minutes)
  • Live system operation
  • Key components and how they work
  • Code walkthrough of critical sections
  1. Challenges and Solutions (1 minute)
  • Major obstacles encountered
  • Creative solutions implemented
  • Lessons learned from failures

Evaluation Criteria:

Technical Merit (40%):

  • System functionality and reliability
  • Code quality and organization
  • Creative problem-solving approach
  • Integration of multiple technologies

Communication (30%):

  • Clear explanation of technical concepts
  • Engaging presentation delivery
  • Appropriate use of visual aids
  • Effective response to questions

Documentation (20%):

  • Complete project documentation
  • Code comments and structure
  • User instructions and setup guides
  • Reflection on learning process

Collaboration (10%):

  • Constructive feedback to peers
  • Professional interaction during Q&A
  • Willingness to share knowledge
  • Respectful critique and discussion

Python Programming Trivia Challenge: End the term with fun technical questions:

  1. What does “PEP 8” refer to in Python?
  2. What’s the difference between == and is in Python?
  3. How do you handle exceptions in Python?
  4. What is a Python decorator?
  5. What’s the difference between a list and a tuple?

Grade 10-12 Final Assessment - Weeks 6-8

Integrated Systems Project Assessment

Format: Major Project + Technical Presentation + Peer Review (2 weeks + presentation day)

Project Requirements: Students must create an integrated system that combines:

  • At least 3 different sensors
  • At least 2 actuators (motors, lights, relays, etc.)
  • Data logging and analysis
  • User interface (command line or simple GUI)
  • Error handling and safety features

Part A: Technical Implementation (40 points)

System Design (10 points)

  • Clear problem definition and solution approach
  • System architecture diagram showing component relationships
  • Hardware schematic or connection diagram
  • Software flowchart or algorithm description

Code Quality (15 points)

  • Well-structured, modular code with functions/classes
  • Appropriate variable names and code organization
  • Comprehensive comments explaining complex sections
  • Error handling for hardware failures
  • Efficient algorithms and resource usage

Hardware Integration (15 points)

  • Stable sensor readings with appropriate filtering
  • Reliable actuator control with safety limits
  • Proper electrical connections and component usage
  • System operates reliably for extended periods
  • Professional cable management and mounting

Part B: Documentation and Communication (25 points)

Project Documentation (15 points) Create a complete project report including:

  • Executive summary of project goals and achievements
  • Detailed technical specifications and requirements
  • Installation and setup instructions
  • User manual with clear operating procedures
  • Troubleshooting guide for common problems
  • Code documentation with API reference

Technical Presentation (10 points)

  • Clear 5-minute presentation explaining project
  • Live demonstration of working system
  • Professional slides with technical diagrams
  • Confident handling of technical questions
  • Appropriate use of technical vocabulary

Part C: Innovation and Problem Solving (20 points)

Creative Solutions (10 points)

  • Original approach to solving chosen problem
  • Creative use of available hardware and software
  • Evidence of iterative design and improvement
  • Solutions show depth of understanding beyond basic requirements

Advanced Features (10 points) Choose and implement at least TWO:

  • Machine learning or AI decision making
  • Network communication (IoT connectivity)
  • Mobile app or web interface
  • Data visualization and analytics
  • Predictive algorithms or optimization
  • Integration with external APIs or services

Part D: Professional Skills (15 points)

Peer Collaboration (8 points)

  • Constructive feedback provided to classmates
  • Professional behavior during presentations
  • Willingness to help others debug problems
  • Respectful and insightful questions during Q&A

Self-Assessment (7 points) Written reflection addressing:

  • Most significant technical challenge and how you overcame it
  • What you would do differently if starting over
  • How this project connects to potential career interests
  • Specific skills you want to develop further
  • Your confidence level with different aspects of the project

Sample Project Evaluation Rubric:

Exceptional (90-100%)

  • System exceeds all requirements with innovative features
  • Code is publication-quality with comprehensive documentation
  • Presentation is engaging and demonstrates deep understanding
  • Shows leadership in helping others and contributing to class learning
  • Self-reflection shows sophisticated understanding of learning process

Proficient (80-89%)

  • System meets all requirements reliably
  • Code is well-structured with good documentation
  • Presentation is clear and technically accurate
  • Actively participates in peer learning and feedback
  • Self-reflection shows good awareness of strengths and growth areas

Developing (70-79%)

  • System meets most requirements with minor issues
  • Code works but may have organizational or documentation gaps
  • Presentation covers required topics but may lack depth
  • Participates adequately in class activities
  • Self-reflection shows basic understanding of learning process

Beginning (60-69%)

  • System meets basic requirements but has significant limitations
  • Code works for demonstration but has structural or reliability issues
  • Presentation covers basics but shows limited understanding
  • Minimal participation in peer activities
  • Self-reflection is superficial or lacks insight

Incomplete (Below 60%)

  • System fails to meet basic requirements or doesn’t function reliably
  • Code has major issues that prevent proper operation
  • Presentation is unclear or shows misunderstanding of concepts
  • Little to no participation in collaborative learning
  • Self-reflection missing or shows no evidence of learning

Term 1 Final Portfolio Assessment - All Grade Levels

Portfolio Components Checklist

For All Students:

  • Weekly reflection journals documenting learning progress
  • Photo documentation of all projects and experiments
  • Completed weekly assessments with corrections
  • Evidence of peer collaboration and teaching
  • Self-assessment of growth in each major topic area

Grade-Specific Additions:

Preschoolers (4-6 years):

  • Drawings of favorite STEM activities
  • Parent/teacher observation notes on engagement and skills
  • Examples of unplugged coding sequences created
  • Photos of technology exploration activities

Grade 2-5 (7-11 years):

  • Screenshots of completed Scratch projects
  • Blockly puzzle solutions and explanations
  • Game design documents and storyboards
  • Video explanations of programming concepts

Grade 6-9 (11-14 years):

  • Drone safety checklist created and used
  • Mission planning worksheets with risk assessments
  • Photos/videos of practical flying sessions
  • Research report on drone applications in chosen field

Grade 10-12 (14-16 years):

  • Complete code repositories with documentation
  • Hardware connection diagrams and schematics
  • Data analysis reports from sensor projects
  • Technical presentation slides and demonstration videos

Cross-Grade Learning Objectives Mastery

By the end of Term 1, students should demonstrate:

Preschoolers:

  • Basic understanding of STEM concepts through play
  • Ability to follow simple sequences and patterns
  • Safe interaction with age-appropriate technology
  • Curiosity and engagement with hands-on exploration

Grade 2-5:

  • Fundamental programming concepts using visual languages
  • Ability to create simple games and interactive stories
  • Understanding of sequence, loops, and basic logic
  • Confidence in debugging and problem-solving

Grade 6-9:

  • Comprehensive understanding of drone safety and regulations
  • Practical flying skills with safety awareness
  • Knowledge of aviation principles and laws
  • Teamwork and communication skills in technical contexts

Grade 10-12:

  • Proficiency in Python programming for hardware control
  • Ability to integrate multiple sensors and actuators
  • Professional documentation and presentation skills
  • Independent problem-solving and creative innovation

Preparation for Term 2

Preschoolers → Scratch Junior Programming:

  • Continue building sequencing skills
  • Introduction to tablet-based programming
  • Creative storytelling with technology

Grade 2-5 → IoT Integration with Sensors:

  • Bridge from visual programming to physical computing
  • Introduction to sensors and real-world data
  • Beginning electronics and circuit concepts

Grade 6-9 → Smart Home Security:

  • Apply drone safety concepts to IoT systems
  • Introduction to sensors and automation
  • Home automation and security principles

Grade 10-12 → Smart Cities:

  • Scale up from individual projects to community solutions
  • Advanced IoT networking and data analysis
  • Social impact of technology solutions

Additional Resources and Extensions

Online Learning Platforms:

  • Preschoolers: PBS Kids programming games, Kodable app
  • Grade 2-5: Scratch Jr., Code.org courses, Blockly games
  • Grade 6-9: DroneBlocks, FAA educational materials, aviation simulation games
  • Grade 10-12: Python.org tutorials, Raspberry Pi Foundation projects, GitHub learning labs

STEM Career Connections:

  • Robotics Engineer: Designs and builds robots for various applications
  • Software Developer: Creates programs and applications for computers and devices
  • Drone Pilot: Professional UAV operations for photography, surveying, delivery
  • IoT Developer: Connects everyday objects to the internet for smart automation
  • Data Scientist: Analyzes sensor data to find patterns and make predictions

Community Extension Activities:

  • Science Fair Projects: Using skills learned to create original investigations
  • STEM Club Leadership: Teaching younger students basic concepts
  • Community Problem Solving: Identifying local problems that technology could help solve
  • Maker Space Participation: Continuing projects in community workshop environments

Assessment Data Tracking: Teachers should maintain records of:

  • Individual student progress through learning objectives
  • Common areas of difficulty requiring additional support
  • Exceptional student work that could be showcased
  • Parent/guardian feedback on home engagement with STEM concepts
  • Equipment and resource needs for optimal program delivery

This completes the comprehensive Term 1 curriculum with detailed notes, assessments, and support materials for all grade levels in the IoT & Robotics program. Each grade level has age-appropriate challenges that build foundational skills while maintaining engagement and fostering creativity in STEM learning.


Notes

I’ve created a comprehensive set of notes and assessment tests for Term 1 across all grade levels (Preschoolers through Grade 10-12). The document includes:

What’s Included:

For Each Grade Level:

  • Detailed weekly lesson notes covering weeks 1-8 content
  • Key concepts and learning objectives for each topic
  • Practical examples and code samples (for programming grades)
  • Age-appropriate assessment tests with multiple formats

Assessment Formats:

  • Preschoolers (4-6): Practical/observational assessments with hands-on activities
  • Grade 2-5 (7-11): Computer-based Scratch/Blockly challenges
  • Grade 6-9 (11-14): Written tests + practical drone safety demonstrations
  • Grade 10-12 (14-16): Coding assignments + hardware integration projects

Key Features:

  • Covers all 8 weeks of Term 1 content
  • Aligned with curriculum from the IoT & Robotics document
  • Progressive difficulty appropriate for each age group
  • Practical assessments that test real understanding
  • Detailed rubrics for fair evaluation
  • Extension activities for advanced learners
  • Safety guidelines and best practices

Topics Covered:

  • Preschoolers: STEM basics, simple machines, unplugged coding
  • Grade 2-5: Scratch programming, Blockly games, interface navigation
  • Grade 6-9: Drone basics, aviation principles, safety regulations
  • Grade 10-12: Python programming, hardware control, sensor integration

Each assessment is designed to be practical and engaging, testing both theoretical knowledge and hands-on application skills. The rubrics provide clear criteria for evaluation at different skill levels.


Perfect! I’ve now completed the comprehensive Term 1 notes and assessment materials covering all 8 weeks for all grade levels. Here’s what’s now included:

Assessment Test

Assessment Test

Assessment Test

Assessment Test

Grade 10-12 (14-16 Years) - Weeks 6-8

Advanced Python Projects & Integration

Week 6-7: Integrated Systems Project (Combined Weeks)

Learning Objectives:

  • Combine motors and sensors in complex systems
  • Debug integrated hardware/software systems
  • Apply creative problem-solving to real-world challenges
  • Document projects professionally

Key Concepts:

  • Systems Integration: Combining multiple components into unified solutions
  • Hardware-Software Interface: Code that bridges digital and physical worlds
  • System Architecture: Planning complex projects with multiple subsystems
  • Error Handling: Managing failures gracefully in complex systems
  • Performance Optimization: Making systems run efficiently
  • Documentation Standards: Professional project recording

Advanced Integration Concepts:

1. Multi-Sensor Fusion

import threading
import queue
from gpiozero import DistanceSensor, MotionSensor, MCP3008
from time import sleep
import json

class SensorFusion:
    def __init__(self):
        self.distance_sensor = DistanceSensor(echo=24, trigger=23)
        self.motion_sensor = MotionSensor(4)
        self.light_sensor = MCP3008(channel=0)
        self.temp_sensor = MCP3008(channel=1)

        # Data queues for thread communication
        self.sensor_data = queue.Queue()
        self.running = False

    def read_sensors(self):
        """Continuous sensor reading in separate thread"""
        while self.running:
            try:
                data = {
                    'timestamp': time.time(),
                    'distance': self.distance_sensor.distance * 100,
                    'motion': self.motion_sensor.motion_detected,
                    'light_level': self.light_sensor.voltage,
                    'temperature': self.convert_temp(self.temp_sensor.voltage)
                }
                self.sensor_data.put(data)
                sleep(0.1)  # 10Hz sampling rate
            except Exception as e:
                print(f"Sensor reading error: {e}")

    def convert_temp(self, voltage):
        """Convert sensor voltage to temperature"""
        return (voltage - 0.5) * 100  # Example conversion

    def start_monitoring(self):
        """Start sensor monitoring thread"""
        self.running = True
        self.sensor_thread = threading.Thread(target=self.read_sensors)
        self.sensor_thread.start()

    def stop_monitoring(self):
        """Stop sensor monitoring"""
        self.running = False
        if hasattr(self, 'sensor_thread'):
            self.sensor_thread.join()

2. Intelligent Control Systems

class SmartEnvironmentController:
    def __init__(self):
        self.sensors = SensorFusion()
        self.fan_motor = Motor(forward=2, backward=3)
        self.heater_relay = OutputDevice(18)
        self.lights = PWMOutputDevice(19)

        # Control parameters
        self.target_temp = 22.0  # Target temperature in Celsius
        self.temp_tolerance = 1.0
        self.light_threshold = 0.3

        # Control state
        self.auto_mode = True
        self.manual_override = False

    def analyze_environment(self, sensor_data):
        """Intelligent decision making based on sensor data"""
        decisions = {
            'fan_speed': 0.0,
            'heater_on': False,
            'light_level': 0.0,
            'alert_status': 'normal'
        }

        # Temperature control logic
        temp_diff = sensor_data['temperature'] - self.target_temp

        if temp_diff > self.temp_tolerance:  # Too hot
            decisions['fan_speed'] = min(1.0, temp_diff / 5.0)  # Scale fan speed
            decisions['heater_on'] = False
        elif temp_diff < -self.temp_tolerance:  # Too cold
            decisions['fan_speed'] = 0.0
            decisions['heater_on'] = True

        # Light control logic
        if sensor_data['light_level'] < self.light_threshold:
            decisions['light_level'] = 1.0 - sensor_data['light_level']  # Complement lighting

        # Security monitoring
        if sensor_data['motion'] and sensor_data['distance'] < 20:  # Close motion
            decisions['alert_status'] = 'intrusion_detected'
        elif sensor_data['distance'] < 5:  # Very close object
            decisions['alert_status'] = 'obstacle_warning'

        return decisions

    def execute_controls(self, decisions):
        """Execute control decisions"""
        if not self.manual_override:
            # Motor control
            if decisions['fan_speed'] > 0:
                self.fan_motor.forward(decisions['fan_speed'])
            else:
                self.fan_motor.stop()

            # Heater control
            if decisions['heater_on']:
                self.heater_relay.on()
            else:
                self.heater_relay.off()

            # Light control
            self.lights.value = decisions['light_level']

    def run_control_loop(self):
        """Main control loop"""
        self.sensors.start_monitoring()

        try:
            while True:
                if not self.sensors.sensor_data.empty():
                    current_data = self.sensors.sensor_data.get()
                    decisions = self.analyze_environment(current_data)
                    self.execute_controls(decisions)

                    # Log system status
                    self.log_system_status(current_data, decisions)

                sleep(0.5)  # Control loop frequency

        except KeyboardInterrupt:
            print("Shutting down control system...")
        finally:
            self.sensors.stop_monitoring()
            self.fan_motor.stop()
            self.heater_relay.off()
            self.lights.off()

    def log_system_status(self, sensor_data, decisions):
        """Log system performance data"""
        log_entry = {
            'timestamp': sensor_data['timestamp'],
            'sensors': sensor_data,
            'controls': decisions,
            'mode': 'auto' if self.auto_mode else 'manual'
        }

        # In a real system, this would write to a file or database
        print(f"System Status: Temp={sensor_data['temperature']:.1f}°C, "
              f"Fan={decisions['fan_speed']:.1f}, "
              f"Alert={decisions['alert_status']}")

3. Project Documentation Standards

"""
Smart Environment Control System
================================

Project: IoT Environmental Controller
Author: Student Name
Date: Current Date
Version: 1.0

Description:
    An intelligent system that monitors environmental conditions and automatically
    adjusts heating, cooling, and lighting based on sensor feedback.

Hardware Requirements:
    - Raspberry Pi 4 or similar
    - Temperature sensor (DS18B20 or similar)
    - Light sensor (LDR with MCP3008 ADC)
    - Motion sensor (PIR)
    - Distance sensor (HC-SR04)
    - DC Motor (for fan simulation)
    - Relay module (for heater control)
    - PWM-controlled LED (for lighting)

Software Dependencies:
    - Python 3.7+
    - gpiozero library
    - threading module (standard library)
    - queue module (standard library)
    - json module (standard library)

Installation:
    pip install gpiozero

Usage:
    python smart_environment.py

Configuration:
    Modify target_temp and light_threshold variables in SmartEnvironmentController
    class to adjust system behavior.

Testing:
    Run included test functions to verify sensor readings and control outputs
    before deploying the full system.

Known Issues:
    - Temperature sensor calibration may need adjustment for local conditions
    - Motion sensor has 2-second reset time that affects rapid detection

Future Enhancements:
    - Web interface for remote monitoring
    - Data logging to CSV files
    - Machine learning for predictive control
    - Mobile app integration
"""

Project Examples for Students:

Project 1: Smart Garden Monitor

  • Monitors soil moisture, light, and temperature
  • Controls watering pump and grow lights
  • Logs plant growth data
  • Sends alerts when intervention needed

Project 2: Home Security System

  • Multiple sensor integration (motion, door, window)
  • Camera trigger on detection
  • SMS/email notifications
  • Mobile app control interface

Project 3: Weather Station

  • Measures temperature, humidity, pressure, wind
  • Data logging with timestamps
  • Weather prediction algorithms
  • Web dashboard for data visualization

Project 4: Automated Greenhouse

  • Climate control (temperature, humidity)
  • Automated watering system
  • Light cycle management
  • Growth optimization algorithms

Grade 10-12 Final Assessment - Weeks 6-8

Integrated Systems Project Assessment

Format: Major Project + Technical Presentation + Peer Review (2 weeks + presentation day)

Project Requirements: Students must create an integrated system that combines:

  • At least 3 different sensors
  • At least 2 actuators (motors, lights, relays, etc.)
  • Data logging and analysis
  • User interface (command line or simple GUI)
  • Error handling and safety features

Part A: Technical Implementation (40 points)

System Design (10 points)

  • Clear problem definition and solution approach
  • System architecture diagram showing component relationships
  • Hardware schematic or connection diagram
  • Software flowchart or algorithm description

Code Quality (15 points)

  • Well-structured, modular code with functions/classes
  • Appropriate variable names and code organization
  • Comprehensive comments explaining complex sections
  • Error handling for hardware failures
  • Efficient algorithms and resource usage

Hardware Integration (15 points)

  • Stable sensor readings with appropriate filtering
  • Reliable actuator control with safety limits
  • Proper electrical connections and component usage
  • System operates reliably for extended periods
  • Professional cable management and mounting

Part B: Documentation and Communication (25 points)

Project Documentation (15 points) Create a complete project report including:

  • Executive summary of project goals and achievements
  • Detailed technical specifications and requirements
  • Installation and setup instructions
  • User manual with clear operating procedures
  • Troubleshooting guide for common problems
  • Code documentation with API reference

Technical Presentation (10 points)

  • Clear 5-minute presentation explaining project
  • Live demonstration of working system
  • Professional slides with technical diagrams
  • Confident handling of technical questions
  • Appropriate use of technical vocabulary

Part C: Innovation and Problem Solving (20 points)

Creative Solutions (10 points)

  • Original approach to solving chosen problem
  • Creative use of available hardware and software
  • Evidence of iterative design and improvement
  • Solutions show depth of understanding beyond basic requirements

Advanced Features (10 points) Choose and implement at least TWO:

  • Machine learning or AI decision making
  • Network communication (IoT connectivity)
  • Mobile app or web interface
  • Data visualization and analytics
  • Predictive algorithms or optimization
  • Integration with external APIs or services

Part D: Professional Skills (15 points)

Peer Collaboration (8 points)

  • Constructive feedback provided to classmates
  • Professional behavior during presentations
  • Willingness to help others debug problems
  • Respectful and insightful questions during Q&A

Self-Assessment (7 points) Written reflection addressing:

  • Most significant technical challenge and how you overcame it
  • What you would do differently if starting over
  • How this project connects to potential career interests
  • Specific skills you want to develop further
  • Your confidence level with different aspects of the project

Sample Project Evaluation Rubric:

Exceptional (90-100%)

  • System exceeds all requirements with innovative features
  • Code is publication-quality with comprehensive documentation
  • Presentation is engaging and demonstrates deep understanding
  • Shows leadership in helping others and contributing to class learning
  • Self-reflection shows sophisticated understanding of learning process

Proficient (80-89%)

  • System meets all requirements reliably
  • Code is well-structured with good documentation
  • Presentation is clear and technically accurate
  • Actively participates in peer learning and feedback
  • Self-reflection shows good awareness of strengths and growth areas

Developing (70-79%)

  • System meets most requirements with minor issues
  • Code works but may have organizational or documentation gaps
  • Presentation covers required topics but may lack depth
  • Participates adequately in class activities
  • Self-reflection shows basic understanding of learning process

Beginning (60-69%)

  • System meets basic requirements but has significant limitations
  • Code works for demonstration but has structural or reliability issues
  • Presentation covers basics but shows limited understanding
  • Minimal participation in peer activities
  • Self-reflection is superficial or lacks insight

Incomplete (Below 60%)

  • System fails to meet basic requirements or doesn’t function reliably
  • Code has major issues that prevent proper operation
  • Presentation is unclear or shows misunderstanding of concepts
  • Little to no participation in collaborative learning
  • Self-reflection missing or shows no evidence of learning

Assessment Test

Week 6-7: Integrated Systems Project (Combined Weeks)

Learning Objectives:

  • Combine motors and sensors in complex systems
  • Debug integrated hardware/software systems
  • Apply creative problem-solving to real-world challenges
  • Document projects professionally

Key Concepts:

  • Systems Integration: Combining multiple components into unified solutions
  • Hardware-Software Interface: Code that bridges digital and physical worlds
  • System Architecture: Planning complex projects with multiple subsystems
  • Error Handling: Managing failures gracefully in complex systems
  • Performance Optimization: Making systems run efficiently
  • Documentation Standards: Professional project recording

Advanced Integration Concepts:

1. Multi-Sensor Fusion

import threading
import queue
from gpiozero import DistanceSensor, MotionSensor, MCP3008
from time import sleep
import json

class SensorFusion:
    def __init__(self):
        self.distance_sensor = DistanceSensor(echo=24, trigger=23)
        self.motion_sensor = MotionSensor(4)
        self.light_sensor = MCP3008(channel=0)
        self.temp_sensor = MCP3008(channel=1)

        # Data queues for thread communication
        self.sensor_data = queue.Queue()
        self.running = False

    def read_sensors(self):
        """Continuous sensor reading in separate thread"""
        while self.running:
            try:
                data = {
                    'timestamp': time.time(),
                    'distance': self.distance_sensor.distance * 100,
                    'motion': self.motion_sensor.motion_detected,
                    'light_level': self.light_sensor.voltage,
                    'temperature': self.convert_temp(self.temp_sensor.voltage)
                }
                self.sensor_data.put(data)
                sleep(0.1)  # 10Hz sampling rate
            except Exception as e:
                print(f"Sensor reading error: {e}")

    def convert_temp(self, voltage):
        """Convert sensor voltage to temperature"""
        return (voltage - 0.5) * 100  # Example conversion

    def start_monitoring(self):
        """Start sensor monitoring thread"""
        self.running = True
        self.sensor_thread = threading.Thread(target=self.read_sensors)
        self.sensor_thread.start()

    def stop_monitoring(self):
        """Stop sensor monitoring"""
        self.running = False
        if hasattr(self, 'sensor_thread'):
            self.sensor_thread.join()

2. Intelligent Control Systems

class SmartEnvironmentController:
    def __init__(self):
        self.sensors = SensorFusion()
        self.fan_motor = Motor(forward=2, backward=3)
        self.heater_relay = OutputDevice(18)
        self.lights = PWMOutputDevice(19)

        # Control parameters
        self.target_temp = 22.0  # Target temperature in Celsius
        self.temp_tolerance = 1.0
        self.light_threshold = 0.3

        # Control state
        self.auto_mode = True
        self.manual_override = False

    def analyze_environment(self, sensor_data):
        """Intelligent decision making based on sensor data"""
        decisions = {
            'fan_speed': 0.0,
            'heater_on': False,
            'light_level': 0.0,
            'alert_status': 'normal'
        }

        # Temperature control logic
        temp_diff = sensor_data['temperature'] - self.target_temp

        if temp_diff > self.temp_tolerance:  # Too hot
            decisions['fan_speed'] = min(1.0, temp_diff / 5.0)  # Scale fan speed
            decisions['heater_on'] = False
        elif temp_diff < -self.temp_tolerance:  # Too cold
            decisions['fan_speed'] = 0.0
            decisions['heater_on'] = True

        # Light control logic
        if sensor_data['light_level'] < self.light_threshold:
            decisions['light_level'] = 1.0 - sensor_data['light_level']  # Complement lighting

        # Security monitoring
        if sensor_data['motion'] and sensor_data['distance'] < 20:  # Close motion
            decisions['alert_status'] = 'intrusion_detected'
        elif sensor_data['distance'] < 5:  # Very close object
            decisions['alert_status'] = 'obstacle_warning'

        return decisions

    def execute_controls(self, decisions):
        """Execute control decisions"""
        if not self.manual_override:
            # Motor control
            if decisions['fan_speed'] > 0:
                self.fan_motor.forward(decisions['fan_speed'])
            else:
                self.fan_motor.stop()

            # Heater control
            if decisions['heater_on']:
                self.heater_relay.on()
            else:
                self.heater_relay.off()

            # Light control
            self.lights.value = decisions['light_level']

    def run_control_loop(self):
        """Main control loop"""
        self.sensors.start_monitoring()

        try:
            while True:
                if not self.sensors.sensor_data.empty():
                    current_data = self.sensors.sensor_data.get()
                    decisions = self.analyze_environment(current_data)
                    self.execute_controls(decisions)

                    # Log system status
                    self.log_system_status(current_data, decisions)

                sleep(0.5)  # Control loop frequency

        except KeyboardInterrupt:
            print("Shutting down control system...")
        finally:
            self.sensors.stop_monitoring()
            self.fan_motor.stop()
            self.heater_relay.off()
            self.lights.off()

    def log_system_status(self, sensor_data, decisions):
        """Log system performance data"""
        log_entry = {
            'timestamp': sensor_data['timestamp'],
            'sensors': sensor_data,
            'controls': decisions,
            'mode': 'auto' if self.auto_mode else 'manual'
        }

        # In a real system, this would write to a file or database
        print(f"System Status: Temp={sensor_data['temperature']:.1f}°C, "
              f"Fan={decisions['fan_speed']:.1f}, "
              f"Alert={decisions['alert_status']}")

3. Project Documentation Standards

"""
Smart Environment Control System
================================

Project: IoT Environmental Controller
Author: Student Name
Date: Current Date
Version: 1.0

Description:
    An intelligent system that monitors environmental conditions and automatically
    adjusts heating, cooling, and lighting based on sensor feedback.

Hardware Requirements:
    - Raspberry Pi 4 or similar
    - Temperature sensor (DS18B20 or similar)
    - Light sensor (LDR with MCP3008 ADC)
    - Motion sensor (PIR)
    - Distance sensor (HC-SR04)
    - DC Motor (for fan simulation)
    - Relay module (for heater control)
    - PWM-controlled LED (for lighting)

Software Dependencies:
    - Python 3.7+
    - gpiozero library
    - threading module (standard library)
    - queue module (standard library)
    - json module (standard library)

Installation:
    pip install gpiozero

Usage:
    python smart_environment.py

Configuration:
    Modify target_temp and light_threshold variables in SmartEnvironmentController
    class to adjust system behavior.

Testing:
    Run included test functions to verify sensor readings and control outputs
    before deploying the full system.

Known Issues:
    - Temperature sensor calibration may need adjustment for local conditions
    - Motion sensor has 2-second reset time that affects rapid detection

Future Enhancements:
    - Web interface for remote monitoring
    - Data logging to CSV files
    - Machine learning for predictive control
    - Mobile app integration
"""

Project Examples for Students:

Project 1: Smart Garden Monitor

  • Monitors soil moisture, light, and temperature
  • Controls watering pump and grow lights
  • Logs plant growth data
  • Sends alerts when intervention needed

Project 2: Home Security System

  • Multiple sensor integration (motion, door, window)
  • Camera trigger on detection
  • SMS/email notifications
  • Mobile app control interface

Project 3: Weather Station

  • Measures temperature, humidity, pressure, wind
  • Data logging with timestamps
  • Weather prediction algorithms
  • Web dashboard for data visualization

Project 4: Automated Greenhouse

  • Climate control (temperature, humidity)
  • Automated watering system
  • Light cycle management
  • Growth optimization algorithms

Assessment Test

Week 8: Project Presentations and Assessment

Learning Objectives:

  • Present technical projects professionally
  • Give and receive constructive feedback
  • Self-evaluate learning progress and achievements
  • Plan next steps for continued learning

Key Concepts:

  • Technical Communication: Explaining complex systems clearly
  • Presentation Skills: Engaging audiences with technical content
  • Peer Review: Constructive feedback and collaboration
  • Self-Assessment: Honest evaluation of own work
  • Professional Development: Planning continued learning paths
  • Portfolio Building: Documenting achievements for future opportunities

Presentation Structure:

  1. Project Overview (2 minutes)
  • Problem statement and objectives
  • Target audience and use cases
  • Key features and functionality
  1. Technical Demonstration (2 minutes)
  • Live system operation
  • Key components and how they work
  • Code walkthrough of critical sections
  1. Challenges and Solutions (1 minute)
  • Major obstacles encountered
  • Creative solutions implemented
  • Lessons learned from failures

Evaluation Criteria:

Technical Merit (40%):

  • System functionality and reliability
  • Code quality and organization
  • Creative problem-solving approach
  • Integration of multiple technologies

Communication (30%):

  • Clear explanation of technical concepts
  • Engaging presentation delivery
  • Appropriate use of visual aids
  • Effective response to questions

Documentation (20%):

  • Complete project documentation
  • Code comments and structure
  • User instructions and setup guides
  • Reflection on learning process

Collaboration (10%):

  • Constructive feedback to peers
  • Professional interaction during Q&A
  • Willingness to share knowledge
  • Respectful critique and discussion

Python Programming Trivia Challenge: End the term with fun technical questions:

  1. What does “PEP 8” refer to in Python?
  2. What’s the difference between == and is in Python?
  3. How do you handle exceptions in Python?
  4. What is a Python decorator?
  5. What’s the difference between a list and a tuple?

Assessment Test

IoT & Robotics Term 1 - Complete Notes & Assessment Tests

Table of Contents

  1. Preschoolers (4-6 Years) - STEM Storytelling & Coding Toys
  2. Grade 2-5 (7-11 Years) - Scratch & Blockly Programming
  3. Grade 6-9 (11-14 Years) - Drone Aviation Introduction
  4. Grade 10-12 (14-16 Years) - Python Basics

Preschoolers (4-6 Years)

Term 1: STEM Storytelling & Coding Toys

Week 1: Introduction to STEM

Learning Objectives:

  • Understand basic concepts of STEM (Science, Technology, Engineering, Math)
  • Spark excitement and curiosity about STEM through hands-on activities
  • Foster teamwork through group experiments
  • Develop early thinking through guided play and experimentation

Key Concepts:

  • Science: Learning about the world around us through observation
  • Technology: Simple tools and devices that help us
  • Engineering: Building and creating solutions
  • Mathematics: Numbers, shapes, and patterns in everyday life

Activities:

  • Floating vs. Sinking experiments with various objects
  • Basic robot interaction and exploration
  • STEM vocabulary building games
  • Classification activities

Materials: Water, buckets, floating items (paper, feathers), sinking items (stones, coins), toy robot, tablet

Week 2: STEM Play Corners

Learning Objectives:

  • Explore different STEM areas through play stations
  • Develop fine motor skills through hands-on manipulation
  • Practice problem-solving through guided discovery
  • Build confidence in exploring new concepts

Key Concepts:

  • Play-based learning: Learning through exploration and fun
  • Spatial awareness: Understanding shapes, sizes, and positions
  • Cause and effect: Understanding that actions have results
  • Collaboration: Working together to solve problems

Week 3: Simple Machines & Environmental Science

Learning Objectives:

  • Identify simple machines in everyday life
  • Understand basic environmental concepts
  • Develop observation skills
  • Connect STEM to the natural world

Key Concepts:

  • Simple Machines: Lever, pulley, wheel, ramp
  • Environment: Plants, animals, weather, seasons
  • Observation: Using our senses to learn
  • Nature patterns: Recognizing patterns in nature

Week 4: Unplugged Coding

Learning Objectives:

  • Introduction to coding concepts without computers
  • Understand sequence and order
  • Develop logical thinking
  • Practice following and giving instructions

Key Concepts:

  • Sequence: Steps in order
  • Instructions: Clear directions to follow
  • Algorithms: Step-by-step solutions
  • Patterns: Recognizing and creating patterns

Assessment Test - Preschoolers (4-6 Years)

Week 1-2 Assessment: STEM Basics

Format: Practical/Observational Assessment

  1. Floating or Sinking? (Show child various objects)
  • Point to objects that will float: feather, cork, plastic toy
  • Point to objects that will sink: stone, coin, marble
  • Explain why you think so (in simple words)
  1. STEM Matching (Picture cards)
  • Match the scientist to the magnifying glass
  • Match the engineer to the building blocks
  • Match the mathematician to the numbers
  • Match the technologist to the computer
  1. Following Instructions
  • Can follow 2-step instructions: “Pick up the red block and put it in the box”
  • Can give simple instructions to a friend
  • Can arrange objects in order (biggest to smallest)

Assessment Rubric:

  • Exceeding (3): Completes all tasks independently with explanation
  • Meeting (2): Completes most tasks with minimal guidance
  • Approaching (1): Attempts tasks with significant support
  • Beginning (0): Needs extensive help to participate

Week 3-4 Assessment: Simple Machines & Coding

Format: Hands-on Demonstration

  1. Simple Machines Hunt
  • Find the lever (seesaw, scissors)
  • Find the wheel (bicycle, toy car)
  • Find the ramp (slide, wedge)
  • Explain what each machine helps us do
  1. Nature Observation
  • Draw or point to living things vs. non-living things
  • Identify basic shapes in nature (circles in flowers, triangles in mountains)
  • Name things that grow vs. things that are made
  1. Unplugged Coding Challenge
  • Arrange sequence cards to show morning routine
  • Give directions to help friend reach the treasure
  • Complete a simple pattern with blocks or shapes

Grade 2-5 (7-11 Years)

Term 1: Scratch & Blockly Programming

Week 1: Introduction to Programming

Learning Objectives:

  • Understand what programming is
  • Learn about Scratch programming environment
  • Install and explore Scratch interface
  • Grasp the concept of sequencing

Key Concepts:

  • Programming: Giving instructions to computers
  • Scratch: Visual programming language using blocks
  • Interface: The screen where we work with Scratch
  • Sequencing: Putting commands in the right order
  • Sprites: Characters in Scratch programs
  • Stage: Where Scratch programs run

Core Activities:

  • Explore Scratch interface and tools
  • Identify different areas (sprite area, blocks palette, stage)
  • Learn about different block categories (Motion, Looks, Sound, etc.)
  • Create first simple animation

Week 2: Understanding Scratch Interface

Learning Objectives:

  • Navigate Scratch interface confidently
  • Understand different block categories
  • Create basic sprite movements
  • Save and load projects

Key Concepts:

  • Blocks Palette: Where programming blocks are stored
  • Scripts Area: Where we build our programs
  • Motion Blocks: Make sprites move
  • Looks Blocks: Change sprite appearance
  • Events: What starts our programs running

Week 3: Setting Up Scratch Projects

Learning Objectives:

  • Plan and organize Scratch projects
  • Understand project structure
  • Use backgrounds and sprites effectively
  • Practice debugging simple problems

Key Concepts:

  • Project Planning: Thinking before coding
  • Backgrounds: Scenes for our programs
  • Sprite Library: Ready-made characters
  • Debugging: Finding and fixing problems

Week 4: Introduction to Blockly

Learning Objectives:

  • Understand Blockly visual programming
  • Compare Blockly with Scratch
  • Complete basic Blockly puzzles
  • Transfer concepts between platforms

Key Concepts:

  • Blockly: Another visual programming language
  • Puzzle-based Learning: Learning through solving challenges
  • Logic Blocks: Making decisions in programs
  • Loops: Repeating actions

Week 5: Blockly Games for Scratch Programmers

Learning Objectives:

  • Apply Scratch knowledge to Blockly games
  • Solve increasingly complex puzzles
  • Understand programming logic and flow
  • Build problem-solving confidence

Key Concepts:

  • Game Logic: Rules that make games work
  • Progressive Difficulty: Challenges that get harder
  • Pattern Recognition: Seeing repeated solutions
  • Persistence: Keep trying when challenges are difficult

Assessment Test - Grade 2-5 (7-11 Years)

Week 1-3 Assessment: Scratch Fundamentals

Format: Practical Computer Assessment (30 minutes)

Part A: Interface Knowledge (10 points)

  1. Label the parts of Scratch interface:
  • Blocks Palette
  • Scripts Area
  • Stage
  • Sprite Area
  1. Match the block colors to their functions:
  • Motion blocks: _____ (Blue)
  • Looks blocks: _____ (Purple)
  • Sound blocks: _____ (Pink)
  • Events blocks: _____ (Yellow)

Part B: Basic Programming (15 points) 3. Create a program that makes a sprite:

  • Move 10 steps forward

  • Turn 90 degrees right

  • Say “Hello” for 2 seconds

  • Change color

  1. Fix this broken sequence (drag blocks in correct order):
[Say "Goodbye"][When green flag clicked][Move 100 steps][Say "Hello"]

Part C: Problem Solving (10 points) 5. Your sprite isn’t moving when you click the green flag. What might be wrong?

  • Missing “when green flag clicked” block

  • Sprite is already at the edge

  • Motion blocks aren’t connected

  • All of the above

  1. Create a simple animation showing a cat walking across the stage.

Week 4-5 Assessment: Blockly & Problem Solving

Format: Computer-based Blockly Challenges (25 minutes)

Part A: Blockly Basics (8 points)

  1. Complete the “Move Forward” puzzle in Blockly
  2. Complete the “Turn Left/Right” puzzle
  3. Complete the “Repeat Loop” puzzle
  4. Complete the “If/Else” puzzle

Part B: Logic Understanding (12 points) 5. Explain what this Blockly code does:

Repeat 4 times:
  Move forward
  Turn right 90 degrees

Answer: _________________

  1. Write Blockly code to make a character:
  • Move forward 3 steps
  • Turn left if path is blocked
  • Repeat until reaching goal

Part C: Transfer Learning (10 points) 7. How is Blockly similar to Scratch? List 3 similarities:




  1. Create a Scratch program that does the same thing as this Blockly code:
When started:  Repeat 5 times:    Move forward 20 steps    Wait 1 second

Assessment Rubric:

  • Advanced (90-100%): Completes all tasks efficiently with creative additions
  • Proficient (80-89%): Completes most tasks correctly with minor errors
  • Developing (70-79%): Completes basic tasks but struggles with complex problems
  • Beginning (Below 70%): Needs significant support to complete tasks

Grade 6-9 (11-14 Years)

Term 1: Drone Aviation Introduction

Week 1: Introduction to Drones and Aviation Basics

Learning Objectives:

  • Understand what drones are and their applications
  • Learn basic aviation principles
  • Identify different types of aircraft
  • Understand the evolution of flight

Key Concepts:

  • Unmanned Aerial Vehicle (UAV): Aircraft without a human pilot aboard
  • Remote Pilot: Person controlling the drone from the ground
  • Autonomous Flight: Drones flying with minimal human control
  • Commercial vs. Recreational Use: Different purposes for drones
  • Four Forces of Flight: Lift, Weight, Thrust, Drag
  • Aerodynamics: How air moves around objects in flight

Applications of Drones:

  • Photography and videography
  • Search and rescue operations
  • Agriculture monitoring
  • Package delivery
  • Scientific research
  • Military operations

Week 2: Drone Safety Rules and Best Practices

Learning Objectives:

  • Learn essential drone safety protocols
  • Understand pre-flight checklist procedures
  • Identify potential hazards and risks
  • Develop responsible drone operation habits

Key Concepts:

  • Pre-flight Inspection: Checking drone condition before flying
  • Weather Conditions: How weather affects drone flight
  • Battery Safety: Proper battery handling and storage
  • Emergency Procedures: What to do when things go wrong
  • Situational Awareness: Being aware of surroundings while flying

Safety Rules:

  1. Always maintain visual contact with drone
  2. Check weather conditions before flying
  3. Inspect drone and equipment before each flight
  4. Fly in open areas away from people and property
  5. Never fly above 400 feet
  6. Respect others’ privacy
  7. Land immediately if drone malfunctions

Week 3: FAA/UAS Regulations (Basic Overview)

Learning Objectives:

  • Understand basic aviation regulations
  • Learn about no-fly zones and restricted airspace
  • Understand registration requirements
  • Learn about pilot certification basics

Key Concepts:

  • Federal Aviation Administration (FAA): Government agency regulating aviation
  • Unmanned Aircraft Systems (UAS): Official term for drones and related equipment
  • No-Fly Zones: Areas where drone flight is prohibited
  • Remote Pilot Certificate: License required for commercial drone operations
  • Registration: Required identification for drones over 0.55 pounds

Basic Regulations:

  • Drones must be registered if over 0.55 lbs (250 grams)
  • Maximum altitude: 400 feet above ground level
  • Must yield right-of-way to manned aircraft
  • No flying over groups of people
  • No flying at night without special certification
  • Respect airport operational areas (usually 5-mile radius)

Week 4: Key Drone Types & Components

Learning Objectives:

  • Identify different drone configurations
  • Understand key drone components and their functions
  • Compare advantages and disadvantages of different designs
  • Learn basic maintenance requirements

Key Concepts:

  • Multirotor: Drones with multiple rotating propellers
  • Fixed-wing: Airplane-like drones with wings
  • Hybrid VTOL: Vertical takeoff and landing with forward flight capability
  • Frame: Main structure holding all components
  • Flight Controller: Computer controlling drone flight
  • ESC (Electronic Speed Controller): Controls motor speed
  • Gimbal: Stabilizes camera during flight

Drone Types:

  1. Quadcopter: 4 rotors, most common configuration
  2. Hexacopter: 6 rotors, more redundancy and payload capacity
  3. Octocopter: 8 rotors, highest redundancy and capacity
  4. Fixed-wing: Longer flight times, faster speeds
  5. Racing drones: Small, fast, agile for competitive flying

Week 5: Basic Principles of Flight

Learning Objectives:

  • Understand the four forces of flight in detail
  • Learn how drones achieve controlled flight
  • Understand stability and control concepts
  • Explore flight dynamics and physics

Key Concepts:

  • Lift: Upward force generated by rotors or wings
  • Weight (Gravity): Downward force pulling drone toward earth
  • Thrust: Forward force propelling drone through air
  • Drag: Resistance force opposing motion through air
  • Center of Gravity: Balance point of drone
  • Pitch, Roll, Yaw: Three axes of rotation
  • Gyroscopic Effect: How spinning rotors affect stability

Flight Control:

  • Throttle: Controls altitude (up/down)
  • Pitch: Controls forward/backward movement
  • Roll: Controls left/right movement
  • Yaw: Controls rotation (turning left/right)
  • Trim: Fine adjustments for balanced flight

Assessment Test - Grade 6-9 (11-14 Years)

Week 1-2 Assessment: Drone Basics and Safety

Format: Written Test + Practical Safety Demonstration (45 minutes)

Part A: Multiple Choice (20 points)

  1. What does UAV stand for? a) Universal Aviation Vehicle b) Unmanned Aerial Vehicle c) Ultra Aerodynamic Vehicle d) United Aviation Vehicle

  2. Which of the four forces of flight works against gravity? a) Thrust b) Drag c) Lift d) Weight

  3. What should you do FIRST before flying a drone? a) Start the motors b) Check weather conditions c) Take off immediately d) Turn on the camera

  4. The maximum altitude for recreational drone flight is: a) 200 feet b) 300 feet c) 400 feet d) 500 feet

  5. What is the main difference between commercial and recreational drone use? a) Size of drone b) Purpose and regulations c) Color of drone d) Number of rotors

Part B: Short Answer (25 points) 6. List 5 safety rules that must be followed when operating a drone: (10 points)






  1. Explain three commercial applications of drones: (9 points)



  1. Why is it important to maintain visual contact with your drone during flight? (6 points)

Part C: Practical Safety Assessment (15 points) 9. Demonstrate proper pre-flight inspection checklist 10. Identify suitable vs. unsuitable flying locations from photos 11. Explain emergency landing procedures

Week 3-5 Assessment: Regulations and Flight Principles

Format: Written Test + Flight Theory Application (50 minutes)

Part A: Regulations Knowledge (20 points)

  1. True/False (10 points)
  • Drones under 0.55 lbs need to be registered: ___
  • You can fly your drone anywhere as long as it’s daytime: ___
  • Commercial drone operations require a Remote Pilot Certificate: ___
  • Drones must always yield to manned aircraft: ___
  • Flying over groups of people is allowed with permission: ___
  1. What is a no-fly zone and give 3 examples: (10 points) Definition: ________________________________ Examples:



Part B: Drone Components (15 points) 3. Match the component to its function:

  • Flight Controller: _____ a) Provides power to motors

  • ESC: _____ b) Stabilizes camera

  • Gimbal: _____ c) Main structural support

  • Frame: _____ d) Controls drone flight

  • Battery: _____ e) Controls motor speed

  1. Compare quadcopter vs. fixed-wing drones (advantages/disadvantages): (10 points)

Part C: Flight Principles (25 points) 5. Draw and label the four forces of flight on a drone diagram: (12 points)

  1. Explain how a drone moves in each direction: (13 points)
  • Forward: ________________________________
  • Backward: ________________________________
  • Left: ________________________________
  • Right: ________________________________
  • Up: ________________________________
  • Rotate left: ________________________________

Assessment Rubric:

  • Expert (90-100%): Demonstrates comprehensive understanding with detailed explanations
  • Proficient (80-89%): Shows solid grasp of concepts with minor gaps
  • Developing (70-79%): Understands basic concepts but lacks detail in complex areas
  • Novice (Below 70%): Limited understanding, needs additional instruction

Grade 10-12 (14-16 Years)

Term 1: Introduction to Python Basics

Week 1: Writing Structured Python Code

Learning Objectives:

  • Understand Python syntax and structure
  • Learn proper code formatting and indentation
  • Write clean, readable code following best practices
  • Understand variables, data types, and basic operations

Key Concepts:

  • Python: High-level programming language
  • Syntax: Rules for writing Python code
  • Indentation: Using spaces to organize code structure
  • Variables: Named storage for data values
  • Data Types: int, float, string, boolean
  • Comments: Documentation within code using #
  • Print Statement: Displaying output to screen

Code Structure Best Practices:

# Header comment explaining the program
# Author: Your Name
# Date: Today's Date

# Import statements
import module_name

# Constants (UPPERCASE naming)
MAX_VALUE = 100

# Main program logic
def main():
    # Variable declarations
    user_name = "Student"
    age = 16

    # Program logic with proper indentation
    print(f"Hello, {user_name}!")
    print(f"You are {age} years old.")

# Run the program
if __name__ == "__main__":
    main()

Week 2: Functions and Loops

Learning Objectives:

  • Create and use custom functions
  • Understand function parameters and return values
  • Implement for loops and while loops
  • Apply loops to solve repetitive tasks

Key Concepts:

  • Function: Reusable block of code that performs a specific task
  • Parameters: Input values passed to functions
  • Return Value: Output value from a function
  • For Loop: Repeats code a specific number of times
  • While Loop: Repeats code while a condition is true
  • Range Function: Generates sequences of numbers
  • Iteration: Each repetition of a loop
  • Loop Control: Managing when loops start and stop

Function Examples:

# Simple function with no parameters
def greet():
    print("Hello, World!")

# Function with parameters
def greet_person(name, age):
    print(f"Hello, {name}! You are {age} years old.")

# Function with return value
def calculate_area(length, width):
    area = length * width
    return area

# Using functions
greet()
greet_person("Alice", 16)
room_area = calculate_area(10, 12)
print(f"Room area: {room_area} square meters")

Loop Examples:

# For loop with range
for i in range(5):
    print(f"Count: {i}")

# For loop with list
fruits = ["apple", "banana", "orange"]
for fruit in fruits:
    print(f"I like {fruit}")

# While loop
count = 0
while count < 3:
    print(f"While loop count: {count}")
    count += 1

Week 3: Using Python Libraries

Learning Objectives:

  • Understand what Python libraries are and why they’re useful
  • Learn to import and use common libraries
  • Work with GPIOZero and time libraries
  • Explore library documentation and help systems

Key Concepts:

  • Library/Module: Pre-written code that adds functionality
  • Import Statement: Bringing library functions into your program
  • GPIOZero: Library for controlling Raspberry Pi GPIO pins
  • Time Library: Functions for working with time and delays
  • Documentation: Instructions for using library functions
  • API: Application Programming Interface - how to use library functions

Library Usage Examples:

# Importing entire modules
import time
import math

# Importing specific functions
from gpiozero import LED, Button
from time import sleep

# Using time library
print("Starting program...")
time.sleep(2)  # Wait 2 seconds
print("2 seconds have passed!")

# Using math library
import math
radius = 5
area = math.pi * radius ** 2
print(f"Circle area: {area:.2f}")

# Using GPIOZero (for Raspberry Pi)
led = LED(18)  # LED connected to GPIO pin 18
button = Button(2)  # Button connected to GPIO pin 2

# Turn LED on and off
led.on()
sleep(1)
led.off()

Week 4: Controlling Motors with Python

Learning Objectives:

  • Understand how to interface with motors using Python
  • Learn about PWM (Pulse Width Modulation) for motor control
  • Control motor speed and direction
  • Implement safety features in motor control code

Key Concepts:

  • Motor Control: Using code to make motors move
  • PWM (Pulse Width Modulation): Method to control motor speed
  • Duty Cycle: Percentage of time signal is “on” vs “off”
  • Direction Control: Making motors spin clockwise/counterclockwise
  • Motor Driver: Electronics that interface between Python and motors
  • Safety Features: Code to prevent motor damage

Motor Control Examples:

from gpiozero import Motor, PWMOutputDevice
from time import sleep

# Create motor object (assuming H-bridge motor driver)
motor = Motor(forward=2, backward=3, enable=18)

# Basic motor control
def basic_motor_test():
    print("Motor forward at full speed")
    motor.forward(1.0)  # Full speed forward
    sleep(2)

    print("Motor forward at half speed")
    motor.forward(0.5)  # Half speed forward
    sleep(2)

    print("Motor stopped")
    motor.stop()
    sleep(1)

    print("Motor backward at full speed")
    motor.backward(1.0)  # Full speed backward
    sleep(2)

    motor.stop()
    print("Motor test complete")

# PWM speed control example
def speed_ramp_test():
    print("Ramping motor speed up...")
    for speed in range(0, 101, 10):  # 0 to 100% in 10% steps
        motor_speed = speed / 100.0
        motor.forward(motor_speed)
        print(f"Speed: {speed}%")
        sleep(0.5)

    motor.stop()
    print("Speed ramp complete")

# Run the tests
basic_motor_test()
sleep(2)
speed_ramp_test()

Week 5: Controlling Sensors with Python

Learning Objectives:

  • Interface with various sensors using Python
  • Read and process sensor data
  • Implement sensor-based decision making
  • Create responsive programs based on sensor input

Key Concepts:

  • Sensor: Device that detects and measures physical properties
  • Analog vs Digital: Different types of sensor signals
  • ADC (Analog-to-Digital Converter): Converts analog signals to digital
  • Sensor Calibration: Adjusting sensor readings for accuracy
  • Data Processing: Converting raw sensor data to useful information
  • Polling vs Interrupts: Different ways to read sensor data

Common Sensors:

  • Temperature sensors: Measure environmental temperature
  • Light sensors (LDR): Detect light intensity
  • Ultrasonic sensors: Measure distance using sound waves
  • Motion sensors (PIR): Detect movement
  • Pressure sensors: Measure force or pressure

Sensor Control Examples:

from gpiozero import MCP3008, DistanceSensor, MotionSensor, LED
from time import sleep
import statistics

# Temperature sensor (using analog input)
temp_sensor = MCP3008(channel=0)

def read_temperature():
    # Convert voltage to temperature (example conversion)
    voltage = temp_sensor.voltage
    temperature_c = (voltage - 0.5) * 100  # Example conversion formula
    temperature_f = (temperature_c * 9/5) + 32
    return temperature_c, temperature_f

# Distance sensor (ultrasonic)
distance_sensor = DistanceSensor(echo=24, trigger=23)

def monitor_distance():
    print("Distance monitoring (press Ctrl+C to stop)")
    try:
        while True:
            distance = distance_sensor.distance * 100  # Convert to cm
            print(f"Distance: {distance:.1f} cm")

            if distance < 10:
                print("WARNING: Object too close!")

            sleep(0.5)
    except KeyboardInterrupt:
        print("Distance monitoring stopped")

# Motion sensor with LED indicator
motion = MotionSensor(4)
alert_led = LED(18)

def motion_detector():
    print("Motion detector active...")

    def motion_detected():
        print("Motion detected!")
        alert_led.on()
        sleep(2)
        alert_led.off()

    def no_motion():
        print("No motion")
        alert_led.off()

    # Set up motion sensor callbacks
    motion.when_motion = motion_detected
    motion.when_no_motion = no_motion

    # Keep program running
    try:
        while True:
            sleep(0.1)
    except KeyboardInterrupt:
        print("Motion detector stopped")

# Data logging example
def log_sensor_data():
    readings = []
    print("Collecting sensor data for 30 seconds...")

    start_time = time.time()
    while time.time() - start_time < 30:
        temp_c, temp_f = read_temperature()
        distance = distance_sensor.distance * 100

        readings.append({
            'timestamp': time.time(),
            'temperature_c': temp_c,
            'temperature_f': temp_f,
            'distance_cm': distance
        })

        print(f"Temp: {temp_c:.1f}°C, Distance: {distance:.1f}cm")
        sleep(1)

    # Calculate statistics
    temps = [r['temperature_c'] for r in readings]
    distances = [r['distance_cm'] for r in readings]

    print(f"\nData Summary:")
    print(f"Average temperature: {statistics.mean(temps):.1f}°C")
    print(f"Min/Max temperature: {min(temps):.1f}°C / {max(temps):.1f}°C")
    print(f"Average distance: {statistics.mean(distances):.1f}cm")
    print(f"Min/Max distance: {min(distances):.1f}cm / {max(distances):.1f}cm")

# Example usage
if __name__ == "__main__":
    # Run different examples
    monitor_distance()  # Uncomment to run distance monitoring
    # motion_detector()  # Uncomment to run motion detection
    # log_sensor_data()  # Uncomment to run data logging

Assessment Test - Grade 10-12 (14-16 Years)

Week 1-2 Assessment: Python Fundamentals

Format: Coding Assignment + Written Questions (60 minutes)

Part A: Code Structure and Syntax (25 points)

  1. Fix the following code and explain what was wrong (10 points):
# Broken code:
def calculate average(num1, num2, num3)
average = num1 + num2 + num3 / 3
print("The average is" + average)
return average

calculate average(10, 20, 30)

Your corrected code:

# Write corrected version here

Explanation of errors: ________________________________

  1. Write a well-structured Python program (15 points): Create a program that:
  • Has proper header comments
  • Uses appropriate variable names
  • Calculates the area of different shapes (circle, rectangle, triangle)
  • Uses functions with parameters and return values
  • Follows proper indentation and formatting

Part B: Functions and Loops (30 points)

  1. Write a function called print_multiplication_table (15 points):
  • Takes one parameter: number
  • Prints multiplication table for that number (1-10)
  • Uses a for loop
  • Example output for print_multiplication_table(3):
3 x 1 = 3
3 x 2 = 6
3 x 3 = 9
... etc
  1. Password Checker Program (15 points): Write a program using while loop that:
  • Asks user to enter a password
  • Keeps asking until they enter “python123”
  • Counts number of attempts
  • Prints “Access granted” when correct
  • Prints number of attempts it took

Week 3-5 Assessment: Libraries and Hardware Control

Format: Practical Coding Project (75 minutes)

Part A: Library Usage (20 points)

  1. Complete this sensor reading program (20 points):
from gpiozero import MCP3008
from time import sleep
import ______  # What library do you need for calculating average?

# Create sensor object
light_sensor = MCP3008(channel=0)

def read_light_levels():
    readings = []

    # Collect 10 readings
    for i in range(______):  # Fill in the range
        reading = light_sensor.______  # What property gives the reading?
        readings.append(reading)
        print(f"Reading {i+1}: {reading:.3f}")
        sleep(0.5)

    # Calculate and print statistics
    average = ______.mean(readings)  # Which function calculates mean?
    maximum = ______(readings)  # Built-in function for maximum
    minimum = ______(readings)  # Built-in function for minimum

    print(f"Average: {average:.3f}")
    print(f"Maximum: {maximum:.3f}")
    print(f"Minimum: {minimum:.3f}")

# Call the function
read_light_levels()

Part B: Motor Control Project (25 points)

  1. Smart Fan Controller (25 points): Write a program that simulates a smart fan controller:
  • Use a temperature sensor to read room temperature
  • Control a motor (fan) based on temperature:
    • Below 20°C: Fan off
    • 20-25°C: Fan at 30% speed
    • 25-30°C: Fan at 60% speed
    • Above 30°C: Fan at 100% speed
  • Print current temperature and fan speed every 2 seconds
  • Include safety features (motor stop function)

Part C: Sensor Integration Challenge (30 points)

  1. Security System Prototype (30 points): Create a basic security system that:
  • Uses a motion sensor to detect movement
  • Uses a distance sensor to detect objects too close
  • Controls LEDs to indicate system status:
    • Green LED: System normal
    • Yellow LED: Motion detected
    • Red LED: Intrusion alert (object < 20cm)
  • Logs events with timestamps
  • Runs continuously until user presses Ctrl+C

Requirements:

  • Use at least 3 different libraries
  • Include proper error handling
  • Use functions to organize code
  • Add meaningful comments
  • Follow Python coding best practices

Sample code structure:

from gpiozero import MotionSensor, DistanceSensor, LED
from time import sleep
import time

# Hardware setup
motion = MotionSensor(4)
distance = DistanceSensor(echo=24, trigger=23)
green_led = LED(18)
yellow_led = LED(19)
red_led = LED(20)

def log_event(message):
    # Write function to log events with timestamp
    pass

def check_security():
    # Write function to check all sensors and control LEDs
    pass

def main():
    # Write main program loop
    pass

if __name__ == "__main__":
    main()

Assessment Rubric:

  • Exceptional (95-100%): Code runs flawlessly, excellent structure, creative additions, comprehensive error handling
  • Proficient (85-94%): Code works correctly, good structure, meets all requirements, minor improvements possible
  • Developing (75-84%): Code mostly works, basic structure present, meets most requirements, some bugs or missing features
  • Beginning (65-74%): Code has significant issues, poor structure, missing major requirements
  • Incomplete (Below 65%): Code doesn’t run or major portions missing

Additional Resources and Extensions

For All Grade Levels:

Vocabulary Glossary:

  • Algorithm: Step-by-step instructions to solve a problem
  • Bug: Error in code that prevents it from working correctly
  • Debug: Process of finding and fixing errors in code
  • Hardware: Physical components of computer systems
  • Software: Programs and applications that run on hardware
  • Interface: Way users interact with programs or devices
  • Sensor: Device that detects changes in environment
  • Actuator: Device that causes movement or action

Project Portfolio Suggestions:

  1. Weekly Reflection Journal: Students document learning and challenges
  2. Photo Documentation: Pictures of projects and experiments
  3. Video Demonstrations: Students explain their projects
  4. Peer Teaching: Advanced students help beginners
  5. Innovation Challenges: Open-ended problems to solve creatively

Cross-Curricular Connections:

  • Math: Geometry in robotics, statistics in data analysis
  • Science: Physics of flight, electronics principles
  • Art: Creative programming projects, design thinking
  • Social Studies: Impact of technology on society
  • Language Arts: Technical writing, documentation skills

Safety Reminders:

  • Always supervise young children with electronic components
  • Check battery connections before powering devices
  • Keep work area clean and organized
  • Wash hands after handling electronic components
  • Report any damaged equipment immediately
  • Follow proper shutdown procedures for all devices

Assessment Portfolio Checklist:

  • Completed weekly assessments
  • Project documentation with photos
  • Reflection essays on learning progress
  • Peer evaluation forms
  • Self-assessment rubrics
  • Evidence of problem-solving process
  • Creative extensions or improvements to basic projects

Continuation - Weeks 6-8 for All Grade Levels


Preschoolers (4-6 Years) - Weeks 6-8

Advanced STEM Exploration & Technology Awareness

Week 6: Technology Parts Awareness

Learning Objectives:

  • Use coding to tell stories, solve challenges, or navigate mazes
  • Recognize and follow simple algorithms using direction or action cards
  • Physically be able to follow code on floor grids
  • Build confidence and persistence through trial-and-error learning

Key Concepts:

  • Technology Components: Basic parts that make devices work
  • Circuits: Paths that electricity follows
  • Assembly/Disassembly: Taking apart and putting together
  • Electronics Safety: Safe handling of batteries and components
  • Problem-Solving: Trying different solutions when something doesn’t work

Activities:

  • Technology Exploration: Examine old keyboards, phones, calculators
  • Simple Circuits: Connect bulbs to batteries with safe materials
  • Assembly Practice: Take apart and reassemble simple toys
  • Tech Parts Sorting: Group similar technology components

Materials: Old keyboards, phones, calculators, batteries, bulbs for circuits, safe connectors

Week 7: Sequencing & Floor Grid Coding

Learning Objectives:

  • Develop understanding of sequencing by arranging steps in correct order
  • Recognize and follow simple algorithms using direction or action cards
  • Physically follow code on floor grids
  • Build confidence through trial-and-error learning

Key Concepts:

  • Sequencing: Putting steps in the right order
  • Algorithm Cards: Visual instructions to follow
  • Floor Grid Coding: Moving through spaces following directions
  • Left/Right/Forward/Back: Basic directional concepts
  • Trial and Error: Learning by trying and improving

Activities:

  • Obstacle Course Coding: Navigate through simple obstacles using arrow cards
  • Sequencing Games: Put daily routine cards in correct order
  • Paper Maze Coding: Use arrows to show path through printed mazes
  • Robot Friend: One child gives directions, another follows like a robot

Materials: Coding arrows/direction cards, floor grid mats, toys for navigation, printed maze worksheets

Week 8: Advanced Unplugged Coding & Storytelling

Learning Objectives:

  • Use coding to tell stories, solve challenges, or navigate mazes
  • Recognize and follow simple algorithms using direction or action cards
  • Physically follow code on floor grids
  • Build confidence and persistence through trial-and-error learning

Key Concepts:

  • Conditional Logic: IF/THEN thinking (“If you see red, then stop”)
  • Debugging: Finding and fixing mistakes in directions
  • Block Building: Using physical blocks to represent code
  • Story Algorithms: Step-by-step instructions for telling stories

Activities:

  • Debug the Path: Present incorrect direction sequences for children to fix
  • IF/THEN Games: “If you see a triangle, then clap your hands”
  • Story Coding: Use picture cards to create step-by-step stories
  • Block Code Building: Stack blocks to represent programming sequences

Materials: Building blocks, floor grid mats, toys, printed materials, picture cards for storytelling


Preschoolers Assessment - Weeks 6-8

Week 6 Assessment: Technology Awareness

Format: Hands-on Exploration + Observation (20 minutes)

  1. Technology Parts Recognition (10 points)
  • Point to and name 3 technology items from the collection
  • Show how a simple circuit works (bulb + battery)
  • Safely handle electronic components
  • Explain one thing each item helps us do
  1. Assembly Skills (10 points)
  • Take apart a simple toy or device
  • Put it back together correctly
  • Identify which parts go where
  • Ask for help when needed

Assessment Criteria:

  • Mastery (3): Handles all materials safely, explains purposes, completes tasks independently
  • Developing (2): Safe handling, completes most tasks with minimal help
  • Emerging (1): Needs guidance but participates actively
  • Beginning (0): Requires extensive support

Week 7-8 Assessment: Advanced Unplugged Coding

Format: Physical Coding Challenges (25 minutes)

  1. Sequencing Challenge (12 points)
  • Arrange 6 direction cards to navigate through obstacle course
  • Explain why each step comes in that order
  • Successfully complete the physical navigation
  • Fix mistakes when path doesn’t work
  1. IF/THEN Logic (8 points)
  • Follow conditional instructions: “IF you see blue, THEN hop”
  • Create own IF/THEN rule for a friend to follow
  • Demonstrate understanding with actions
  1. Story Algorithm (10 points)
  • Use 5 picture cards to create logical story sequence
  • Tell story following the card order
  • Explain what happens if cards are mixed up
  • Help fix a mixed-up story sequence

Practical Skills Rubric:

  • Advanced (25-30 points): Creates original sequences, helps others, shows deep understanding
  • Proficient (20-24 points): Completes all challenges correctly with minor guidance
  • Developing (15-19 points): Understands concepts but needs support for complex tasks
  • Beginning (Below 15 points): Requires significant help to participate

Grade 2-5 (7-11 Years) - Weeks 6-8

Advanced Scratch Programming & Game Development

Week 6: Game Structure and Design

Learning Objectives:

  • Understand basic game structure (start, play, end)
  • Use Scratch blocks to move characters and detect collisions
  • Make characters move between different scenes
  • Create scoring or win conditions

Key Concepts:

  • Game Design Elements: Characters, backgrounds, objectives, rules
  • Game Loop: Continuous cycle of input, processing, output
  • Collision Detection: Knowing when sprites touch each other
  • Scene Transitions: Moving between different game screens
  • Win/Lose Conditions: Rules that determine game outcomes
  • User Interface: Buttons, scores, and information displays

Advanced Scratch Concepts:

  • Sensing Blocks: “touching color”, “distance to”, “key pressed”
  • Variables: Storing score, lives, or time
  • Broadcast Messages: Communication between sprites
  • Clone Sprites: Creating multiple copies of objects
  • Custom Blocks: Making your own programming blocks

Game Development Process:

  1. Planning Phase: Sketch game idea, list needed sprites and backgrounds
  2. Prototype: Create basic movement and interaction
  3. Enhancement: Add sounds, effects, and polish
  4. Testing: Play game and fix bugs
  5. Sharing: Present to classmates

Example Game Structure:

When green flag clicked
Set score to 0
Set lives to 3
Say "Game Starting!" for 2 seconds
Show sprite
Forever:
    If key space pressed:
        Move player sprite
    If touching enemy:
        Change lives by -1
        If lives = 0:
            Say "Game Over!"
            Stop all

Week 7: Transition to Text-Based Concepts

Learning Objectives:

  • Prepare learners for text-based coding
  • Understand basic programming concepts using blocks
  • Use logic and loops to control sprite or robot actions
  • Begin transition to robotics or advanced coding platforms

Key Concepts:

  • Programming Fundamentals: Sequence, selection, iteration
  • Logic Blocks: IF/ELSE statements in visual form
  • Loop Types: Forever, repeat until, repeat X times
  • Variables and Operations: Math in programming
  • Event-Driven Programming: Responding to user input
  • Modular Programming: Breaking code into smaller parts

Bridging Visual to Text:

  • Block-to-Code Thinking: Understanding what blocks represent
  • Pseudocode: Writing steps in plain English before coding
  • Debugging Strategies: Systematic problem-solving approaches
  • Code Organization: Keeping projects neat and logical

Advanced Programming Patterns:

// Pattern 1: State Machine
When green flag clicked
Set game state to "menu"
Forever:
    If game state = "menu":
        Show menu options
    If game state = "playing":
        Run game logic
    If game state = "game over":
        Show final score

// Pattern 2: Object Behavior
When I start as a clone:
    Go to random position
    Forever:
        Move 2 steps
        If on edge, bounce
        If touching player:
            Change score by 10
            Delete this clone

Week 8: Blockly Integration and Logic Puzzles

Learning Objectives:

  • Solve logic puzzles using visual programming concepts
  • Create games using Blockly platform
  • Demonstrate understanding of programming fundamentals
  • Apply creative problem-solving skills

Key Concepts:

  • Blockly Platform: Google’s visual programming language
  • Logic Puzzles: Problems requiring systematic thinking
  • Algorithm Efficiency: Finding the best solution method
  • Pattern Recognition: Identifying repeated solutions
  • Creative Programming: Using code for artistic expression

Blockly vs. Scratch Comparison:

FeatureScratchBlockly
FocusStorytelling & GamesLogic & Algorithms
InterfaceStage-basedPuzzle-based
OutputAnimated ProjectsProblem Solutions
ProgressionCreative ExpressionMathematical Thinking

Logic Puzzle Types:

  1. Maze Solving: Navigate through obstacles
  2. Pattern Completion: Fill in missing sequences
  3. Conditional Logic: IF/THEN decision making
  4. Loop Optimization: Repeat actions efficiently

Grade 2-5 Assessment - Weeks 6-8

Week 6 Assessment: Game Development Project

Format: Scratch Game Creation + Presentation (45 minutes)

Part A: Game Planning (10 points)

  1. Game Design Document - Create a simple plan including:
  • Game objective (what’s the goal?)
  • Main character description
  • Basic rules (how do you win/lose?)
  • Required sprites and backgrounds
  1. Storyboard - Draw 3 screens showing:
  • Game start screen
  • Main gameplay
  • Win/lose screen

Part B: Game Implementation (25 points) 3. Core Functionality (15 points):

  • Character moves with arrow keys or WASD

  • At least one interactive element (enemy, collectible, obstacle)

  • Basic collision detection (touching = something happens)

  • Clear win or lose condition

  1. Polish and Enhancement (10 points):
  • Sound effects or music
  • Visual feedback (score, lives, timer)
  • Smooth sprite movement
  • Creative backgrounds or costumes

Part C: Presentation and Reflection (15 points) 5. Game Demo (10 points):

  • Explain game rules clearly

  • Demonstrate gameplay for 2 minutes

  • Show different game scenarios

  • Handle questions from classmates

  1. Technical Reflection (5 points):
  • Explain one challenging problem you solved
  • Describe one improvement you would make
  • Share one new Scratch skill you learned

Week 7-8 Assessment: Programming Concepts Mastery

Format: Mixed Assessment - Blockly Challenges + Scratch Review (50 minutes)

Part A: Blockly Logic Challenges (20 points)

  1. Maze Navigation (8 points):
  • Complete 3 increasingly difficult maze puzzles
  • Use efficient solutions (minimal blocks)
  • Demonstrate understanding of loops and conditionals
  1. Pattern Recognition (6 points):
  • Solve sequence completion puzzles
  • Identify and extend number/color patterns
  • Create original pattern for others to solve
  1. Logic Puzzles (6 points):
  • Complete IF/THEN decision trees
  • Solve multi-step conditional problems
  • Optimize solutions for clarity

Part B: Concept Transfer (15 points) 4. Visual to Text Translation (10 points): Given this Scratch code block arrangement:

[When flag clicked] → [Forever] → [If touching mouse] → [Move 10 steps]

Write in pseudocode (plain English): “When the program starts, ________________”

  1. Problem Decomposition (5 points): Break down this challenge into steps: “Create a sprite that follows the mouse but stops when it touches the edge”

Step 1: _______________ Step 2: _______________ Step 3: _______________ Step 4: _______________

Part C: Creative Application (15 points) 6. Original Algorithm (15 points): Choose ONE to complete:

Option A - Scratch: Create a “digital pet” that:

  • Follows mouse cursor
  • Changes expression when clicked
  • Makes sound when hungry (timer-based)
  • Has at least 3 different costumes

Option B - Blockly: Design a solution for:

  • Robot that sorts colored objects
  • Path that avoids all obstacles
  • Pattern that creates art using loops

Assessment Rubric:

  • Expert (90-100%): Exceeds requirements with creative solutions and clear explanations
  • Proficient (80-89%): Meets all requirements with good understanding demonstrated
  • Developing (70-79%): Meets most requirements but may have gaps in complex concepts
  • Novice (60-69%): Shows basic understanding but struggles with application
  • Beginning (Below 60%): Needs significant support to demonstrate concepts

Grade 6-9 (11-14 Years) - Weeks 6-8

Drone Laws, Emergency Procedures & Practical Flying

Week 6: Drone Laws and Regulations (Kenya Focus)

Learning Objectives:

  • Learn basic drone laws in Kenya (KCAA regulations)
  • Understand where and how children can fly drones legally
  • Develop awareness of responsible drone operation
  • Understand the importance of aviation safety

Key Concepts:

  • Kenya Civil Aviation Authority (KCAA): National aviation regulator
  • Drone Registration: Required identification and documentation
  • No-Fly Zones: Airports, government buildings, restricted areas
  • Altitude Restrictions: Maximum height limitations
  • Visual Line of Sight (VLOS): Maintaining visual contact
  • Privacy Laws: Respecting others’ rights and property

Kenya Drone Regulations Summary:

  1. Registration Requirements:
  • All drones over 250g must be registered with KCAA
  • Operator license required for commercial operations
  • Age restrictions for different categories of operation
  1. Operational Limits:
  • Maximum altitude: 400 feet (120 meters) AGL
  • Minimum distance from airports: 8km for major airports
  • No flying over crowds or public events
  • Daylight operations only (without special permits)
  1. Prohibited Areas:
  • Within 5km of any airport
  • Over government buildings and installations
  • National parks without permits
  • Private property without permission

Safety and Legal Guidelines for Young Pilots:

  • Always have adult supervision
  • Start with toy drones under 250g
  • Practice in open, safe areas
  • Respect others’ privacy and property
  • Learn emergency procedures
  • Keep drone in sight at all times

Week 7: Emergency Procedures and Responsible Flying

Learning Objectives:

  • Review key safety and legal concepts from previous weeks
  • Understand emergency basics for beginner flyers
  • Develop decision-making skills for unexpected situations
  • Practice responsible pilot behavior

Key Concepts:

  • Emergency Procedures: Systematic responses to problems
  • Risk Assessment: Evaluating dangers before flying
  • Decision Making: Choosing appropriate actions under pressure
  • Communication: Alerting others during emergencies
  • Equipment Failure: What to do when drone malfunctions
  • Weather Awareness: Recognizing dangerous conditions

Emergency Scenarios and Responses:

  1. Lost Communication with Drone:
  • Stay calm and observe drone behavior
  • Activate Return-to-Home (RTH) function if available
  • Move to higher ground for better signal
  • Prepare for manual landing if signal returns
  • Never chase after a flyaway drone
  1. Low Battery Warning:
  • Immediately begin landing sequence
  • Choose nearest safe landing spot
  • Avoid flying over people or property
  • Land even if not at original takeoff point
  • Safety is more important than convenience
  1. Unexpected Weather Changes:
  • Monitor weather conditions constantly
  • Land immediately if wind increases
  • Avoid flying in rain or snow
  • Watch for sudden temperature changes
  • When in doubt, don’t fly
  1. Equipment Malfunction:
  • Attempt controlled landing immediately
  • Don’t try to fix problems while airborne
  • Inform other people in the area
  • Document the problem for later analysis
  • Never continue flying with known issues

Mission Planning Process:

  1. Pre-flight Planning: Weather check, equipment inspection, route planning
  2. Risk Assessment: Identify potential hazards and mitigation strategies
  3. Communication Plan: Inform others of flight activities
  4. Emergency Procedures: Know what to do if things go wrong
  5. Post-flight Review: Analyze what went well and areas for improvement

Week 8: Practical Flying Skills and Team Challenges

Learning Objectives:

  • Demonstrate ability to control a mini drone (takeoff, hover, land)
  • Apply basic flight skills in problem-solving mission scenarios
  • Work as a team to complete drone-based challenges
  • Evaluate personal progress and set goals for improvement

Key Concepts:

  • Flight Control Mastery: Smooth, precise drone movements
  • Situational Awareness: Understanding surroundings during flight
  • Mission Planning: Preparing for specific flight objectives
  • Teamwork: Collaborative problem-solving with drones
  • Performance Evaluation: Self-assessment and peer feedback
  • Safety Leadership: Taking responsibility for safe operations

Basic Flight Skills Progression:

  1. Fundamental Controls:
  • Smooth takeoff to hover
  • Maintaining steady hover
  • Controlled landing
  • Forward/backward movement
  • Left/right movement
  • Rotation control
  1. Intermediate Maneuvers:
  • Figure-8 patterns
  • Precision landing on target
  • Obstacle avoidance
  • Following predetermined paths
  • Coordinated movements
  1. Advanced Challenges:
  • Team relay races
  • Rescue simulations
  • Precision delivery tasks
  • Group choreography
  • Time-based challenges

Mission Scenarios:

Mission 1: Search and Rescue

  • Objective: Locate “missing person” (target) in designated area
  • Skills: Systematic search patterns, communication, observation
  • Time limit: 5 minutes
  • Success criteria: Target identified and location communicated

Mission 2: Delivery Challenge

  • Objective: Transport small payload from Point A to Point B
  • Skills: Precision flying, cargo management, safe landing
  • Obstacles: Wind conditions, landing accuracy requirements
  • Success criteria: Payload delivered undamaged within time limit

Mission 3: Team Coordination

  • Objective: Multiple drones work together to complete complex task
  • Skills: Communication, timing, spatial awareness
  • Challenge: Choreographed flight pattern or group problem-solving
  • Success criteria: All drones complete task without collisions

Safety Protocols for Practical Flying:

  • Always maintain 10-foot safety zone around flying area
  • Designate specific roles: pilot, observer, safety officer
  • Use hand signals for communication during loud operations
  • Practice emergency landing procedures before each session
  • Rotate roles so everyone experiences different responsibilities

Grade 6-9 Assessment - Weeks 6-8

Week 6 Assessment: Drone Laws and Regulations

Format: Written Test + Legal Scenario Analysis (40 minutes)

Part A: Kenya Aviation Law Knowledge (25 points)

  1. KCAA Regulations (10 points) Fill in the blanks:
  • Drones over ______ grams must be registered with KCAA
  • Maximum altitude for recreational flying is ______ feet
  • Minimum distance from major airports is ______ kilometers
  • Commercial drone operations require a ______ license
  • Drones must remain within ______ line of sight
  1. No-Fly Zone Identification (10 points) Mark TRUE or FALSE for each flying location:
  • Your school playground during lunch break: ______
  • Open field 2km from Wilson Airport: ______
  • Your backyard with adult supervision: ______
  • Uhuru Park during a public event: ______
  • Private farm with owner’s permission: ______
  1. Legal Compliance (5 points) List 3 requirements for legally flying a drone in Kenya:



Part B: Scenario-Based Decision Making (20 points)

  1. Legal Scenarios (20 points) For each scenario, explain if the action is legal and why:

Scenario A: Sarah wants to fly her 300g drone over her neighbor’s house to take photos of her own backyard. Legal? _____ Why? _______________________________

Scenario B: James plans to fly his registered drone at 200 feet altitude in an open field 10km from any airport during daylight hours. Legal? _____ Why? _______________________________

Scenario C: A group of students want to use their drone for a school project, filming the school building from 100 feet up. Legal? _____ Why? _______________________________

Scenario D: Ahmed wants to fly his 150g toy drone in his compound for 10 minutes. Legal? _____ Why? _______________________________

Part C: Responsible Pilot Planning (15 points)

  1. Pre-flight Checklist (15 points) Create a 10-item pre-flight checklist that includes legal, safety, and equipment considerations:




[Continue through 10]

Week 7-8 Assessment: Emergency Procedures and Practical Skills

Format: Practical Flight Test + Emergency Response Simulation (60 minutes)

Part A: Emergency Response Knowledge (20 points)

  1. Emergency Procedures (15 points) Describe the correct response for each emergency:

Low Battery Warning: Step 1: _______________________________ Step 2: _______________________________ Step 3: _______________________________

Lost Radio Contact: Step 1: _______________________________ Step 2: _______________________________ Step 3: _______________________________

Sudden Weather Change: Step 1: _______________________________ Step 2: _______________________________ Step 3: _______________________________

  1. Risk Assessment (5 points) Identify 3 risks for flying in each environment:
  • School playground: ____________, ____________, ____________
  • Open field: ____________, ____________, ____________

Part B: Practical Flight Skills Assessment (30 points)

  1. Basic Flight Controls (15 points) Demonstrate competency in:
  • Smooth takeoff and landing (3 points)
  • Stable hovering for 30 seconds (3 points)
  • Forward/backward precision movement (3 points)
  • Left/right precision movement (3 points)
  • Controlled rotation (3 points)
  1. Mission Challenge (15 points) Complete ONE of the following missions:

Option A - Navigation Course:

  • Fly through 5 waypoints in sequence
  • Land within 1-meter target circle
  • Complete within 3 minutes

Option B - Team Coordination:

  • Work with partner to complete relay challenge
  • Communicate effectively during handoff
  • Maintain safety throughout mission

Part C: Leadership and Safety Evaluation (15 points)

  1. Safety Leadership (8 points) While others are flying, demonstrate:
  • Proper safety zone maintenance
  • Clear communication with pilot
  • Appropriate responses to unsafe situations
  • Helpful coaching and encouragement
  1. Self-Assessment and Goal Setting (7 points) Written reflection:
  • What flight skill are you most confident with? Why?
  • What area needs the most improvement?
  • Set one specific goal for future drone flying
  • Describe one way you can help others fly safely

Practical Skills Rubric:

  • Expert Pilot (90-100%): Demonstrates advanced skills, teaches others, shows exceptional safety awareness
  • Competent Pilot (80-89%): Performs all basic skills reliably, follows safety protocols consistently
  • Developing Pilot (70-79%): Shows improvement in most areas, occasional guidance needed
  • Novice Pilot (60-69%): Basic skills present but inconsistent, needs continued practice
  • Beginning Pilot (Below 60%): Requires significant instruction and supervision

Grade 10-12 (14-16 Years) - Weeks 6-8

Advanced Python Projects & Integration

Week 6-7: Integrated Systems Project (Combined Weeks)

Learning Objectives:

  • Combine motors and sensors in complex systems
  • Debug integrated hardware/software systems
  • Apply creative problem-solving to real-world challenges
  • Document projects professionally

Key Concepts:

  • Systems Integration: Combining multiple components into unified solutions
  • Hardware-Software Interface: Code that bridges digital and physical worlds
  • System Architecture: Planning complex projects with multiple subsystems
  • Error Handling: Managing failures gracefully in complex systems
  • Performance Optimization: Making systems run efficiently
  • Documentation Standards: Professional project recording

Advanced Integration Concepts:

1. Multi-Sensor Fusion

import threading
import queue
from gpiozero import DistanceSensor, MotionSensor, MCP3008
from time import sleep
import json

class SensorFusion:
    def __init__(self):
        self.distance_sensor = DistanceSensor(echo=24, trigger=23)
        self.motion_sensor = MotionSensor(4)
        self.light_sensor = MCP3008(channel=0)
        self.temp_sensor = MCP3008(channel=1)

        # Data queues for thread communication
        self.sensor_data = queue.Queue()
        self.running = False

    def read_sensors(self):
        """Continuous sensor reading in separate thread"""
        while self.running:
            try:
                data = {
                    'timestamp': time.time(),
                    'distance': self.distance_sensor.distance * 100,
                    'motion': self.motion_sensor.motion_detected,
                    'light_level': self.light_sensor.voltage,
                    'temperature': self.convert_temp(self.temp_sensor.voltage)
                }
                self.sensor_data.put(data)
                sleep(0.1)  # 10Hz sampling rate
            except Exception as e:
                print(f"Sensor reading error: {e}")

    def convert_temp(self, voltage):
        """Convert sensor voltage to temperature"""
        return (voltage - 0.5) * 100  # Example conversion

    def start_monitoring(self):
        """Start sensor monitoring thread"""
        self.running = True
        self.sensor_thread = threading.Thread(target=self.read_sensors)
        self.sensor_thread.start()

    def stop_monitoring(self):
        """Stop sensor monitoring"""
        self.running = False
        if hasattr(self, 'sensor_thread'):
            self.sensor_thread.join()

2. Intelligent Control Systems

class SmartEnvironmentController:
    def __init__(self):
        self.sensors = SensorFusion()
        self.fan_motor = Motor(forward=2, backward=3)
        self.heater_relay = OutputDevice(18)
        self.lights = PWMOutputDevice(19)

        # Control parameters
        self.target_temp = 22.0  # Target temperature in Celsius
        self.temp_tolerance = 1.0
        self.light_threshold = 0.3

        # Control state
        self.auto_mode = True
        self.manual_override = False

    def analyze_environment(self, sensor_data):
        """Intelligent decision making based on sensor data"""
        decisions = {
            'fan_speed': 0.0,
            'heater_on': False,
            'light_level': 0.0,
            'alert_status': 'normal'
        }

        # Temperature control logic
        temp_diff = sensor_data['temperature'] - self.target_temp

        if temp_diff > self.temp_tolerance:  # Too hot
            decisions['fan_speed'] = min(1.0, temp_diff / 5.0)  # Scale fan speed
            decisions['heater_on'] = False
        elif temp_diff < -self.temp_tolerance:  # Too cold
            decisions['fan_speed'] = 0.0
            decisions['heater_on'] = True

        # Light control logic
        if sensor_data['light_level'] < self.light_threshold:
            decisions['light_level'] = 1.0 - sensor_data['light_level']  # Complement lighting

        # Security monitoring
        if sensor_data['motion'] and sensor_data['distance'] < 20:  # Close motion
            decisions['alert_status'] = 'intrusion_detected'
        elif sensor_data['distance'] < 5:  # Very close object
            decisions['alert_status'] = 'obstacle_warning'

        return decisions

    def execute_controls(self, decisions):
        """Execute control decisions"""
        if not self.manual_override:
            # Motor control
            if decisions['fan_speed'] > 0:
                self.fan_motor.forward(decisions['fan_speed'])
            else:
                self.fan_motor.stop()

            # Heater control
            if decisions['heater_on']:
                self.heater_relay.on()
            else:
                self.heater_relay.off()

            # Light control
            self.lights.value = decisions['light_level']

    def run_control_loop(self):
        """Main control loop"""
        self.sensors.start_monitoring()

        try:
            while True:
                if not self.sensors.sensor_data.empty():
                    current_data = self.sensors.sensor_data.get()
                    decisions = self.analyze_environment(current_data)
                    self.execute_controls(decisions)

                    # Log system status
                    self.log_system_status(current_data, decisions)

                sleep(0.5)  # Control loop frequency

        except KeyboardInterrupt:
            print("Shutting down control system...")
        finally:
            self.sensors.stop_monitoring()
            self.fan_motor.stop()
            self.heater_relay.off()
            self.lights.off()

    def log_system_status(self, sensor_data, decisions):
        """Log system performance data"""
        log_entry = {
            'timestamp': sensor_data['timestamp'],
            'sensors': sensor_data,
            'controls': decisions,
            'mode': 'auto' if self.auto_mode else 'manual'
        }

        # In a real system, this would write to a file or database
        print(f"System Status: Temp={sensor_data['temperature']:.1f}°C, "
              f"Fan={decisions['fan_speed']:.1f}, "
              f"Alert={decisions['alert_status']}")

3. Project Documentation Standards

"""
Smart Environment Control System
================================

Project: IoT Environmental Controller
Author: Student Name
Date: Current Date
Version: 1.0

Description:
    An intelligent system that monitors environmental conditions and automatically
    adjusts heating, cooling, and lighting based on sensor feedback.

Hardware Requirements:
    - Raspberry Pi 4 or similar
    - Temperature sensor (DS18B20 or similar)
    - Light sensor (LDR with MCP3008 ADC)
    - Motion sensor (PIR)
    - Distance sensor (HC-SR04)
    - DC Motor (for fan simulation)
    - Relay module (for heater control)
    - PWM-controlled LED (for lighting)

Software Dependencies:
    - Python 3.7+
    - gpiozero library
    - threading module (standard library)
    - queue module (standard library)
    - json module (standard library)

Installation:
    pip install gpiozero

Usage:
    python smart_environment.py

Configuration:
    Modify target_temp and light_threshold variables in SmartEnvironmentController
    class to adjust system behavior.

Testing:
    Run included test functions to verify sensor readings and control outputs
    before deploying the full system.

Known Issues:
    - Temperature sensor calibration may need adjustment for local conditions
    - Motion sensor has 2-second reset time that affects rapid detection

Future Enhancements:
    - Web interface for remote monitoring
    - Data logging to CSV files
    - Machine learning for predictive control
    - Mobile app integration
"""

Project Examples for Students:

Project 1: Smart Garden Monitor

  • Monitors soil moisture, light, and temperature
  • Controls watering pump and grow lights
  • Logs plant growth data
  • Sends alerts when intervention needed

Project 2: Home Security System

  • Multiple sensor integration (motion, door, window)
  • Camera trigger on detection
  • SMS/email notifications
  • Mobile app control interface

Project 3: Weather Station

  • Measures temperature, humidity, pressure, wind
  • Data logging with timestamps
  • Weather prediction algorithms
  • Web dashboard for data visualization

Project 4: Automated Greenhouse

  • Climate control (temperature, humidity)
  • Automated watering system
  • Light cycle management
  • Growth optimization algorithms

Week 8: Project Presentations and Assessment

Learning Objectives:

  • Present technical projects professionally
  • Give and receive constructive feedback
  • Self-evaluate learning progress and achievements
  • Plan next steps for continued learning

Key Concepts:

  • Technical Communication: Explaining complex systems clearly
  • Presentation Skills: Engaging audiences with technical content
  • Peer Review: Constructive feedback and collaboration
  • Self-Assessment: Honest evaluation of own work
  • Professional Development: Planning continued learning paths
  • Portfolio Building: Documenting achievements for future opportunities

Presentation Structure:

  1. Project Overview (2 minutes)
  • Problem statement and objectives
  • Target audience and use cases
  • Key features and functionality
  1. Technical Demonstration (2 minutes)
  • Live system operation
  • Key components and how they work
  • Code walkthrough of critical sections
  1. Challenges and Solutions (1 minute)
  • Major obstacles encountered
  • Creative solutions implemented
  • Lessons learned from failures

Evaluation Criteria:

Technical Merit (40%):

  • System functionality and reliability
  • Code quality and organization
  • Creative problem-solving approach
  • Integration of multiple technologies

Communication (30%):

  • Clear explanation of technical concepts
  • Engaging presentation delivery
  • Appropriate use of visual aids
  • Effective response to questions

Documentation (20%):

  • Complete project documentation
  • Code comments and structure
  • User instructions and setup guides
  • Reflection on learning process

Collaboration (10%):

  • Constructive feedback to peers
  • Professional interaction during Q&A
  • Willingness to share knowledge
  • Respectful critique and discussion

Python Programming Trivia Challenge: End the term with fun technical questions:

  1. What does “PEP 8” refer to in Python?
  2. What’s the difference between == and is in Python?
  3. How do you handle exceptions in Python?
  4. What is a Python decorator?
  5. What’s the difference between a list and a tuple?

Grade 10-12 Final Assessment - Weeks 6-8

Integrated Systems Project Assessment

Format: Major Project + Technical Presentation + Peer Review (2 weeks + presentation day)

Project Requirements: Students must create an integrated system that combines:

  • At least 3 different sensors
  • At least 2 actuators (motors, lights, relays, etc.)
  • Data logging and analysis
  • User interface (command line or simple GUI)
  • Error handling and safety features

Part A: Technical Implementation (40 points)

System Design (10 points)

  • Clear problem definition and solution approach
  • System architecture diagram showing component relationships
  • Hardware schematic or connection diagram
  • Software flowchart or algorithm description

Code Quality (15 points)

  • Well-structured, modular code with functions/classes
  • Appropriate variable names and code organization
  • Comprehensive comments explaining complex sections
  • Error handling for hardware failures
  • Efficient algorithms and resource usage

Hardware Integration (15 points)

  • Stable sensor readings with appropriate filtering
  • Reliable actuator control with safety limits
  • Proper electrical connections and component usage
  • System operates reliably for extended periods
  • Professional cable management and mounting

Part B: Documentation and Communication (25 points)

Project Documentation (15 points) Create a complete project report including:

  • Executive summary of project goals and achievements
  • Detailed technical specifications and requirements
  • Installation and setup instructions
  • User manual with clear operating procedures
  • Troubleshooting guide for common problems
  • Code documentation with API reference

Technical Presentation (10 points)

  • Clear 5-minute presentation explaining project
  • Live demonstration of working system
  • Professional slides with technical diagrams
  • Confident handling of technical questions
  • Appropriate use of technical vocabulary

Part C: Innovation and Problem Solving (20 points)

Creative Solutions (10 points)

  • Original approach to solving chosen problem
  • Creative use of available hardware and software
  • Evidence of iterative design and improvement
  • Solutions show depth of understanding beyond basic requirements

Advanced Features (10 points) Choose and implement at least TWO:

  • Machine learning or AI decision making
  • Network communication (IoT connectivity)
  • Mobile app or web interface
  • Data visualization and analytics
  • Predictive algorithms or optimization
  • Integration with external APIs or services

Part D: Professional Skills (15 points)

Peer Collaboration (8 points)

  • Constructive feedback provided to classmates
  • Professional behavior during presentations
  • Willingness to help others debug problems
  • Respectful and insightful questions during Q&A

Self-Assessment (7 points) Written reflection addressing:

  • Most significant technical challenge and how you overcame it
  • What you would do differently if starting over
  • How this project connects to potential career interests
  • Specific skills you want to develop further
  • Your confidence level with different aspects of the project

Sample Project Evaluation Rubric:

Exceptional (90-100%)

  • System exceeds all requirements with innovative features
  • Code is publication-quality with comprehensive documentation
  • Presentation is engaging and demonstrates deep understanding
  • Shows leadership in helping others and contributing to class learning
  • Self-reflection shows sophisticated understanding of learning process

Proficient (80-89%)

  • System meets all requirements reliably
  • Code is well-structured with good documentation
  • Presentation is clear and technically accurate
  • Actively participates in peer learning and feedback
  • Self-reflection shows good awareness of strengths and growth areas

Developing (70-79%)

  • System meets most requirements with minor issues
  • Code works but may have organizational or documentation gaps
  • Presentation covers required topics but may lack depth
  • Participates adequately in class activities
  • Self-reflection shows basic understanding of learning process

Beginning (60-69%)

  • System meets basic requirements but has significant limitations
  • Code works for demonstration but has structural or reliability issues
  • Presentation covers basics but shows limited understanding
  • Minimal participation in peer activities
  • Self-reflection is superficial or lacks insight

Incomplete (Below 60%)

  • System fails to meet basic requirements or doesn’t function reliably
  • Code has major issues that prevent proper operation
  • Presentation is unclear or shows misunderstanding of concepts
  • Little to no participation in collaborative learning
  • Self-reflection missing or shows no evidence of learning

Term 1 Final Portfolio Assessment - All Grade Levels

Portfolio Components Checklist

For All Students:

  • Weekly reflection journals documenting learning progress
  • Photo documentation of all projects and experiments
  • Completed weekly assessments with corrections
  • Evidence of peer collaboration and teaching
  • Self-assessment of growth in each major topic area

Grade-Specific Additions:

Preschoolers (4-6 years):

  • Drawings of favorite STEM activities
  • Parent/teacher observation notes on engagement and skills
  • Examples of unplugged coding sequences created
  • Photos of technology exploration activities

Grade 2-5 (7-11 years):

  • Screenshots of completed Scratch projects
  • Blockly puzzle solutions and explanations
  • Game design documents and storyboards
  • Video explanations of programming concepts

Grade 6-9 (11-14 years):

  • Drone safety checklist created and used
  • Mission planning worksheets with risk assessments
  • Photos/videos of practical flying sessions
  • Research report on drone applications in chosen field

Grade 10-12 (14-16 years):

  • Complete code repositories with documentation
  • Hardware connection diagrams and schematics
  • Data analysis reports from sensor projects
  • Technical presentation slides and demonstration videos

Cross-Grade Learning Objectives Mastery

By the end of Term 1, students should demonstrate:

Preschoolers:

  • Basic understanding of STEM concepts through play
  • Ability to follow simple sequences and patterns
  • Safe interaction with age-appropriate technology
  • Curiosity and engagement with hands-on exploration

Grade 2-5:

  • Fundamental programming concepts using visual languages
  • Ability to create simple games and interactive stories
  • Understanding of sequence, loops, and basic logic
  • Confidence in debugging and problem-solving

Grade 6-9:

  • Comprehensive understanding of drone safety and regulations
  • Practical flying skills with safety awareness
  • Knowledge of aviation principles and laws
  • Teamwork and communication skills in technical contexts

Grade 10-12:

  • Proficiency in Python programming for hardware control
  • Ability to integrate multiple sensors and actuators
  • Professional documentation and presentation skills
  • Independent problem-solving and creative innovation

Preparation for Term 2

Preschoolers → Scratch Junior Programming:

  • Continue building sequencing skills
  • Introduction to tablet-based programming
  • Creative storytelling with technology

Grade 2-5 → IoT Integration with Sensors:

  • Bridge from visual programming to physical computing
  • Introduction to sensors and real-world data
  • Beginning electronics and circuit concepts

Grade 6-9 → Smart Home Security:

  • Apply drone safety concepts to IoT systems
  • Introduction to sensors and automation
  • Home automation and security principles

Grade 10-12 → Smart Cities:

  • Scale up from individual projects to community solutions
  • Advanced IoT networking and data analysis
  • Social impact of technology solutions

Additional Resources and Extensions

Online Learning Platforms:

  • Preschoolers: PBS Kids programming games, Kodable app
  • Grade 2-5: Scratch Jr., Code.org courses, Blockly games
  • Grade 6-9: DroneBlocks, FAA educational materials, aviation simulation games
  • Grade 10-12: Python.org tutorials, Raspberry Pi Foundation projects, GitHub learning labs

STEM Career Connections:

  • Robotics Engineer: Designs and builds robots for various applications
  • Software Developer: Creates programs and applications for computers and devices
  • Drone Pilot: Professional UAV operations for photography, surveying, delivery
  • IoT Developer: Connects everyday objects to the internet for smart automation
  • Data Scientist: Analyzes sensor data to find patterns and make predictions

Community Extension Activities:

  • Science Fair Projects: Using skills learned to create original investigations
  • STEM Club Leadership: Teaching younger students basic concepts
  • Community Problem Solving: Identifying local problems that technology could help solve
  • Maker Space Participation: Continuing projects in community workshop environments

Assessment Data Tracking: Teachers should maintain records of:

  • Individual student progress through learning objectives
  • Common areas of difficulty requiring additional support
  • Exceptional student work that could be showcased
  • Parent/guardian feedback on home engagement with STEM concepts
  • Equipment and resource needs for optimal program delivery

This completes the comprehensive Term 1 curriculum with detailed notes, assessments, and support materials for all grade levels in the IoT & Robotics program. Each grade level has age-appropriate challenges that build foundational skills while maintaining engagement and fostering creativity in STEM learning.


Notes

I’ve created a comprehensive set of notes and assessment tests for Term 1 across all grade levels (Preschoolers through Grade 10-12). The document includes:

What’s Included:

For Each Grade Level:

  • Detailed weekly lesson notes covering weeks 1-8 content
  • Key concepts and learning objectives for each topic
  • Practical examples and code samples (for programming grades)
  • Age-appropriate assessment tests with multiple formats

Assessment Formats:

  • Preschoolers (4-6): Practical/observational assessments with hands-on activities
  • Grade 2-5 (7-11): Computer-based Scratch/Blockly challenges
  • Grade 6-9 (11-14): Written tests + practical drone safety demonstrations
  • Grade 10-12 (14-16): Coding assignments + hardware integration projects

Key Features:

  • Covers all 8 weeks of Term 1 content
  • Aligned with curriculum from the IoT & Robotics document
  • Progressive difficulty appropriate for each age group
  • Practical assessments that test real understanding
  • Detailed rubrics for fair evaluation
  • Extension activities for advanced learners
  • Safety guidelines and best practices

Topics Covered:

  • Preschoolers: STEM basics, simple machines, unplugged coding
  • Grade 2-5: Scratch programming, Blockly games, interface navigation
  • Grade 6-9: Drone basics, aviation principles, safety regulations
  • Grade 10-12: Python programming, hardware control, sensor integration

Each assessment is designed to be practical and engaging, testing both theoretical knowledge and hands-on application skills. The rubrics provide clear criteria for evaluation at different skill levels.


Perfect! I’ve now completed the comprehensive Term 1 notes and assessment materials covering all 8 weeks for all grade levels. Here’s what’s now included:

Assessment Test

Assessment Test

Assessment Test

Assessment Test

Assessment Test

Assessment Test

Assessment Test

IoT & Robotics Term 1 - Complete Notes & Assessment Tests

Table of Contents

  1. Preschoolers (4-6 Years) - STEM Storytelling & Coding Toys
  2. Grade 2-5 (7-11 Years) - Scratch & Blockly Programming
  3. Grade 6-9 (11-14 Years) - Drone Aviation Introduction
  4. Grade 10-12 (14-16 Years) - Python Basics

Preschoolers (4-6 Years)

Term 1: STEM Storytelling & Coding Toys

Week 1: Introduction to STEM

Learning Objectives:

  • Understand basic concepts of STEM (Science, Technology, Engineering, Math)
  • Spark excitement and curiosity about STEM through hands-on activities
  • Foster teamwork through group experiments
  • Develop early thinking through guided play and experimentation

Key Concepts:

  • Science: Learning about the world around us through observation
  • Technology: Simple tools and devices that help us
  • Engineering: Building and creating solutions
  • Mathematics: Numbers, shapes, and patterns in everyday life

Activities:

  • Floating vs. Sinking experiments with various objects
  • Basic robot interaction and exploration
  • STEM vocabulary building games
  • Classification activities

Materials: Water, buckets, floating items (paper, feathers), sinking items (stones, coins), toy robot, tablet

Week 2: STEM Play Corners

Learning Objectives:

  • Explore different STEM areas through play stations
  • Develop fine motor skills through hands-on manipulation
  • Practice problem-solving through guided discovery
  • Build confidence in exploring new concepts

Key Concepts:

  • Play-based learning: Learning through exploration and fun
  • Spatial awareness: Understanding shapes, sizes, and positions
  • Cause and effect: Understanding that actions have results
  • Collaboration: Working together to solve problems

Week 3: Simple Machines & Environmental Science

Learning Objectives:

  • Identify simple machines in everyday life
  • Understand basic environmental concepts
  • Develop observation skills
  • Connect STEM to the natural world

Key Concepts:

  • Simple Machines: Lever, pulley, wheel, ramp
  • Environment: Plants, animals, weather, seasons
  • Observation: Using our senses to learn
  • Nature patterns: Recognizing patterns in nature

Week 4: Unplugged Coding

Learning Objectives:

  • Introduction to coding concepts without computers
  • Understand sequence and order
  • Develop logical thinking
  • Practice following and giving instructions

Key Concepts:

  • Sequence: Steps in order
  • Instructions: Clear directions to follow
  • Algorithms: Step-by-step solutions
  • Patterns: Recognizing and creating patterns

Assessment Test - Preschoolers (4-6 Years)

Week 1-2 Assessment: STEM Basics

Format: Practical/Observational Assessment

  1. Floating or Sinking? (Show child various objects)
  • Point to objects that will float: feather, cork, plastic toy
  • Point to objects that will sink: stone, coin, marble
  • Explain why you think so (in simple words)
  1. STEM Matching (Picture cards)
  • Match the scientist to the magnifying glass
  • Match the engineer to the building blocks
  • Match the mathematician to the numbers
  • Match the technologist to the computer
  1. Following Instructions
  • Can follow 2-step instructions: “Pick up the red block and put it in the box”
  • Can give simple instructions to a friend
  • Can arrange objects in order (biggest to smallest)

Assessment Rubric:

  • Exceeding (3): Completes all tasks independently with explanation
  • Meeting (2): Completes most tasks with minimal guidance
  • Approaching (1): Attempts tasks with significant support
  • Beginning (0): Needs extensive help to participate

Week 3-4 Assessment: Simple Machines & Coding

Format: Hands-on Demonstration

  1. Simple Machines Hunt
  • Find the lever (seesaw, scissors)
  • Find the wheel (bicycle, toy car)
  • Find the ramp (slide, wedge)
  • Explain what each machine helps us do
  1. Nature Observation
  • Draw or point to living things vs. non-living things
  • Identify basic shapes in nature (circles in flowers, triangles in mountains)
  • Name things that grow vs. things that are made
  1. Unplugged Coding Challenge
  • Arrange sequence cards to show morning routine
  • Give directions to help friend reach the treasure
  • Complete a simple pattern with blocks or shapes

Grade 2-5 (7-11 Years)

Term 1: Scratch & Blockly Programming

Week 1: Introduction to Programming

Learning Objectives:

  • Understand what programming is
  • Learn about Scratch programming environment
  • Install and explore Scratch interface
  • Grasp the concept of sequencing

Key Concepts:

  • Programming: Giving instructions to computers
  • Scratch: Visual programming language using blocks
  • Interface: The screen where we work with Scratch
  • Sequencing: Putting commands in the right order
  • Sprites: Characters in Scratch programs
  • Stage: Where Scratch programs run

Core Activities:

  • Explore Scratch interface and tools
  • Identify different areas (sprite area, blocks palette, stage)
  • Learn about different block categories (Motion, Looks, Sound, etc.)
  • Create first simple animation

Week 2: Understanding Scratch Interface

Learning Objectives:

  • Navigate Scratch interface confidently
  • Understand different block categories
  • Create basic sprite movements
  • Save and load projects

Key Concepts:

  • Blocks Palette: Where programming blocks are stored
  • Scripts Area: Where we build our programs
  • Motion Blocks: Make sprites move
  • Looks Blocks: Change sprite appearance
  • Events: What starts our programs running

Week 3: Setting Up Scratch Projects

Learning Objectives:

  • Plan and organize Scratch projects
  • Understand project structure
  • Use backgrounds and sprites effectively
  • Practice debugging simple problems

Key Concepts:

  • Project Planning: Thinking before coding
  • Backgrounds: Scenes for our programs
  • Sprite Library: Ready-made characters
  • Debugging: Finding and fixing problems

Week 4: Introduction to Blockly

Learning Objectives:

  • Understand Blockly visual programming
  • Compare Blockly with Scratch
  • Complete basic Blockly puzzles
  • Transfer concepts between platforms

Key Concepts:

  • Blockly: Another visual programming language
  • Puzzle-based Learning: Learning through solving challenges
  • Logic Blocks: Making decisions in programs
  • Loops: Repeating actions

Week 5: Blockly Games for Scratch Programmers

Learning Objectives:

  • Apply Scratch knowledge to Blockly games
  • Solve increasingly complex puzzles
  • Understand programming logic and flow
  • Build problem-solving confidence

Key Concepts:

  • Game Logic: Rules that make games work
  • Progressive Difficulty: Challenges that get harder
  • Pattern Recognition: Seeing repeated solutions
  • Persistence: Keep trying when challenges are difficult

Assessment Test - Grade 2-5 (7-11 Years)

Week 1-3 Assessment: Scratch Fundamentals

Format: Practical Computer Assessment (30 minutes)

Part A: Interface Knowledge (10 points)

  1. Label the parts of Scratch interface:
  • Blocks Palette
  • Scripts Area
  • Stage
  • Sprite Area
  1. Match the block colors to their functions:
  • Motion blocks: _____ (Blue)
  • Looks blocks: _____ (Purple)
  • Sound blocks: _____ (Pink)
  • Events blocks: _____ (Yellow)

Part B: Basic Programming (15 points) 3. Create a program that makes a sprite:

  • Move 10 steps forward

  • Turn 90 degrees right

  • Say “Hello” for 2 seconds

  • Change color

  1. Fix this broken sequence (drag blocks in correct order):
[Say "Goodbye"][When green flag clicked][Move 100 steps][Say "Hello"]

Part C: Problem Solving (10 points) 5. Your sprite isn’t moving when you click the green flag. What might be wrong?

  • Missing “when green flag clicked” block

  • Sprite is already at the edge

  • Motion blocks aren’t connected

  • All of the above

  1. Create a simple animation showing a cat walking across the stage.

Week 4-5 Assessment: Blockly & Problem Solving

Format: Computer-based Blockly Challenges (25 minutes)

Part A: Blockly Basics (8 points)

  1. Complete the “Move Forward” puzzle in Blockly
  2. Complete the “Turn Left/Right” puzzle
  3. Complete the “Repeat Loop” puzzle
  4. Complete the “If/Else” puzzle

Part B: Logic Understanding (12 points) 5. Explain what this Blockly code does:

Repeat 4 times:
  Move forward
  Turn right 90 degrees

Answer: _________________

  1. Write Blockly code to make a character:
  • Move forward 3 steps
  • Turn left if path is blocked
  • Repeat until reaching goal

Part C: Transfer Learning (10 points) 7. How is Blockly similar to Scratch? List 3 similarities:




  1. Create a Scratch program that does the same thing as this Blockly code:
When started:  Repeat 5 times:    Move forward 20 steps    Wait 1 second

Assessment Rubric:

  • Advanced (90-100%): Completes all tasks efficiently with creative additions
  • Proficient (80-89%): Completes most tasks correctly with minor errors
  • Developing (70-79%): Completes basic tasks but struggles with complex problems
  • Beginning (Below 70%): Needs significant support to complete tasks

Grade 6-9 (11-14 Years)

Term 1: Drone Aviation Introduction

Week 1: Introduction to Drones and Aviation Basics

Learning Objectives:

  • Understand what drones are and their applications
  • Learn basic aviation principles
  • Identify different types of aircraft
  • Understand the evolution of flight

Key Concepts:

  • Unmanned Aerial Vehicle (UAV): Aircraft without a human pilot aboard
  • Remote Pilot: Person controlling the drone from the ground
  • Autonomous Flight: Drones flying with minimal human control
  • Commercial vs. Recreational Use: Different purposes for drones
  • Four Forces of Flight: Lift, Weight, Thrust, Drag
  • Aerodynamics: How air moves around objects in flight

Applications of Drones:

  • Photography and videography
  • Search and rescue operations
  • Agriculture monitoring
  • Package delivery
  • Scientific research
  • Military operations

Week 2: Drone Safety Rules and Best Practices

Learning Objectives:

  • Learn essential drone safety protocols
  • Understand pre-flight checklist procedures
  • Identify potential hazards and risks
  • Develop responsible drone operation habits

Key Concepts:

  • Pre-flight Inspection: Checking drone condition before flying
  • Weather Conditions: How weather affects drone flight
  • Battery Safety: Proper battery handling and storage
  • Emergency Procedures: What to do when things go wrong
  • Situational Awareness: Being aware of surroundings while flying

Safety Rules:

  1. Always maintain visual contact with drone
  2. Check weather conditions before flying
  3. Inspect drone and equipment before each flight
  4. Fly in open areas away from people and property
  5. Never fly above 400 feet
  6. Respect others’ privacy
  7. Land immediately if drone malfunctions

Week 3: FAA/UAS Regulations (Basic Overview)

Learning Objectives:

  • Understand basic aviation regulations
  • Learn about no-fly zones and restricted airspace
  • Understand registration requirements
  • Learn about pilot certification basics

Key Concepts:

  • Federal Aviation Administration (FAA): Government agency regulating aviation
  • Unmanned Aircraft Systems (UAS): Official term for drones and related equipment
  • No-Fly Zones: Areas where drone flight is prohibited
  • Remote Pilot Certificate: License required for commercial drone operations
  • Registration: Required identification for drones over 0.55 pounds

Basic Regulations:

  • Drones must be registered if over 0.55 lbs (250 grams)
  • Maximum altitude: 400 feet above ground level
  • Must yield right-of-way to manned aircraft
  • No flying over groups of people
  • No flying at night without special certification
  • Respect airport operational areas (usually 5-mile radius)

Week 4: Key Drone Types & Components

Learning Objectives:

  • Identify different drone configurations
  • Understand key drone components and their functions
  • Compare advantages and disadvantages of different designs
  • Learn basic maintenance requirements

Key Concepts:

  • Multirotor: Drones with multiple rotating propellers
  • Fixed-wing: Airplane-like drones with wings
  • Hybrid VTOL: Vertical takeoff and landing with forward flight capability
  • Frame: Main structure holding all components
  • Flight Controller: Computer controlling drone flight
  • ESC (Electronic Speed Controller): Controls motor speed
  • Gimbal: Stabilizes camera during flight

Drone Types:

  1. Quadcopter: 4 rotors, most common configuration
  2. Hexacopter: 6 rotors, more redundancy and payload capacity
  3. Octocopter: 8 rotors, highest redundancy and capacity
  4. Fixed-wing: Longer flight times, faster speeds
  5. Racing drones: Small, fast, agile for competitive flying

Week 5: Basic Principles of Flight

Learning Objectives:

  • Understand the four forces of flight in detail
  • Learn how drones achieve controlled flight
  • Understand stability and control concepts
  • Explore flight dynamics and physics

Key Concepts:

  • Lift: Upward force generated by rotors or wings
  • Weight (Gravity): Downward force pulling drone toward earth
  • Thrust: Forward force propelling drone through air
  • Drag: Resistance force opposing motion through air
  • Center of Gravity: Balance point of drone
  • Pitch, Roll, Yaw: Three axes of rotation
  • Gyroscopic Effect: How spinning rotors affect stability

Flight Control:

  • Throttle: Controls altitude (up/down)
  • Pitch: Controls forward/backward movement
  • Roll: Controls left/right movement
  • Yaw: Controls rotation (turning left/right)
  • Trim: Fine adjustments for balanced flight

Assessment Test - Grade 6-9 (11-14 Years)

Week 1-2 Assessment: Drone Basics and Safety

Format: Written Test + Practical Safety Demonstration (45 minutes)

Part A: Multiple Choice (20 points)

  1. What does UAV stand for? a) Universal Aviation Vehicle b) Unmanned Aerial Vehicle c) Ultra Aerodynamic Vehicle d) United Aviation Vehicle

  2. Which of the four forces of flight works against gravity? a) Thrust b) Drag c) Lift d) Weight

  3. What should you do FIRST before flying a drone? a) Start the motors b) Check weather conditions c) Take off immediately d) Turn on the camera

  4. The maximum altitude for recreational drone flight is: a) 200 feet b) 300 feet c) 400 feet d) 500 feet

  5. What is the main difference between commercial and recreational drone use? a) Size of drone b) Purpose and regulations c) Color of drone d) Number of rotors

Part B: Short Answer (25 points) 6. List 5 safety rules that must be followed when operating a drone: (10 points)






  1. Explain three commercial applications of drones: (9 points)



  1. Why is it important to maintain visual contact with your drone during flight? (6 points)

Part C: Practical Safety Assessment (15 points) 9. Demonstrate proper pre-flight inspection checklist 10. Identify suitable vs. unsuitable flying locations from photos 11. Explain emergency landing procedures

Week 3-5 Assessment: Regulations and Flight Principles

Format: Written Test + Flight Theory Application (50 minutes)

Part A: Regulations Knowledge (20 points)

  1. True/False (10 points)
  • Drones under 0.55 lbs need to be registered: ___
  • You can fly your drone anywhere as long as it’s daytime: ___
  • Commercial drone operations require a Remote Pilot Certificate: ___
  • Drones must always yield to manned aircraft: ___
  • Flying over groups of people is allowed with permission: ___
  1. What is a no-fly zone and give 3 examples: (10 points) Definition: ________________________________ Examples:



Part B: Drone Components (15 points) 3. Match the component to its function:

  • Flight Controller: _____ a) Provides power to motors

  • ESC: _____ b) Stabilizes camera

  • Gimbal: _____ c) Main structural support

  • Frame: _____ d) Controls drone flight

  • Battery: _____ e) Controls motor speed

  1. Compare quadcopter vs. fixed-wing drones (advantages/disadvantages): (10 points)

Part C: Flight Principles (25 points) 5. Draw and label the four forces of flight on a drone diagram: (12 points)

  1. Explain how a drone moves in each direction: (13 points)
  • Forward: ________________________________
  • Backward: ________________________________
  • Left: ________________________________
  • Right: ________________________________
  • Up: ________________________________
  • Rotate left: ________________________________

Assessment Rubric:

  • Expert (90-100%): Demonstrates comprehensive understanding with detailed explanations
  • Proficient (80-89%): Shows solid grasp of concepts with minor gaps
  • Developing (70-79%): Understands basic concepts but lacks detail in complex areas
  • Novice (Below 70%): Limited understanding, needs additional instruction

Grade 10-12 (14-16 Years)

Term 1: Introduction to Python Basics

Week 1: Writing Structured Python Code

Learning Objectives:

  • Understand Python syntax and structure
  • Learn proper code formatting and indentation
  • Write clean, readable code following best practices
  • Understand variables, data types, and basic operations

Key Concepts:

  • Python: High-level programming language
  • Syntax: Rules for writing Python code
  • Indentation: Using spaces to organize code structure
  • Variables: Named storage for data values
  • Data Types: int, float, string, boolean
  • Comments: Documentation within code using #
  • Print Statement: Displaying output to screen

Code Structure Best Practices:

# Header comment explaining the program
# Author: Your Name
# Date: Today's Date

# Import statements
import module_name

# Constants (UPPERCASE naming)
MAX_VALUE = 100

# Main program logic
def main():
    # Variable declarations
    user_name = "Student"
    age = 16

    # Program logic with proper indentation
    print(f"Hello, {user_name}!")
    print(f"You are {age} years old.")

# Run the program
if __name__ == "__main__":
    main()

Week 2: Functions and Loops

Learning Objectives:

  • Create and use custom functions
  • Understand function parameters and return values
  • Implement for loops and while loops
  • Apply loops to solve repetitive tasks

Key Concepts:

  • Function: Reusable block of code that performs a specific task
  • Parameters: Input values passed to functions
  • Return Value: Output value from a function
  • For Loop: Repeats code a specific number of times
  • While Loop: Repeats code while a condition is true
  • Range Function: Generates sequences of numbers
  • Iteration: Each repetition of a loop
  • Loop Control: Managing when loops start and stop

Function Examples:

# Simple function with no parameters
def greet():
    print("Hello, World!")

# Function with parameters
def greet_person(name, age):
    print(f"Hello, {name}! You are {age} years old.")

# Function with return value
def calculate_area(length, width):
    area = length * width
    return area

# Using functions
greet()
greet_person("Alice", 16)
room_area = calculate_area(10, 12)
print(f"Room area: {room_area} square meters")

Loop Examples:

# For loop with range
for i in range(5):
    print(f"Count: {i}")

# For loop with list
fruits = ["apple", "banana", "orange"]
for fruit in fruits:
    print(f"I like {fruit}")

# While loop
count = 0
while count < 3:
    print(f"While loop count: {count}")
    count += 1

Week 3: Using Python Libraries

Learning Objectives:

  • Understand what Python libraries are and why they’re useful
  • Learn to import and use common libraries
  • Work with GPIOZero and time libraries
  • Explore library documentation and help systems

Key Concepts:

  • Library/Module: Pre-written code that adds functionality
  • Import Statement: Bringing library functions into your program
  • GPIOZero: Library for controlling Raspberry Pi GPIO pins
  • Time Library: Functions for working with time and delays
  • Documentation: Instructions for using library functions
  • API: Application Programming Interface - how to use library functions

Library Usage Examples:

# Importing entire modules
import time
import math

# Importing specific functions
from gpiozero import LED, Button
from time import sleep

# Using time library
print("Starting program...")
time.sleep(2)  # Wait 2 seconds
print("2 seconds have passed!")

# Using math library
import math
radius = 5
area = math.pi * radius ** 2
print(f"Circle area: {area:.2f}")

# Using GPIOZero (for Raspberry Pi)
led = LED(18)  # LED connected to GPIO pin 18
button = Button(2)  # Button connected to GPIO pin 2

# Turn LED on and off
led.on()
sleep(1)
led.off()

Week 4: Controlling Motors with Python

Learning Objectives:

  • Understand how to interface with motors using Python
  • Learn about PWM (Pulse Width Modulation) for motor control
  • Control motor speed and direction
  • Implement safety features in motor control code

Key Concepts:

  • Motor Control: Using code to make motors move
  • PWM (Pulse Width Modulation): Method to control motor speed
  • Duty Cycle: Percentage of time signal is “on” vs “off”
  • Direction Control: Making motors spin clockwise/counterclockwise
  • Motor Driver: Electronics that interface between Python and motors
  • Safety Features: Code to prevent motor damage

Motor Control Examples:

from gpiozero import Motor, PWMOutputDevice
from time import sleep

# Create motor object (assuming H-bridge motor driver)
motor = Motor(forward=2, backward=3, enable=18)

# Basic motor control
def basic_motor_test():
    print("Motor forward at full speed")
    motor.forward(1.0)  # Full speed forward
    sleep(2)

    print("Motor forward at half speed")
    motor.forward(0.5)  # Half speed forward
    sleep(2)

    print("Motor stopped")
    motor.stop()
    sleep(1)

    print("Motor backward at full speed")
    motor.backward(1.0)  # Full speed backward
    sleep(2)

    motor.stop()
    print("Motor test complete")

# PWM speed control example
def speed_ramp_test():
    print("Ramping motor speed up...")
    for speed in range(0, 101, 10):  # 0 to 100% in 10% steps
        motor_speed = speed / 100.0
        motor.forward(motor_speed)
        print(f"Speed: {speed}%")
        sleep(0.5)

    motor.stop()
    print("Speed ramp complete")

# Run the tests
basic_motor_test()
sleep(2)
speed_ramp_test()

Week 5: Controlling Sensors with Python

Learning Objectives:

  • Interface with various sensors using Python
  • Read and process sensor data
  • Implement sensor-based decision making
  • Create responsive programs based on sensor input

Key Concepts:

  • Sensor: Device that detects and measures physical properties
  • Analog vs Digital: Different types of sensor signals
  • ADC (Analog-to-Digital Converter): Converts analog signals to digital
  • Sensor Calibration: Adjusting sensor readings for accuracy
  • Data Processing: Converting raw sensor data to useful information
  • Polling vs Interrupts: Different ways to read sensor data

Common Sensors:

  • Temperature sensors: Measure environmental temperature
  • Light sensors (LDR): Detect light intensity
  • Ultrasonic sensors: Measure distance using sound waves
  • Motion sensors (PIR): Detect movement
  • Pressure sensors: Measure force or pressure

Sensor Control Examples:

from gpiozero import MCP3008, DistanceSensor, MotionSensor, LED
from time import sleep
import statistics

# Temperature sensor (using analog input)
temp_sensor = MCP3008(channel=0)

def read_temperature():
    # Convert voltage to temperature (example conversion)
    voltage = temp_sensor.voltage
    temperature_c = (voltage - 0.5) * 100  # Example conversion formula
    temperature_f = (temperature_c * 9/5) + 32
    return temperature_c, temperature_f

# Distance sensor (ultrasonic)
distance_sensor = DistanceSensor(echo=24, trigger=23)

def monitor_distance():
    print("Distance monitoring (press Ctrl+C to stop)")
    try:
        while True:
            distance = distance_sensor.distance * 100  # Convert to cm
            print(f"Distance: {distance:.1f} cm")

            if distance < 10:
                print("WARNING: Object too close!")

            sleep(0.5)
    except KeyboardInterrupt:
        print("Distance monitoring stopped")

# Motion sensor with LED indicator
motion = MotionSensor(4)
alert_led = LED(18)

def motion_detector():
    print("Motion detector active...")

    def motion_detected():
        print("Motion detected!")
        alert_led.on()
        sleep(2)
        alert_led.off()

    def no_motion():
        print("No motion")
        alert_led.off()

    # Set up motion sensor callbacks
    motion.when_motion = motion_detected
    motion.when_no_motion = no_motion

    # Keep program running
    try:
        while True:
            sleep(0.1)
    except KeyboardInterrupt:
        print("Motion detector stopped")

# Data logging example
def log_sensor_data():
    readings = []
    print("Collecting sensor data for 30 seconds...")

    start_time = time.time()
    while time.time() - start_time < 30:
        temp_c, temp_f = read_temperature()
        distance = distance_sensor.distance * 100

        readings.append({
            'timestamp': time.time(),
            'temperature_c': temp_c,
            'temperature_f': temp_f,
            'distance_cm': distance
        })

        print(f"Temp: {temp_c:.1f}°C, Distance: {distance:.1f}cm")
        sleep(1)

    # Calculate statistics
    temps = [r['temperature_c'] for r in readings]
    distances = [r['distance_cm'] for r in readings]

    print(f"\nData Summary:")
    print(f"Average temperature: {statistics.mean(temps):.1f}°C")
    print(f"Min/Max temperature: {min(temps):.1f}°C / {max(temps):.1f}°C")
    print(f"Average distance: {statistics.mean(distances):.1f}cm")
    print(f"Min/Max distance: {min(distances):.1f}cm / {max(distances):.1f}cm")

# Example usage
if __name__ == "__main__":
    # Run different examples
    monitor_distance()  # Uncomment to run distance monitoring
    # motion_detector()  # Uncomment to run motion detection
    # log_sensor_data()  # Uncomment to run data logging

Assessment Test - Grade 10-12 (14-16 Years)

Week 1-2 Assessment: Python Fundamentals

Format: Coding Assignment + Written Questions (60 minutes)

Part A: Code Structure and Syntax (25 points)

  1. Fix the following code and explain what was wrong (10 points):
# Broken code:
def calculate average(num1, num2, num3)
average = num1 + num2 + num3 / 3
print("The average is" + average)
return average

calculate average(10, 20, 30)

Your corrected code:

# Write corrected version here

Explanation of errors: ________________________________

  1. Write a well-structured Python program (15 points): Create a program that:
  • Has proper header comments
  • Uses appropriate variable names
  • Calculates the area of different shapes (circle, rectangle, triangle)
  • Uses functions with parameters and return values
  • Follows proper indentation and formatting

Part B: Functions and Loops (30 points)

  1. Write a function called print_multiplication_table (15 points):
  • Takes one parameter: number
  • Prints multiplication table for that number (1-10)
  • Uses a for loop
  • Example output for print_multiplication_table(3):
3 x 1 = 3
3 x 2 = 6
3 x 3 = 9
... etc
  1. Password Checker Program (15 points): Write a program using while loop that:
  • Asks user to enter a password
  • Keeps asking until they enter “python123”
  • Counts number of attempts
  • Prints “Access granted” when correct
  • Prints number of attempts it took

Week 3-5 Assessment: Libraries and Hardware Control

Format: Practical Coding Project (75 minutes)

Part A: Library Usage (20 points)

  1. Complete this sensor reading program (20 points):
from gpiozero import MCP3008
from time import sleep
import ______  # What library do you need for calculating average?

# Create sensor object
light_sensor = MCP3008(channel=0)

def read_light_levels():
    readings = []

    # Collect 10 readings
    for i in range(______):  # Fill in the range
        reading = light_sensor.______  # What property gives the reading?
        readings.append(reading)
        print(f"Reading {i+1}: {reading:.3f}")
        sleep(0.5)

    # Calculate and print statistics
    average = ______.mean(readings)  # Which function calculates mean?
    maximum = ______(readings)  # Built-in function for maximum
    minimum = ______(readings)  # Built-in function for minimum

    print(f"Average: {average:.3f}")
    print(f"Maximum: {maximum:.3f}")
    print(f"Minimum: {minimum:.3f}")

# Call the function
read_light_levels()

Part B: Motor Control Project (25 points)

  1. Smart Fan Controller (25 points): Write a program that simulates a smart fan controller:
  • Use a temperature sensor to read room temperature
  • Control a motor (fan) based on temperature:
    • Below 20°C: Fan off
    • 20-25°C: Fan at 30% speed
    • 25-30°C: Fan at 60% speed
    • Above 30°C: Fan at 100% speed
  • Print current temperature and fan speed every 2 seconds
  • Include safety features (motor stop function)

Part C: Sensor Integration Challenge (30 points)

  1. Security System Prototype (30 points): Create a basic security system that:
  • Uses a motion sensor to detect movement
  • Uses a distance sensor to detect objects too close
  • Controls LEDs to indicate system status:
    • Green LED: System normal
    • Yellow LED: Motion detected
    • Red LED: Intrusion alert (object < 20cm)
  • Logs events with timestamps
  • Runs continuously until user presses Ctrl+C

Requirements:

  • Use at least 3 different libraries
  • Include proper error handling
  • Use functions to organize code
  • Add meaningful comments
  • Follow Python coding best practices

Sample code structure:

from gpiozero import MotionSensor, DistanceSensor, LED
from time import sleep
import time

# Hardware setup
motion = MotionSensor(4)
distance = DistanceSensor(echo=24, trigger=23)
green_led = LED(18)
yellow_led = LED(19)
red_led = LED(20)

def log_event(message):
    # Write function to log events with timestamp
    pass

def check_security():
    # Write function to check all sensors and control LEDs
    pass

def main():
    # Write main program loop
    pass

if __name__ == "__main__":
    main()

Assessment Rubric:

  • Exceptional (95-100%): Code runs flawlessly, excellent structure, creative additions, comprehensive error handling
  • Proficient (85-94%): Code works correctly, good structure, meets all requirements, minor improvements possible
  • Developing (75-84%): Code mostly works, basic structure present, meets most requirements, some bugs or missing features
  • Beginning (65-74%): Code has significant issues, poor structure, missing major requirements
  • Incomplete (Below 65%): Code doesn’t run or major portions missing

Additional Resources and Extensions

For All Grade Levels:

Vocabulary Glossary:

  • Algorithm: Step-by-step instructions to solve a problem
  • Bug: Error in code that prevents it from working correctly
  • Debug: Process of finding and fixing errors in code
  • Hardware: Physical components of computer systems
  • Software: Programs and applications that run on hardware
  • Interface: Way users interact with programs or devices
  • Sensor: Device that detects changes in environment
  • Actuator: Device that causes movement or action

Project Portfolio Suggestions:

  1. Weekly Reflection Journal: Students document learning and challenges
  2. Photo Documentation: Pictures of projects and experiments
  3. Video Demonstrations: Students explain their projects
  4. Peer Teaching: Advanced students help beginners
  5. Innovation Challenges: Open-ended problems to solve creatively

Cross-Curricular Connections:

  • Math: Geometry in robotics, statistics in data analysis
  • Science: Physics of flight, electronics principles
  • Art: Creative programming projects, design thinking
  • Social Studies: Impact of technology on society
  • Language Arts: Technical writing, documentation skills

Safety Reminders:

  • Always supervise young children with electronic components
  • Check battery connections before powering devices
  • Keep work area clean and organized
  • Wash hands after handling electronic components
  • Report any damaged equipment immediately
  • Follow proper shutdown procedures for all devices

Assessment Portfolio Checklist:

  • Completed weekly assessments
  • Project documentation with photos
  • Reflection essays on learning progress
  • Peer evaluation forms
  • Self-assessment rubrics
  • Evidence of problem-solving process
  • Creative extensions or improvements to basic projects

Continuation - Weeks 6-8 for All Grade Levels


Preschoolers (4-6 Years) - Weeks 6-8

Advanced STEM Exploration & Technology Awareness

Week 6: Technology Parts Awareness

Learning Objectives:

  • Use coding to tell stories, solve challenges, or navigate mazes
  • Recognize and follow simple algorithms using direction or action cards
  • Physically be able to follow code on floor grids
  • Build confidence and persistence through trial-and-error learning

Key Concepts:

  • Technology Components: Basic parts that make devices work
  • Circuits: Paths that electricity follows
  • Assembly/Disassembly: Taking apart and putting together
  • Electronics Safety: Safe handling of batteries and components
  • Problem-Solving: Trying different solutions when something doesn’t work

Activities:

  • Technology Exploration: Examine old keyboards, phones, calculators
  • Simple Circuits: Connect bulbs to batteries with safe materials
  • Assembly Practice: Take apart and reassemble simple toys
  • Tech Parts Sorting: Group similar technology components

Materials: Old keyboards, phones, calculators, batteries, bulbs for circuits, safe connectors

Week 7: Sequencing & Floor Grid Coding

Learning Objectives:

  • Develop understanding of sequencing by arranging steps in correct order
  • Recognize and follow simple algorithms using direction or action cards
  • Physically follow code on floor grids
  • Build confidence through trial-and-error learning

Key Concepts:

  • Sequencing: Putting steps in the right order
  • Algorithm Cards: Visual instructions to follow
  • Floor Grid Coding: Moving through spaces following directions
  • Left/Right/Forward/Back: Basic directional concepts
  • Trial and Error: Learning by trying and improving

Activities:

  • Obstacle Course Coding: Navigate through simple obstacles using arrow cards
  • Sequencing Games: Put daily routine cards in correct order
  • Paper Maze Coding: Use arrows to show path through printed mazes
  • Robot Friend: One child gives directions, another follows like a robot

Materials: Coding arrows/direction cards, floor grid mats, toys for navigation, printed maze worksheets

Week 8: Advanced Unplugged Coding & Storytelling

Learning Objectives:

  • Use coding to tell stories, solve challenges, or navigate mazes
  • Recognize and follow simple algorithms using direction or action cards
  • Physically follow code on floor grids
  • Build confidence and persistence through trial-and-error learning

Key Concepts:

  • Conditional Logic: IF/THEN thinking (“If you see red, then stop”)
  • Debugging: Finding and fixing mistakes in directions
  • Block Building: Using physical blocks to represent code
  • Story Algorithms: Step-by-step instructions for telling stories

Activities:

  • Debug the Path: Present incorrect direction sequences for children to fix
  • IF/THEN Games: “If you see a triangle, then clap your hands”
  • Story Coding: Use picture cards to create step-by-step stories
  • Block Code Building: Stack blocks to represent programming sequences

Materials: Building blocks, floor grid mats, toys, printed materials, picture cards for storytelling


Preschoolers Assessment - Weeks 6-8

Week 6 Assessment: Technology Awareness

Format: Hands-on Exploration + Observation (20 minutes)

  1. Technology Parts Recognition (10 points)
  • Point to and name 3 technology items from the collection
  • Show how a simple circuit works (bulb + battery)
  • Safely handle electronic components
  • Explain one thing each item helps us do
  1. Assembly Skills (10 points)
  • Take apart a simple toy or device
  • Put it back together correctly
  • Identify which parts go where
  • Ask for help when needed

Assessment Criteria:

  • Mastery (3): Handles all materials safely, explains purposes, completes tasks independently
  • Developing (2): Safe handling, completes most tasks with minimal help
  • Emerging (1): Needs guidance but participates actively
  • Beginning (0): Requires extensive support

Week 7-8 Assessment: Advanced Unplugged Coding

Format: Physical Coding Challenges (25 minutes)

  1. Sequencing Challenge (12 points)
  • Arrange 6 direction cards to navigate through obstacle course
  • Explain why each step comes in that order
  • Successfully complete the physical navigation
  • Fix mistakes when path doesn’t work
  1. IF/THEN Logic (8 points)
  • Follow conditional instructions: “IF you see blue, THEN hop”
  • Create own IF/THEN rule for a friend to follow
  • Demonstrate understanding with actions
  1. Story Algorithm (10 points)
  • Use 5 picture cards to create logical story sequence
  • Tell story following the card order
  • Explain what happens if cards are mixed up
  • Help fix a mixed-up story sequence

Practical Skills Rubric:

  • Advanced (25-30 points): Creates original sequences, helps others, shows deep understanding
  • Proficient (20-24 points): Completes all challenges correctly with minor guidance
  • Developing (15-19 points): Understands concepts but needs support for complex tasks
  • Beginning (Below 15 points): Requires significant help to participate

Grade 2-5 (7-11 Years) - Weeks 6-8

Advanced Scratch Programming & Game Development

Week 6: Game Structure and Design

Learning Objectives:

  • Understand basic game structure (start, play, end)
  • Use Scratch blocks to move characters and detect collisions
  • Make characters move between different scenes
  • Create scoring or win conditions

Key Concepts:

  • Game Design Elements: Characters, backgrounds, objectives, rules
  • Game Loop: Continuous cycle of input, processing, output
  • Collision Detection: Knowing when sprites touch each other
  • Scene Transitions: Moving between different game screens
  • Win/Lose Conditions: Rules that determine game outcomes
  • User Interface: Buttons, scores, and information displays

Advanced Scratch Concepts:

  • Sensing Blocks: “touching color”, “distance to”, “key pressed”
  • Variables: Storing score, lives, or time
  • Broadcast Messages: Communication between sprites
  • Clone Sprites: Creating multiple copies of objects
  • Custom Blocks: Making your own programming blocks

Game Development Process:

  1. Planning Phase: Sketch game idea, list needed sprites and backgrounds
  2. Prototype: Create basic movement and interaction
  3. Enhancement: Add sounds, effects, and polish
  4. Testing: Play game and fix bugs
  5. Sharing: Present to classmates

Example Game Structure:

When green flag clicked
Set score to 0
Set lives to 3
Say "Game Starting!" for 2 seconds
Show sprite
Forever:
    If key space pressed:
        Move player sprite
    If touching enemy:
        Change lives by -1
        If lives = 0:
            Say "Game Over!"
            Stop all

Week 7: Transition to Text-Based Concepts

Learning Objectives:

  • Prepare learners for text-based coding
  • Understand basic programming concepts using blocks
  • Use logic and loops to control sprite or robot actions
  • Begin transition to robotics or advanced coding platforms

Key Concepts:

  • Programming Fundamentals: Sequence, selection, iteration
  • Logic Blocks: IF/ELSE statements in visual form
  • Loop Types: Forever, repeat until, repeat X times
  • Variables and Operations: Math in programming
  • Event-Driven Programming: Responding to user input
  • Modular Programming: Breaking code into smaller parts

Bridging Visual to Text:

  • Block-to-Code Thinking: Understanding what blocks represent
  • Pseudocode: Writing steps in plain English before coding
  • Debugging Strategies: Systematic problem-solving approaches
  • Code Organization: Keeping projects neat and logical

Advanced Programming Patterns:

// Pattern 1: State Machine
When green flag clicked
Set game state to "menu"
Forever:
    If game state = "menu":
        Show menu options
    If game state = "playing":
        Run game logic
    If game state = "game over":
        Show final score

// Pattern 2: Object Behavior
When I start as a clone:
    Go to random position
    Forever:
        Move 2 steps
        If on edge, bounce
        If touching player:
            Change score by 10
            Delete this clone

Week 8: Blockly Integration and Logic Puzzles

Learning Objectives:

  • Solve logic puzzles using visual programming concepts
  • Create games using Blockly platform
  • Demonstrate understanding of programming fundamentals
  • Apply creative problem-solving skills

Key Concepts:

  • Blockly Platform: Google’s visual programming language
  • Logic Puzzles: Problems requiring systematic thinking
  • Algorithm Efficiency: Finding the best solution method
  • Pattern Recognition: Identifying repeated solutions
  • Creative Programming: Using code for artistic expression

Blockly vs. Scratch Comparison:

FeatureScratchBlockly
FocusStorytelling & GamesLogic & Algorithms
InterfaceStage-basedPuzzle-based
OutputAnimated ProjectsProblem Solutions
ProgressionCreative ExpressionMathematical Thinking

Logic Puzzle Types:

  1. Maze Solving: Navigate through obstacles
  2. Pattern Completion: Fill in missing sequences
  3. Conditional Logic: IF/THEN decision making
  4. Loop Optimization: Repeat actions efficiently

Grade 2-5 Assessment - Weeks 6-8

Week 6 Assessment: Game Development Project

Format: Scratch Game Creation + Presentation (45 minutes)

Part A: Game Planning (10 points)

  1. Game Design Document - Create a simple plan including:
  • Game objective (what’s the goal?)
  • Main character description
  • Basic rules (how do you win/lose?)
  • Required sprites and backgrounds
  1. Storyboard - Draw 3 screens showing:
  • Game start screen
  • Main gameplay
  • Win/lose screen

Part B: Game Implementation (25 points) 3. Core Functionality (15 points):

  • Character moves with arrow keys or WASD

  • At least one interactive element (enemy, collectible, obstacle)

  • Basic collision detection (touching = something happens)

  • Clear win or lose condition

  1. Polish and Enhancement (10 points):
  • Sound effects or music
  • Visual feedback (score, lives, timer)
  • Smooth sprite movement
  • Creative backgrounds or costumes

Part C: Presentation and Reflection (15 points) 5. Game Demo (10 points):

  • Explain game rules clearly

  • Demonstrate gameplay for 2 minutes

  • Show different game scenarios

  • Handle questions from classmates

  1. Technical Reflection (5 points):
  • Explain one challenging problem you solved
  • Describe one improvement you would make
  • Share one new Scratch skill you learned

Week 7-8 Assessment: Programming Concepts Mastery

Format: Mixed Assessment - Blockly Challenges + Scratch Review (50 minutes)

Part A: Blockly Logic Challenges (20 points)

  1. Maze Navigation (8 points):
  • Complete 3 increasingly difficult maze puzzles
  • Use efficient solutions (minimal blocks)
  • Demonstrate understanding of loops and conditionals
  1. Pattern Recognition (6 points):
  • Solve sequence completion puzzles
  • Identify and extend number/color patterns
  • Create original pattern for others to solve
  1. Logic Puzzles (6 points):
  • Complete IF/THEN decision trees
  • Solve multi-step conditional problems
  • Optimize solutions for clarity

Part B: Concept Transfer (15 points) 4. Visual to Text Translation (10 points): Given this Scratch code block arrangement:

[When flag clicked] → [Forever] → [If touching mouse] → [Move 10 steps]

Write in pseudocode (plain English): “When the program starts, ________________”

  1. Problem Decomposition (5 points): Break down this challenge into steps: “Create a sprite that follows the mouse but stops when it touches the edge”

Step 1: _______________ Step 2: _______________ Step 3: _______________ Step 4: _______________

Part C: Creative Application (15 points) 6. Original Algorithm (15 points): Choose ONE to complete:

Option A - Scratch: Create a “digital pet” that:

  • Follows mouse cursor
  • Changes expression when clicked
  • Makes sound when hungry (timer-based)
  • Has at least 3 different costumes

Option B - Blockly: Design a solution for:

  • Robot that sorts colored objects
  • Path that avoids all obstacles
  • Pattern that creates art using loops

Assessment Rubric:

  • Expert (90-100%): Exceeds requirements with creative solutions and clear explanations
  • Proficient (80-89%): Meets all requirements with good understanding demonstrated
  • Developing (70-79%): Meets most requirements but may have gaps in complex concepts
  • Novice (60-69%): Shows basic understanding but struggles with application
  • Beginning (Below 60%): Needs significant support to demonstrate concepts

Grade 6-9 (11-14 Years) - Weeks 6-8

Drone Laws, Emergency Procedures & Practical Flying

Week 6: Drone Laws and Regulations (Kenya Focus)

Learning Objectives:

  • Learn basic drone laws in Kenya (KCAA regulations)
  • Understand where and how children can fly drones legally
  • Develop awareness of responsible drone operation
  • Understand the importance of aviation safety

Key Concepts:

  • Kenya Civil Aviation Authority (KCAA): National aviation regulator
  • Drone Registration: Required identification and documentation
  • No-Fly Zones: Airports, government buildings, restricted areas
  • Altitude Restrictions: Maximum height limitations
  • Visual Line of Sight (VLOS): Maintaining visual contact
  • Privacy Laws: Respecting others’ rights and property

Kenya Drone Regulations Summary:

  1. Registration Requirements:
  • All drones over 250g must be registered with KCAA
  • Operator license required for commercial operations
  • Age restrictions for different categories of operation
  1. Operational Limits:
  • Maximum altitude: 400 feet (120 meters) AGL
  • Minimum distance from airports: 8km for major airports
  • No flying over crowds or public events
  • Daylight operations only (without special permits)
  1. Prohibited Areas:
  • Within 5km of any airport
  • Over government buildings and installations
  • National parks without permits
  • Private property without permission

Safety and Legal Guidelines for Young Pilots:

  • Always have adult supervision
  • Start with toy drones under 250g
  • Practice in open, safe areas
  • Respect others’ privacy and property
  • Learn emergency procedures
  • Keep drone in sight at all times

Week 7: Emergency Procedures and Responsible Flying

Learning Objectives:

  • Review key safety and legal concepts from previous weeks
  • Understand emergency basics for beginner flyers
  • Develop decision-making skills for unexpected situations
  • Practice responsible pilot behavior

Key Concepts:

  • Emergency Procedures: Systematic responses to problems
  • Risk Assessment: Evaluating dangers before flying
  • Decision Making: Choosing appropriate actions under pressure
  • Communication: Alerting others during emergencies
  • Equipment Failure: What to do when drone malfunctions
  • Weather Awareness: Recognizing dangerous conditions

Emergency Scenarios and Responses:

  1. Lost Communication with Drone:
  • Stay calm and observe drone behavior
  • Activate Return-to-Home (RTH) function if available
  • Move to higher ground for better signal
  • Prepare for manual landing if signal returns
  • Never chase after a flyaway drone
  1. Low Battery Warning:
  • Immediately begin landing sequence
  • Choose nearest safe landing spot
  • Avoid flying over people or property
  • Land even if not at original takeoff point
  • Safety is more important than convenience
  1. Unexpected Weather Changes:
  • Monitor weather conditions constantly
  • Land immediately if wind increases
  • Avoid flying in rain or snow
  • Watch for sudden temperature changes
  • When in doubt, don’t fly
  1. Equipment Malfunction:
  • Attempt controlled landing immediately
  • Don’t try to fix problems while airborne
  • Inform other people in the area
  • Document the problem for later analysis
  • Never continue flying with known issues

Mission Planning Process:

  1. Pre-flight Planning: Weather check, equipment inspection, route planning
  2. Risk Assessment: Identify potential hazards and mitigation strategies
  3. Communication Plan: Inform others of flight activities
  4. Emergency Procedures: Know what to do if things go wrong
  5. Post-flight Review: Analyze what went well and areas for improvement

Week 8: Practical Flying Skills and Team Challenges

Learning Objectives:

  • Demonstrate ability to control a mini drone (takeoff, hover, land)
  • Apply basic flight skills in problem-solving mission scenarios
  • Work as a team to complete drone-based challenges
  • Evaluate personal progress and set goals for improvement

Key Concepts:

  • Flight Control Mastery: Smooth, precise drone movements
  • Situational Awareness: Understanding surroundings during flight
  • Mission Planning: Preparing for specific flight objectives
  • Teamwork: Collaborative problem-solving with drones
  • Performance Evaluation: Self-assessment and peer feedback
  • Safety Leadership: Taking responsibility for safe operations

Basic Flight Skills Progression:

  1. Fundamental Controls:
  • Smooth takeoff to hover
  • Maintaining steady hover
  • Controlled landing
  • Forward/backward movement
  • Left/right movement
  • Rotation control
  1. Intermediate Maneuvers:
  • Figure-8 patterns
  • Precision landing on target
  • Obstacle avoidance
  • Following predetermined paths
  • Coordinated movements
  1. Advanced Challenges:
  • Team relay races
  • Rescue simulations
  • Precision delivery tasks
  • Group choreography
  • Time-based challenges

Mission Scenarios:

Mission 1: Search and Rescue

  • Objective: Locate “missing person” (target) in designated area
  • Skills: Systematic search patterns, communication, observation
  • Time limit: 5 minutes
  • Success criteria: Target identified and location communicated

Mission 2: Delivery Challenge

  • Objective: Transport small payload from Point A to Point B
  • Skills: Precision flying, cargo management, safe landing
  • Obstacles: Wind conditions, landing accuracy requirements
  • Success criteria: Payload delivered undamaged within time limit

Mission 3: Team Coordination

  • Objective: Multiple drones work together to complete complex task
  • Skills: Communication, timing, spatial awareness
  • Challenge: Choreographed flight pattern or group problem-solving
  • Success criteria: All drones complete task without collisions

Safety Protocols for Practical Flying:

  • Always maintain 10-foot safety zone around flying area
  • Designate specific roles: pilot, observer, safety officer
  • Use hand signals for communication during loud operations
  • Practice emergency landing procedures before each session
  • Rotate roles so everyone experiences different responsibilities

Grade 6-9 Assessment - Weeks 6-8

Week 6 Assessment: Drone Laws and Regulations

Format: Written Test + Legal Scenario Analysis (40 minutes)

Part A: Kenya Aviation Law Knowledge (25 points)

  1. KCAA Regulations (10 points) Fill in the blanks:
  • Drones over ______ grams must be registered with KCAA
  • Maximum altitude for recreational flying is ______ feet
  • Minimum distance from major airports is ______ kilometers
  • Commercial drone operations require a ______ license
  • Drones must remain within ______ line of sight
  1. No-Fly Zone Identification (10 points) Mark TRUE or FALSE for each flying location:
  • Your school playground during lunch break: ______
  • Open field 2km from Wilson Airport: ______
  • Your backyard with adult supervision: ______
  • Uhuru Park during a public event: ______
  • Private farm with owner’s permission: ______
  1. Legal Compliance (5 points) List 3 requirements for legally flying a drone in Kenya:



Part B: Scenario-Based Decision Making (20 points)

  1. Legal Scenarios (20 points) For each scenario, explain if the action is legal and why:

Scenario A: Sarah wants to fly her 300g drone over her neighbor’s house to take photos of her own backyard. Legal? _____ Why? _______________________________

Scenario B: James plans to fly his registered drone at 200 feet altitude in an open field 10km from any airport during daylight hours. Legal? _____ Why? _______________________________

Scenario C: A group of students want to use their drone for a school project, filming the school building from 100 feet up. Legal? _____ Why? _______________________________

Scenario D: Ahmed wants to fly his 150g toy drone in his compound for 10 minutes. Legal? _____ Why? _______________________________

Part C: Responsible Pilot Planning (15 points)

  1. Pre-flight Checklist (15 points) Create a 10-item pre-flight checklist that includes legal, safety, and equipment considerations:




[Continue through 10]

Week 7-8 Assessment: Emergency Procedures and Practical Skills

Format: Practical Flight Test + Emergency Response Simulation (60 minutes)

Part A: Emergency Response Knowledge (20 points)

  1. Emergency Procedures (15 points) Describe the correct response for each emergency:

Low Battery Warning: Step 1: _______________________________ Step 2: _______________________________ Step 3: _______________________________

Lost Radio Contact: Step 1: _______________________________ Step 2: _______________________________ Step 3: _______________________________

Sudden Weather Change: Step 1: _______________________________ Step 2: _______________________________ Step 3: _______________________________

  1. Risk Assessment (5 points) Identify 3 risks for flying in each environment:
  • School playground: ____________, ____________, ____________
  • Open field: ____________, ____________, ____________

Part B: Practical Flight Skills Assessment (30 points)

  1. Basic Flight Controls (15 points) Demonstrate competency in:
  • Smooth takeoff and landing (3 points)
  • Stable hovering for 30 seconds (3 points)
  • Forward/backward precision movement (3 points)
  • Left/right precision movement (3 points)
  • Controlled rotation (3 points)
  1. Mission Challenge (15 points) Complete ONE of the following missions:

Option A - Navigation Course:

  • Fly through 5 waypoints in sequence
  • Land within 1-meter target circle
  • Complete within 3 minutes

Option B - Team Coordination:

  • Work with partner to complete relay challenge
  • Communicate effectively during handoff
  • Maintain safety throughout mission

Part C: Leadership and Safety Evaluation (15 points)

  1. Safety Leadership (8 points) While others are flying, demonstrate:
  • Proper safety zone maintenance
  • Clear communication with pilot
  • Appropriate responses to unsafe situations
  • Helpful coaching and encouragement
  1. Self-Assessment and Goal Setting (7 points) Written reflection:
  • What flight skill are you most confident with? Why?
  • What area needs the most improvement?
  • Set one specific goal for future drone flying
  • Describe one way you can help others fly safely

Practical Skills Rubric:

  • Expert Pilot (90-100%): Demonstrates advanced skills, teaches others, shows exceptional safety awareness
  • Competent Pilot (80-89%): Performs all basic skills reliably, follows safety protocols consistently
  • Developing Pilot (70-79%): Shows improvement in most areas, occasional guidance needed
  • Novice Pilot (60-69%): Basic skills present but inconsistent, needs continued practice
  • Beginning Pilot (Below 60%): Requires significant instruction and supervision

Grade 10-12 (14-16 Years) - Weeks 6-8

Advanced Python Projects & Integration

Week 6-7: Integrated Systems Project (Combined Weeks)

Learning Objectives:

  • Combine motors and sensors in complex systems
  • Debug integrated hardware/software systems
  • Apply creative problem-solving to real-world challenges
  • Document projects professionally

Key Concepts:

  • Systems Integration: Combining multiple components into unified solutions
  • Hardware-Software Interface: Code that bridges digital and physical worlds
  • System Architecture: Planning complex projects with multiple subsystems
  • Error Handling: Managing failures gracefully in complex systems
  • Performance Optimization: Making systems run efficiently
  • Documentation Standards: Professional project recording

Advanced Integration Concepts:

1. Multi-Sensor Fusion

import threading
import queue
from gpiozero import DistanceSensor, MotionSensor, MCP3008
from time import sleep
import json

class SensorFusion:
    def __init__(self):
        self.distance_sensor = DistanceSensor(echo=24, trigger=23)
        self.motion_sensor = MotionSensor(4)
        self.light_sensor = MCP3008(channel=0)
        self.temp_sensor = MCP3008(channel=1)

        # Data queues for thread communication
        self.sensor_data = queue.Queue()
        self.running = False

    def read_sensors(self):
        """Continuous sensor reading in separate thread"""
        while self.running:
            try:
                data = {
                    'timestamp': time.time(),
                    'distance': self.distance_sensor.distance * 100,
                    'motion': self.motion_sensor.motion_detected,
                    'light_level': self.light_sensor.voltage,
                    'temperature': self.convert_temp(self.temp_sensor.voltage)
                }
                self.sensor_data.put(data)
                sleep(0.1)  # 10Hz sampling rate
            except Exception as e:
                print(f"Sensor reading error: {e}")

    def convert_temp(self, voltage):
        """Convert sensor voltage to temperature"""
        return (voltage - 0.5) * 100  # Example conversion

    def start_monitoring(self):
        """Start sensor monitoring thread"""
        self.running = True
        self.sensor_thread = threading.Thread(target=self.read_sensors)
        self.sensor_thread.start()

    def stop_monitoring(self):
        """Stop sensor monitoring"""
        self.running = False
        if hasattr(self, 'sensor_thread'):
            self.sensor_thread.join()

2. Intelligent Control Systems

class SmartEnvironmentController:
    def __init__(self):
        self.sensors = SensorFusion()
        self.fan_motor = Motor(forward=2, backward=3)
        self.heater_relay = OutputDevice(18)
        self.lights = PWMOutputDevice(19)

        # Control parameters
        self.target_temp = 22.0  # Target temperature in Celsius
        self.temp_tolerance = 1.0
        self.light_threshold = 0.3

        # Control state
        self.auto_mode = True
        self.manual_override = False

    def analyze_environment(self, sensor_data):
        """Intelligent decision making based on sensor data"""
        decisions = {
            'fan_speed': 0.0,
            'heater_on': False,
            'light_level': 0.0,
            'alert_status': 'normal'
        }

        # Temperature control logic
        temp_diff = sensor_data['temperature'] - self.target_temp

        if temp_diff > self.temp_tolerance:  # Too hot
            decisions['fan_speed'] = min(1.0, temp_diff / 5.0)  # Scale fan speed
            decisions['heater_on'] = False
        elif temp_diff < -self.temp_tolerance:  # Too cold
            decisions['fan_speed'] = 0.0
            decisions['heater_on'] = True

        # Light control logic
        if sensor_data['light_level'] < self.light_threshold:
            decisions['light_level'] = 1.0 - sensor_data['light_level']  # Complement lighting

        # Security monitoring
        if sensor_data['motion'] and sensor_data['distance'] < 20:  # Close motion
            decisions['alert_status'] = 'intrusion_detected'
        elif sensor_data['distance'] < 5:  # Very close object
            decisions['alert_status'] = 'obstacle_warning'

        return decisions

    def execute_controls(self, decisions):
        """Execute control decisions"""
        if not self.manual_override:
            # Motor control
            if decisions['fan_speed'] > 0:
                self.fan_motor.forward(decisions['fan_speed'])
            else:
                self.fan_motor.stop()

            # Heater control
            if decisions['heater_on']:
                self.heater_relay.on()
            else:
                self.heater_relay.off()

            # Light control
            self.lights.value = decisions['light_level']

    def run_control_loop(self):
        """Main control loop"""
        self.sensors.start_monitoring()

        try:
            while True:
                if not self.sensors.sensor_data.empty():
                    current_data = self.sensors.sensor_data.get()
                    decisions = self.analyze_environment(current_data)
                    self.execute_controls(decisions)

                    # Log system status
                    self.log_system_status(current_data, decisions)

                sleep(0.5)  # Control loop frequency

        except KeyboardInterrupt:
            print("Shutting down control system...")
        finally:
            self.sensors.stop_monitoring()
            self.fan_motor.stop()
            self.heater_relay.off()
            self.lights.off()

    def log_system_status(self, sensor_data, decisions):
        """Log system performance data"""
        log_entry = {
            'timestamp': sensor_data['timestamp'],
            'sensors': sensor_data,
            'controls': decisions,
            'mode': 'auto' if self.auto_mode else 'manual'
        }

        # In a real system, this would write to a file or database
        print(f"System Status: Temp={sensor_data['temperature']:.1f}°C, "
              f"Fan={decisions['fan_speed']:.1f}, "
              f"Alert={decisions['alert_status']}")

3. Project Documentation Standards

"""
Smart Environment Control System
================================

Project: IoT Environmental Controller
Author: Student Name
Date: Current Date
Version: 1.0

Description:
    An intelligent system that monitors environmental conditions and automatically
    adjusts heating, cooling, and lighting based on sensor feedback.

Hardware Requirements:
    - Raspberry Pi 4 or similar
    - Temperature sensor (DS18B20 or similar)
    - Light sensor (LDR with MCP3008 ADC)
    - Motion sensor (PIR)
    - Distance sensor (HC-SR04)
    - DC Motor (for fan simulation)
    - Relay module (for heater control)
    - PWM-controlled LED (for lighting)

Software Dependencies:
    - Python 3.7+
    - gpiozero library
    - threading module (standard library)
    - queue module (standard library)
    - json module (standard library)

Installation:
    pip install gpiozero

Usage:
    python smart_environment.py

Configuration:
    Modify target_temp and light_threshold variables in SmartEnvironmentController
    class to adjust system behavior.

Testing:
    Run included test functions to verify sensor readings and control outputs
    before deploying the full system.

Known Issues:
    - Temperature sensor calibration may need adjustment for local conditions
    - Motion sensor has 2-second reset time that affects rapid detection

Future Enhancements:
    - Web interface for remote monitoring
    - Data logging to CSV files
    - Machine learning for predictive control
    - Mobile app integration
"""

Project Examples for Students:

Project 1: Smart Garden Monitor

  • Monitors soil moisture, light, and temperature
  • Controls watering pump and grow lights
  • Logs plant growth data
  • Sends alerts when intervention needed

Project 2: Home Security System

  • Multiple sensor integration (motion, door, window)
  • Camera trigger on detection
  • SMS/email notifications
  • Mobile app control interface

Project 3: Weather Station

  • Measures temperature, humidity, pressure, wind
  • Data logging with timestamps
  • Weather prediction algorithms
  • Web dashboard for data visualization

Project 4: Automated Greenhouse

  • Climate control (temperature, humidity)
  • Automated watering system
  • Light cycle management
  • Growth optimization algorithms

Week 8: Project Presentations and Assessment

Learning Objectives:

  • Present technical projects professionally
  • Give and receive constructive feedback
  • Self-evaluate learning progress and achievements
  • Plan next steps for continued learning

Key Concepts:

  • Technical Communication: Explaining complex systems clearly
  • Presentation Skills: Engaging audiences with technical content
  • Peer Review: Constructive feedback and collaboration
  • Self-Assessment: Honest evaluation of own work
  • Professional Development: Planning continued learning paths
  • Portfolio Building: Documenting achievements for future opportunities

Presentation Structure:

  1. Project Overview (2 minutes)
  • Problem statement and objectives
  • Target audience and use cases
  • Key features and functionality
  1. Technical Demonstration (2 minutes)
  • Live system operation
  • Key components and how they work
  • Code walkthrough of critical sections
  1. Challenges and Solutions (1 minute)
  • Major obstacles encountered
  • Creative solutions implemented
  • Lessons learned from failures

Evaluation Criteria:

Technical Merit (40%):

  • System functionality and reliability
  • Code quality and organization
  • Creative problem-solving approach
  • Integration of multiple technologies

Communication (30%):

  • Clear explanation of technical concepts
  • Engaging presentation delivery
  • Appropriate use of visual aids
  • Effective response to questions

Documentation (20%):

  • Complete project documentation
  • Code comments and structure
  • User instructions and setup guides
  • Reflection on learning process

Collaboration (10%):

  • Constructive feedback to peers
  • Professional interaction during Q&A
  • Willingness to share knowledge
  • Respectful critique and discussion

Python Programming Trivia Challenge: End the term with fun technical questions:

  1. What does “PEP 8” refer to in Python?
  2. What’s the difference between == and is in Python?
  3. How do you handle exceptions in Python?
  4. What is a Python decorator?
  5. What’s the difference between a list and a tuple?

Grade 10-12 Final Assessment - Weeks 6-8

Integrated Systems Project Assessment

Format: Major Project + Technical Presentation + Peer Review (2 weeks + presentation day)

Project Requirements: Students must create an integrated system that combines:

  • At least 3 different sensors
  • At least 2 actuators (motors, lights, relays, etc.)
  • Data logging and analysis
  • User interface (command line or simple GUI)
  • Error handling and safety features

Part A: Technical Implementation (40 points)

System Design (10 points)

  • Clear problem definition and solution approach
  • System architecture diagram showing component relationships
  • Hardware schematic or connection diagram
  • Software flowchart or algorithm description

Code Quality (15 points)

  • Well-structured, modular code with functions/classes
  • Appropriate variable names and code organization
  • Comprehensive comments explaining complex sections
  • Error handling for hardware failures
  • Efficient algorithms and resource usage

Hardware Integration (15 points)

  • Stable sensor readings with appropriate filtering
  • Reliable actuator control with safety limits
  • Proper electrical connections and component usage
  • System operates reliably for extended periods
  • Professional cable management and mounting

Part B: Documentation and Communication (25 points)

Project Documentation (15 points) Create a complete project report including:

  • Executive summary of project goals and achievements
  • Detailed technical specifications and requirements
  • Installation and setup instructions
  • User manual with clear operating procedures
  • Troubleshooting guide for common problems
  • Code documentation with API reference

Technical Presentation (10 points)

  • Clear 5-minute presentation explaining project
  • Live demonstration of working system
  • Professional slides with technical diagrams
  • Confident handling of technical questions
  • Appropriate use of technical vocabulary

Part C: Innovation and Problem Solving (20 points)

Creative Solutions (10 points)

  • Original approach to solving chosen problem
  • Creative use of available hardware and software
  • Evidence of iterative design and improvement
  • Solutions show depth of understanding beyond basic requirements

Advanced Features (10 points) Choose and implement at least TWO:

  • Machine learning or AI decision making
  • Network communication (IoT connectivity)
  • Mobile app or web interface
  • Data visualization and analytics
  • Predictive algorithms or optimization
  • Integration with external APIs or services

Part D: Professional Skills (15 points)

Peer Collaboration (8 points)

  • Constructive feedback provided to classmates
  • Professional behavior during presentations
  • Willingness to help others debug problems
  • Respectful and insightful questions during Q&A

Self-Assessment (7 points) Written reflection addressing:

  • Most significant technical challenge and how you overcame it
  • What you would do differently if starting over
  • How this project connects to potential career interests
  • Specific skills you want to develop further
  • Your confidence level with different aspects of the project

Sample Project Evaluation Rubric:

Exceptional (90-100%)

  • System exceeds all requirements with innovative features
  • Code is publication-quality with comprehensive documentation
  • Presentation is engaging and demonstrates deep understanding
  • Shows leadership in helping others and contributing to class learning
  • Self-reflection shows sophisticated understanding of learning process

Proficient (80-89%)

  • System meets all requirements reliably
  • Code is well-structured with good documentation
  • Presentation is clear and technically accurate
  • Actively participates in peer learning and feedback
  • Self-reflection shows good awareness of strengths and growth areas

Developing (70-79%)

  • System meets most requirements with minor issues
  • Code works but may have organizational or documentation gaps
  • Presentation covers required topics but may lack depth
  • Participates adequately in class activities
  • Self-reflection shows basic understanding of learning process

Beginning (60-69%)

  • System meets basic requirements but has significant limitations
  • Code works for demonstration but has structural or reliability issues
  • Presentation covers basics but shows limited understanding
  • Minimal participation in peer activities
  • Self-reflection is superficial or lacks insight

Incomplete (Below 60%)

  • System fails to meet basic requirements or doesn’t function reliably
  • Code has major issues that prevent proper operation
  • Presentation is unclear or shows misunderstanding of concepts
  • Little to no participation in collaborative learning
  • Self-reflection missing or shows no evidence of learning

Term 1 Final Portfolio Assessment - All Grade Levels

Portfolio Components Checklist

For All Students:

  • Weekly reflection journals documenting learning progress
  • Photo documentation of all projects and experiments
  • Completed weekly assessments with corrections
  • Evidence of peer collaboration and teaching
  • Self-assessment of growth in each major topic area

Grade-Specific Additions:

Preschoolers (4-6 years):

  • Drawings of favorite STEM activities
  • Parent/teacher observation notes on engagement and skills
  • Examples of unplugged coding sequences created
  • Photos of technology exploration activities

Grade 2-5 (7-11 years):

  • Screenshots of completed Scratch projects
  • Blockly puzzle solutions and explanations
  • Game design documents and storyboards
  • Video explanations of programming concepts

Grade 6-9 (11-14 years):

  • Drone safety checklist created and used
  • Mission planning worksheets with risk assessments
  • Photos/videos of practical flying sessions
  • Research report on drone applications in chosen field

Grade 10-12 (14-16 years):

  • Complete code repositories with documentation
  • Hardware connection diagrams and schematics
  • Data analysis reports from sensor projects
  • Technical presentation slides and demonstration videos

Cross-Grade Learning Objectives Mastery

By the end of Term 1, students should demonstrate:

Preschoolers:

  • Basic understanding of STEM concepts through play
  • Ability to follow simple sequences and patterns
  • Safe interaction with age-appropriate technology
  • Curiosity and engagement with hands-on exploration

Grade 2-5:

  • Fundamental programming concepts using visual languages
  • Ability to create simple games and interactive stories
  • Understanding of sequence, loops, and basic logic
  • Confidence in debugging and problem-solving

Grade 6-9:

  • Comprehensive understanding of drone safety and regulations
  • Practical flying skills with safety awareness
  • Knowledge of aviation principles and laws
  • Teamwork and communication skills in technical contexts

Grade 10-12:

  • Proficiency in Python programming for hardware control
  • Ability to integrate multiple sensors and actuators
  • Professional documentation and presentation skills
  • Independent problem-solving and creative innovation

Preparation for Term 2

Preschoolers → Scratch Junior Programming:

  • Continue building sequencing skills
  • Introduction to tablet-based programming
  • Creative storytelling with technology

Grade 2-5 → IoT Integration with Sensors:

  • Bridge from visual programming to physical computing
  • Introduction to sensors and real-world data
  • Beginning electronics and circuit concepts

Grade 6-9 → Smart Home Security:

  • Apply drone safety concepts to IoT systems
  • Introduction to sensors and automation
  • Home automation and security principles

Grade 10-12 → Smart Cities:

  • Scale up from individual projects to community solutions
  • Advanced IoT networking and data analysis
  • Social impact of technology solutions

Additional Resources and Extensions

Online Learning Platforms:

  • Preschoolers: PBS Kids programming games, Kodable app
  • Grade 2-5: Scratch Jr., Code.org courses, Blockly games
  • Grade 6-9: DroneBlocks, FAA educational materials, aviation simulation games
  • Grade 10-12: Python.org tutorials, Raspberry Pi Foundation projects, GitHub learning labs

STEM Career Connections:

  • Robotics Engineer: Designs and builds robots for various applications
  • Software Developer: Creates programs and applications for computers and devices
  • Drone Pilot: Professional UAV operations for photography, surveying, delivery
  • IoT Developer: Connects everyday objects to the internet for smart automation
  • Data Scientist: Analyzes sensor data to find patterns and make predictions

Community Extension Activities:

  • Science Fair Projects: Using skills learned to create original investigations
  • STEM Club Leadership: Teaching younger students basic concepts
  • Community Problem Solving: Identifying local problems that technology could help solve
  • Maker Space Participation: Continuing projects in community workshop environments

Assessment Data Tracking: Teachers should maintain records of:

  • Individual student progress through learning objectives
  • Common areas of difficulty requiring additional support
  • Exceptional student work that could be showcased
  • Parent/guardian feedback on home engagement with STEM concepts
  • Equipment and resource needs for optimal program delivery

This completes the comprehensive Term 1 curriculum with detailed notes, assessments, and support materials for all grade levels in the IoT & Robotics program. Each grade level has age-appropriate challenges that build foundational skills while maintaining engagement and fostering creativity in STEM learning.


Notes

I’ve created a comprehensive set of notes and assessment tests for Term 1 across all grade levels (Preschoolers through Grade 10-12). The document includes:

What’s Included:

For Each Grade Level:

  • Detailed weekly lesson notes covering weeks 1-8 content
  • Key concepts and learning objectives for each topic
  • Practical examples and code samples (for programming grades)
  • Age-appropriate assessment tests with multiple formats

Assessment Formats:

  • Preschoolers (4-6): Practical/observational assessments with hands-on activities
  • Grade 2-5 (7-11): Computer-based Scratch/Blockly challenges
  • Grade 6-9 (11-14): Written tests + practical drone safety demonstrations
  • Grade 10-12 (14-16): Coding assignments + hardware integration projects

Key Features:

  • Covers all 8 weeks of Term 1 content
  • Aligned with curriculum from the IoT & Robotics document
  • Progressive difficulty appropriate for each age group
  • Practical assessments that test real understanding
  • Detailed rubrics for fair evaluation
  • Extension activities for advanced learners
  • Safety guidelines and best practices

Topics Covered:

  • Preschoolers: STEM basics, simple machines, unplugged coding
  • Grade 2-5: Scratch programming, Blockly games, interface navigation
  • Grade 6-9: Drone basics, aviation principles, safety regulations
  • Grade 10-12: Python programming, hardware control, sensor integration

Each assessment is designed to be practical and engaging, testing both theoretical knowledge and hands-on application skills. The rubrics provide clear criteria for evaluation at different skill levels.


Perfect! I’ve now completed the comprehensive Term 1 notes and assessment materials covering all 8 weeks for all grade levels. Here’s what’s now included:

Assessment Test

Assessment Test

Assessment Test

Assessment Test

Assessment Test

Assessment Test

Assessment Test