Based on our shared frustration with the functionality and robustness of smart gadgets and internet-enabled appliances, we started looking at developing software for the Internet of Things (IoT) and in particular embedded network-connected devices. It seemed compelling. After all, there are a ton of devices to target out there.
However, developing for devices is not very pleasant for a software engineer like me. It is all about specialized hardware with bug-ridden firmware, long update cycles, and a poor development experience. It feels like software development and deployment 20 years ago. It really should not be that way. So we built a team and raised funds to invent the best way to build, deploy, and maintain software for internet-enabled devices. This is our story so far.
We started Toitware in February, 2018. Armed with decades of experience in building software platforms and virtual machines, we spent the first year putting together an approachable and efficient programming language for devices too small to run Linux. The cost-effective devices we run on (like the ESP32) are somewhat resource constrained, so the platform has to be tight — or toit as the Dutch nemesis of our favorite British spy would put it.
Our platform features software-based memory isolation so new components or applications can be added to a device after deployment without compromising security. This is also convenient in a development setup, where it is possible to tinker with new functionality through small, targeted over-the-air updates that only affect a small part of the overall system. Essentially, it is a platform for software, not firmware — independently installable applications, not all-or-nothing system updates. It is a robust, adaptable, developer friendly, and modern approach to IoT.
Today, a common setup is to have simple, battery-powered sensors that feed data into the cloud through more powerful gateways. That keeps the logic and complexity on the sensors low, but it requires massive centralization and falls short in contexts where latency really matters or where data is abundant and unpredictable. We are not the only ones to notice this:
The edge will eat the cloud. And this is perhaps as important as the cloud computing trend ever was.
Cloud integration is important for making data from the edge accessible to other systems and for orchestrating a fleet of devices, but it cannot stand alone. We need to enable more processing and control at the edge of the network to unlock the full potential of IoT. It should be easy to write applications that utilize the network and communicates securely, but it should also be easy to control a process or make decisions on a device without consulting your data center every other second.
Over the last year, we have built the foundation for a new end-to-end software development and deployment platform for the Internet of Things. We are on a mission to democratize device development and allow people without an electrical engineering background to build battery-driven devices that interact with each other and the real world.
Our mission is an ambitious one, so we are very excited to have great company on our long journey. We have just announced our seed investment round where we have partnered up with Creandum to disrupt and challenge the status quo of embedded development — and I encourage you to read our investor’s take on this too. It feels great to be in a startup again with an astounding team and a strong, committed backer.
We are hiring and we are building software for billions of devices.