The OpenMotics Wiki
Welcome to the OpenMotics Wiki, your technical resource for anything OpenMotics related
After many years of development with a team of 5 engineers and a lot of installations of the OpenMotics stuff in Apartments, houses, villas and industrial buildings, we've decided to fully Open Source our firmware, hardware and software. The experience we've had with the multitude of projects we've done in the past made the OpenMotics system ultra stable and almost (fully doesn't exist :)) bug free. We continue to develop new products and services.
This wiki is intended for anyone that wants to build or modify their own OpenMotics Modules. Here you'll find the required PCB schematics, Bills Of Material and firmware files (Source code and hex files) to personalize your installation. If you'd rather want a completely finished and operational Module, have a look at the Shop instead.
We hope you enjoy the OpenMotics system and all information available on this Wiki.
For all remarks, suggestions and others, please don't hesitate to contact us at firstname.lastname@example.org
The OpenMotics home automation platform consists of DIN rail Modules typically installed in the fuse box. We've made the hardware, firmware and software of those modules fully opensource !
Each Module has a specific purpose: receive input, toggle electrical circuits, control external dimmers, etc. The different modules are interconnected by a RS485 bus. The Gateway is the brains of the system containing 2 different systems inside: The Master Controller (Microchip 18F67J11 controller board) and the Gateway Controller (Linux based Beagle Bone Black). The Master Controller houses all different home automation functions (Lights, outputs, stores, Temperature/humidity/brightness, thermostats, intelligent functions etc) where the Gateway Controller will take care of the secure communication to the cloud including which allows full control and programming from everywhere in the world.
Each Module consists of:
- One or more Printed Circuit Boards (PCBs) housing the electronic components & connectors
- A .hex firmware file programmed into the on-board IC
- A plastic casing keeping everything together
- A graphical front panel
In order to make and assemble the PCBs for a Module, you'll need both the schematics (describing the PCB layout) and the Bill Of Material (listing the necessary components (BOM)). All necessary information can be found back in this Wiki.
Our Hardware as well as our software (except for the OpenMotics cloud) is fully OpenSource.
Using the information in this wiki will allow you to create your very own Modules and customize them as you see fit.
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
The OpenMotics hardware mostly consists of DIN rail mounted Modules.
Our hardware is fully Opensource and can be used commercial as well as non-commercial (Creative Commons-Share Alike-Attribution licence). OpenMotics has a webshop were all modules can be purchased, however, everyone is free to download our schematics, PCB files, gerber files and built their own system. We support both and are happy if our hard work is appreciated and used !!
The firmware of our modules is still written in Pic Basic Pro (except for the power measurement module which is written in C). Pic Basic Pro is an easy to use programming language that can be learnt very easily. We provide all source code free of charge (GPLv2 licence). The Pic Basic Pro compiler however is not for free (see www.melabs.com) which is not in line with our philosophy so we're working on translating all Pic Basic Pro code to C code which is free of charge.
For people not interested in programming or doesn't want to purchase the compiler, the HEX code of all modules can be downloaded as well.
Have a look at the Modules page for a more detailed overview.
The system has 2 major interfaces towards the outside world: An API interface and a CLI interface. This section describes both interfaces and the full instruction set. This section also contains the Hardware and software installation guides.
OpenMotics want to be a fully Opensource product and we're in the process of publishing the sources. More info at our Open Source page.