Difference between revisions of "Jarvis"

From NURDspace

Jump to: navigation, search
m (Changelog)
Line 98: Line 98:
==== NURDbot ====
==== NURDbot ====
Spams stuff using service "notify.nurdbot" @ [[Nurdbot]] using ''/usr/share/hassio/homeassistant/jsb/jsb-udpsend''.
Spams stuff using service '''notify.nurdbot''' @ [[Nurdbot]] using ''/usr/share/hassio/homeassistant/jsb/jsb-udpsend''.
== Changelog ==
== Changelog ==

Revision as of 22:06, 1 November 2019

Participants Dennis, Invict
Skills Electronics, IoT
Status Production
Purpose Infra
Tool No
Location Coherence
Tool category


"File:{{{Picture}}}" cannot be used as a page name in this wiki.

{{{Picture}}} {{#if:No | [[Tool Owner::{{{ProjectParticipants}}} | }} {{#if:No | [[Tool Cost::{{{Cost}}} | }}

Jarvis is the VM running Home Assistant (HASS ) on Coherence and is able to automate tasks in the space

Web interface

Known issues

VM access

If you want access to the VM itself, for instance with SSH, use following creds:

  • User: nurds
  • Pass: the long one :)

Starting HASS

It starts automatically within docker

iptables port forward: iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8123

Current Automations

  • Stop music on mpd when the space is closed
  • Start music on mpd when the space opens.
  • Power down EPC/APC and Sonoff when space is closed.
  • Power up Sonoff when space is open.

Custom stuff

OpenTherm Gateway

OpenTherm gateway has been put between the heater and the thermostat, see OpenTherm_Gateway



- platform: command_line
      command_on: "/config/epc.py <IP> 1 1"
      command_off: "/config/epc.py <IP> 1 0"
      command_state: "/config/epc.py <IP> 1"
      value_template: '{{ value == "ON" }}'



Off snmpset -v1 -c private . i 2 
On snmpset -v1 -c private . i 1
get snmpget -v1 -OvqU -c public .
output 1 == on 2 == off
get input amps (x10) snmpget -v1 -OvqU -c NURDsnmp .

Sensor (Amps)

- platform: snmp
  name: 'pdu1_input_amps'
  host: <IP>
  community: "this"
  baseoid: .
  version: "1"
  accept_errors: true
  unit_of_measurement: 'A'
  value_template: '{{ value | float / 10 }}'


- platform: snmp
  name: pdu1_1
  host: <IP>
  baseoid: .
  community: "this"
  payload_on: 1
  payload_off: 2
  version: "1"
- platform: snmp
  name: pdu1_1
  host: <IP>
  baseoid: .
  community: "this"
  payload_on: 1
  payload_off: 2
  version: "1"



You can use services notify.ledticker_zaal1 and notify.ledticker_rookhok to send stuff to individual LEDtickers, or notify.all_ledtickers to send to all. The custom component for this can be found in /usr/share/hassio/homeassistant/custom_components/ledticker. New LEDtickers can be set up in /usr/share/hassio/homeassistant/configuration.yaml.


Spams stuff using service notify.nurdbot @ Nurdbot using /usr/share/hassio/homeassistant/jsb/jsb-udpsend.


  • Added the EPC PDU's to HASS
  • Added the space state
  • Added power usage
  • Added Axis camera
  • Added grote zaal rechts (TL)
  • Added Webcam connected to SlabPi
  • Moved to hass.io
  • Moved SonOff Basic to ESPHome and MQTT discovery
  • Added octoprint


We want to be able to easily update home assistant. One way to achieve this is to use Hass.io which in turn uses docker. On our proxmox environment it is not easy to run docker in a proxmox container, so we set up a proper VM for this.

Docker installation

Home assistant config location: /usr/share/hassio/homeassistant# Enabled docker repo and installed it (https://docs.docker.com/install/linux/docker-ce/ubuntu/). User nurds is in the docker group so it can do docker things without sudo.

Installed HASS.IO x86 https://www.home-assistant.io/blog/2017/11/29/hassio-virtual-machine/ Using the install script https://raw.githubusercontent.com/home-assistant/hassio-build/master/install/hassio_install

To Do

Radiator automation integration.

Our site is hosted by Site4U
Our connectivity is made available by BIT
To BIT's website