Output Devices

electrical safety
   ~1 mA: OK
   ~10 mA: shock, contraction
   ~100 mA: fibrillation
   body: M ohm external, k ohm internal
   dielectric breakdown: ~kV/mm
   supply capacitors
   inductive flyback
   polarity protection diode, MOSFET
   level shift MOSFET
   connector polarization, orientation
   circuit protection

power
   wire gauge
   USB
      charger
      hub
      battery
      module
      meter
   power supply
      bench
      switching, linear, regulated
   supercapacitor
   LiPo
      battery charge controller storage
   wireless

current measurement
   in-line meter
   supply regulation
   sense resistor
   magnetic field
   inductance

LED
   current limiting
   hello.button-blink.C3 board components traces interior
      hello.button-blink.C3.ino hello.button-blink.C3.py video
   PWM
      hello.fade.C3.py video
   Charlieplexing
      hello.array.44 board components traces traces+exterior interior C makefile video
      hello.array.44.2 board components bottom vias top top+exterior interior C makefile video

RGB LED
   pixels lights wires
   NeoPixel/WS2812B/SK6812
      hello.WS2812B board components top interior
         hello.WS2812B.RP2040.py video
      Arduino Micropython library
   3 in 1
      hello.RGB.45 board components traces traces+exterior interior C makefile video

LEDs
   diode drop, series-parallel
   MOSFET
      N, P, N
      floating gates, gate resistors
      dissipation, Rds, switching
      BJT, BiCMOS, IGBT
   hello.LEDs.t412 board components traces traces+exterior interior
      hello.LEDs.t412.ino video
      thermal runaway
      eye safety

displays
   LCD
      HD44780 library
         hello.LCD.44 board components traces traces+exterior interior C makefile video
      I2C PCF8574 library
         hello.I2C.t1614 hello.LCD.I2C.ino video
   OLED
      SSD1306
      hello.SSD1306.RP2040 board components top holes interior
         hello.SSD1306.RP2040.py ssd1306.py video
      library scripts
         hello.SSD1306.45 board components traces traces+exterior interior C makefile video
   TFT
      ILI9341 library
         hello.ILI9341.SW.D21E board components traces traces+exterior interior video
         hello.ILI9341.HW.D21E board components top top+exterior bottom holes interior video
      ST7735 video
   E Ink modules

video
   RS170, NTSC, PAL, SECAM, VGA
   75 ohm impedance
   hello.video.44 board components traces traces+exterior interior C makefile video
   SPI TVout thinner client color

DC motor
   H-bridge
      DRV8251A
         hello.DRV8251A.RP2040 board components top interior
      TB67H451AFNG,EL
         hello.TB67H451.RP2040 board components top interior
            hello.TB67H451.RP2040.ino hello.TB67H451.RP2040.py boot.py video
         hello.H-bridge.D11C board components traces traces+exterior interior
            hello.H-bridge.D11C.ino video
      A4950
         hello.H-bridge.44 board components traces traces+exterior interior C makefile video
   Dual H-bridge
      DRV8847
   torque, power, efficiency, gearing
   vibration
   heat

speaker
   MP3 library module
      coming
   I2S MAX98357A library module
      hello.MAX98357A.RP2040 board components top holes interior
         hello.MAX98357A.RP2040.ino video
   PWM class D, library
      hello.TB67H451.RP2040.audio.ino hello.TB67H451.RP2040.audio.py boot.py video
         hello.TB67H451.RP2040.wave.py sample.py hello.py convert_byterray.py video
         hello.TB67H451.RP2040.wave.ino sample.ino sample.main.ino convert.py video
      hello.speaker.D11C board components traces traces+exterior interior
         hello.speaker.D11C.ino hello.speaker-registers.D11C.ino video

solenoid

servo motor
   50 Hz ~1-2 ms PWM
   (dis)continuous rotation
   ATtiny412
      hello.servo.t412 board components traces traces+exterior interior
         hello.servo.t412.ino hello.servo-registers.t412.ino video
   ATSAMD11C
      hello.servo-D11C board components traces traces+exterior interior
         hello.servo-registers.D11C.ino video
   ATtiny44
      hello.servo.44 board components traces traces+exterior interior
         ZLDO1117
      hello.servo.44.1 board components traces traces+exterior interior
         LM2940
      C (hardware PWM) makefile C (two-channel, software PWM) makefile video

brushless DC motor (BLDC)
   efficiency, density, reliability, noise
   inrunner, outrunner, pancake, fan, gimbal
   Kv (RPM/V)
   phases/rotation (6 typical)
   drive waveform
   open-loop, closed-loop control
   back EMF (BEMF) sensing
   ~1 (fan), 10 (drone), 100 (skateboard), 1000 (car) A,$
   triple half-bridge
      A4949
         hello.A4949.RP2040 board components top interior
            hello.A4949.RP2040.py video
   electronic speed controller (ESC)
      hello.ESC.44 board components traces traces+exterior interior
         C makefile video
      firmware
      servo PWM
      power input, output
      initialization, calibration

stepper motor
   types
   wire identification
   step size (1.8 degrees typical)
   full, half, microstepping
   current, duration
   step and direction
      DRV8428
         hello.DRV8428-D11C board components traces traces+exterior holes interior
            hello.DRV8428-D11C.ino video
         hello.DRV8428-D11C-NEMA17 board components traces traces+exterior holes interior
            code video
   H-bridge
      hello.DRV8251A.RP2040 board components top interior
         hello.DRV8251A.RP2040.stepper.py video
         hello.DRV8251A.RP2040.stepper.load.py video
      hello.DRV8251A.RP2040.PD board components top holes interior
         hello.DRV8251A.RP2040.stepper.PD.py video
      hello.stepper.bipolar.D11C board components top top+exterior bottom holes interior
         hello.stepper.bipolar.D11C.ino video
      hello.stepper.bipolar.44 board components traces traces+exterior interior
         full makefile video
   driver
   electro-permanent electrostatic

motor control
   Allegro
   TI
   Trinamic
   Pololu
   motion control

solid state relay
   AC vs DC
   IC
   hockey puck
   wiring
      voltage drop: ~V
      safety: switch hot side
      US: black (red,blue) = hot, white = neutral, green(-yellow) = ground
      EU: brown (black,gray) = hot, blue = neutral, green-yellow = ground
   switched outlet

shape memory

piezo polymer

artificial muscle fishing line conducting thread actuator LCE

soft inflatable

pneumatics hydraulics

assignment
   group assignment:
      measure the power consumption of an output device
   individual assignment:
      add an output device to a microcontroller board you've designed,
         and program it to do something