The gateway is responsible for gathering data from the sensors and controlling the actuators. It uses a wireless protocol for communicating with the sensor networks and secure TCP/IP for communicating with the server. This page describes the different types of gateways and provides the necessary resources for assembling a DIY (do-it-yourself) gateway. Yes, you can do it yourself - all software, hardware and even mechanical parts are available under permissive licenses. Please note that the gateway was previously called the adapter and some of the resources still use the old term.
Types of the BeeeOn gateway
There are two ways to connect BeeeOn sensors based on our own FIT wireless protocol to the BeeeOn gateway:
- Gateway - standalone - it uses an OSHW board - the A10-OLinuXino-LIME by Olimex. Linux is used on that board. This base board is extended by the BeeeOn PAN coordinator module with RF capability for wireless communication not only with the BeeeOn sensors. See the standalone gateway page for more details.
- Gateway - USB dongle - it can easily be connected to any existing device running Linux with a USB port. The USB dongle makes the device capable of communicating with the BeeeOn sensors. In this case, however, all necessary software needs to be properly installed on the device. See the USB dongle page for more information.
Software on the gateway
Our base operating system is Linux. Our applications are usually written in C++11. We are using the OpenEmbedded build system to build software for our standalone BeeeOn gateway.
Software components vary between gateway types. The core software part of the gateway is an application called AdaApp (abbreviation for Adapter Application) which must be installed on any device you intend to use as a gateway. It is a configurable and modular application which is still under heavy development. Another application we use is called AdaMan (abbreviation for Adapter Manager) which is responsible for security and feature updates of the gateway. AdaMan is only deployed on official standalone gateways. The final major component is a daemon called fitprotcold which handles communication with BeeeOn sensors and actuators.
Sources are available on BeeeOn github in the gateway-app repository.
AdaMan consists of two parts - the core and the client. The core, which runs as part of the server, is responsible for controlling the connected clients. The client is responsible for carrying out the requested operations on the target gateway and reporting any problems back to the server. All code is available on the BeeeOn github (core, client and server).
Linux and userspace
This is applicable only to the standalone gateway, see the software section.
Binary images of the SD card and the Software Development Kit (toolchain) for the OLinuXino-A10-LIME can be obtained in the gateway download area. You can find more information in the software section of the standalone gateway.
Photos of gateway types