libiota 1.0.0 beta release, version 7
Add EXTRA_COMMON_FLAGS to qc makefile

This enables having command line paramteres for make.

Change-Id: I088448b683c7626bedc66c408042a8babae18d5c
Reviewed-by: Prashanth Swaminathan <>
1 file changed
tree: ebee3de8eb74bf388d454638d538e9d5278129a6
  1. .clang-format
  2. .gitignore
  5. Dockerfile
  7. Makefile
  9. build/
  10. docs/
  11. examples/
  12. include/
  14. platform/
  15. src/
  16. test/
  17. third_party/
  18. tools/

Iota Library

Weave is an open standard for secure device setup and message passing which is described in detail on the Google Weave homepage.

Iota is an implementation of the Weave protocol intended for use on microcontroller scale devices. The Iota codebase is open source and distributed under Apache 2.0 license available in the LICENSE file.

The Iota effort is relatively new. The repository you see here is still in the early stages of development and not yet suitable for production use. If that doesn't scare you away, the Getting Started guide can help you figure out how to build and use the Iota library.

Iota requires access to the Weave server as well as few tools that are only open to Weave early access partners. If you don’t have access to and would like access, please contact your Google business representative or fill out the Request an Invite form and mention Iota in the Please provide a brief description of the device(s) you plan to build (or provide a link) question - it can take a few weeks to get access.

Source Layout


The platform/ directory contains platform specific code. Under here you'll find directories for SoC makers and a special host device which can be used to run Iota on a Linux-based machine (including embedded Linux devices such as the Raspberry Pi, BeagleBone, etc.).

Platform specific examples exist in the examples/ directory within directories corresponding to the platform type.


The docs/ directory contains Iota documentation. Start with the Getting Started guide to get going.


The include/iota/ directory contains the public Iota headers.


The include/iota/provider/ directory contains the definition of the Iota HAL. Iota clients must provide an implementation for each function defined in this directory.


The examples/ directory contains a number of examples organized by platform type. The examples/host/light/ directory is a good starting point for understanding how to using Iota in your application. The light example runs natively on supported Linux devices (such as a Raspberry Pi). Additional information is available in the Getting Started guide.


The src/ directory contains the source files for the Iota library. Third party applications should not directly depend on header or implementation files under this directory.


The third_party/ directory contains external dependencies that we'd rather not download at build time.


See the repository style guide.