

The Adafruit FunHouse (Manufacturer Part ID: 4985) is a versatile microcontroller board designed specifically for Internet of Things (IoT) projects. It features a built-in touchscreen display, multiple onboard sensors, and Wi-Fi connectivity, making it an excellent choice for creating smart home applications, interactive devices, and educational projects. Its user-friendly design and compatibility with CircuitPython and Arduino IDE make it accessible to both beginners and experienced developers.








| Specification | Details |
|---|---|
| Microcontroller | ESP32-S2 (240 MHz, single-core processor with Wi-Fi) |
| Flash Memory | 4 MB SPI Flash |
| Display | 1.14" 240x135 color TFT LCD with ST7789 driver |
| Connectivity | Wi-Fi 802.11b/g/n |
| Sensors | Temperature, humidity, barometric pressure, PIR motion sensor, light sensor |
| Power Supply | USB-C (5V input) or external battery (via JST connector) |
| GPIO Pins | 8 GPIO pins (3.3V logic) |
| Programming | CircuitPython, Arduino IDE |
| Dimensions | 90mm x 70mm x 12mm |
| Pin | Name | Description |
|---|---|---|
| 1 | 3V3 | 3.3V power output for external components |
| 2 | GND | Ground connection |
| 3 | GPIO0 | General-purpose I/O pin (can also be used for touch input) |
| 4 | GPIO1 | General-purpose I/O pin |
| 5 | GPIO2 | General-purpose I/O pin |
| 6 | GPIO3 | General-purpose I/O pin |
| 7 | GPIO4 | General-purpose I/O pin |
| 8 | GPIO5 | General-purpose I/O pin |
| 9 | JST Battery | Connector for external battery (3.7V LiPo/LiIon) |
| 10 | USB-C | USB-C connector for power and programming |
Powering the Board:
Programming the Board:
.uf2 file to the board's USB drive to install CircuitPython.Connecting Sensors and Peripherals:
Wi-Fi Setup:
The following example demonstrates how to connect the FunHouse to Wi-Fi and read the onboard temperature sensor:
#include <WiFi.h>
#include <Adafruit_Sensor.h>
#include <Adafruit_AHTX0.h>
// Replace with your Wi-Fi credentials
const char* ssid = "Your_SSID";
const char* password = "Your_PASSWORD";
// Initialize the temperature and humidity sensor
Adafruit_AHTX0 aht;
void setup() {
Serial.begin(115200);
delay(1000);
// Connect to Wi-Fi
Serial.print("Connecting to Wi-Fi");
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
}
Serial.println("\nWi-Fi connected!");
// Initialize the AHT sensor
if (!aht.begin()) {
Serial.println("Failed to initialize AHT sensor!");
while (1);
}
Serial.println("AHT sensor initialized.");
}
void loop() {
// Read temperature and humidity
sensors_event_t humidity, temp;
aht.getEvent(&humidity, &temp);
// Print the readings to the Serial Monitor
Serial.print("Temperature: ");
Serial.print(temp.temperature);
Serial.println(" °C");
Serial.print("Humidity: ");
Serial.print(humidity.relative_humidity);
Serial.println(" %");
delay(2000); // Wait 2 seconds before the next reading
}
The board is not detected by my computer:
Wi-Fi connection fails:
Sensors are not providing data:
The touchscreen is unresponsive:
Can I use the FunHouse with a battery only?
Yes, the FunHouse can be powered by a 3.7V LiPo/LiIon battery via the JST connector. Ensure the battery is charged and has sufficient capacity for your project.
What programming languages are supported?
The FunHouse supports CircuitPython and Arduino IDE. Both platforms are well-documented and have extensive libraries for IoT development.
Is the FunHouse compatible with other Adafruit sensors?
Yes, the FunHouse is compatible with most Adafruit sensors and breakout boards. Use the GPIO pins to connect additional components.
Can I use the FunHouse without Wi-Fi?
Yes, the FunHouse can function as a standalone microcontroller without Wi-Fi. However, many of its features are designed for IoT applications.
This concludes the documentation for the Adafruit FunHouse. For additional resources, visit the Adafruit FunHouse product page.