Reading some discussions under the articles about the HARDWARIO IoT Kit inspired me to write about reasons why we started and keep developing the HARDWARIO IoT Kit. I would like to use this article for future references to avoid repeating myself. Just as many others - this contribution is driven by a laziness ;-)
Build Electronics, Start Smoothly
People who want to build their own electronic devices discover that they have to "invest" dozens or hundreds of hours of their time to start and build a useful device. Our mission is to lower this starting barrier and allow them to make a ready-to-use home automation electronics in less a few hours even for newcomers.
There are plenty of STEM kits focused on education but they usually do not allow to make the final device easily (e.g. they do not have a suitable enclosure, they do not feature wireless communication or they are not powered from batteries). The primary focus of HARDWARIO is to make such things easily, have fun, and - if you like - educate yourself.
Let me give you some hints: the presence of the enclosure, radio communication and battery operation for years (well, the last one is not really obvious from the picture ;-)
That's right, HARDWARIO PIR motion detector does not have any wires and no soldering is required - we have pluggable modules:
You do not need to write the code or copy/paste the examples and compile the firmware. We maintain the pre-prepared firmware images who can be programmed to HARDWARIO products directly from GitHub repositories using the HARDWARIO Firmware Tool.
For quick start at client/user interface side we provide either various local (offline) integrations as well as those connected to cloud solutions - just look into the HARDWARIO documentation.
We also want to allow the maker to dig as deep as he/she wants to and discover how the hardware and software works under the hood. That's why HARDWARIO hardware and software is open, coming with documentation, tutorials and personal support (and you bet we are really good at this).
Best Kit for Our Own Stuff
The second motivation comes from our need to have a "perfect" kit for our own home automation projects.
I am very much biased by collecting and exploring various development boards, kits, hot new parts, etc.. I have a pretty large collection (just a small fraction of it is on photo below), but I always miss some property in every single kit.
The selection of following properties are based on the "experience" with the other kits. To be more specific, these are the features that are not available "together" (till HARDWARIO ;-):
Extensibility - MQTT publish/subscribe message bus.
Low-power hardware design to allow years of operation from batteries.
Event-based firmware API SDK with prevention of dynamic memory allocation during operation (less prone to operation errors).
Smart power management in the firmware SDK.
Security included out-of-the-box.
Answers for Frequently Asked Questions
Why another electronics kit?
There is not any other kit with all the above defined properties AFAIK.
Why HARDWARIO hardware is not as cheap as clones?
We are focused for hardware long life and low 10 years TCO - including total batteries used, minimized operation troubleshooting and low hardware fix/replace/renew rate.
HARDWARIO products are not optimized for low initial hardware purchase price that leads to hardware instability and malfunctions (especially when they are operated outside the work desk) caused by scrap components, cloned chips, low quality designs with obvious flaws, failures to comply with the chip maker recommendations, etc.
We do provide individual technical support.
We do provide 3 years of warranty on the hardware.
HARDWARIO products are made from genuine industrial-grade components.
HARDWARIO products are manufactured in the EU.
We invest almost everything to R&D - new features and products are coming on regular basis.
We maintain documentation, tools, pre-built firmware images, GitHub repositories, etc.
Why HARDWARIO hardware is not as cheap as single-purpose products?
Have a look at reasons for previous question.
Quality has higher priority than quantity for us.
HARDWARIO is not manufactured in million series yet.
HARDWARIO uses top low-power sensors and prevents communication technology with high power consumption (e.g. WiFi)
HARDWARIO is transparent (open sourced, documented) - you can get to know and learn.
HARDWARIO is modular (e.g. by swapping top module you can change from PIR motion sensor to climate monitor) and extensible - both hardware and software. You are free to modify, add features, use in unintended ways.
Why HARDWARIO is not Arduino compatible?
Arduino is great for many purposes and have the biggest maker community, but have some issues also:
Wireless communication is not natural part of Arduino ecosystem (HW, firmware, IDE, integrations).
Low-power design is hard on Arduino platform (both HW and SW perspective).
Arduino lacks the event API.
Arduino lacks the security.
Arduino lacks the pre-built firmware images and their management.
The Size of the standardized HARDWARIO Module format is defined by 2 AAA batteries.
Arduino suffers from schizophrenia of 5V / 3.3V power.
Many Arduino products are not suitable to be used in industry environment or do not even guarantee the temperature span (e.g. for a low temperature operation).
Why WiFi is not used for wireless communication?
Low-power 868 MHz radio allows HARDWARIO better signal penetration through the walls and 2 years of battery life from 2 AAA Alkaline cells. With WiFi and the same communication requirements the battery operation life would shrink to a month or less.
Why some network standard is not used for wireless communication?
There is not open, secure (authentication & encryption, automatic encyption key update), license fees free and simple (no mesh/routing, no IPv6, no >100 pages protocol specification) communication protocol standard available AFAIK. HARDWARIO use hub and spoke network topology.
How HARDWARIO hardware can be extended?
There are several levels for extensions, you can:
Connect simple sensors and actuators through the connector on Sensor Module.
Design your own Module - just use the Module size and HEADER signals on your PCB.
Design your own product using Cloony.
Or you can discover other ways unintended by us, we will be really excited! There are not any obstacles in hardware and software licenses.
How can I extend integration or add software features ?
On PC/Server/Cloud interoperability have several levels:
For minimum software/services dependency use HARDWARIO Gateway text protocol (topic, JSON message pairs) over USB CDC (UART) to receive states, measurements and send actuator state updates.
Node-RED orchestration. Node-RED is a programming tool for wiring together hardware devices, APIs and online services in new and interesting ways.
For the cloud services API/UI use one of our cloud services integration and implement your application/feature in selected cloud service. Or implement another cloud service integration yourself.
Why the substance who keeps you in the sprint is not in the shop?
Self motivation based on above mentioned targets provide us passion. Try it yourself and contribute! Some ingredients are available. You can start with shared projects, feedback, continue with issues reporting and get the most of endorphins from documentation, software, hardware contributions.
I would do it in 2 weeks (or 2 months) why I would use HARDWARIO Kit?
We love to see all the new open-source kits with similar features. We will be happy to learn from other designs also. Go on - share your solution with the world, please! Maybe you can even join our team. We did it in 2 years of hard work, we are 12+ people team now and we are committed to continue to develop the HARDWARIO IoT Kit. You can use effort already invested by us and future enhancements from community or us to save your time and resources.
|Arduino Uno R3||HARDWARIO Core Module||WEMOS D1 mini Lite||Raspberry Pi 3 + MicroSD|
|Price in USD||US $25||US $28||US $3||US $35 + $16|
|Warranty||1 year||3 years||2 months||1 year|
|Operating temperature||Not specified||-20 to +70 °C||Not specified||Not specified|
|CPU architecture||8-bit AVR
|CPU/SOC part number||ATmega328P||STM32L083CZ||ESP8285
|CPU clock||16 MHz||32 MHz||80 MHz||1.2 GHz|
|RTC crystal and unit||No||Yes||No||No|
|Flash memory size||32 kB||192 kB||1 MB||16 GB (MicroSD card)|
|RAM memory size||2 kB||20 kB||96 kB||1 GB|
|Idle power consumption||10 mW||0.05 mW||100 mW||1 000 mW|
|Battery life *0)||5 days *7)||2 years||12 hours||1 hour|
|USB host/device||Yes, device||Yes, device||Yes, device||Yes, 4x host|
|Wireless communication||No||Yes *1)
(868 / 915 MHz)
(WiFi 2.4 GHz)
(WiFi 2.4 GHz + Bluetooth)
|Communication range||N/A||500 m||50 m||50 m|
|Communication security||N/A||Yes *2),
|Reduced TLS and TCP/IP||Yes *3)|
|Temperature sensor||No||Yes||No||Yes (only for CPU)|
|Programming||Synchronous||Event-driven *4)||Synchronous / Event-driven||Synchronous / Event-driven|
|Real-time processing||Yes||Yes||No||No *6)|
|ROM bootloader||No (bootloader in flash)||Yes||Yes||N/A|
|Debug connector||No||Yes (SWD standard)||No||No|
|Multiple power sources||No (rail collision possible)||Yes (*5)||No||No (USB power only)|
|Hardware extensions||Yes (shields)||Yes (modules + tags)||Yes (mini shields)||Yes (hats)|
|Extensions need soldering||No||No||Yes||No|
|Mounting holes||Yes, irregular||Yes, symmetrical||No||Yes, symmetrical|
|Number of GPIO channels||14||18||10||27|
|Number of UART channels||1||3||1||1|
|Number of I²C channels||1||2||1||2|
|Number of SPI channels||1||1||-||1|
|Number of ADC channels||6||6||1||-|
|Number of DAC channels||-||2||-||-|
|Support from vendor||No||Yes||No||No|
|Dimensions||53 x 69 mm||33 x 55 mm||26 x 34 mm||56 x 85 mm|
|*0) All benchmarks have been performed with a four AAA size Alkaline batteries 1.5V connected in series, powering the devices through a buck regulator|
|*1) Lower radio frequency provides longer communication range, consumes less power and enhances link reliability|
|*2) Encrypted communication with message authentication; datagrams optimized for low-power operation|
|*3) Linux environment with full stack TLS and TCP/IP implementation; stateful packet firewall|
|*4) SDK with full API documentation; optimized for low-power operation|
|*5) Implemented special circuit for intelligent power switching; battery source is never discharged when the power supply from mains is connected|
|*6) Real Time Linux kernel patch is available|
|*7) Tutorials how to run ATmega328P in low-power mode with Arduino software platform are available, but default configuration has been considered|
Do not hesitate to comment at https://forum.bigclown.com/ or feel free to send us an email, please.