Go-IoT software stack spans from the sensor to the cloud

We open source vital parts of the Go-IoT software stack for Go-IoT customers using Go-IoT hardware.

OVERVIEW

- BACnet Server, Client, Gateways and Web Services. IBM MQTT/Bluemix and much more. Software is the soul of every IoT solution. Therefore it needs to be good.
It is important that such a solution is based on open, well known standards.

It has to be easy to use whilst being flexible, to adapt to different use-cases by configuration only.
This is where most solutions fail, as special programming is needed for adaption. This is no longer acceptable.
 
For WINGO Sensors the only software we supply is native BACnet server, which runs internally in the sensor (or actuator).
Nothing else is needed. This guarantees the simplicity of the WINGOs and makes them 100% plug&play.

Things become a little more complicated with the DINGO that is responsible for performing IoT tasks of all kinds, from managing sensors and legacy buses, to serving web-requests, and taking care of security. Here it is important to ensure that an open and transparent upper layer is available for the user/IoT-integrator. . By that the simplicity is guaranteed, giving 100% plug and play as soon as the DINGO is fully configured.
The section below describes the DINGO software stack in more details.
 
At the highest level DINGO manager, a web based application used to configure and monitor DINGOs as well as networks of WINGOs and PINGOs
We host DINGO-manager for you. The only thing you need is a web-browser and a login. 
 

DINGO SOFTWARE STACK

Please click on the image with this section to enlarge block diagram of the DINGO software stack shown with the hardware stack.
The green items show the software modules in the stack.
 
The purpose of the Peripheral Manager (DPM) is to manage all inputs/outputs of the DINGO as well as inputs/outputs on standard buses like Modbus and M-Bus and in addition proprietary buses like our PINGO.
The DPM has an API that is independent of the different drivers below. As such all upper layer modules like the BACnet Server function seamlessly with any device, such as 1-Wire or I2C device below. The language is the same for both.
 
The BACnet software package contains many powerful modules.
  • A BACnet Server implementing a lot of BACnet objects and services.
  • BACnet Client, client module to be used by programmers that want to access BACnet servers from code.
  • APDU to APDU gateway is intended for managing slow devices running their own BACnet server instance, like PINGO slaves.
    This module intelligently prepares values from those slow devices so they can be returned immediately on BACnet client requests.
  • Virtual Router for managing large number of BACnet objects in a single BACnet Server. It enables the grouping of objects in logical device structure rather than one big flat mesh of objects.
Configuration of DINGO is performed via Restful Web Services according to the BACnet/WS standard.  
Our DINGO Manager is only a web-client to those services. You can create your own management user interface if you want.

The DINGO software stack implements the cutting edge technology BACnet/WS, accessible via http or https. BACnet/WS can be used by APPs or remote client/server access.
Try it here from your browser on a live DINGO setup.
 
APP manager manages APPs from us or third parties and partners.
 
More about DINGO web-software here...
More about BACnet/IoT here...

DINGO MANAGER

DINGO Manager (DM) is a web based utility to manage DINGOs from a browser. DM is hosted by us. The only thing you need is a login and a web-browser.
DM is hosted centrally rather than as a web-site on each DINGO. This makes maintenance much simpler. Secondly it takes the burden of the DINGO hardware, to serve as a web server.
With DM maintaining multiple DINGOs, wherever those are  located in the world is a breeze.
It is used to configure Peripherals, BACnet, Security, Network and NTP, MQTT, APPs, etc.
In addition it gives you graphical health reports, as well as diagnostic information.
Last but not least important it can be used as a BACnet/WS client.
Configuration is made easy by drag&drop, etc.

DINGO APPs

Just like a smartphone DINGO can run APPs.
Third parties can write their own APPs and have them installed in a DINGO.
The DINGO software stack has a special module to manage APPs. 
APPs can define parameters and link to BACnet Scheduler and/or BACnet Program objects.
 
APPs can also be used to provide useful values to the BACnet server. For example an APP that retrieves weather-forecasts from the Internet can provide the BACnet server with values like forecasted temperature, wind etc.
 
We provide some sample APPs to make it easy to start APP development.
Furthermore, we have added some useful APPs, like one that uploads BACnet Trend Logs to a host-server.  See APP-configuration in DINGO Manager at the screen-shot with this section (click image to enlarge).
 
To read more about APP development or how partners can contribute to the open source BACnet/IoT click here...

THE SERVER END

When it comes to the server end of your IoT solution you have a large selection of products to choose from, because the DINGO software stack provides you with open standard interfaces, like REST Web Services, BACnet, BACnet/WS and MQTT.
You can select products from any vendors supporting those open standards. The selection totally depends on your needs. The choice is yours. Here are few examples:
Or if you want to go open-source, with products like Zetta, etc.
 
For more details check this...