-
Notifications
You must be signed in to change notification settings - Fork 6
Home
krylovsk edited this page Nov 30, 2014
·
15 revisions
Patchwork Toolkit - a Lightweight Platform for the Network of Things (written in Golang)
Patchwork is a toolkit written in Go programming language for connecting various devices into a network of things or, in a more broad case - Internet of Things (IoT). The main goal of creating this toolkit is to have a lightweight set of components that can help to quickly integrate different devices (e.g. Arduinos, RaspberryPI’s, Plugwise, etc) into a smart environment and expose specific devices’ capabilities as RESTful/SOAP/CoAP/MQTT/etc services and data streams.
The key features of the toolkit include:
- Lightweight (no RAM-consuming sliced pie of Java and OSGi, only bare necessities)
- Cross-platform (can be deployed on OSX/Linux/Windows, tested on RaspberryPI and BeagleBone Black boards)
- Language-agnostic (device agents can be written in any programming language, APIs can be consumed by app written in any programming language)
- Easily deployable (no JARs, no Eggs or Wheels for the core components, just a single native binary with statically linked dependencies)
- Easily extendable (integrate new devices without modification of the core components, drop in solution)
- Interchangeable (not happy with current existing Device Gateway or Catalog? replace it with another implementation without breaking the infrastructure)
- Not re-inventing the wheel (we re-use as many existing technologies and components as possible)
About Patchwork Toolkit
Configuration
- Configuring Device Gateway
- Configuring Devices
- Configuring Device Catalog
- Configuring Service Catalog
- Configuring Services
Deployment examples
- Singleall-in-on-box
- Multiple Device Gateways with optional central Device Catalog
- Using central Service Catalog
API for Application developers
Integrating devices
- TBD...
Third-party integrations