A Greenhouse Left To Grow Naturally
It's 2 AM. The temperature in the greenhouse drops below the threshold. A soil moisture sensor flags that the irrigation cycle didn't complete. A relay clicks. A pump kicks on. Forty minutes later the cycle finishes, the relay drops, and the node logs the event.
Nobody woke up. Nobody checked a dashboard. Nobody's server was involved.
That's the goal of IoThome, not a smarter app, not a prettier dashboard, but a node that handles its own business without asking permission from the internet.
Here's how it actually works.
The Hardware Problem Nobody Talks About
Smart farming IoT demos are easy. Stick a soil moisture sensor on an Arduino, hook up a relay module, write 50 lines of code, and you've got something that works on your desk. Getting that same thing running reliably in a field, unattended, for six months, is a completely different problem.
The hardware that gets you to a demo almost never survives contact with a real deployment. GPIO pinouts vary between boards. Analog sensing requires clean signal conditioning. Relay outputs need proper isolation. And if you're running multiple sensors and actuators on a single node, you run out of GPIO fast.
The typical answer is to redesign the hardware from scratch. New PCB, new firmware, new everything. That's expensive, slow, and means your prototype work was largely throwaway.
IoThome was built specifically to eliminate that cycle. At its core is the IoTextra module family, standardised, open hardware I/O mezzanines that sit on top of smart compute modules. The smart compute module changes depending on your needs, but the I/O hardware stays consistent, the wiring stays consistent, and the software stays consistent. You prototype with the same hardware you deploy. That single decision saves weeks.
- Shop the Hardware: MakeThingsHappy.io
- GitHub and Documentation: IoThome
The IoThome Stack
IoThome is three layers that each do one job well, and the key is how tightly they fit together.
Layer 1: IoTextra I/O Modules
IoTextra is the physical backbone of every IoThome node. These are purpose-built professional I/O hardware modules designed from the ground up for real deployments. IoTextra solves the typical maker problem: prototypes work on breadboards but aren't reliable for 24/7 operation. These modules provide industrial-grade signal conditioning with maker-friendly interfaces.
IoTextra comes in three key variants:
- Digital Module: 8 digital I/O channels with proper voltage level conversion and protection
- Analog Module: 4 analog input channels (±0-10V or 0-40mA) with 16-bit ADC resolution
- Combo Module: 2 analog + 2 digital channels in one compact unit
These modules communicate via I²C or GPIO and have connectors or screw terminals for field wiring, no breadboard rats' nests, no hand-soldering GPIO protection circuits. The analog inputs have proper signal conditioning, which matters when you're reading sensors in electrically noisy environments.
Make Things Happy provides two key controller options for running IoThome:
IoTsmart is the rapid prototyping path, compact System-on-Module (SOM) boards based on ESP32-S3, RP2040, RP2350A, and other MCUs that plug directly into IoTextra modules. These are designed for IoT-based distributed sensing and control. Think of IoTsmart as the "Arduino phase" of a project, except you don't throw it away later, it's production-ready for many applications, especially wireless sensor networks and low-channel-count industrial automation.
IoTbase is the more robust controller platform with better thermal management, more mounting options, and serial debugging capability during operation. You'd migrate to IoTbase when you need more I/O expansion, professional enclosure mounting, or are deploying in harsher environments.
For a smart farming node you're typically working with the IoTextra Combo and an IoTbase NANO, the workhorse of the family. It puts...
Read more »
Arshia Keshvari
Pure Engineering
Steve Morgan
Ken Yap