The Go gopher was designed by Renee French. The design is licensed under the Creative Commons 3.0 Attributions license. Read this article for more details.
A framework and protocol for building your own smart home devices and applications. Intended to provide complete freedom in device functionality, u-iot supportS applications on host operating systems, as well as embedded devices with user-defined functions and parameters on Raspberry Pi.
u-iot is written in Go, with more languages coming in the future.
If you are using modules:
import uiot github.com/TrevorFarrelly/u-iotthen build when you are ready.
Or, if you are using dep:
import uiot github.com/TrevorFarrelly/u-iot$ dep ensure
TBD
GoDoc-style documentation can be found at TrevorFarrelly.github.io/u-iot/.
A Golang wrapper of WiringPi can be found here.
I have also forked this repo and hacked in PWM support, see here.
More info on Pi installation can be found in examples
u-iot's Golang library is usable and firmly within the realm of a "minimum viable product." That said, there is lots of functionality I plan on implementing in the future. See the checklist below for progress on these features.
| Golang | Feature | Breaking? | Completion | Python | Feature | Breaking? | Completion | |
|---|---|---|---|---|---|---|---|---|
| Device Creation | No | ☑ | Device Creation | No | ☐ | |||
| Basic Device Tags | No | ☑ | Basic Device Tags | No | ☐ | |||
| Multicasting | No | ☑ | Multicasting | No | ☐ | |||
| RPC server | No | ☑ | RPC Server | No | ☐ | |||
| Bootstrapping | No | ☑ | Bootstrapping | No | ☐ | |||
| v0.1 | Function Calls | No | ☑ | Function Calls | No | ☐ | ||
| Return Values | No | ☐ | Return Values | No | ☐ | |||
| More arg types | Yes | ☐ | More arg types | Yes | ☐ | |||
| User Device Tags | Maybe | ☐ | User Device Tags | Maybe | ☐ | |||
| Security | Maybe | ☐ | Security | Maybe | ☐ |
Anyone is welcome to work on these features. Please check out CONTRIBUTING.md if you are interested.
