Our Story

Moddable makes software that powers consumer and industrial IoT products. JavaScript is at the heart of all we do, providing a standard, secure programming language that bridges IoT to the web. Our speciality is products that incorporate a display, and our software and tools deliver beautiful visual results on remarkably inexpensive hardware. Our ultimate goal is to put users in control of the devices in their world by empowering them to enhance, or even replace, the software themselves.

Moddable works directly with clients to define, design, and develop their products. We help our clients optimize their user experience, secure the privacy of their customers’ data, and keep hardware costs to an absolute minimum. Moddable supports an active community of open source developers that includes professional programmers creating weekend projects, web developers starting to program devices, and researchers pushing the boundaries of JavaScript.

The Moddable team has deep software engineering skills earned from years of experience which allow it to deliver unmatched results. The team has built software that powers products from Whirlpool, Maytag, Apple, Sony, Softbank, HP, Vizio, NTT Docomo, and many more.

Moddable is privately held and has been in business for five years. Our office is in Palo Alto, California.

An End to Black Boxes

Mods allow customers to add functionality or customize their products.

Most IoT products on the market today are black boxes that allow little to no customization and are often tied to a single cloud service. We believe that IoT products should give consumers the freedom to modify their behaviors as easily as they customize their phone, tablet, and computer today: by installing an app. This simple idea has many benefits to users of these products:

  • Adapt products to their needs and preferences
  • Share personal data only with companies they trust, or don't it share it all
  • Fix bugs
  • Update the product after the manufacturer stops delivering updates

Of course, not every user is a software developer so not every user will write the software to accomplish this themselves. But, just as every user installs apps created by third parties on their phone, every user should have the option to do the same on their IoT products.

This future is better for users. But, why should product manufacturers get behind it? The usual reason: profit. When third party software became common for computers and phones, the sales of those products increased exponentially and the new opportunities to profit from add-on products and services appeared. The same will be true of IoT products. The creativity and drive of users makes products better than their manufacturers can alone.

That's an easy idea to get behind. Users get better products. Manufacturers make more money.

Unfortunately, it is also nearly impossible to do today because of the way software is written for the majority IoT products. Most embedded software is written using techniques that haven't changed in decades, techniques that make it impractical or impossible for anyone but the product manufacturer to change the software.

We founded Moddable to solve this problem.

Mods allow customers to add functionality or customize their products.

A Modern Way to Build Software for IoT Products

JS logo

The Moddable SDK is a collection of tools for building IoT products in a new way. It incorporates some of the most effective techniques from modern web development to allow manufacturers to deliver IoT products that are open to customization by their users, while ensuring that the product's operation is safe, secure, and reliable. At the same time, the Moddable SDK builds on best of decades of embedded software development to ensure products are affordable, fast, and energy efficient.

The Moddable SDK starts by changing the language of embedded software to JavaScript. JavaScript is the language of the web, and has one of the biggest software developer ecosystems. It has been proven to increase developer productivity and to be capable of powering the most complex applications. JavaScript is reliable and secure. Most importantly, because JavaScript is designed to be extremely portable, it is the perfect language for users to customize their IoT products.

Moddable created the XS JavaScript engine specifically for IoT products. It is the only JavaScript engine that supports the modern JavaScript language standard on the embedded microcontrollers that power most IoT products. It is designed to be efficient, secure, standard, and extremely reliable. And, of course, it makes it possible for IoT products to allow users to customize them.

TS logo

JavaScript has many advantages, but there are good reasons for portions of a product to be written in C or C++. The Moddable SDK doesn't force manufacturers to make a choice. They can use both, selecting the best language for each task. When extreme performance is critical, C is the right choice. If an existing C / C++ library provides essential irreplaceable functionality, it can continue to be used.

See What's Happening

IoT products can be difficult to use. One common reason is that they provide little direct information to the user about what's going on. They might indicate status by blinking a light or beeping. That's not enough for the user to be confident the product is working correctly or to know what is wrong. This is frustrating. A common solution is to provide a companion mobile app. This seems like a good idea, but users are tired of installing one more app (and manufacturer's are getting tired of maintaining them). It is often challenging to connect the mobile app and IoT product.

A better solution is right in front of us: a display. Incorporating a display into an IoT product allows it to communicate information directly to the user. While this may seem far-fetched, an increasing number of products are incorporating displays because there are so many benefits. Not only are products easier to user, the display makes it possible to offer many more features. Remember that it once seemed unnecessary to have a display in a phone.

We know from our experience that IoT products with displays are more enjoyable for users and offer more opportunities to manufacturers. Moddable is strongly committed to getting displays into more IoT products. A large portion of the Moddable SDK is dedicated to supporting displays: a suite of highly optimized display drivers, the Poco graphics renderer, the Piu user-interface framework, and a large collection of documentation, examples, and articles about building user-interface for IoT products. Moddable invests in minimizing the cost of including in to products, though both hardware design and software libraries, to make displays a cost-effective option in more IoT products.

A Future We Can All Believe In

Moddable has an ambitious agenda for future of IoT products:

  • Users should control the IoT products in their world
  • Manufacturers should benefit from creating IoT products that give users more control
  • IoT products should safeguard the user's privacy and security
  • Industry standards make IoT products more interoperable and open
  • Displays make IoT products more functional and easier to use

That may seen like a dream. But, it is achievable with the Moddable SDK today. Moddable will continue to partner with IoT product manufacturers, standards organizations, independent software developers, security researchers, and designers to make this vision a reality for more and more people.