YIoT - Your IoT platform
Introduction
YIoT helps to create a complete solution that contains control application, embedded application, device schematics, and even device cases.
As result, you can create, share, get, sell and buy complete solutions.
Just imagine that you can download the control app, get Raspberry Pi with the required components, upload images, print device cases, and you'll get a finished device.
And this all WITHOUT things like: "Now you have to insert your credentials and recompile firmware". Because you'll have everything required for convenient usage.
YIoT contains control application for the most used desktop and mobile platforms, applications for different embedded platforms, a set of libraries to create custom applications.
You can use current implementations or you could create plugins for the existent control and embedded applications, or even you could create your own apps using libraries.
And everything is under BSD-2.
Content
- Ideology
- Content
- Use-cases
- Simple and safe usage of RPi
- Share access to your IoT devices
- Safe remote access to a door-lock, but with online statistics
Ideology
- Everyone can use it everywhere. BSD-2 licence. All source codes and schematics are open source.
- Simplicity for end users. (Treat your control devices as a magic stick.)
- Users privacy. (No need for registration in most cases. End-to-end encryption. Controlled access share, and data share)
- Enable proprietary services only if you need it.
Content
- Control application for multiple OSes: Windows, macOS, Linux, Android, iOS (could be extended).
- Library for devices, so you have only to create application-level data structures and commands. No need to worry about security, communication, logging etc, everything is inside already.
- Online registry:
- UI controllers for devices and device systems
- Prepared configurations for devices like RaspberryPi, so you could configure device, let’s say, to a voice capture device in few taps in Control application
- Local and online communication. Protocol can use any network interface.
System works with and without gateways.
Use-cases
Use-case: “Simple and safe usage of RPi”
Steps
- Write to flash Raspberry Pi OS image with preinstalled YIoT and disabled standard password
- Connect only the power cord to RPi and put it close to your phone or laptop with installed YIoT app.
- YIoT app informs you about a device that requests for setup
- Enter a new user name, password and static ip, and choose one of your WiFi networks.
What will happen
After acceptation of entered data, you RPi will get:
- YIoT root-of-trust // it’s generated by user’s control app, and belongs to a user only
- Cryptography signature
- Current user as an owner of this RPi.
- Prepared WiFi access and SSH server
Benefits
- No more standard pairs of user/password
- RPi needs only flash and power adapter, to be ready to work
Use-case: “Share access to your IoT devices”
Steps
- Guest comes to your home. And installs or already has YIoT app.
- App informs guest about present but unknown network
- Guest taps to acceps request of access
- Owner's app shows request of access.
- Owner decides if he need to scan data from guest's QR or just to trust to remotelly received data (guest certificate)
- Owner dicides if he want to set Guest as one more owner or as guest only
- Owner's app does setup of Guest's phone or laptop
What will happen
- Guest devices receive root-of-trust for a current IoT network, unless it already has it
- Guest control device could become an owner with complete rights
- Or Guest control device could become a limited user with time restrictions etc
Benefits
- different levels of permissions
- minimum of users operations
Use-case: “Safe remote access to a door-lock, but with online statistics”
Steps
- Your are not at home want to open a door for someone.
- Your YIoT app encrypts request to your door-lock and sends it via any online chanel, let's say MQTT brocker.
- MQTT brocker sends command to your door-lock, but it cannot decrypt, and it cannot to do a reply-attack if it hacked (because of integrated protection).
- the same request could have some open data for a statistics
What will happen
- System uses end-to-end encryption
- MQTT in the example uses TLS, so brocker can receive statistics data decrypted, but doesn't know about content of command (internal data, signatures)
Benefits
- safe access to sensitive devices
- usage of power of IoT Cloud services