From OpenMotics
Revision as of 18:46, 19 May 2014 by Fryckbos (talk | contribs)
Jump to navigation Jump to search


Gateway structure

The Gateway Module is the brains of the OpenMotics platform. It manages the other Modules on the bus and connects to the OpenMotics Cloud for online management and control over your installation Internally, the Gateway module houses 2 different computer systems:

  1. The Gateway controller: This Linux computer is a standard Beagle Bone Black that is fitted on the Master PCB
  2. The Master controller: This controller, that is fitted on the Master PCB, is based on a Microchip 18F67J11 that is programmed in PicBasic Pro. This Master PCB also has a real time clock with Battery, an Eeprom and the necessary communication channels (RS485, RS232).

The Gateway module has multiple connections to the outside world: 2x RS485, 3xRS232 and Ethernet. The Ethernet, 1 RS485 and 2 serial connections are connected to the Gateway controller. 1 RS485 and 1 shared serial connection is connected to the Master controller. By setting jumpers, the shared serial connection will connect the Gateway controller with the Master controller over RS232. If needed and where appropriate, the shared serial connection can be used to access the Master controller directly over the built-in CLI interface (please see the CLI command reference interface for the different commands that exist). The CLI interface of the Master controller is also accessible through the Cloud interface (Maintenance mode tab).

The Master controller is connected to the gateway over RS232. An API and CLI on the Master controller is available and can be found back in this Wiki.

The CLI Reference Guide describes the available CLI commands that can be executed on the Master controller. This CLI can be accessed directly on the Gateway (see hardware section to set the correct jumpers on the gateway) or via the OpenMotics Cloud where a maintenance session can be opened that gives your direct access to the CLI interface of the Master controller.

The Master controller works fully independent of the Linux controller and every single aspect of the home automation can be programmed via the cloud interface or via the CLI interface.

Please note that the full OpenMotics system can be programmed through the OpenMotics graphical cloud interface without using the CLI interface.

A CLI interface for the Master controller is available as well as an API interface for the Gateway controller.

If more information is needed regarding the existing functionality, please consult The Available Functionality page

For Screenshot examples of the cloud, please consult the Cloud Screenshot page

Hardware Installation Guide

  • The OpenMotics modules can be easily installed without too much technical knowledge by using our
Hardware Installation Guide
  • Detailed information about Hardware, schematics, PCB and other can be found in below section

Software Installation Guide

The OpenMotics modules can be configured by using the Cloud software (graphical interface) or by using the CLI (text) interface for manual setup.

Following Graphical user interface manual is available:

  • For full system setup using the Cloud Interface, see
System cloud setup

The below setup guides will explain the full programming of the Master Controller by using the CLI interface. It is however possible to install and configure the full OpenMotics system through the graphical cloud interface without using the CLI. Following CLI guides are available for manual setup:

  • For basic system setup (add modules, assign inputs to outputs, set timers etc) using the CLI interface, see
CLI Basic System Setup
  • For thermostat setup using the CLI interface, see
CLI Thermostat Setup
  • For advanced system setup using the CLI interface, see
CLI Advanced Setup

Master Controller Documentation

The technical firmware documentation (API, CLI, communication protocol etc) can be found here:

  • To see all available RS232 CLI instructions, please consult
CLI Reference Guide
  • To understand the different Basic Actions available in the Master, please consult the
Action Types
  • To understand the different debug codes in CLI mode, please consult
Output Debug Codes
  • To understand the Error Codes appearing in CLI mode, please consult the
Error Codes
  • To understand the Memory model used in the eeprom of the Master controller, please consult the
Memory Model
  • To see all available RS232 API instructions, please consult
API Reference Guide
  • To understand the RS485 communication protocol, please consult
Master RS485 Cummunication Protocol

Gateway Controller Documentation

  • Description of the Gateway architecture can be found here
Gateway architecture
  • The API instruction houses all Gateway controller instructions as well as all all Master controller instructions. This API can be found here
OpenMotics Python SDK
Webservice API
  • The Gateway controller has a plug-in systems that can be found here
Gateway plugins
  • Information about installing the Gateway can be found here
Gateway installation