Physical Computing
Visualization Tools
Map Explorer (source) lets students explore the map() function.
PWM Explorer (source) is an online visualization with sliders to adjust PWM frequency (or period) and duty cycle, and see the effects on the waveform, the average voltage, and a simulated motor and LED.
The Arduino PWM Explorer is a project, that includes code, for students to learn about PWM by adjusting a couple of potentiometers and seeing the affect on (1) an LED and (2) a simulated oscilloscope.
Inertial Measurement Unit Tools
https://github.com/osteele/imu-tools sends data from an inertial measurement unit (IMU) on an ESP32 to a command-line program or web application. Its npm package can receive data through the Message Queuing Telemetry Transport (MQTT) protocol in any browser, or through Bluetooth in Google Chrome.
https://github.com/osteele/Arduino-BLE-IMU is firmware that runs on an ESP32 and relays BNO055 data wirelessly to a computer through MQTT over Wi-Fi or through Bluetooth.
https://github.com/osteele/imu-client-examples is a set of examples that use relayed wireless IMU data in various ways: to animate one or more Stanford bunnies, and to graph the data.