Input Devices

inputs
   ports
   comparator
   A/D
   I2C

switch
   button slide debouncing
      hello.button-blink.C3 board components traces interior
         hello.button-blink.C3.ino hello.button-blink.C3.py video
      hello.button.D11C board components traces traces+exterior interior
         hello.button.USB.ino hello.button.D11C.ino
      hello.button.t412 board components traces traces+exterior interior
         hello.button.serial.ino hello.button.t412.ino

magnetic field
   Hall effect
      hello.mag.45 board components traces traces+exterior interior
         hello.mag.45.c makefile hello.mag.45.py video 
      hello.mag.t412 board components traces traces+exterior interior
         hello.mag.serial.ino hello.mag.t412.ino
      hello.mag.D11C board components traces traces+exterior interior
         hello.mag.USB.ino hello.mag.D11C.ino
   vector applications simulation
      hello.TLE493D.t412 board components traces traces+exterior interior
         hello.TLE493D.t412.ino .c .make .py video

potentiometer
   hello.DRV8428-D11C-NEMA17

step response
   resistance, capacitance, inductance, position, pressure, tilt,
      acceleration, humidity, proximity, touch, multitouch, force, bending, ...
   averaging, filtering, shielding
   self-capacitance, loading, 1 pin
      hardware
         QTouch FreeTouch
            hello.touch.D21 board components traces interior
               hello.touch.D21.ino video
         ESP32 IDF Arduino MicroPython
            hello.touch.S3 board components top interior
               hello.touch.S3.py video
      resistor
         hello.steptime1.RP2040 board components traces interior
            hello.steptime1.RP2040.py video
      remote processor
         hello.load.RP2040.t412 board components traces holes interior
            hello.load.RP2040.py hello.load.t412.ino video
      caliper LVDT CVDT video
   mutual capacitance, transmit-receive, 2 pins
      resistors
         hello.txrx2.RP2040 board components traces holes interior
            hello.txrx2.RP2040.ino video
         hello.txrx.t1624 board components traces traces+exterior interior
            hello.txrx.t1624.ino hello.txrx.t1624.py video
      remote op-amp
         hello.txrx.RP2040.op-amp board components traces holes interior
            hello.txrx.RP2040.op-amp.ino video
   dielectric spectroscopy
      application theory measurement VNA

temperature
   bridges
   NTC RTD thermistors
      hello.temp.45 board components traces traces+exterior interior
      hello.temp.45.c makefile hello.temp.45.py video
   IR
   thermocouples

light
   LED reverse bias current
   IR visible phototransistor
      hello.light.45 board components traces traces+exterior interior
      hello.light.45.c makefile hello.light.45.py video 
   synchronous detection spread spectrum
      hello.reflect.45 board components traces traces+exterior interior
      hello.reflect.45.c makefile
      hello.reflect.45.py video 
   color RGB
      hello.VEML6040.t412 board components traces traces+exterior interior
      hello.VEML6040.ino hello.VEML6040.py video

motion
   Doppler radar
      hello.RCWL-0516 board components traces traces+exterior interior
      hello.RCWL-0516.c makefile
      hello.RCWL-0516.py video
   pyroelectric
      hello.HC-SR501 board components traces traces+exterior interior
      hello.HC-SR501.c makefile
      hello.HC-SR501.py video

distance
   optical
      VL53L0X library
         hello.VL53L0X.D11C board components reflow traces traces+exterior interior
         hello.VL53L0X.D11C.ino hello.VL53L0X.D11C.py video
      VL53L1X module library
         hello.VL53L1X.t1614 board components traces traces+exterior interior
         hello.VL53L1X.ino hello.VL53L1X.py video
      VL53L5CX module
         coming
   sonar
      hello.HC-SR04 board components traces traces+exterior interior
      hello.HC-SR04.c makefile
      hello.HC-SR04.py video
   LIDAR

location, time
   GNSS NMEA NEO-6 GT-U7 module
   hello.GPS.t1614 board components traces traces+exterior interior
      hello.GPS.t1614.ino video

acceleration, rotation, orientation, IMU
   3 axis accelerometer
      ADXL343
         hello.ADXL343 board components reflow traces traces+exterior interior
         hello.ADXL343.c makefile calibration
         hello.ADXL343.py video 
   6 axis accelerometer+gyroscope
      MPU-6050 module ICM-20609
         hello.MPU-6050.RP2040 board components top holes interior
            hello.MPU-6050.ino hello.MPU-6050.py video
   9 axis accelerometer+gyroscope+magnetometer
      BNO085 module BNO086
         RVC serial
            hello.4754.RP2040 board components traces holes interior
            hello.4754.RP2040.py hello.4754.RP2040.html video
         SH2 library I2C
            coming
      MPU-9250 ICM-20948 module
            coming

sound
   MEMS
      digital
         I2S Arduino MicroPython
         bottom port module
            hello.ICS-43434.RP2040 board components traces holes interior
             hello.ICS-43434.RP2040.ino hello.ICS-43434.RP2040.py video
         top port
            hello.CMM-4030D-261-I2S-TR.t1614 board components traces interior
            hello.CMM-4030D-261-I2S-TR.ino hello.CMM-4030D-261-I2S-TR.py video
      analog
         hello.SPU0414HR5H board components traces traces+exterior interior
         hello.SPU0414HR5H.c makefile
         hello.SPU0414HR5H.py video
   electret
      op-amp
         hello.mic.45 board components traces traces+exterior interior
         hello.mic.45.c makefile
         hello.mic.45.py video
   speech

vibration
   piezo

force
   force sensing resistor
   strain gauge
   load cell
   capacitance

angle

pressure

pulse

air pollution

gases

image
   ESP32
      ESP32S3 XIAO Sense module camera
         hello.ESP32-Sense.ino video
      ESP32-CAM
         hello.ESP32-CAM board components traces traces+exterior holes interior
            camera library video
            hello.ESP32-CAM.ino video
   webcams 
      boards
   libraries
      OpenCV OpenCV.js SimpleCV
      libuvc guvcview
   WebRTC
      video.html video 
      browser security

assignment
   group assignment:
      probe an input device's analog levels and digital signals
   individual assignment:
      measure something: add a sensor to a microcontroller board
      that you have designed and read it