Self-contained Arduino library for the DIYables Multi-Function Shield. No external dependencies — all component drivers are built in.
| Component | Access | Notes |
|---|---|---|
| 4-digit 7-segment display | MFS.display |
Via 74HC595 shift register |
| 3 buttons | MFS.button1 … MFS.button3 or MFS.button(1‑3) |
Active LOW, internal pullup, 50 ms debounce |
| 4 LEDs | MFS.led1 … MFS.led4 or MFS.led(1‑4) |
Active LOW |
| Buzzer | MFS.buzzer |
Pin 3 |
| Potentiometer | MFS.readPot() / MFS.readPotPercent() |
Analog A0 |
| Interface | Access | Notes |
|---|---|---|
| LM35 temperature | MFS.readTemperature() |
Analog A4, jumper selects pull-up |
| DS18B20 (1-Wire) | — | A4, jumper selects pull-up |
| IR receiver | — | Pin 2 |
| I2C (SDA / SCL) | — | A4 / A5 |
| Servo / PWM | — | Pins 5, 6, 9 |
| Board | Tested |
|---|---|
| Arduino Uno R3 | ✅ |
| Arduino Uno R4 WiFi | ✅ |
| Arduino Uno R4 Minima | ✅ |
| Arduino Mega | ✅ |
| Arduino Due | ✅ |
| Arduino Giga | ✅ |
| DIYables STEM V4 IoT (works like Arduino Uno R4 WiFi) | ✅ |
| DIYables STEM V4B IoT (works like Arduino Uno R4 WiFi) | ✅ |
| DIYables STEM V3 (works like Arduino Uno R3) | ✅ |
| DIYables STEM V4 Edu (works like Arduino Uno R4 Minima) | ✅ |
| DIYables MEGA2560 R3 (works like Arduino Mega 2560 Rev3) | ✅ |
| DIYables ESP32 S3, Uno-form factor | ✅ |
| Other boards | Not yet, expected to work |
- Arduino Uno - Multi-Function Shield
- Arduino Uno R4 - Multi-Function Shield
- Arduino Mega - Multi-Function Shield
- Arduino Giga R1 WiFi - Multi-Function Shield
See DIYables Multi-Function Shield Library Reference for the complete API documentation.
| Function | Pin |
|---|---|
| LED 1 | 13 |
| LED 2 | 12 |
| LED 3 | 11 |
| LED 4 | 10 |
| Button 1 | A1 |
| Button 2 | A2 |
| Button 3 | A3 |
| Buzzer | 3 |
| Display LATCH | 4 |
| Display CLOCK | 7 |
| Display DATA | 8 |
| Potentiometer | A0 |
| LM35 / DS18B20 / I2C SDA | A4 |
| I2C SCL | A5 |
| IR Receiver | 2 |
| Servo / PWM | 5, 6, 9 |
Uses only Arduino standard APIs (digitalRead, analogRead, millis, etc.) — compatible with AVR, SAMD, SAM, ESP32, RP2040, STM32, and other Arduino-compatible boards.
BSD — see license.txt.
