AngelBlocks – Maker Kit


AngelBlocks is an open source smart home building block system that is suitable for a wide range of users.  Homeowners with little or no technical skills will find AngelBlocks intuitive and easy to use.  Makers, hackers, and developers will love AngelBlocks because they can customize and extend the system at whatever skill level they possess.

To understand the maker friendly aspects of the system, we should first examine how the system is structured. The following diagram shows the key hardware and software components of the AngelBlocks building block system.

AngelBlocks - Maker KitThe AngelGate is a self contained single board computer that acts as a server in the AngelBlocks system.  The AngelGate is essentially a Raspberry Pi Linux computer equipped with our AngelBlock Pi Adapter.  The adapter allows host software to control AngelBlocks using the on-board LoRa wireless link.

Three software applications run the AngelGate.  CommandCenter is our HTML5 user interface application.  It is hosted as a Node.JS application and allows users to configure and interact with their AngelBlocks using any device with an HTML5 enabled browser. The back-end runs under Node.JS and is written in Javascript.  The client side code is also written in Javascript and uses JQuery Mobile.

The AngelServer application is written in C# and runs under Mono.  This application actively communicates with the AngelBlocks, receiving updates whenever they detect conditions that might require action.  AngelServer continuously evaluates behavior rules in the database, looking for any whose conditions have been met.  When a rule's conditions are satisfied, AngelServer will execute that rule.

The AngelBlock Network Driver is a C# class that abstracts the AngelBlock network, providing programmatic access to AngelBlocks and AngelTags.

All C# code is cross platform and works on both Linux and the PC, providing a good base of code for developing PC/Mac applications.

AngelBlocks - Maker Kit schematic

Maker Kits

Our Maker Kit ships with one AngelBlock adapter and one MakerBlock.  The MakerBlock brings the AngelBlock IO to a header and provides a breadboard area so that custom circuitry can be attached to the AngelBlock.  We offer interfaces for:

  • Digital IO
  • Analog input
  • PWM output
  • SPI
  • I2C
  • UART

Custom AngelBlocks can be added to the system with no custom programming and used with our standard AngelGate and software.  So, for example, if you wanted to make a custom AngelBlock that controls your pool pump, you could wire up the FETs and relays using a MakerBlock and control it with behavior rules just like any other AngelBlock.  The only difference is that the MakerBlock provides maker oriented conditions for programming.  For example, it would allow you to create the following rule:

When MakerBlock.DigitalIn0 IsEqualTo 1 Then Do MakerBlock.ClearDigitalOut3

If you want to create your own software application to control your AngelBlocks system, you will want to use one of our AngelBlock adapters. An AngelBlock adapter allows a host computer or microcontroller to control AngelBlocks programmatically via a serial port based command interface.


For more detail: AngelBlocks – Maker Kit

About The Author

Ibrar Ayyub

I am an experienced technical writer holding a Master's degree in computer science from BZU Multan, Pakistan University. With a background spanning various industries, particularly in home automation and engineering, I have honed my skills in crafting clear and concise content. Proficient in leveraging infographics and diagrams, I strive to simplify complex concepts for readers. My strength lies in thorough research and presenting information in a structured and logical format.

Follow Us:

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top