IoT support for Angular
Angular IoT is an experimental technology that allows you to program physical hardware (buttons, LEDs, etc.)
using Angular. It provides a set of directives, such as <iot-button>
and <iot-led>
that let you interface
with the hardware. It is even possible to create an application that renders both a Web interface and an IoT (hardware)
interface with a single code base. See ng2-simon for an example.
Behind the scenes, it uses a combination of angular-universal for running the application inside Node.js, and the johnny-five library for interfacing with the hardware.
The Blink Example will blink the built-in LED on an Adruino board that is connected to your PC. You will need to upload the StandardFirmata firmware to your Arduino board first.
git clone https://github.com/urish/angular-iot
cd angular-iot
npm install
npm run example:build
npm run example:run
Note: The example program will try to detect the serial port that the Arduino
is connected to automatically. You can manually specify the port name by
setting the SERIAL_PORT
environment variable prior to running the example.
CHIP is a tiny 9$ computer that has enough computing power to run Angular. It also has WiFi and Bluetooth built-in, which makes it an ideal IoT platform. There is a version of the Blink Example that runs on CHIP. In order to run it, make sure you have Node 6.x installed on your CHIP (you can install it via nvm), and the run the following commands:
git clone https://github.com/urish/angular-iot
cd angular-iot
npm install
npm install chip-io
npm run example:build
npm run example:chip
The on-board Status LED should start blinking.
Check out ng2-simon for a complete example of using angular-iot for powering a game that can be run both inside the web browser and on real hardware.