/hue-ci

Uses the Phillips Hue lighting system and an ESP8266 for continuous integration by changing the room's color depending on the build

Primary LanguageArduino

Hue-ci

Changes your light bulb color depending on the build status of your project. Built on top of Google FireBase, ESP8266 and Phillips Hue. Currently, it only integrates with BitBucket Pipelines, but soon other CI platforms will follow.

Software setup

  1. Install Arduino 1.6.10
  2. Install Arduino ESP8266 core
  3. Download FirebaseArduino library
  4. Start Arduino
  5. Click Sketch > Include Library > Add .ZIP Library...
  6. Choose firebase-arduino-master.zip downloaded in step 3.

FireBase Configuration

  1. Create a new FireBase project.
  2. Create a new hierarchy build-status > YOUR_REPO > success with the value true or false.
  3. Configure the access mentioned below.
  4. Obtain a FireBase access key from the control panel.
{
  "rules": {
    "build-status":
    {
      ".read": true,
      ".write": "auth != null"
    },
    ".read": "auth != null",
    ".write": "auth != null"
  }
}

CI Configuration

Checkout following readme according to your platform:

Client Configuration

  1. Start Arduino
  2. Open hue-build-status.ino
  3. Replace WIFI_SSID and WIFI_PASSWORD with WiFi credentials
  4. Replace FIREBASE_HOST and FIREBASE_PATH according to YOUR_REPO and project ID from your FireBase configuration
  5. Replace HUB_IP and LAMP_ID according to your home Hue setup
  6. Obtain a USER_ID from your Hue API panel. For more info checkout Phillips developer docs.
  7. Select the board Board > ESP8266 Modules > NodeMCU 1.0
  8. Select the serial port Port > /dev/tty...
  9. Select the upload speed Upload Speed > 115200
  10. Click Sketch > Upload