summaryrefslogtreecommitdiffstats
path: root/app
diff options
context:
space:
mode:
Diffstat (limited to 'app')
-rw-r--r--app/HVAC.qml137
-rw-r--r--app/HeatDegree.qml55
-rw-r--r--app/SeatHeatButton.qml78
-rw-r--r--app/app.pri12
-rw-r--r--app/app.pro10
-rw-r--r--app/config.tests/libhomescreen/libhomescreen.cpp8
-rw-r--r--app/config.tests/libhomescreen/libhomescreen.pro5
-rw-r--r--app/hvac.qrc7
-rw-r--r--app/images/HMI_HVAC_Active.svg75
-rw-r--r--app/images/HMI_HVAC_AirDown_Active.svg121
-rw-r--r--app/images/HMI_HVAC_AirDown_Inactive.svg69
-rw-r--r--app/images/HMI_HVAC_AirRight_Active.svg123
-rw-r--r--app/images/HMI_HVAC_AirRight_Inactive.svg72
-rw-r--r--app/images/HMI_HVAC_AirUp_Active.svg126
-rw-r--r--app/images/HMI_HVAC_AirUp_Inactive.svg75
-rw-r--r--app/images/HMI_HVAC_ChairIndicator_OFF.svg76
-rw-r--r--app/images/HMI_HVAC_ChairIndicator_One.svg71
-rw-r--r--app/images/HMI_HVAC_ChairIndicator_Two.svg77
-rw-r--r--app/images/HMI_HVAC_Circulation_Active.svg198
-rw-r--r--app/images/HMI_HVAC_Circulation_Inactive.svg87
-rw-r--r--app/images/HMI_HVAC_Fan_Icon.svg81
-rw-r--r--app/images/HMI_HVAC_Front_Active.svg111
-rw-r--r--app/images/HMI_HVAC_Front_Inactive.svg72
-rw-r--r--app/images/HMI_HVAC_Inactive.svg63
-rw-r--r--app/images/HMI_HVAC_Left_Chair_OFF.svg87
-rw-r--r--app/images/HMI_HVAC_Left_Chair_ON.svg99
-rw-r--r--app/images/HMI_HVAC_Rear_Active.svg195
-rw-r--r--app/images/HMI_HVAC_Rear_Inactive.svg91
-rw-r--r--app/images/HMI_HVAC_Right_Chair_OFF.svg87
-rw-r--r--app/images/HMI_HVAC_Right_Chair_ON.svg100
-rw-r--r--app/images/images.qrc26
-rw-r--r--app/main.cpp46
32 files changed, 2540 insertions, 0 deletions
diff --git a/app/HVAC.qml b/app/HVAC.qml
new file mode 100644
index 0000000..565b108
--- /dev/null
+++ b/app/HVAC.qml
@@ -0,0 +1,137 @@
+/*
+ * Copyright (C) 2016 The Qt Company Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+import QtQuick 2.6
+import QtQuick.Layouts 1.1
+import QtQuick.Controls 2.0
+import AGL.Demo.Controls 1.0
+
+ApplicationWindow {
+ id: root
+
+ ColumnLayout {
+ anchors.fill: parent
+ anchors.topMargin: width / 10
+ anchors.bottomMargin: width / 10
+ RowLayout {
+ Layout.fillHeight: true
+ Layout.alignment: Qt.AlignHCenter
+ Image {
+ source: './images/HMI_HVAC_Fan_Icon.svg'
+ }
+ Item {
+ width: root.width * 0.8
+ Slider {
+ id: fanSpeed
+ anchors.left: parent.left
+ anchors.right: parent.right
+ anchors.verticalCenter: parent.verticalCenter
+ onValueChanged: {
+ console.debug('Fan', value)
+ }
+ }
+ Label {
+ anchors.left: fanSpeed.left
+ anchors.top: fanSpeed.bottom
+ font.pixelSize: 32
+ text: 'FAN SPEED'
+ }
+ }
+ }
+ RowLayout {
+ Layout.fillHeight: true
+ Layout.fillWidth: true
+ Layout.alignment: Layout.Center
+ spacing: 20
+ ColumnLayout {
+ Layout.fillWidth: true
+ spacing: 20
+ SeatHeatButton {
+ id: leftSeat
+ side: 'Left'
+ }
+ HeatDegree {
+ enabled: leftSeat.headLevel > 0
+ }
+ }
+ ColumnLayout {
+ Layout.fillWidth: true
+ spacing: 20
+ ToggleButton {
+ onImage: './images/HMI_HVAC_Active.svg'
+ offImage: './images/HMI_HVAC_Inactive.svg'
+ Label {
+ anchors.centerIn: parent
+ color: parent.checked ? '#66FF99' : '#848286'
+ text: 'A/C'
+ font.pixelSize: parent.height / 3
+ }
+ onCheckedChanged: {
+ console.debug('A/C', checked)
+ }
+ }
+ ToggleButton {
+ onImage: './images/HMI_HVAC_Active.svg'
+ offImage: './images/HMI_HVAC_Inactive.svg'
+ Label {
+ anchors.centerIn: parent
+ color: parent.checked ? '#66FF99' : '#848286'
+ text: 'AUTO'
+ font.pixelSize: parent.height / 3
+ }
+ onCheckedChanged: {
+ console.debug('AUTO', checked)
+ }
+ }
+ ToggleButton {
+ onImage: './images/HMI_HVAC_Circulation_Active.svg'
+ offImage: './images/HMI_HVAC_Circulation_Inactive.svg'
+ onCheckedChanged: {
+ console.debug('Circulation', checked)
+ }
+ }
+ }
+
+ ColumnLayout {
+ Layout.fillWidth: true
+ spacing: 20
+ SeatHeatButton {
+ id: rightSeat
+ side: 'Right'
+ }
+ HeatDegree {
+ enabled: rightSeat.headLevel > 0
+ }
+ }
+ }
+
+ RowLayout {
+ Layout.fillHeight: true
+ Layout.alignment: Qt.AlignHCenter
+ spacing: root.width / 20
+ Repeater {
+ model: ['AirDown', 'AirUp', 'AirRight', 'Rear', 'Front']
+ ToggleButton {
+ onImage: './images/HMI_HVAC_%1_Active.svg'.arg(model.modelData)
+ offImage: './images/HMI_HVAC_%1_Inactive.svg'.arg(model.modelData)
+ onCheckedChanged: {
+ console.debug(model.modelData, checked)
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/app/HeatDegree.qml b/app/HeatDegree.qml
new file mode 100644
index 0000000..878a9d8
--- /dev/null
+++ b/app/HeatDegree.qml
@@ -0,0 +1,55 @@
+/*
+ * Copyright (C) 2016 The Qt Company Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+import QtQuick 2.6
+import QtQuick.Controls 2.0
+
+ListView {
+ id: root
+ clip: true
+ width: 318
+ height: 219 * 2 + 20
+ spacing: 20
+ opacity: enabled ? 1 : 0.5
+
+ property int degree: currentIndex > -1 ? model.get(currentIndex).value : -1
+ model: ListModel {
+ Component.onCompleted: {
+ append({value: 15, modelData: 'LO'})
+ for (var d = 16; d < 30; d++) {
+ append({value: d, modelData: d.toFixed(0) + '\u00b0'})
+ }
+ append({value: 30, modelData: 'HI'})
+ }
+ }
+ delegate: Label {
+ width: ListView.view.width
+ height: 219
+ horizontalAlignment: Label.AlignHCenter
+ verticalAlignment: Label.AlignVCenter
+ text: model.modelData
+ font.pixelSize: height * 0.8
+ color: (ListView.view.enabled && ListView.isCurrentItem) ? '#66FF99' : 'white'
+ }
+
+ preferredHighlightBegin: 0.5
+ preferredHighlightEnd: 0.5
+ highlightRangeMode: ListView.StrictlyEnforceRange
+ highlight: Rectangle {
+ color: 'white'
+ opacity: 0.2
+ }
+}
diff --git a/app/SeatHeatButton.qml b/app/SeatHeatButton.qml
new file mode 100644
index 0000000..3495cf6
--- /dev/null
+++ b/app/SeatHeatButton.qml
@@ -0,0 +1,78 @@
+/*
+ * Copyright (C) 2016 The Qt Company Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+import QtQuick 2.6
+import QtQuick.Layouts 1.1
+import QtQuick.Controls 2.0
+import AGL.Demo.Controls 1.0
+
+
+Item {
+ id: root
+ implicitWidth: 318
+ implicitHeight: 219
+
+ property string side: 'Left'
+ property int headLevel: 0
+
+ Column {
+ id: background
+ anchors.centerIn: parent
+ Image {
+ id: chair
+ source: './images/HMI_HVAC_%1_Chair_OFF.svg'.arg(root.side)
+ states: [
+ State {
+ when: root.headLevel > 0
+ PropertyChanges {
+ target: chair
+ source: './images/HMI_HVAC_%1_Chair_ON.svg'.arg(root.side)
+ }
+ }
+ ]
+ }
+ Image {
+ id: indicator
+ width: 178
+ height: 18
+ source: './images/HMI_HVAC_ChairIndicator_OFF.svg'
+ states: [
+ State {
+ when: root.headLevel === 1
+ PropertyChanges {
+ target: indicator
+ source: './images/HMI_HVAC_ChairIndicator_One.svg'
+ }
+ },
+ State {
+ when: root.headLevel === 2
+ PropertyChanges {
+ target: indicator
+ source: './images/HMI_HVAC_ChairIndicator_Two.svg'
+ }
+ }
+ ]
+ }
+
+ }
+
+ MouseArea {
+ anchors.fill: parent
+ onClicked: {
+ root.headLevel = (root.headLevel + 1) % 3
+ }
+ }
+}
diff --git a/app/app.pri b/app/app.pri
new file mode 100644
index 0000000..014646f
--- /dev/null
+++ b/app/app.pri
@@ -0,0 +1,12 @@
+TEMPLATE = app
+
+load(configure)
+qtCompileTest(libhomescreen)
+
+config_libhomescreen {
+ CONFIG += link_pkgconfig
+ PKGCONFIG += homescreen
+ DEFINES += HAVE_LIBHOMESCREEN
+}
+
+DESTDIR = $${OUT_PWD}/../package/root/bin
diff --git a/app/app.pro b/app/app.pro
new file mode 100644
index 0000000..2c81b9f
--- /dev/null
+++ b/app/app.pro
@@ -0,0 +1,10 @@
+TARGET = hvac
+QT = quickcontrols2
+
+SOURCES = main.cpp
+
+RESOURCES += \
+ hvac.qrc \
+ images/images.qrc
+
+include(app.pri)
diff --git a/app/config.tests/libhomescreen/libhomescreen.cpp b/app/config.tests/libhomescreen/libhomescreen.cpp
new file mode 100644
index 0000000..d698b05
--- /dev/null
+++ b/app/config.tests/libhomescreen/libhomescreen.cpp
@@ -0,0 +1,8 @@
+#include <libhomescreen.hpp>
+
+int main(int argc,char **argv)
+{
+ LibHomeScreen libHomeScreen;
+ return 0;
+}
+
diff --git a/app/config.tests/libhomescreen/libhomescreen.pro b/app/config.tests/libhomescreen/libhomescreen.pro
new file mode 100644
index 0000000..eb4e8f3
--- /dev/null
+++ b/app/config.tests/libhomescreen/libhomescreen.pro
@@ -0,0 +1,5 @@
+SOURCES = libhomescreen.cpp
+
+CONFIG -= qt
+CONFIG += link_pkgconfig
+PKGCONFIG += homescreen
diff --git a/app/hvac.qrc b/app/hvac.qrc
new file mode 100644
index 0000000..03fbf7d
--- /dev/null
+++ b/app/hvac.qrc
@@ -0,0 +1,7 @@
+<RCC>
+ <qresource prefix="/">
+ <file>HVAC.qml</file>
+ <file>SeatHeatButton.qml</file>
+ <file>HeatDegree.qml</file>
+ </qresource>
+</RCC>
diff --git a/app/images/HMI_HVAC_Active.svg b/app/images/HMI_HVAC_Active.svg
new file mode 100644
index 0000000..803a42e
--- /dev/null
+++ b/app/images/HMI_HVAC_Active.svg
@@ -0,0 +1,75 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Generator: Adobe Illustrator 21.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
+
+<svg
+ xmlns:i="&amp;#38;ns_ai;"
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ version="1.1"
+ id="Layer_2"
+ x="0px"
+ y="0px"
+ viewBox="0 0 318 219"
+ style="enable-background:new 0 0 318 219;"
+ xml:space="preserve"
+ inkscape:version="0.91 r13725"
+ sodipodi:docname="HMI_HVAC_Active.svg"><metadata
+ id="metadata30"><rdf:RDF><cc:Work
+ rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs
+ id="defs28" /><sodipodi:namedview
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="2560"
+ inkscape:window-height="1464"
+ id="namedview26"
+ showgrid="false"
+ inkscape:zoom="1.0776256"
+ inkscape:cx="-50.091615"
+ inkscape:cy="35.262715"
+ inkscape:window-x="0"
+ inkscape:window-y="0"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="Layer_2" /><style
+ type="text/css"
+ id="style3">
+ .st0{fill:#00FF00;}
+ .st1{font-family:'Roboto-Light';}
+ .st2{font-size:88.6888px;}
+ .st3{letter-spacing:3;}
+ .st4{letter-spacing:-3;}
+ .st5{fill:none;stroke:url(#SVGID_1_);stroke-miterlimit:10;}
+</style><switch
+ id="switch5"><g
+ i:extraneous="self"
+ id="g7"><g
+ id="g9"><linearGradient
+ id="SVGID_1_"
+ gradientUnits="userSpaceOnUse"
+ x1="20.6039"
+ y1="240.7292"
+ x2="297.3961"
+ y2="-21.7292"><stop
+ offset="0"
+ style="stop-color:#59FF7F"
+ id="stop20" /><stop
+ offset="1"
+ style="stop-color:#6BFBFF"
+ id="stop22" /></linearGradient><rect
+ x="0.5"
+ y="0.5"
+ class="st5"
+ width="317"
+ height="218"
+ id="rect24" /></g></g></switch></svg> \ No newline at end of file
diff --git a/app/images/HMI_HVAC_AirDown_Active.svg b/app/images/HMI_HVAC_AirDown_Active.svg
new file mode 100644
index 0000000..68aebb3
--- /dev/null
+++ b/app/images/HMI_HVAC_AirDown_Active.svg
@@ -0,0 +1,121 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Generator: Adobe Illustrator 21.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
+
+<svg
+ xmlns:i="&amp;ns_ai;"
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ version="1.1"
+ id="Layer_2"
+ x="0px"
+ y="0px"
+ viewBox="0 0 140 140"
+ style="enable-background:new 0 0 140 140;"
+ xml:space="preserve"
+ inkscape:version="0.91 r13725"
+ sodipodi:docname="HMI_HVAC_AirDown_Active.svg"><metadata
+ id="metadata49"><rdf:RDF><cc:Work
+ rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs
+ id="defs47" /><sodipodi:namedview
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="2560"
+ inkscape:window-height="1464"
+ id="namedview45"
+ showgrid="false"
+ inkscape:zoom="1.6857143"
+ inkscape:cx="-158.09322"
+ inkscape:cy="70"
+ inkscape:window-x="0"
+ inkscape:window-y="0"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="Layer_2" /><style
+ type="text/css"
+ id="style3">
+ .st0{fill:url(#SVGID_1_);}
+ .st1{fill:url(#SVGID_2_);}
+ .st2{fill:url(#SVGID_3_);}
+ .st3{fill:none;stroke:url(#SVGID_4_);stroke-width:2;stroke-miterlimit:10;}
+</style><switch
+ id="switch5"><g
+ i:extraneous="self"
+ id="g7"><g
+ id="g9"><g
+ id="g11"><linearGradient
+ id="SVGID_1_"
+ gradientUnits="userSpaceOnUse"
+ x1="-30.4928"
+ y1="171.0748"
+ x2="175.6512"
+ y2="-26.5445"
+ gradientTransform="matrix(1 5.464556e-03 -5.464556e-03 1 -2.5085 -2.852)"><stop
+ offset="0"
+ style="stop-color:#59FF7F"
+ id="stop14" /><stop
+ offset="1"
+ style="stop-color:#6BFBFF"
+ id="stop16" /></linearGradient><path
+ class="st0"
+ d="M70,138c-0.1,0-0.3,0-0.4,0c-37.8-0.2-68.3-31.1-68.1-68.9C1.7,31.5,32.4,1,70,1c0.1,0,0.3,0,0.4,0 c37.8,0.2,68.3,31.1,68.1,68.9l0,0C138.3,107.5,107.6,138,70,138z M70,3.4C33.7,3.4,4.1,32.8,3.9,69.1 c-0.2,36.4,29.3,66.3,65.7,66.5c0.1,0,0.2,0,0.4,0c36.3,0,65.9-29.4,66.1-65.7c0.2-36.4-29.3-66.3-65.7-66.5 C70.2,3.4,70.1,3.4,70,3.4z"
+ id="path18" /></g><g
+ id="g20"><g
+ id="g22"><linearGradient
+ id="SVGID_2_"
+ gradientUnits="userSpaceOnUse"
+ x1="12.0669"
+ y1="139.3421"
+ x2="145.452"
+ y2="27.6709"><stop
+ offset="0"
+ style="stop-color:#59FF7F"
+ id="stop25" /><stop
+ offset="1"
+ style="stop-color:#6BFBFF"
+ id="stop27" /></linearGradient><path
+ class="st1"
+ d="M96.9,64.7c-3.4-1.7-7.5-0.3-9.2,3.1l-10,19.9l-20.2-5.2c-2-0.5-4,0.2-5.2,1.9l-15.4,20.9 c-1.6,2.2-1.2,5.3,1.1,6.9c0.9,0.7,1.9,1,2.9,1c1.5,0,3-0.7,4-2l13.4-18.2l21.3,5.5c0.1,0.1,0.2,0.1,0.4,0.2 c1,0.5,2,0.7,3.1,0.7c2.5,0,5-1.4,6.2-3.8L100,73.9C101.7,70.5,100.3,66.4,96.9,64.7z"
+ id="path29" /><linearGradient
+ id="SVGID_3_"
+ gradientUnits="userSpaceOnUse"
+ x1="4.8135"
+ y1="130.6783"
+ x2="138.1985"
+ y2="19.0071"><stop
+ offset="0"
+ style="stop-color:#59FF7F"
+ id="stop32" /><stop
+ offset="1"
+ style="stop-color:#6BFBFF"
+ id="stop34" /></linearGradient><circle
+ class="st2"
+ cx="97.2"
+ cy="53.3"
+ r="8.3"
+ id="circle36" /></g></g><linearGradient
+ id="SVGID_4_"
+ gradientUnits="userSpaceOnUse"
+ x1="37.4258"
+ y1="52.8987"
+ x2="66.8067"
+ y2="52.8987"><stop
+ offset="0"
+ style="stop-color:#59FF7F"
+ id="stop39" /><stop
+ offset="1"
+ style="stop-color:#6BFBFF"
+ id="stop41" /></linearGradient><path
+ class="st3"
+ d="M57.3,56.5h-0.5V34.9c0-0.2-0.2-0.4-0.4-0.4h-8c-0.2,0-0.4,0.2-0.4,0.4v21.6h-9.4c-0.1,0.1,0,0.4,0.1,0.6 L52,71.3c0.1,0.1,0.3,0.1,0.4,0l13.4-14.2c0.1-0.1,0-0.4-0.1-0.6h-1.6"
+ id="path43" /></g></g></switch></svg> \ No newline at end of file
diff --git a/app/images/HMI_HVAC_AirDown_Inactive.svg b/app/images/HMI_HVAC_AirDown_Inactive.svg
new file mode 100644
index 0000000..a013f4b
--- /dev/null
+++ b/app/images/HMI_HVAC_AirDown_Inactive.svg
@@ -0,0 +1,69 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Generator: Adobe Illustrator 21.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
+
+<svg
+ xmlns:i="&amp;ns_ai;"
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ version="1.1"
+ id="Layer_2"
+ x="0px"
+ y="0px"
+ viewBox="0 0 140 140"
+ style="enable-background:new 0 0 140 140;"
+ xml:space="preserve"
+ inkscape:version="0.91 r13725"
+ sodipodi:docname="HMI_HVAC_AirDown_Inactive.svg"><metadata
+ id="metadata27"><rdf:RDF><cc:Work
+ rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs
+ id="defs25" /><sodipodi:namedview
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="2560"
+ inkscape:window-height="1464"
+ id="namedview23"
+ showgrid="false"
+ inkscape:zoom="1.6857143"
+ inkscape:cx="-188.94068"
+ inkscape:cy="70"
+ inkscape:window-x="0"
+ inkscape:window-y="0"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="Layer_2" /><style
+ type="text/css"
+ id="style3">
+ .st0{fill:#848286;}
+ .st1{fill:none;stroke:#848286;stroke-width:2;stroke-miterlimit:10;}
+</style><switch
+ id="switch5"><g
+ i:extraneous="self"
+ id="g7"><g
+ id="g9"><path
+ class="st0"
+ d="M70,138c-0.1,0-0.3,0-0.4,0c-37.8-0.2-68.3-31.1-68.1-68.9C1.7,31.5,32.4,1,70,1c0.1,0,0.3,0,0.4,0 c37.8,0.2,68.3,31.1,68.1,68.9l0,0C138.3,107.5,107.6,138,70,138z M70,3.4C33.7,3.4,4.1,32.8,3.9,69.1 c-0.2,36.4,29.3,66.3,65.7,66.5c0.1,0,0.2,0,0.4,0c36.3,0,65.9-29.4,66.1-65.7c0.2-36.4-29.3-66.3-65.7-66.5 C70.2,3.4,70.1,3.4,70,3.4z"
+ id="path11" /></g><g
+ id="g13"><g
+ id="g15"><path
+ class="st0"
+ d="M96.9,64.7c-3.4-1.7-7.5-0.3-9.2,3.1l-10,19.9l-20.2-5.2c-2-0.5-4,0.2-5.2,1.9l-15.4,20.9 c-1.6,2.2-1.2,5.3,1.1,6.9c0.9,0.7,1.9,1,2.9,1c1.5,0,3-0.7,4-2l13.4-18.2l21.3,5.5c0.1,0.1,0.2,0.1,0.4,0.2 c1,0.5,2,0.7,3.1,0.7c2.5,0,5-1.4,6.2-3.8L100,73.9C101.7,70.5,100.3,66.4,96.9,64.7z"
+ id="path17" /><circle
+ class="st0"
+ cx="97.2"
+ cy="53.3"
+ r="8.3"
+ id="circle19" /></g></g><path
+ class="st1"
+ d="M57.3,56.5h-0.5V34.9c0-0.2-0.2-0.4-0.4-0.4h-8c-0.2,0-0.4,0.2-0.4,0.4v21.6h-9.4c-0.1,0.1,0,0.4,0.1,0.6 L52,71.3c0.1,0.1,0.3,0.1,0.4,0l13.4-14.2c0.1-0.1,0-0.4-0.1-0.6h-1.6"
+ id="path21" /></g></switch></svg> \ No newline at end of file
diff --git a/app/images/HMI_HVAC_AirRight_Active.svg b/app/images/HMI_HVAC_AirRight_Active.svg
new file mode 100644
index 0000000..9ac6103
--- /dev/null
+++ b/app/images/HMI_HVAC_AirRight_Active.svg
@@ -0,0 +1,123 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Generator: Adobe Illustrator 21.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
+
+<svg
+ xmlns:i="&amp;ns_ai;"
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ version="1.1"
+ id="Layer_2"
+ x="0px"
+ y="0px"
+ viewBox="0 0 140 140"
+ style="enable-background:new 0 0 140 140;"
+ xml:space="preserve"
+ inkscape:version="0.91 r13725"
+ sodipodi:docname="HMI_HVAC_AirRight_Active.svg"><metadata
+ id="metadata55"><rdf:RDF><cc:Work
+ rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs
+ id="defs53" /><sodipodi:namedview
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="2560"
+ inkscape:window-height="1464"
+ id="namedview51"
+ showgrid="false"
+ inkscape:zoom="1.6857143"
+ inkscape:cx="-102.62712"
+ inkscape:cy="70"
+ inkscape:window-x="0"
+ inkscape:window-y="0"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="Layer_2" /><style
+ type="text/css"
+ id="style3">
+ .st0{fill:url(#SVGID_1_);}
+ .st1{fill:url(#SVGID_2_);}
+ .st2{fill:url(#SVGID_3_);}
+ .st3{fill:url(#SVGID_4_);}
+</style><switch
+ id="switch5"><g
+ i:extraneous="self"
+ id="g7"><g
+ id="g9"><g
+ id="g11"><linearGradient
+ id="SVGID_1_"
+ gradientUnits="userSpaceOnUse"
+ x1="-12.9122"
+ y1="161.8499"
+ x2="136.9379"
+ y2="-4.2002"><stop
+ offset="0"
+ style="stop-color:#59FF7F"
+ id="stop14" /><stop
+ offset="1"
+ style="stop-color:#6BFBFF"
+ id="stop16" /></linearGradient><path
+ class="st0"
+ d="M70,138.5c-0.1,0-0.3,0-0.4,0c-18.3-0.1-35.5-7.3-48.3-20.3C8.4,105.2,1.4,87.9,1.5,69.6 c0.1-18.3,7.3-35.5,20.3-48.3C34.7,8.5,51.8,1.5,70,1.5c0.1,0,0.3,0,0.4,0c18.3,0.1,35.5,7.3,48.3,20.3 c12.9,13,19.9,30.2,19.8,48.5l0,0C138.3,108,107.6,138.5,70,138.5z M70,3.9c-17.5,0-34,6.8-46.5,19.1C11,35.4,4,52,3.9,69.6 c-0.1,17.7,6.7,34.3,19.1,46.8s29,19.5,46.6,19.6c0.1,0,0.2,0,0.4,0c36.3,0,65.9-29.4,66.1-65.7c0.1-17.7-6.7-34.3-19.1-46.8 C104.6,11,88,4,70.4,3.9C70.2,3.9,70.1,3.9,70,3.9z"
+ id="path18" /></g><g
+ id="g20"><g
+ id="g22"><linearGradient
+ id="SVGID_2_"
+ gradientUnits="userSpaceOnUse"
+ x1="-2.2981"
+ y1="171.5389"
+ x2="147.6513"
+ y2="5.3788"><stop
+ offset="0"
+ style="stop-color:#59FF7F"
+ id="stop25" /><stop
+ offset="1"
+ style="stop-color:#6BFBFF"
+ id="stop27" /></linearGradient><path
+ class="st1"
+ d="M96.9,65.2c-3.4-1.7-7.5-0.3-9.2,3.1l-10,19.9L57.5,83c-2-0.5-4,0.2-5.2,1.9l-15.4,20.9 c-1.6,2.2-1.2,5.3,1.1,6.9c0.9,0.7,1.9,1,2.9,1c1.5,0,3-0.7,4-2l13.4-18.2l21.3,5.5c0.1,0.1,0.2,0.1,0.4,0.2 c1,0.5,2,0.7,3.1,0.7c2.5,0,5-1.4,6.2-3.8L100,74.4C101.7,71,100.3,66.9,96.9,65.2z"
+ id="path29" /></g></g><g
+ id="g31"><g
+ id="g33"><linearGradient
+ id="SVGID_3_"
+ gradientUnits="userSpaceOnUse"
+ x1="-6.0031"
+ y1="168.1953"
+ x2="143.9462"
+ y2="2.0352"><stop
+ offset="0"
+ style="stop-color:#59FF7F"
+ id="stop36" /><stop
+ offset="1"
+ style="stop-color:#6BFBFF"
+ id="stop38" /></linearGradient><circle
+ class="st2"
+ cx="97.2"
+ cy="53.8"
+ r="8.3"
+ id="circle40" /></g></g><g
+ id="g42"><linearGradient
+ id="SVGID_4_"
+ gradientUnits="userSpaceOnUse"
+ x1="-32.1525"
+ y1="144.5971"
+ x2="117.7968"
+ y2="-21.563"><stop
+ offset="0"
+ style="stop-color:#59FF7F"
+ id="stop45" /><stop
+ offset="1"
+ style="stop-color:#6BFBFF"
+ id="stop47" /></linearGradient><path
+ class="st3"
+ d="M55.9,68.3c-0.4,0-0.7-0.1-1-0.4l-0.4-0.4v-8.7H34.1c-0.9,0-1.6-0.7-1.6-1.6v-8c0-0.9,0.7-1.6,1.6-1.6h21.6 v0.7h1.2v1.7h-22v6.5h22v8.3l12-11.3L56.3,41.4h-1.8v-2.1l0.4-0.4c0.6-0.5,1.6-0.7,2.2-0.1l14.2,13.4c0.3,0.3,0.5,0.7,0.5,1.1 s-0.2,0.8-0.5,1.1L57.1,67.8C56.8,68.1,56.3,68.3,55.9,68.3z M55.5,66.1C55.5,66.1,55.5,66.1,55.5,66.1L55.5,66.1z M55.5,40.6 C55.5,40.6,55.5,40.6,55.5,40.6L55.5,40.6z"
+ id="path49" /></g></g></g></switch></svg> \ No newline at end of file
diff --git a/app/images/HMI_HVAC_AirRight_Inactive.svg b/app/images/HMI_HVAC_AirRight_Inactive.svg
new file mode 100644
index 0000000..991a773
--- /dev/null
+++ b/app/images/HMI_HVAC_AirRight_Inactive.svg
@@ -0,0 +1,72 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Generator: Adobe Illustrator 21.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
+
+<svg
+ xmlns:i="&amp;ns_ai;"
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ version="1.1"
+ id="Layer_2"
+ x="0px"
+ y="0px"
+ viewBox="0 0 140 140"
+ style="enable-background:new 0 0 140 140;"
+ xml:space="preserve"
+ inkscape:version="0.91 r13725"
+ sodipodi:docname="HMI_HVAC_AirRight_Inactive.svg"><metadata
+ id="metadata35"><rdf:RDF><cc:Work
+ rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs
+ id="defs33" /><sodipodi:namedview
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="2560"
+ inkscape:window-height="1464"
+ id="namedview31"
+ showgrid="false"
+ inkscape:zoom="1.6857143"
+ inkscape:cx="-212.9661"
+ inkscape:cy="70"
+ inkscape:window-x="0"
+ inkscape:window-y="0"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="Layer_2" /><style
+ type="text/css"
+ id="style3">
+ .st0{fill:#848286;}
+</style><switch
+ id="switch5"><g
+ i:extraneous="self"
+ id="g7"><g
+ id="g9"><g
+ id="g11"><path
+ class="st0"
+ d="M70,138.5c-0.1,0-0.3,0-0.4,0c-18.3-0.1-35.5-7.3-48.3-20.3C8.4,105.2,1.4,87.9,1.5,69.6 c0.1-18.3,7.3-35.5,20.3-48.3C34.7,8.5,51.8,1.5,70,1.5c0.1,0,0.3,0,0.4,0c18.3,0.1,35.5,7.3,48.3,20.3 c12.9,13,19.9,30.2,19.8,48.5l0,0C138.3,108,107.6,138.5,70,138.5z M70,3.9c-17.5,0-34,6.8-46.5,19.1C11,35.4,4,52,3.9,69.6 c-0.1,17.7,6.7,34.3,19.1,46.8s29,19.5,46.6,19.6c0.1,0,0.2,0,0.4,0c36.3,0,65.9-29.4,66.1-65.7c0.1-17.7-6.7-34.3-19.1-46.8 C104.6,11,88,4,70.4,3.9C70.2,3.9,70.1,3.9,70,3.9z"
+ id="path13" /></g><g
+ id="g15"><g
+ id="g17"><path
+ class="st0"
+ d="M96.9,65.2c-3.4-1.7-7.5-0.3-9.2,3.1l-10,19.9L57.5,83c-2-0.5-4,0.2-5.2,1.9l-15.4,20.9 c-1.6,2.2-1.2,5.3,1.1,6.9c0.9,0.7,1.9,1,2.9,1c1.5,0,3-0.7,4-2l13.4-18.2l21.3,5.5c0.1,0.1,0.2,0.1,0.4,0.2 c1,0.5,2,0.7,3.1,0.7c2.5,0,5-1.4,6.2-3.8L100,74.4C101.7,71,100.3,66.9,96.9,65.2z"
+ id="path19" /></g></g><g
+ id="g21"><g
+ id="g23"><circle
+ class="st0"
+ cx="97.2"
+ cy="53.8"
+ r="8.3"
+ id="circle25" /></g></g><g
+ id="g27"><path
+ class="st0"
+ d="M55.9,68.3c-0.4,0-0.7-0.1-1-0.4l-0.4-0.4v-8.7H34.1c-0.9,0-1.6-0.7-1.6-1.6v-8c0-0.9,0.7-1.6,1.6-1.6h21.6 v0.7h1.2v1.7h-22v6.5h22v8.3l12-11.3L56.3,41.4h-1.8v-2.1l0.4-0.4c0.6-0.5,1.6-0.7,2.2-0.1l14.2,13.4c0.3,0.3,0.5,0.7,0.5,1.1 s-0.2,0.8-0.5,1.1L57.1,67.8C56.8,68.1,56.3,68.3,55.9,68.3z M55.5,66.1C55.5,66.1,55.5,66.1,55.5,66.1L55.5,66.1z M55.5,40.6 C55.5,40.6,55.5,40.6,55.5,40.6L55.5,40.6z"
+ id="path29" /></g></g></g></switch></svg> \ No newline at end of file
diff --git a/app/images/HMI_HVAC_AirUp_Active.svg b/app/images/HMI_HVAC_AirUp_Active.svg
new file mode 100644
index 0000000..7428bd1
--- /dev/null
+++ b/app/images/HMI_HVAC_AirUp_Active.svg
@@ -0,0 +1,126 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Generator: Adobe Illustrator 21.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
+
+<svg
+ xmlns:i="&amp;ns_ai;"
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ version="1.1"
+ id="Layer_2"
+ x="0px"
+ y="0px"
+ viewBox="0 0 140 140"
+ style="enable-background:new 0 0 140 140;"
+ xml:space="preserve"
+ inkscape:version="0.91 r13725"
+ sodipodi:docname="HMI_HVAC_AirUp_Active.svg"><metadata
+ id="metadata61"><rdf:RDF><cc:Work
+ rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs
+ id="defs59" /><sodipodi:namedview
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="2560"
+ inkscape:window-height="1464"
+ id="namedview57"
+ showgrid="false"
+ inkscape:zoom="1.6857143"
+ inkscape:cx="-201.10169"
+ inkscape:cy="70"
+ inkscape:window-x="0"
+ inkscape:window-y="0"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="Layer_2" /><style
+ type="text/css"
+ id="style3">
+ .st0{fill:url(#SVGID_1_);}
+ .st1{fill:url(#SVGID_2_);}
+ .st2{fill:url(#SVGID_3_);}
+ .st3{fill:url(#SVGID_4_);}
+</style><switch
+ id="switch5"><g
+ i:extraneous="self"
+ id="g7"><g
+ id="g9"><g
+ id="g11"><g
+ id="g13"><linearGradient
+ id="SVGID_1_"
+ gradientUnits="userSpaceOnUse"
+ x1="13.3039"
+ y1="158.6924"
+ x2="149.6532"
+ y2="-54.6065"><stop
+ offset="0"
+ style="stop-color:#59FF7F"
+ id="stop16" /><stop
+ offset="1"
+ style="stop-color:#6BFBFF"
+ id="stop18" /></linearGradient><path
+ class="st0"
+ d="M70,138.5c-0.1,0-0.3,0-0.4,0c-37.8-0.2-68.3-31.1-68.1-68.9C1.7,32,32.4,1.5,70,1.5c0.1,0,0.3,0,0.4,0 c37.8,0.2,68.3,31.1,68.1,68.9l0,0C138.3,108,107.6,138.5,70,138.5z M70,3.9C33.7,3.9,4.1,33.3,3.9,69.6 c-0.2,36.4,29.3,66.3,65.7,66.5c0.1,0,0.2,0,0.4,0c36.3,0,65.9-29.4,66.1-65.7c0.2-36.4-29.3-66.3-65.7-66.5 C70.2,3.9,70.1,3.9,70,3.9z"
+ id="path20" /></g></g><g
+ id="g22"><g
+ id="g24"><g
+ id="g26"><linearGradient
+ id="SVGID_2_"
+ gradientUnits="userSpaceOnUse"
+ x1="22.352"
+ y1="164.5598"
+ x2="158.7924"
+ y2="-48.8816"><stop
+ offset="0"
+ style="stop-color:#59FF7F"
+ id="stop29" /><stop
+ offset="1"
+ style="stop-color:#6BFBFF"
+ id="stop31" /></linearGradient><path
+ class="st1"
+ d="M96.9,65.2c-3.4-1.7-7.5-0.3-9.2,3.1l-10,19.9L57.5,83c-2-0.5-4,0.2-5.2,1.9l-15.4,20.9 c-1.6,2.2-1.2,5.3,1.1,6.9c0.9,0.7,1.9,1,2.9,1c1.5,0,3-0.7,4-2l13.4-18.2l21.3,5.5c0.1,0.1,0.2,0.1,0.4,0.2 c1,0.5,2,0.7,3.1,0.7c2.5,0,5-1.4,6.2-3.8L100,74.4C101.7,71,100.3,66.9,96.9,65.2z"
+ id="path33" /></g></g><g
+ id="g35"><g
+ id="g37"><linearGradient
+ id="SVGID_3_"
+ gradientUnits="userSpaceOnUse"
+ x1="25.2431"
+ y1="166.4079"
+ x2="161.6835"
+ y2="-47.0335"><stop
+ offset="0"
+ style="stop-color:#59FF7F"
+ id="stop40" /><stop
+ offset="1"
+ style="stop-color:#6BFBFF"
+ id="stop42" /></linearGradient><circle
+ class="st2"
+ cx="97.2"
+ cy="53.8"
+ r="8.3"
+ id="circle44" /></g></g></g><g
+ id="g46"><g
+ id="g48"><linearGradient
+ id="SVGID_4_"
+ gradientUnits="userSpaceOnUse"
+ x1="-7.1392"
+ y1="145.7078"
+ x2="129.3011"
+ y2="-67.7336"><stop
+ offset="0"
+ style="stop-color:#59FF7F"
+ id="stop51" /><stop
+ offset="1"
+ style="stop-color:#6BFBFF"
+ id="stop53" /></linearGradient><path
+ class="st3"
+ d="M55.9,73h-8c-0.9,0-1.6-0.7-1.6-1.6V49.8h0.7v-1.2h1.7v22h6.5v-22h8.3l-11.3-12L40.2,49.2V51h-2.1 l-0.4-0.4c-0.5-0.6-0.7-1.6-0.1-2.2L51,34.2c0.3-0.3,0.7-0.5,1.1-0.5c0,0,0,0,0,0c0.4,0,0.8,0.2,1.1,0.5l13.4,14.2 c0.5,0.6,0.7,1.6,0.1,2.2L66.3,51h-8.7v20.4C57.5,72.3,56.8,73,55.9,73z M64.8,50.1C64.8,50.1,64.8,50.1,64.8,50.1L64.8,50.1z M39.4,50L39.4,50C39.4,50.1,39.4,50.1,39.4,50z"
+ id="path55" /></g></g></g></g></switch></svg> \ No newline at end of file
diff --git a/app/images/HMI_HVAC_AirUp_Inactive.svg b/app/images/HMI_HVAC_AirUp_Inactive.svg
new file mode 100644
index 0000000..39e1fa1
--- /dev/null
+++ b/app/images/HMI_HVAC_AirUp_Inactive.svg
@@ -0,0 +1,75 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Generator: Adobe Illustrator 21.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
+
+<svg
+ xmlns:i="&amp;ns_ai;"
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ version="1.1"
+ id="Layer_2"
+ x="0px"
+ y="0px"
+ viewBox="0 0 140 140"
+ style="enable-background:new 0 0 140 140;"
+ xml:space="preserve"
+ inkscape:version="0.91 r13725"
+ sodipodi:docname="HMI_HVAC_AirUp_Inactive.svg"><metadata
+ id="metadata41"><rdf:RDF><cc:Work
+ rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs
+ id="defs39" /><sodipodi:namedview
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="2560"
+ inkscape:window-height="1464"
+ id="namedview37"
+ showgrid="false"
+ inkscape:zoom="1.6857143"
+ inkscape:cx="-186.5678"
+ inkscape:cy="70"
+ inkscape:window-x="0"
+ inkscape:window-y="0"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="Layer_2" /><style
+ type="text/css"
+ id="style3">
+ .st0{fill:#848286;}
+</style><switch
+ id="switch5"><g
+ i:extraneous="self"
+ id="g7"><g
+ id="g9"><g
+ id="g11"><g
+ id="g13"><path
+ class="st0"
+ d="M70,138.5c-0.1,0-0.3,0-0.4,0c-37.8-0.2-68.3-31.1-68.1-68.9C1.7,32,32.4,1.5,70,1.5c0.1,0,0.3,0,0.4,0 c37.8,0.2,68.3,31.1,68.1,68.9l0,0C138.3,108,107.6,138.5,70,138.5z M70,3.9C33.7,3.9,4.1,33.3,3.9,69.6 c-0.2,36.4,29.3,66.3,65.7,66.5c0.1,0,0.2,0,0.4,0c36.3,0,65.9-29.4,66.1-65.7c0.2-36.4-29.3-66.3-65.7-66.5 C70.2,3.9,70.1,3.9,70,3.9z"
+ id="path15" /></g></g><g
+ id="g17"><g
+ id="g19"><g
+ id="g21"><path
+ class="st0"
+ d="M96.9,65.2c-3.4-1.7-7.5-0.3-9.2,3.1l-10,19.9L57.5,83c-2-0.5-4,0.2-5.2,1.9l-15.4,20.9 c-1.6,2.2-1.2,5.3,1.1,6.9c0.9,0.7,1.9,1,2.9,1c1.5,0,3-0.7,4-2l13.4-18.2l21.3,5.5c0.1,0.1,0.2,0.1,0.4,0.2 c1,0.5,2,0.7,3.1,0.7c2.5,0,5-1.4,6.2-3.8L100,74.4C101.7,71,100.3,66.9,96.9,65.2z"
+ id="path23" /></g></g><g
+ id="g25"><g
+ id="g27"><circle
+ class="st0"
+ cx="97.2"
+ cy="53.8"
+ r="8.3"
+ id="circle29" /></g></g></g><g
+ id="g31"><g
+ id="g33"><path
+ class="st0"
+ d="M55.9,73h-8c-0.9,0-1.6-0.7-1.6-1.6V49.8h0.7v-1.2h1.7v22h6.5v-22h8.3l-11.3-12L40.2,49.2V51h-2.1 l-0.4-0.4c-0.5-0.6-0.7-1.6-0.1-2.2L51,34.2c0.3-0.3,0.7-0.5,1.1-0.5c0,0,0,0,0,0c0.4,0,0.8,0.2,1.1,0.5l13.4,14.2 c0.5,0.6,0.7,1.6,0.1,2.2L66.3,51h-8.7v20.4C57.5,72.3,56.8,73,55.9,73z M64.8,50.1C64.8,50.1,64.8,50.1,64.8,50.1L64.8,50.1z M39.4,50L39.4,50C39.4,50.1,39.4,50.1,39.4,50z"
+ id="path35" /></g></g></g></g></switch></svg> \ No newline at end of file
diff --git a/app/images/HMI_HVAC_ChairIndicator_OFF.svg b/app/images/HMI_HVAC_ChairIndicator_OFF.svg
new file mode 100644
index 0000000..1fcd17f
--- /dev/null
+++ b/app/images/HMI_HVAC_ChairIndicator_OFF.svg
@@ -0,0 +1,76 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Generator: Adobe Illustrator 21.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
+
+<svg
+ xmlns:i="&amp;ns_ai;"
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ version="1.1"
+ id="Layer_2"
+ x="0px"
+ y="0px"
+ viewBox="0 0 178 18"
+ style="enable-background:new 0 0 178 18;"
+ xml:space="preserve"
+ inkscape:version="0.91 r13725"
+ sodipodi:docname="HMI_HVAC_ChairIndicator_OFF.svg"><metadata
+ id="metadata21"><rdf:RDF><cc:Work
+ rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs
+ id="defs19" /><sodipodi:namedview
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="2560"
+ inkscape:window-height="1464"
+ id="namedview17"
+ showgrid="false"
+ inkscape:zoom="3.7752809"
+ inkscape:cx="-7.4166667"
+ inkscape:cy="9"
+ inkscape:window-x="0"
+ inkscape:window-y="0"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="Layer_2" /><style
+ type="text/css"
+ id="style3">
+ .st0{opacity:0.8;fill:#1B1A1D;}
+ .st1{fill:none;stroke:#848286;stroke-miterlimit:10;}
+</style><switch
+ id="switch5"><g
+ i:extraneous="self"
+ id="g7"><rect
+ x="7.2"
+ y="4.2"
+ class="st0"
+ width="78.6"
+ height="9.6"
+ id="rect9" /><rect
+ x="7.2"
+ y="4.2"
+ class="st1"
+ width="78.6"
+ height="9.6"
+ id="rect11" /><rect
+ x="92.2"
+ y="4.2"
+ class="st0"
+ width="78.6"
+ height="9.6"
+ id="rect13" /><rect
+ x="92.2"
+ y="4.2"
+ class="st1"
+ width="78.6"
+ height="9.6"
+ id="rect15" /></g></switch></svg> \ No newline at end of file
diff --git a/app/images/HMI_HVAC_ChairIndicator_One.svg b/app/images/HMI_HVAC_ChairIndicator_One.svg
new file mode 100644
index 0000000..c24fa8f
--- /dev/null
+++ b/app/images/HMI_HVAC_ChairIndicator_One.svg
@@ -0,0 +1,71 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Generator: Adobe Illustrator 21.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
+
+<svg
+ xmlns:i="&amp;ns_ai;"
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ version="1.1"
+ id="Layer_2"
+ x="0px"
+ y="0px"
+ viewBox="0 0 178 18"
+ style="enable-background:new 0 0 178 18;"
+ xml:space="preserve"
+ inkscape:version="0.91 r13725"
+ sodipodi:docname="HMI_HVAC_ChairIndicator_One.svg"><metadata
+ id="metadata19"><rdf:RDF><cc:Work
+ rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs
+ id="defs17" /><sodipodi:namedview
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="2560"
+ inkscape:window-height="1464"
+ id="namedview15"
+ showgrid="false"
+ inkscape:zoom="3.7752809"
+ inkscape:cx="-2.1190476"
+ inkscape:cy="9"
+ inkscape:window-x="0"
+ inkscape:window-y="0"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="Layer_2" /><style
+ type="text/css"
+ id="style3">
+ .st0{fill:#66FF99;}
+ .st1{opacity:0.8;fill:#1B1A1D;}
+ .st2{fill:none;stroke:#66FF99;stroke-miterlimit:10;}
+</style><switch
+ id="switch5"><g
+ i:extraneous="self"
+ id="g7"><rect
+ x="7.2"
+ y="4.2"
+ class="st0"
+ width="78.6"
+ height="9.6"
+ id="rect9" /><rect
+ x="92.2"
+ y="4.2"
+ class="st1"
+ width="78.6"
+ height="9.6"
+ id="rect11" /><rect
+ x="92.2"
+ y="4.2"
+ class="st2"
+ width="78.6"
+ height="9.6"
+ id="rect13" /></g></switch></svg> \ No newline at end of file
diff --git a/app/images/HMI_HVAC_ChairIndicator_Two.svg b/app/images/HMI_HVAC_ChairIndicator_Two.svg
new file mode 100644
index 0000000..042b87d
--- /dev/null
+++ b/app/images/HMI_HVAC_ChairIndicator_Two.svg
@@ -0,0 +1,77 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Generator: Adobe Illustrator 21.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
+
+<svg
+ xmlns:i="&amp;ns_ai;"
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ version="1.1"
+ id="Layer_2"
+ x="0px"
+ y="0px"
+ viewBox="0 0 178 18"
+ style="enable-background:new 0 0 178 18;"
+ xml:space="preserve"
+ inkscape:version="0.91 r13725"
+ sodipodi:docname="HMI_HVAC_ChairIndicator_Two.svg"><metadata
+ id="metadata21"><rdf:RDF><cc:Work
+ rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs
+ id="defs19" /><sodipodi:namedview
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="2560"
+ inkscape:window-height="1464"
+ id="namedview17"
+ showgrid="false"
+ inkscape:zoom="3.7752809"
+ inkscape:cx="-33.110119"
+ inkscape:cy="9"
+ inkscape:window-x="0"
+ inkscape:window-y="0"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="Layer_2" /><style
+ type="text/css"
+ id="style3">
+ .st0{fill:#66FF99;}
+ .st1{opacity:0.8;fill:#1B1A1D;}
+ .st2{fill:none;stroke:#66FF99;stroke-miterlimit:10;}
+</style><switch
+ id="switch5"><g
+ i:extraneous="self"
+ id="g7"><rect
+ x="7.2"
+ y="4.2"
+ class="st0"
+ width="78.6"
+ height="9.6"
+ id="rect9" /><rect
+ x="92.2"
+ y="4.2"
+ class="st1"
+ width="78.6"
+ height="9.6"
+ id="rect11" /><rect
+ x="92.2"
+ y="4.2"
+ class="st2"
+ width="78.6"
+ height="9.6"
+ id="rect13" /><rect
+ x="92.2"
+ y="4.2"
+ class="st0"
+ width="78.6"
+ height="9.6"
+ id="rect15" /></g></switch></svg> \ No newline at end of file
diff --git a/app/images/HMI_HVAC_Circulation_Active.svg b/app/images/HMI_HVAC_Circulation_Active.svg
new file mode 100644
index 0000000..8a15033
--- /dev/null
+++ b/app/images/HMI_HVAC_Circulation_Active.svg
@@ -0,0 +1,198 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Generator: Adobe Illustrator 21.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
+
+<svg
+ xmlns:i="&amp;ns_ai;"
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ version="1.1"
+ id="Layer_2"
+ x="0px"
+ y="0px"
+ viewBox="0 0 318 219"
+ style="enable-background:new 0 0 318 219;"
+ xml:space="preserve"
+ inkscape:version="0.91 r13725"
+ sodipodi:docname="HMI_HVAC_Circulation_Active.svg"><metadata
+ id="metadata78"><rdf:RDF><cc:Work
+ rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs
+ id="defs76" /><sodipodi:namedview
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="2560"
+ inkscape:window-height="1464"
+ id="namedview74"
+ showgrid="false"
+ inkscape:zoom="1.0776256"
+ inkscape:cx="-249.76907"
+ inkscape:cy="109.5"
+ inkscape:window-x="0"
+ inkscape:window-y="0"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="Layer_2" /><style
+ type="text/css"
+ id="style3">
+ .st0{fill:url(#SVGID_1_);}
+ .st1{fill:url(#SVGID_2_);}
+ .st2{fill:url(#SVGID_3_);}
+ .st3{fill:url(#SVGID_4_);}
+ .st4{fill:url(#SVGID_5_);}
+ .st5{fill:url(#SVGID_6_);}
+ .st6{fill:url(#SVGID_7_);}
+ .st7{fill:url(#SVGID_8_);}
+ .st8{fill:none;stroke:url(#SVGID_9_);stroke-miterlimit:10;}
+</style><switch
+ id="switch5"><g
+ i:extraneous="self"
+ id="g7"><g
+ id="g9"><linearGradient
+ id="SVGID_1_"
+ gradientUnits="userSpaceOnUse"
+ x1="124.8906"
+ y1="222.9002"
+ x2="297.9268"
+ y2="83.4753"><stop
+ offset="0"
+ style="stop-color:#59FF7F"
+ id="stop12" /><stop
+ offset="1"
+ style="stop-color:#6BFBFF"
+ id="stop14" /></linearGradient><path
+ class="st0"
+ d="M218.2,164.1c-5.7,0-11.1-2.2-15.2-6.3c-4.1-4.1-6.3-9.5-6.3-15.2l2,0c0,5.2,2,10.1,5.7,13.8 c3.7,3.7,8.6,5.7,13.8,5.7c0,0,0,0,0,0c10.8,0,19.5-8.8,19.5-19.6l2,0C239.7,154.4,230.1,164.1,218.2,164.1 C218.2,164.1,218.2,164.1,218.2,164.1z"
+ id="path16" /><linearGradient
+ id="SVGID_2_"
+ gradientUnits="userSpaceOnUse"
+ x1="77.6338"
+ y1="164.2511"
+ x2="250.67"
+ y2="24.8262"><stop
+ offset="0"
+ style="stop-color:#59FF7F"
+ id="stop19" /><stop
+ offset="1"
+ style="stop-color:#6BFBFF"
+ id="stop21" /></linearGradient><path
+ class="st1"
+ d="M97.9,164.3c-5.7,0-11.1-2.2-15.2-6.3c-4.1-4.1-6.3-9.5-6.3-15.2l2,0c0,5.2,2,10.1,5.7,13.8 c3.7,3.7,8.6,5.7,13.8,5.7c0,0,0,0,0,0c5.2,0,10.1-2,13.8-5.7c3.7-3.7,5.7-8.6,5.7-13.8l2,0c0,5.7-2.2,11.2-6.3,15.2 C109.1,162,103.7,164.3,97.9,164.3C97.9,164.3,97.9,164.3,97.9,164.3z"
+ id="path23" /><linearGradient
+ id="SVGID_3_"
+ gradientUnits="userSpaceOnUse"
+ x1="93.334"
+ y1="183.7362"
+ x2="266.3703"
+ y2="44.3113"><stop
+ offset="0"
+ style="stop-color:#59FF7F"
+ id="stop26" /><stop
+ offset="1"
+ style="stop-color:#6BFBFF"
+ id="stop28" /></linearGradient><polygon
+ class="st2"
+ points="118.1,140.2 118.1,138.2 179.3,138.1 179.3,140.1 "
+ id="polygon30" /><linearGradient
+ id="SVGID_4_"
+ gradientUnits="userSpaceOnUse"
+ x1="49.8941"
+ y1="129.8242"
+ x2="222.9303"
+ y2="-9.6007"><stop
+ offset="0"
+ style="stop-color:#59FF7F"
+ id="stop33" /><stop
+ offset="1"
+ style="stop-color:#6BFBFF"
+ id="stop35" /></linearGradient><path
+ class="st3"
+ d="M63.5,140.2c-8.5,0-14.7-14.3-14.7-21.7l0-0.2l6.2-25.2l1.9,0.5l-6.2,25.1c0,3.7,1.6,8.6,3.9,12.6 c2.6,4.5,5.8,7,8.8,7c0,0,0,0,0,0l13.8,0l0,2L63.5,140.2C63.5,140.2,63.5,140.2,63.5,140.2z"
+ id="path37" /><linearGradient
+ id="SVGID_5_"
+ gradientUnits="userSpaceOnUse"
+ x1="93.1771"
+ y1="183.5415"
+ x2="266.2133"
+ y2="44.1166"><stop
+ offset="0"
+ style="stop-color:#59FF7F"
+ id="stop40" /><stop
+ offset="1"
+ style="stop-color:#6BFBFF"
+ id="stop42" /></linearGradient><path
+ class="st4"
+ d="M238.7,140l0-2l15.8,0c2.7,0,5.9-5.8,8.7-15.4c2.2-7.7,3.8-16.7,3.9-20.8l-49-18.5L189.3,49l-35.5,0.1l0-2 l36.4-0.1l29.1,34.5l49.8,18.9l0,0.7c0,3.9-1.5,13.5-4,22.1c-3.2,11.2-6.8,16.9-10.6,16.9L238.7,140z"
+ id="path44" /><linearGradient
+ id="SVGID_6_"
+ gradientUnits="userSpaceOnUse"
+ x1="40.6173"
+ y1="118.311"
+ x2="213.6535"
+ y2="-21.1139"><stop
+ offset="0"
+ style="stop-color:#59FF7F"
+ id="stop47" /><stop
+ offset="1"
+ style="stop-color:#6BFBFF"
+ id="stop49" /></linearGradient><path
+ class="st5"
+ d="M56.7,94.1l-1.2-1.6l21.1-15.9l14.2-18.9c0.6-1,6.2-10.6,18.3-10.6l44.7-0.1l0,2l-44.7,0.1 c-11.2,0-16.3,9.3-16.5,9.6l-0.1,0.1L77.9,78.1L56.7,94.1z"
+ id="path51" /><linearGradient
+ id="SVGID_7_"
+ gradientUnits="userSpaceOnUse"
+ x1="70.8807"
+ y1="155.8701"
+ x2="243.917"
+ y2="16.4452"><stop
+ offset="0"
+ style="stop-color:#59FF7F"
+ id="stop54" /><stop
+ offset="1"
+ style="stop-color:#6BFBFF"
+ id="stop56" /></linearGradient><path
+ class="st6"
+ d="M126.1,111.9c-5.5,0-10.7-2.1-14.5-6c-3.9-3.9-6-9.1-6.1-14.6c0-5.5,2.1-10.7,6-14.6c3.9-3.9,9.1-6,14.6-6.1 l57.1-0.1l0,2l-57.1,0.1c-5,0-9.6,1.9-13.1,5.5c-3.5,3.5-5.4,8.2-5.4,13.2c0,5,1.9,9.6,5.5,13.1c3.5,3.5,8.2,5.4,13.1,5.4 c0,0,0,0,0,0l57.1-0.1l0,2L126.1,111.9C126.2,111.9,126.1,111.9,126.1,111.9z"
+ id="path58" /><linearGradient
+ id="SVGID_8_"
+ gradientUnits="userSpaceOnUse"
+ x1="85.2865"
+ y1="173.7487"
+ x2="258.3227"
+ y2="34.3238"><stop
+ offset="0"
+ style="stop-color:#59FF7F"
+ id="stop61" /><stop
+ offset="1"
+ style="stop-color:#6BFBFF"
+ id="stop63" /></linearGradient><polygon
+ class="st7"
+ points="153.9,121.7 153.2,119.8 180.1,110.8 153.2,101.9 153.8,100 186.4,110.8 "
+ id="polygon65" /><linearGradient
+ id="SVGID_9_"
+ gradientUnits="userSpaceOnUse"
+ x1="20.6643"
+ y1="240.7757"
+ x2="297.3357"
+ y2="-21.7757"><stop
+ offset="0"
+ style="stop-color:#59FF7F"
+ id="stop68" /><stop
+ offset="1"
+ style="stop-color:#6BFBFF"
+ id="stop70" /></linearGradient><rect
+ x="0.5"
+ y="0.5"
+ class="st8"
+ width="317"
+ height="218"
+ id="rect72" /></g></g></switch></svg> \ No newline at end of file
diff --git a/app/images/HMI_HVAC_Circulation_Inactive.svg b/app/images/HMI_HVAC_Circulation_Inactive.svg
new file mode 100644
index 0000000..9c7d43f
--- /dev/null
+++ b/app/images/HMI_HVAC_Circulation_Inactive.svg
@@ -0,0 +1,87 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Generator: Adobe Illustrator 21.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
+
+<svg
+ xmlns:i="&amp;ns_ai;"
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ version="1.1"
+ id="Layer_2"
+ x="0px"
+ y="0px"
+ viewBox="0 0 318 219"
+ style="enable-background:new 0 0 318 219;"
+ xml:space="preserve"
+ inkscape:version="0.91 r13725"
+ sodipodi:docname="HMI_HVAC_Circulation_Inactive.svg"><metadata
+ id="metadata33"><rdf:RDF><cc:Work
+ rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs
+ id="defs31" /><sodipodi:namedview
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="2560"
+ inkscape:window-height="1464"
+ id="namedview29"
+ showgrid="false"
+ inkscape:zoom="1.0776256"
+ inkscape:cx="-290.59958"
+ inkscape:cy="109.5"
+ inkscape:window-x="0"
+ inkscape:window-y="0"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="Layer_2" /><style
+ type="text/css"
+ id="style3">
+ .st0{fill:#848286;}
+ .st1{fill:none;stroke:#848286;stroke-miterlimit:10;}
+</style><switch
+ id="switch5"><g
+ i:extraneous="self"
+ id="g7"><g
+ id="g9"><path
+ class="st0"
+ d="M218.2,164.1c-5.7,0-11.1-2.2-15.2-6.3c-4.1-4.1-6.3-9.5-6.3-15.2l2,0c0,5.2,2,10.1,5.7,13.8 c3.7,3.7,8.6,5.7,13.8,5.7c0,0,0,0,0,0c10.8,0,19.5-8.8,19.5-19.6l2,0C239.7,154.4,230.1,164.1,218.2,164.1 C218.2,164.1,218.2,164.1,218.2,164.1z"
+ id="path11" /><path
+ class="st0"
+ d="M97.9,164.3c-5.7,0-11.1-2.2-15.2-6.3c-4.1-4.1-6.3-9.5-6.3-15.2l2,0c0,5.2,2,10.1,5.7,13.8 c3.7,3.7,8.6,5.7,13.8,5.7c0,0,0,0,0,0c5.2,0,10.1-2,13.8-5.7c3.7-3.7,5.7-8.6,5.7-13.8l2,0c0,5.7-2.2,11.2-6.3,15.2 C109.1,162,103.7,164.3,97.9,164.3C97.9,164.3,97.9,164.3,97.9,164.3z"
+ id="path13" /><rect
+ x="118.1"
+ y="138.1"
+ transform="matrix(1 -1.464842e-03 1.464842e-03 1 -0.2036 0.218)"
+ class="st0"
+ width="61.2"
+ height="2"
+ id="rect15" /><path
+ class="st0"
+ d="M63.5,140.2c-8.5,0-14.7-14.3-14.7-21.7l0-0.2l6.2-25.2l1.9,0.5l-6.2,25.1c0,3.7,1.6,8.6,3.9,12.6 c2.6,4.5,5.8,7,8.8,7c0,0,0,0,0,0l13.8,0l0,2L63.5,140.2C63.5,140.2,63.5,140.2,63.5,140.2z"
+ id="path17" /><path
+ class="st0"
+ d="M238.7,140l0-2l15.8,0c2.7,0,5.9-5.8,8.7-15.4c2.2-7.7,3.8-16.7,3.9-20.8l-49-18.5L189.3,49l-35.5,0.1l0-2 l36.4-0.1l29.1,34.5l49.8,18.9l0,0.7c0,3.9-1.5,13.5-4,22.1c-3.2,11.2-6.8,16.9-10.6,16.9L238.7,140z"
+ id="path19" /><path
+ class="st0"
+ d="M56.7,94.1l-1.2-1.6l21.1-15.9l14.2-18.9c0.6-1,6.2-10.6,18.3-10.6l44.7-0.1l0,2l-44.7,0.1 c-11.2,0-16.3,9.3-16.5,9.6l-0.1,0.1L77.9,78.1L56.7,94.1z"
+ id="path21" /><path
+ class="st0"
+ d="M126.1,111.9c-5.5,0-10.7-2.1-14.5-6c-3.9-3.9-6-9.1-6.1-14.6c0-5.5,2.1-10.7,6-14.6c3.9-3.9,9.1-6,14.6-6.1 l57.1-0.1l0,2l-57.1,0.1c-5,0-9.6,1.9-13.1,5.5c-3.5,3.5-5.4,8.2-5.4,13.2c0,5,1.9,9.6,5.5,13.1c3.5,3.5,8.2,5.4,13.1,5.4 c0,0,0,0,0,0l57.1-0.1l0,2L126.1,111.9C126.2,111.9,126.1,111.9,126.1,111.9z"
+ id="path23" /><polygon
+ class="st0"
+ points="153.9,121.7 153.2,119.8 180.1,110.8 153.2,101.9 153.8,100 186.4,110.8 "
+ id="polygon25" /><rect
+ x="0.5"
+ y="0.5"
+ class="st1"
+ width="317"
+ height="218"
+ id="rect27" /></g></g></switch></svg> \ No newline at end of file
diff --git a/app/images/HMI_HVAC_Fan_Icon.svg b/app/images/HMI_HVAC_Fan_Icon.svg
new file mode 100644
index 0000000..2676ba1
--- /dev/null
+++ b/app/images/HMI_HVAC_Fan_Icon.svg
@@ -0,0 +1,81 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Generator: Adobe Illustrator 21.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
+
+<svg
+ xmlns:i="&amp;ns_ai;"
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ version="1.1"
+ id="Layer_1"
+ x="0px"
+ y="0px"
+ viewBox="0 0 114 114"
+ style="enable-background:new 0 0 114 114;"
+ xml:space="preserve"
+ inkscape:version="0.91 r13725"
+ sodipodi:docname="HMI_HVAC_Fan_Icon.svg"><metadata
+ id="metadata30"><rdf:RDF><cc:Work
+ rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs
+ id="defs28" /><sodipodi:namedview
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="2560"
+ inkscape:window-height="1464"
+ id="namedview26"
+ showgrid="false"
+ inkscape:zoom="2.0701754"
+ inkscape:cx="-124.14407"
+ inkscape:cy="57"
+ inkscape:window-x="0"
+ inkscape:window-y="0"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="Layer_1" /><style
+ type="text/css"
+ id="style3">
+ .st0{fill:none;stroke:#FFFFFF;stroke-width:2;stroke-miterlimit:10;}
+ .st1{fill:url(#SVGID_1_);}
+</style><switch
+ id="switch5"><g
+ i:extraneous="self"
+ id="g7"><g
+ id="g9"><g
+ id="g11"><ellipse
+ transform="matrix(0.8685 -0.4958 0.4958 0.8685 -21.9603 36.0747)"
+ class="st0"
+ cx="57"
+ cy="59.4"
+ rx="3.7"
+ ry="3.7"
+ id="ellipse13" /><path
+ class="st0"
+ d="M58.1,50.7c-1.8-0.2-3.8,0.1-5.5,1.1c-0.6,0.3-1.1,0.7-1.6,1.2c-0.2-0.5-0.3-1-0.5-1.6 c-1.4-5.9,4.5-8.1,5.1-14.1c0.9-8.6-10.6-8.8-15.3-3.7c-6.2,6.7-3.6,14-0.4,18.3c2.5,3.2,5.5,5.2,8.3,6.3 c-0.2,1.8,0.1,3.8,1.1,5.5c0.3,0.6,0.7,1.1,1.2,1.6c-0.5,0.2-1,0.3-1.6,0.5c-5.9,1.4-8.1-4.5-14.1-5.1 c-8.6-0.9-8.8,10.6-3.7,15.3c6.7,6.2,14,3.6,18.3,0.3c3.2-2.5,5.2-5.5,6.3-8.3c1.8,0.2,3.8-0.1,5.5-1.1c0.6-0.3,1.1-0.7,1.6-1.2 c0.2,0.5,0.3,1,0.5,1.6c1.4,5.9-4.5,8.1-5.1,14.1c-0.9,8.6,10.6,8.8,15.3,3.7c6.2-6.7,3.6-14,0.3-18.3c-2.5-3.2-5.5-5.2-8.3-6.3 c0.2-1.8-0.1-3.8-1.1-5.5c-0.3-0.6-0.7-1.1-1.2-1.6c0.5-0.2,1-0.3,1.6-0.5c5.9-1.4,8.1,4.5,14.1,5.1c8.6,0.9,8.8-10.6,3.7-15.3 c-6.7-6.2-14-3.6-18.3-0.4c-1.2,0.9-2.2,1.8-3,2.8"
+ id="path15" /></g><g
+ id="g17"><linearGradient
+ id="SVGID_1_"
+ gradientUnits="userSpaceOnUse"
+ x1="-26.1323"
+ y1="141.6157"
+ x2="145.4036"
+ y2="-22.8267"
+ gradientTransform="matrix(1 5.464556e-03 -5.464556e-03 1 -2.5808 -2.4627)"><stop
+ offset="0"
+ style="stop-color:#59FF7F"
+ id="stop20" /><stop
+ offset="1"
+ style="stop-color:#6BFBFF"
+ id="stop22" /></linearGradient><path
+ class="st1"
+ d="M57,114c-0.1,0-0.2,0-0.3,0C25.3,113.8-0.2,88.1,0,56.7C0.2,25.4,25.7,0,57,0c0.1,0,0.2,0,0.3,0 c31.4,0.2,56.9,25.9,56.7,57.3l0,0C113.8,88.6,88.3,114,57,114z M57,2C26.8,2,2.2,26.5,2,56.7C1.8,87,26.4,111.8,56.7,112 c0.1,0,0.2,0,0.3,0c30.2,0,54.8-24.5,55-54.7C112.2,27,87.6,2.2,57.3,2C57.2,2,57.1,2,57,2z"
+ id="path24" /></g></g></g></switch></svg> \ No newline at end of file
diff --git a/app/images/HMI_HVAC_Front_Active.svg b/app/images/HMI_HVAC_Front_Active.svg
new file mode 100644
index 0000000..2c873de
--- /dev/null
+++ b/app/images/HMI_HVAC_Front_Active.svg
@@ -0,0 +1,111 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Generator: Adobe Illustrator 21.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
+
+<svg
+ xmlns:i="&amp;ns_ai;"
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ version="1.1"
+ id="Layer_2"
+ x="0px"
+ y="0px"
+ viewBox="0 0 140 140"
+ style="enable-background:new 0 0 140 140;"
+ xml:space="preserve"
+ inkscape:version="0.91 r13725"
+ sodipodi:docname="HMI_HVAC_Front_Active.svg"><metadata
+ id="metadata46"><rdf:RDF><cc:Work
+ rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs
+ id="defs44" /><sodipodi:namedview
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="2560"
+ inkscape:window-height="1464"
+ id="namedview42"
+ showgrid="false"
+ inkscape:zoom="1.6857143"
+ inkscape:cx="-207.0339"
+ inkscape:cy="70"
+ inkscape:window-x="0"
+ inkscape:window-y="0"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="Layer_2" /><style
+ type="text/css"
+ id="style3">
+ .st0{fill:#66FFC4;}
+ .st1{font-family:'Roboto-Regular';}
+ .st2{font-size:19.2px;}
+ .st3{letter-spacing:3;}
+ .st4{fill:url(#SVGID_1_);}
+ .st5{fill:url(#SVGID_2_);}
+ .st6{fill:url(#SVGID_3_);}
+</style><switch
+ id="switch5"><g
+ i:extraneous="self"
+ id="g7"><g
+ id="g9"><g
+ id="g11"><text
+ transform="matrix(1 0 0 1 30.8062 42.6951)"
+ class="st0 st1 st2 st3"
+ id="text13">FRONT</text>
+</g><g
+ id="g15"><linearGradient
+ id="SVGID_1_"
+ gradientUnits="userSpaceOnUse"
+ x1="11.6389"
+ y1="158.3479"
+ x2="114.2385"
+ y2="3.0985"><stop
+ offset="0"
+ style="stop-color:#59FF7F"
+ id="stop18" /><stop
+ offset="1"
+ style="stop-color:#6BFBFF"
+ id="stop20" /></linearGradient><path
+ class="st4"
+ d="M70,138.5c-0.1,0-0.3,0-0.4,0c-37.8-0.2-68.3-31.1-68.1-68.9C1.7,32,32.4,1.5,70,1.5c0.1,0,0.3,0,0.4,0 c18.3,0.1,35.5,7.3,48.3,20.3s19.9,30.2,19.8,48.5c-0.1,18.3-7.3,35.5-20.3,48.3C105.3,131.5,88.2,138.5,70,138.5z M70,3.9 c-17.5,0-34,6.8-46.5,19.1C11,35.4,4,52,3.9,69.6c-0.2,36.4,29.3,66.3,65.7,66.5c0.1,0,0.2,0,0.4,0c17.5,0,34-6.8,46.5-19.1 c12.6-12.4,19.5-29,19.6-46.6l0,0c0.1-17.7-6.7-34.3-19.1-46.8S88,4,70.4,3.9C70.2,3.9,70.1,3.9,70,3.9z"
+ id="path22" /></g><g
+ id="g24"><linearGradient
+ id="SVGID_2_"
+ gradientUnits="userSpaceOnUse"
+ x1="13.3004"
+ y1="159.5306"
+ x2="115.9684"
+ y2="4.1777"><stop
+ offset="0"
+ style="stop-color:#59FF7F"
+ id="stop27" /><stop
+ offset="1"
+ style="stop-color:#6BFBFF"
+ id="stop29" /></linearGradient><path
+ class="st5"
+ d="M50.3,107.7L17.4,73.8l0.8-0.8C32,59,50.4,51.4,70,51.3c0,0,0.1,0,0.1,0c19.5,0,37.9,7.6,51.7,21.5l0.8,0.8 L97,100.2l-1.7-1.7l24-24.8c-13.2-12.9-30.6-20-49.1-20c0,0-0.1,0-0.1,0c-18.5,0-36,7.2-49.2,20.1l29.6,30.5 c5.4-4.9,12.4-7.5,19.7-7.5c0,0,0,0,0,0c7.7,0,15,2.9,20.5,8.3l-1.7,1.7c-5.1-4.9-11.8-7.6-18.9-7.6c0,0,0,0,0,0 c-7.1,0-13.8,2.7-18.9,7.7L50.3,107.7z"
+ id="path31" /></g><g
+ id="g33"><linearGradient
+ id="SVGID_3_"
+ gradientUnits="userSpaceOnUse"
+ x1="16.1835"
+ y1="161.4359"
+ x2="118.8515"
+ y2="6.083"><stop
+ offset="0"
+ style="stop-color:#59FF7F"
+ id="stop36" /><stop
+ offset="1"
+ style="stop-color:#6BFBFF"
+ id="stop38" /></linearGradient><path
+ class="st6"
+ d="M70.7,89.5c-2,0-3.4-1.4-3.5-1.6l-6.8-5.5c-0.9-1.3-2.2-1.9-3.4-1.8c-1.4,0.1-2.7,1.1-3.6,2.7 c-1.5,2.6-3.5,4.2-5.8,4.3c-2.1,0.1-4.1-1.1-5.6-3.3l-1.2-1.7c-0.9-1.3-2.1-2-3.4-2c-1.4,0.1-2.7,1-3.6,2.6l-0.6,1l-2-3.9 l0.2-0.3c1.5-2.6,3.6-4.1,5.9-4.2c2.1-0.1,4.1,1.1,5.7,3.3l1.2,1.7c0.9,1.3,2.1,2.1,3.3,2c1.3-0.1,2.6-1,3.5-2.6 c1.5-2.6,3.6-4.2,5.9-4.4c2.1-0.2,4.1,0.9,5.6,2.9l6.5,5.2c0.2,0.2,0.8,0.7,1.6,0.7c0,0,0,0,0,0c0.6,0,1.3-0.4,1.9-1l4.2-3.7 c1.5-2.6,3.6-4,5.8-4.1c2.2-0.1,4.1,1.1,5.7,3.3l1.2,1.7c0.9,1.3,2.1,2,3.3,2c1.3-0.1,2.6-1,3.5-2.6c1.5-2.6,3.6-4.2,5.9-4.4 c2.1-0.1,4.1,0.9,5.6,3l0.2,0.3l-1.7,4.2l-0.6-0.9c-0.9-1.3-2.1-1.9-3.4-1.8c-1.4,0.1-2.7,1.1-3.6,2.7c-1.5,2.6-3.5,4.2-5.8,4.3 c-2.1,0.1-4.1-1.1-5.7-3.3l-1.2-1.7c-0.9-1.3-2.1-2-3.4-2c-1.4,0.1-2.7,1-3.6,2.6L79,83.4l-5.1,4.7l0,0 C72.9,89,71.8,89.5,70.7,89.5z M61.3,81.7L68,87c0.1,0.1,1.2,1.3,2.7,1.3c1,0,2-0.5,3-1.6l0.6-0.6l0.1,0.1l3.9-3.6 c1.1-1.9,2.8-3.1,4.5-3.1c1.6-0.1,3.2,0.8,4.4,2.5l1.2,1.7c1.3,1.9,2.9,2.8,4.6,2.8c1.8-0.1,3.5-1.4,4.8-3.7 c1.1-2,2.8-3.2,4.6-3.3c1.4-0.1,2.7,0.4,3.7,1.5l0.7-1.7c-1.3-1.6-2.8-2.4-4.4-2.3c-1.9,0.1-3.7,1.5-4.9,3.8 c-1.1,2-2.7,3.2-4.5,3.2c-1.7,0.1-3.2-0.8-4.4-2.5l-1.2-1.7C86,77.9,84.4,77,82.7,77c-1.9,0.1-3.6,1.4-4.9,3.6l-0.1,0.2 l-4.3,3.7c-0.8,0.9-1.7,1.3-2.7,1.3c-1.3,0.1-2.2-0.8-2.5-1l-6.7-5.3c-1.3-1.7-2.9-2.6-4.6-2.5c-1.9,0.1-3.7,1.5-4.9,3.8 c-1.1,2-2.7,3.2-4.5,3.2c-1.7,0-3.2-0.8-4.4-2.5L42,79.8c-1.3-1.9-2.9-2.8-4.6-2.8c-1.8,0.1-3.4,1.2-4.7,3.3l0.7,1.4 c1.1-1.4,2.5-2.3,4-2.3c1.7,0,3.2,0.8,4.4,2.5l1.2,1.7c1.3,1.9,2.9,2.8,4.6,2.8c1.8-0.1,3.5-1.4,4.8-3.7c1.1-2,2.8-3.2,4.6-3.3 C58.6,79.3,60.2,80.1,61.3,81.7z"
+ id="path40" /></g></g></g></switch></svg> \ No newline at end of file
diff --git a/app/images/HMI_HVAC_Front_Inactive.svg b/app/images/HMI_HVAC_Front_Inactive.svg
new file mode 100644
index 0000000..c5d9166
--- /dev/null
+++ b/app/images/HMI_HVAC_Front_Inactive.svg
@@ -0,0 +1,72 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Generator: Adobe Illustrator 21.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
+
+<svg
+ xmlns:i="&amp;ns_ai;"
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ version="1.1"
+ id="Layer_2"
+ x="0px"
+ y="0px"
+ viewBox="0 0 140 140"
+ style="enable-background:new 0 0 140 140;"
+ xml:space="preserve"
+ inkscape:version="0.91 r13725"
+ sodipodi:docname="HMI_HVAC_Front_Inactive.svg"><metadata
+ id="metadata31"><rdf:RDF><cc:Work
+ rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs
+ id="defs29" /><sodipodi:namedview
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="2560"
+ inkscape:window-height="1464"
+ id="namedview27"
+ showgrid="false"
+ inkscape:zoom="1.6857143"
+ inkscape:cx="-161.94915"
+ inkscape:cy="70"
+ inkscape:window-x="0"
+ inkscape:window-y="0"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="Layer_2" /><style
+ type="text/css"
+ id="style3">
+ .st0{fill:#848286;}
+ .st1{font-family:'Roboto-Regular';}
+ .st2{font-size:19.2px;}
+ .st3{letter-spacing:3;}
+</style><switch
+ id="switch5"><g
+ i:extraneous="self"
+ id="g7"><g
+ id="g9"><g
+ id="g11"><text
+ transform="matrix(1 0 0 1 30.8062 42.6951)"
+ class="st0 st1 st2 st3"
+ id="text13">FRONT</text>
+</g><g
+ id="g15"><path
+ class="st0"
+ d="M70,138.5c-0.1,0-0.3,0-0.4,0c-37.8-0.2-68.3-31.1-68.1-68.9C1.7,32,32.4,1.5,70,1.5c0.1,0,0.3,0,0.4,0 c18.3,0.1,35.5,7.3,48.3,20.3s19.9,30.2,19.8,48.5c-0.1,18.3-7.3,35.5-20.3,48.3C105.3,131.5,88.2,138.5,70,138.5z M70,3.9 c-17.5,0-34,6.8-46.5,19.1C11,35.4,4,52,3.9,69.6c-0.2,36.4,29.3,66.3,65.7,66.5c0.1,0,0.2,0,0.4,0c17.5,0,34-6.8,46.5-19.1 c12.6-12.4,19.5-29,19.6-46.6l0,0c0.1-17.7-6.7-34.3-19.1-46.8S88,4,70.4,3.9C70.2,3.9,70.1,3.9,70,3.9z"
+ id="path17" /></g><g
+ id="g19"><path
+ class="st0"
+ d="M50.3,107.7L17.4,73.8l0.8-0.8C32,59,50.4,51.4,70,51.3c0,0,0.1,0,0.1,0c19.5,0,37.9,7.6,51.7,21.5l0.8,0.8 L97,100.2l-1.7-1.7l24-24.8c-13.2-12.9-30.6-20-49.1-20c0,0-0.1,0-0.1,0c-18.5,0-36,7.2-49.2,20.1l29.6,30.5 c5.4-4.9,12.4-7.5,19.7-7.5c0,0,0,0,0,0c7.7,0,15,2.9,20.5,8.3l-1.7,1.7c-5.1-4.9-11.8-7.6-18.9-7.6c0,0,0,0,0,0 c-7.1,0-13.8,2.7-18.9,7.7L50.3,107.7z"
+ id="path21" /></g><g
+ id="g23"><path
+ class="st0"
+ d="M70.7,89.5c-2,0-3.4-1.4-3.5-1.6l-6.8-5.5c-0.9-1.3-2.2-1.9-3.4-1.8c-1.4,0.1-2.7,1.1-3.6,2.7 c-1.5,2.6-3.5,4.2-5.8,4.3c-2.1,0.1-4.1-1.1-5.6-3.3l-1.2-1.7c-0.9-1.3-2.1-2-3.4-2c-1.4,0.1-2.7,1-3.6,2.6l-0.6,1l-2-3.9 l0.2-0.3c1.5-2.6,3.6-4.1,5.9-4.2c2.1-0.1,4.1,1.1,5.7,3.3l1.2,1.7c0.9,1.3,2.1,2.1,3.3,2c1.3-0.1,2.6-1,3.5-2.6 c1.5-2.6,3.6-4.2,5.9-4.4c2.1-0.2,4.1,0.9,5.6,2.9l6.5,5.2c0.2,0.2,0.8,0.7,1.6,0.7c0,0,0,0,0,0c0.6,0,1.3-0.4,1.9-1l4.2-3.7 c1.5-2.6,3.6-4,5.8-4.1c2.2-0.1,4.1,1.1,5.7,3.3l1.2,1.7c0.9,1.3,2.1,2,3.3,2c1.3-0.1,2.6-1,3.5-2.6c1.5-2.6,3.6-4.2,5.9-4.4 c2.1-0.1,4.1,0.9,5.6,3l0.2,0.3l-1.7,4.2l-0.6-0.9c-0.9-1.3-2.1-1.9-3.4-1.8c-1.4,0.1-2.7,1.1-3.6,2.7c-1.5,2.6-3.5,4.2-5.8,4.3 c-2.1,0.1-4.1-1.1-5.7-3.3l-1.2-1.7c-0.9-1.3-2.1-2-3.4-2c-1.4,0.1-2.7,1-3.6,2.6L79,83.4l-5.1,4.7l0,0 C72.9,89,71.8,89.5,70.7,89.5z M61.3,81.7L68,87c0.1,0.1,1.2,1.3,2.7,1.3c1,0,2-0.5,3-1.6l0.6-0.6l0.1,0.1l3.9-3.6 c1.1-1.9,2.8-3.1,4.5-3.1c1.6-0.1,3.2,0.8,4.4,2.5l1.2,1.7c1.3,1.9,2.9,2.8,4.6,2.8c1.8-0.1,3.5-1.4,4.8-3.7 c1.1-2,2.8-3.2,4.6-3.3c1.4-0.1,2.7,0.4,3.7,1.5l0.7-1.7c-1.3-1.6-2.8-2.4-4.4-2.3c-1.9,0.1-3.7,1.5-4.9,3.8 c-1.1,2-2.7,3.2-4.5,3.2c-1.7,0.1-3.2-0.8-4.4-2.5l-1.2-1.7C86,77.9,84.4,77,82.7,77c-1.9,0.1-3.6,1.4-4.9,3.6l-0.1,0.2 l-4.3,3.7c-0.8,0.9-1.7,1.3-2.7,1.3c-1.3,0.1-2.2-0.8-2.5-1l-6.7-5.3c-1.3-1.7-2.9-2.6-4.6-2.5c-1.9,0.1-3.7,1.5-4.9,3.8 c-1.1,2-2.7,3.2-4.5,3.2c-1.7,0-3.2-0.8-4.4-2.5L42,79.8c-1.3-1.9-2.9-2.8-4.6-2.8c-1.8,0.1-3.4,1.2-4.7,3.3l0.7,1.4 c1.1-1.4,2.5-2.3,4-2.3c1.7,0,3.2,0.8,4.4,2.5l1.2,1.7c1.3,1.9,2.9,2.8,4.6,2.8c1.8-0.1,3.5-1.4,4.8-3.7c1.1-2,2.8-3.2,4.6-3.3 C58.6,79.3,60.2,80.1,61.3,81.7z"
+ id="path25" /></g></g></g></switch></svg> \ No newline at end of file
diff --git a/app/images/HMI_HVAC_Inactive.svg b/app/images/HMI_HVAC_Inactive.svg
new file mode 100644
index 0000000..b29a74f
--- /dev/null
+++ b/app/images/HMI_HVAC_Inactive.svg
@@ -0,0 +1,63 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Generator: Adobe Illustrator 21.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
+
+<svg
+ xmlns:i="&amp;#38;ns_ai;"
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ version="1.1"
+ id="Layer_2"
+ x="0px"
+ y="0px"
+ viewBox="0 0 318 219"
+ style="enable-background:new 0 0 318 219;"
+ xml:space="preserve"
+ inkscape:version="0.91 r13725"
+ sodipodi:docname="HMI_HVAC_Inactive.svg"><metadata
+ id="metadata25"><rdf:RDF><cc:Work
+ rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs
+ id="defs23" /><sodipodi:namedview
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="2560"
+ inkscape:window-height="1464"
+ id="namedview21"
+ showgrid="false"
+ inkscape:zoom="1.0776256"
+ inkscape:cx="-72.805888"
+ inkscape:cy="109.5"
+ inkscape:window-x="0"
+ inkscape:window-y="0"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="Layer_2" /><style
+ type="text/css"
+ id="style3">
+ .st0{fill:#848286;}
+ .st1{font-family:'Roboto-Light';}
+ .st2{font-size:88.6888px;}
+ .st3{letter-spacing:3;}
+ .st4{letter-spacing:-3;}
+ .st5{fill:none;stroke:#848286;stroke-miterlimit:10;}
+</style><switch
+ id="switch5"><g
+ i:extraneous="self"
+ id="g7"><g
+ id="g9"><rect
+ x="0.5"
+ y="0.5"
+ class="st5"
+ width="317"
+ height="218"
+ id="rect19" /></g></g></switch></svg> \ No newline at end of file
diff --git a/app/images/HMI_HVAC_Left_Chair_OFF.svg b/app/images/HMI_HVAC_Left_Chair_OFF.svg
new file mode 100644
index 0000000..1412266
--- /dev/null
+++ b/app/images/HMI_HVAC_Left_Chair_OFF.svg
@@ -0,0 +1,87 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Generator: Adobe Illustrator 21.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
+
+<svg
+ xmlns:i="&amp;ns_ai;"
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ version="1.1"
+ id="Layer_2"
+ x="0px"
+ y="0px"
+ viewBox="0 0 172 172"
+ style="enable-background:new 0 0 172 172;"
+ xml:space="preserve"
+ inkscape:version="0.91 r13725"
+ sodipodi:docname="HMI_HVAC_Left_Chair_OFF.svg"><metadata
+ id="metadata49"><rdf:RDF><cc:Work
+ rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs
+ id="defs47" /><sodipodi:namedview
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="2560"
+ inkscape:window-height="1464"
+ id="namedview45"
+ showgrid="false"
+ inkscape:zoom="1.372093"
+ inkscape:cx="-267.83898"
+ inkscape:cy="86"
+ inkscape:window-x="0"
+ inkscape:window-y="0"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="Layer_2" /><style
+ type="text/css"
+ id="style3">
+ .st0{fill:none;stroke:#69676C;stroke-width:4;stroke-miterlimit:10;}
+ .st1{opacity:0.43;fill:#69676C;}
+ .st2{fill:#69676C;}
+</style><switch
+ id="switch5"><g
+ i:extraneous="self"
+ id="g7"><g
+ id="g9"><path
+ class="st0"
+ d="M32.3,135.3h92.4l39.2-114.9c0,0,2.5-10.9-9.1-11.4c-11.6-0.5-19,16.2-19,16.2S123.6,66,111.8,95.6 c0,0-76.7-4.6-89.8-4.6S5.4,96.1,9.5,105.1S32.3,135.3,32.3,135.3z"
+ id="path11" /><path
+ class="st1"
+ d="M32.3,134.7h92.4l39.2-114.9c0,0,2.5-10.9-9.1-11.4s-19,16.2-19,16.2S123.6,65.3,111.8,95 c0,0-76.7-4.6-89.8-4.6S5.4,95.4,9.5,104.5S32.3,134.7,32.3,134.7z"
+ id="path13" /><g
+ id="g15"><g
+ id="g17"><path
+ class="st0"
+ d="M42.4,163.6c0,0,35.8-24,12.9-58.3C37.8,79,29.8,63.5,30.9,48.6"
+ id="path19" /><g
+ id="g21"><polygon
+ class="st2"
+ points="40.4,53.7 34.4,34.7 21,49.4 "
+ id="polygon23" /></g></g></g><g
+ id="g25"><g
+ id="g27"><path
+ class="st0"
+ d="M66.1,163.6c0,0,35.8-24,12.9-58.3C61.4,79,53.5,63.5,54.6,48.6"
+ id="path29" /><g
+ id="g31"><polygon
+ class="st2"
+ points="64.1,53.7 58.1,34.7 44.6,49.4 "
+ id="polygon33" /></g></g></g><g
+ id="g35"><g
+ id="g37"><path
+ class="st0"
+ d="M90.4,163.6c0,0,35.8-24,12.9-58.3C85.7,79,77.8,63.5,78.8,48.6"
+ id="path39" /><g
+ id="g41"><polygon
+ class="st2"
+ points="88.3,53.7 82.4,34.7 68.9,49.4 "
+ id="polygon43" /></g></g></g></g></g></switch></svg> \ No newline at end of file
diff --git a/app/images/HMI_HVAC_Left_Chair_ON.svg b/app/images/HMI_HVAC_Left_Chair_ON.svg
new file mode 100644
index 0000000..14faf49
--- /dev/null
+++ b/app/images/HMI_HVAC_Left_Chair_ON.svg
@@ -0,0 +1,99 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Generator: Adobe Illustrator 21.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
+
+<svg
+ xmlns:i="&amp;ns_ai;"
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ version="1.1"
+ id="Layer_2"
+ x="0px"
+ y="0px"
+ viewBox="0 0 172 172"
+ style="enable-background:new 0 0 172 172;"
+ xml:space="preserve"
+ inkscape:version="0.91 r13725"
+ sodipodi:docname="HMI_HVAC_Left_Chair_ON.svg"><metadata
+ id="metadata54"><rdf:RDF><cc:Work
+ rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs
+ id="defs52" /><sodipodi:namedview
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="2560"
+ inkscape:window-height="1464"
+ id="namedview50"
+ showgrid="false"
+ inkscape:zoom="1.372093"
+ inkscape:cx="-240.14407"
+ inkscape:cy="86"
+ inkscape:window-x="0"
+ inkscape:window-y="0"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="Layer_2" /><style
+ type="text/css"
+ id="style3">
+ .st0{opacity:0.43;fill:url(#SVGID_1_);}
+ .st1{fill:none;stroke:#66FF99;stroke-width:4;stroke-miterlimit:10;}
+ .st2{fill:#66FF99;}
+</style><switch
+ id="switch5"><g
+ i:extraneous="self"
+ id="g7"><g
+ id="g9"><linearGradient
+ id="SVGID_1_"
+ gradientUnits="userSpaceOnUse"
+ x1="19.4613"
+ y1="198.7467"
+ x2="133.8248"
+ y2="-3.84"><stop
+ offset="0"
+ style="stop-color:#59FF7F"
+ id="stop12" /><stop
+ offset="1"
+ style="stop-color:#6BFBFF"
+ id="stop14" /></linearGradient><path
+ class="st0"
+ d="M32.3,135h92.4l39.2-114.9c0,0,2.5-10.9-9.1-11.4s-19,16.2-19,16.2s-12.3,40.7-24.1,70.4 c0,0-76.7-4.6-89.8-4.6S5.4,95.8,9.5,104.8S32.3,135,32.3,135z"
+ id="path16" /><g
+ id="g18"><g
+ id="g20"><path
+ class="st1"
+ d="M42.4,163.3c0,0,35.8-24,12.9-58.3C37.8,78.7,29.8,63.2,30.9,48.3"
+ id="path22" /><g
+ id="g24"><polygon
+ class="st2"
+ points="40.4,53.4 34.4,34.4 21,49.1 "
+ id="polygon26" /></g></g></g><g
+ id="g28"><g
+ id="g30"><path
+ class="st1"
+ d="M66.1,163.3c0,0,35.8-24,12.9-58.3C61.4,78.7,53.5,63.2,54.6,48.3"
+ id="path32" /><g
+ id="g34"><polygon
+ class="st2"
+ points="64.1,53.4 58.1,34.4 44.6,49.1 "
+ id="polygon36" /></g></g></g><g
+ id="g38"><g
+ id="g40"><path
+ class="st1"
+ d="M90.4,163.3c0,0,35.8-24,12.9-58.3C85.7,78.7,77.8,63.2,78.8,48.3"
+ id="path42" /><g
+ id="g44"><polygon
+ class="st2"
+ points="88.3,53.4 82.4,34.4 68.9,49.1 "
+ id="polygon46" /></g></g></g><path
+ class="st1"
+ d="M32.3,135h92.4l39.2-114.9c0,0,2.5-10.9-9.1-11.4s-19,16.2-19,16.2s-12.3,40.7-24.1,70.4 c0,0-76.7-4.6-89.8-4.6S5.4,95.8,9.5,104.8S32.3,135,32.3,135z"
+ id="path48" /></g></g></switch></svg> \ No newline at end of file
diff --git a/app/images/HMI_HVAC_Rear_Active.svg b/app/images/HMI_HVAC_Rear_Active.svg
new file mode 100644
index 0000000..7c67104
--- /dev/null
+++ b/app/images/HMI_HVAC_Rear_Active.svg
@@ -0,0 +1,195 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Generator: Adobe Illustrator 21.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
+
+<svg
+ xmlns:i="&amp;ns_ai;"
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ version="1.1"
+ id="Layer_2"
+ x="0px"
+ y="0px"
+ viewBox="0 0 140 140"
+ style="enable-background:new 0 0 140 140;"
+ xml:space="preserve"
+ inkscape:version="0.91 r13725"
+ sodipodi:docname="HMI_HVAC_Rear_Active.svg"><metadata
+ id="metadata89"><rdf:RDF><cc:Work
+ rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs
+ id="defs87" /><sodipodi:namedview
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="2560"
+ inkscape:window-height="1464"
+ id="namedview85"
+ showgrid="false"
+ inkscape:zoom="1.6857143"
+ inkscape:cx="-239.36441"
+ inkscape:cy="70"
+ inkscape:window-x="0"
+ inkscape:window-y="0"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="Layer_2" /><style
+ type="text/css"
+ id="style3">
+ .st0{fill:#66FFC4;}
+ .st1{font-family:'Roboto-Regular';}
+ .st2{font-size:19.2px;}
+ .st3{letter-spacing:3;}
+ .st4{fill:url(#SVGID_1_);}
+ .st5{fill:url(#SVGID_2_);}
+ .st6{fill:url(#SVGID_3_);}
+ .st7{fill:url(#SVGID_4_);}
+ .st8{fill:url(#SVGID_5_);}
+ .st9{fill:url(#SVGID_6_);}
+ .st10{fill:url(#SVGID_7_);}
+ .st11{fill:url(#SVGID_8_);}
+</style><switch
+ id="switch5"><g
+ i:extraneous="self"
+ id="g7"><g
+ id="g9"><text
+ transform="matrix(1 0 0 1 39.3138 38.5051)"
+ class="st0 st1 st2 st3"
+ id="text11">REAR</text>
+<g
+ id="g13"><linearGradient
+ id="SVGID_1_"
+ gradientUnits="userSpaceOnUse"
+ x1="10.4889"
+ y1="155.8405"
+ x2="117.1391"
+ y2="1.9402"><stop
+ offset="0"
+ style="stop-color:#59FF7F"
+ id="stop16" /><stop
+ offset="1"
+ style="stop-color:#6BFBFF"
+ id="stop18" /></linearGradient><path
+ class="st4"
+ d="M70,138.5c-0.1,0-0.3,0-0.4,0c-37.8-0.2-68.3-31.1-68.1-68.9c0.1-18.3,7.3-35.5,20.3-48.3 C34.7,8.5,51.8,1.5,70,1.5c0.1,0,0.3,0,0.4,0c18.3,0.1,35.5,7.3,48.3,20.3c12.9,13,19.9,30.2,19.8,48.5 C138.3,108,107.6,138.5,70,138.5z M70,3.9c-17.5,0-34,6.8-46.5,19.1C11,35.4,4,52,3.9,69.6c-0.2,36.4,29.3,66.3,65.7,66.5 c0.1,0,0.2,0,0.4,0c36.3,0,65.9-29.4,66.1-65.7l0,0c0.1-17.7-6.7-34.3-19.1-46.8C104.6,11,88,4,70.4,3.9 C70.2,3.9,70.1,3.9,70,3.9z"
+ id="path20" /></g><g
+ id="g22"><linearGradient
+ id="SVGID_2_"
+ gradientUnits="userSpaceOnUse"
+ x1="11.5789"
+ y1="156.6799"
+ x2="118.2996"
+ y2="2.6779"><stop
+ offset="0"
+ style="stop-color:#59FF7F"
+ id="stop25" /><stop
+ offset="1"
+ style="stop-color:#6BFBFF"
+ id="stop27" /></linearGradient><polygon
+ class="st5"
+ points="30.5,97.5 30.5,47.4 109.5,47.3 109.5,97.4 60.7,97.4 60.7,95 107.1,95 107.1,49.7 32.9,49.8 32.9,95.1 51.9,95 51.9,97.4 "
+ id="polygon29" /></g><g
+ id="g31"><linearGradient
+ id="SVGID_3_"
+ gradientUnits="userSpaceOnUse"
+ x1="9.0573"
+ y1="154.9325"
+ x2="115.778"
+ y2="0.9304"><stop
+ offset="0"
+ style="stop-color:#59FF7F"
+ id="stop34" /><stop
+ offset="1"
+ style="stop-color:#6BFBFF"
+ id="stop36" /></linearGradient><path
+ class="st6"
+ d="M57.1,111.6l-2.1-1.2c1.6-2.8,5.4-11.2,4.2-15.7c-0.8-2.8-1.8-4.4-3-6.1c-2.4-3.6-4.9-7.3-4.4-21.7l2.4,0.1 c-0.6,13.6,1.6,16.8,3.9,20.2c1.2,1.8,2.5,3.6,3.3,6.9C63.3,100.5,57.4,111.2,57.1,111.6z"
+ id="path38" /></g><g
+ id="g40"><linearGradient
+ id="SVGID_4_"
+ gradientUnits="userSpaceOnUse"
+ x1="0.4632"
+ y1="148.9769"
+ x2="107.1839"
+ y2="-5.0251"><stop
+ offset="0"
+ style="stop-color:#59FF7F"
+ id="stop43" /><stop
+ offset="1"
+ style="stop-color:#6BFBFF"
+ id="stop45" /></linearGradient><polygon
+ class="st7"
+ points="50,75.1 47.9,74 53.1,64.4 58.4,74 56.3,75.1 53.1,69.4 "
+ id="polygon47" /></g><g
+ id="g49"><linearGradient
+ id="SVGID_5_"
+ gradientUnits="userSpaceOnUse"
+ x1="19.6431"
+ y1="162.2683"
+ x2="126.3638"
+ y2="8.2663"><stop
+ offset="0"
+ style="stop-color:#59FF7F"
+ id="stop52" /><stop
+ offset="1"
+ style="stop-color:#6BFBFF"
+ id="stop54" /></linearGradient><path
+ class="st8"
+ d="M72.8,111.6l-2.1-1.2c1.6-2.8,5.4-11.2,4.2-15.7c-0.8-2.8-1.8-4.4-3-6.1c-2.4-3.6-4.9-7.3-4.4-21.7l2.4,0.1 c-0.6,13.6,1.6,16.8,3.9,20.2c1.2,1.8,2.5,3.6,3.3,6.9C78.9,100.5,73,111.2,72.8,111.6z"
+ id="path56" /></g><g
+ id="g58"><linearGradient
+ id="SVGID_6_"
+ gradientUnits="userSpaceOnUse"
+ x1="11.0493"
+ y1="156.3129"
+ x2="117.77"
+ y2="2.3109"><stop
+ offset="0"
+ style="stop-color:#59FF7F"
+ id="stop61" /><stop
+ offset="1"
+ style="stop-color:#6BFBFF"
+ id="stop63" /></linearGradient><polygon
+ class="st9"
+ points="72,75.1 68.8,69.4 65.6,75.1 63.5,74 68.8,64.4 74.1,74 "
+ id="polygon65" /></g><g
+ id="g67"><linearGradient
+ id="SVGID_7_"
+ gradientUnits="userSpaceOnUse"
+ x1="30.229"
+ y1="169.6041"
+ x2="136.9497"
+ y2="15.6021"><stop
+ offset="0"
+ style="stop-color:#59FF7F"
+ id="stop70" /><stop
+ offset="1"
+ style="stop-color:#6BFBFF"
+ id="stop72" /></linearGradient><path
+ class="st10"
+ d="M88.5,111.6l-2.1-1.2c1.6-2.8,5.4-11.2,4.3-15.7c-0.8-2.8-1.8-4.4-3-6.1c-2.4-3.6-4.9-7.3-4.4-21.7 l2.4,0.1c-0.6,13.6,1.6,16.8,3.9,20.2c1.2,1.8,2.5,3.6,3.3,6.9C94.6,100.5,88.7,111.2,88.5,111.6z"
+ id="path74" /></g><g
+ id="g76"><linearGradient
+ id="SVGID_8_"
+ gradientUnits="userSpaceOnUse"
+ x1="21.6348"
+ y1="163.6485"
+ x2="128.3555"
+ y2="9.6464"><stop
+ offset="0"
+ style="stop-color:#59FF7F"
+ id="stop79" /><stop
+ offset="1"
+ style="stop-color:#6BFBFF"
+ id="stop81" /></linearGradient><polygon
+ class="st11"
+ points="81.3,75.1 79.2,74 84.5,64.4 89.7,74 87.6,75.1 84.5,69.4 "
+ id="polygon83" /></g></g></g></switch></svg> \ No newline at end of file
diff --git a/app/images/HMI_HVAC_Rear_Inactive.svg b/app/images/HMI_HVAC_Rear_Inactive.svg
new file mode 100644
index 0000000..574c541
--- /dev/null
+++ b/app/images/HMI_HVAC_Rear_Inactive.svg
@@ -0,0 +1,91 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Generator: Adobe Illustrator 21.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
+
+<svg
+ xmlns:i="&amp;ns_ai;"
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ version="1.1"
+ id="Layer_2"
+ x="0px"
+ y="0px"
+ viewBox="0 0 140 140"
+ style="enable-background:new 0 0 140 140;"
+ xml:space="preserve"
+ inkscape:version="0.91 r13725"
+ sodipodi:docname="HMI_HVAC_Rear_Inactive.svg"><metadata
+ id="metadata49"><rdf:RDF><cc:Work
+ rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs
+ id="defs47" /><sodipodi:namedview
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="2560"
+ inkscape:window-height="1464"
+ id="namedview45"
+ showgrid="false"
+ inkscape:zoom="1.6857143"
+ inkscape:cx="-285.9322"
+ inkscape:cy="70"
+ inkscape:window-x="0"
+ inkscape:window-y="0"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="Layer_2" /><style
+ type="text/css"
+ id="style3">
+ .st0{fill:#848286;}
+ .st1{font-family:'Roboto-Regular';}
+ .st2{font-size:19.2px;}
+ .st3{letter-spacing:3;}
+</style><switch
+ id="switch5"><g
+ i:extraneous="self"
+ id="g7"><g
+ id="g9"><text
+ transform="matrix(1 0 0 1 39.3138 38.5051)"
+ class="st0 st1 st2 st3"
+ id="text11">REAR</text>
+<g
+ id="g13"><path
+ class="st0"
+ d="M70,138.5c-0.1,0-0.3,0-0.4,0c-37.8-0.2-68.3-31.1-68.1-68.9c0.1-18.3,7.3-35.5,20.3-48.3 C34.7,8.5,51.8,1.5,70,1.5c0.1,0,0.3,0,0.4,0c18.3,0.1,35.5,7.3,48.3,20.3c12.9,13,19.9,30.2,19.8,48.5 C138.3,108,107.6,138.5,70,138.5z M70,3.9c-17.5,0-34,6.8-46.5,19.1C11,35.4,4,52,3.9,69.6c-0.2,36.4,29.3,66.3,65.7,66.5 c0.1,0,0.2,0,0.4,0c36.3,0,65.9-29.4,66.1-65.7l0,0c0.1-17.7-6.7-34.3-19.1-46.8C104.6,11,88,4,70.4,3.9 C70.2,3.9,70.1,3.9,70,3.9z"
+ id="path15" /></g><g
+ id="g17"><polygon
+ class="st0"
+ points="30.5,97.5 30.5,47.4 109.5,47.3 109.5,97.4 60.7,97.4 60.7,95 107.1,95 107.1,49.7 32.9,49.8 32.9,95.1 51.9,95 51.9,97.4 "
+ id="polygon19" /></g><g
+ id="g21"><path
+ class="st0"
+ d="M57.1,111.6l-2.1-1.2c1.6-2.8,5.4-11.2,4.2-15.7c-0.8-2.8-1.8-4.4-3-6.1c-2.4-3.6-4.9-7.3-4.4-21.7l2.4,0.1 c-0.6,13.6,1.6,16.8,3.9,20.2c1.2,1.8,2.5,3.6,3.3,6.9C63.3,100.5,57.4,111.2,57.1,111.6z"
+ id="path23" /></g><g
+ id="g25"><polygon
+ class="st0"
+ points="50,75.1 47.9,74 53.1,64.4 58.4,74 56.3,75.1 53.1,69.4 "
+ id="polygon27" /></g><g
+ id="g29"><path
+ class="st0"
+ d="M72.8,111.6l-2.1-1.2c1.6-2.8,5.4-11.2,4.2-15.7c-0.8-2.8-1.8-4.4-3-6.1c-2.4-3.6-4.9-7.3-4.4-21.7l2.4,0.1 c-0.6,13.6,1.6,16.8,3.9,20.2c1.2,1.8,2.5,3.6,3.3,6.9C78.9,100.5,73,111.2,72.8,111.6z"
+ id="path31" /></g><g
+ id="g33"><polygon
+ class="st0"
+ points="72,75.1 68.8,69.4 65.6,75.1 63.5,74 68.8,64.4 74.1,74 "
+ id="polygon35" /></g><g
+ id="g37"><path
+ class="st0"
+ d="M88.5,111.6l-2.1-1.2c1.6-2.8,5.4-11.2,4.3-15.7c-0.8-2.8-1.8-4.4-3-6.1c-2.4-3.6-4.9-7.3-4.4-21.7l2.4,0.1 c-0.6,13.6,1.6,16.8,3.9,20.2c1.2,1.8,2.5,3.6,3.3,6.9C94.6,100.5,88.7,111.2,88.5,111.6z"
+ id="path39" /></g><g
+ id="g41"><polygon
+ class="st0"
+ points="81.3,75.1 79.2,74 84.5,64.4 89.7,74 87.6,75.1 84.5,69.4 "
+ id="polygon43" /></g></g></g></switch></svg> \ No newline at end of file
diff --git a/app/images/HMI_HVAC_Right_Chair_OFF.svg b/app/images/HMI_HVAC_Right_Chair_OFF.svg
new file mode 100644
index 0000000..711a942
--- /dev/null
+++ b/app/images/HMI_HVAC_Right_Chair_OFF.svg
@@ -0,0 +1,87 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Generator: Adobe Illustrator 21.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
+
+<svg
+ xmlns:i="&amp;ns_ai;"
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ version="1.1"
+ id="Layer_2"
+ x="0px"
+ y="0px"
+ viewBox="0 0 172 172"
+ style="enable-background:new 0 0 172 172;"
+ xml:space="preserve"
+ inkscape:version="0.91 r13725"
+ sodipodi:docname="HMI_HVAC_Right_Chair_OFF.svg"><metadata
+ id="metadata49"><rdf:RDF><cc:Work
+ rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs
+ id="defs47" /><sodipodi:namedview
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="2560"
+ inkscape:window-height="1464"
+ id="namedview45"
+ showgrid="false"
+ inkscape:zoom="1.372093"
+ inkscape:cx="-273.66949"
+ inkscape:cy="86"
+ inkscape:window-x="0"
+ inkscape:window-y="0"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="Layer_2" /><style
+ type="text/css"
+ id="style3">
+ .st0{fill:none;stroke:#69676C;stroke-width:4;stroke-miterlimit:10;}
+ .st1{opacity:0.43;fill:#69676C;}
+ .st2{fill:#69676C;}
+</style><switch
+ id="switch5"><g
+ i:extraneous="self"
+ id="g7"><g
+ id="g9"><path
+ class="st0"
+ d="M139.7,135H47.3L8.1,20.1c0,0-2.5-10.9,9.1-11.4c11.6-0.5,19,16.2,19,16.2s12.3,40.7,24.1,70.4 c0,0,76.7-4.6,89.8-4.6c13.1,0,16.6,5.1,12.5,14.1S139.7,135,139.7,135z"
+ id="path11" /><path
+ class="st1"
+ d="M139.7,135H47.3L8.1,20.1c0,0-2.5-10.9,9.1-11.4c11.6-0.5,19,16.2,19,16.2s12.3,40.7,24.1,70.4 c0,0,76.7-4.6,89.8-4.6c13.1,0,16.6,5.1,12.5,14.1S139.7,135,139.7,135z"
+ id="path13" /><g
+ id="g15"><g
+ id="g17"><path
+ class="st0"
+ d="M129.6,163.3c0,0-35.8-24-12.9-58.3c17.5-26.3,25.5-41.8,24.4-56.7"
+ id="path19" /><g
+ id="g21"><polygon
+ class="st2"
+ points="151,49.1 137.6,34.4 131.6,53.4 "
+ id="polygon23" /></g></g></g><g
+ id="g25"><g
+ id="g27"><path
+ class="st0"
+ d="M105.9,163.3c0,0-35.8-24-12.9-58.3c17.5-26.3,25.5-41.8,24.4-56.7"
+ id="path29" /><g
+ id="g31"><polygon
+ class="st2"
+ points="127.4,49.1 113.9,34.4 107.9,53.4 "
+ id="polygon33" /></g></g></g><g
+ id="g35"><g
+ id="g37"><path
+ class="st0"
+ d="M81.6,163.3c0,0-35.8-24-12.9-58.3c17.5-26.3,25.5-41.8,24.4-56.7"
+ id="path39" /><g
+ id="g41"><polygon
+ class="st2"
+ points="103.1,49.1 89.6,34.4 83.7,53.4 "
+ id="polygon43" /></g></g></g></g></g></switch></svg> \ No newline at end of file
diff --git a/app/images/HMI_HVAC_Right_Chair_ON.svg b/app/images/HMI_HVAC_Right_Chair_ON.svg
new file mode 100644
index 0000000..319ef67
--- /dev/null
+++ b/app/images/HMI_HVAC_Right_Chair_ON.svg
@@ -0,0 +1,100 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Generator: Adobe Illustrator 21.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
+
+<svg
+ xmlns:i="&amp;ns_ai;"
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ version="1.1"
+ id="Layer_2"
+ x="0px"
+ y="0px"
+ viewBox="0 0 172 172"
+ style="enable-background:new 0 0 172 172;"
+ xml:space="preserve"
+ inkscape:version="0.91 r13725"
+ sodipodi:docname="HMI_HVAC_Right_Chair_ON.svg"><metadata
+ id="metadata54"><rdf:RDF><cc:Work
+ rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs
+ id="defs52" /><sodipodi:namedview
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="2560"
+ inkscape:window-height="1464"
+ id="namedview50"
+ showgrid="false"
+ inkscape:zoom="1.372093"
+ inkscape:cx="-265.28814"
+ inkscape:cy="86"
+ inkscape:window-x="0"
+ inkscape:window-y="0"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="Layer_2" /><style
+ type="text/css"
+ id="style3">
+ .st0{opacity:0.43;fill:url(#SVGID_1_);}
+ .st1{fill:none;stroke:#66FF99;stroke-width:4;stroke-miterlimit:10;}
+ .st2{fill:#66FF99;}
+</style><switch
+ id="switch5"><g
+ i:extraneous="self"
+ id="g7"><g
+ id="g9"><linearGradient
+ id="SVGID_1_"
+ gradientUnits="userSpaceOnUse"
+ x1="-670.8471"
+ y1="198.7467"
+ x2="-556.4836"
+ y2="-3.84"
+ gradientTransform="matrix(-1 0 0 1 -518.3083 0)"><stop
+ offset="0"
+ style="stop-color:#59FF7F"
+ id="stop12" /><stop
+ offset="1"
+ style="stop-color:#6BFBFF"
+ id="stop14" /></linearGradient><path
+ class="st0"
+ d="M139.7,135H47.3L8.1,20.1c0,0-2.5-10.9,9.1-11.4c11.6-0.5,19,16.2,19,16.2s12.3,40.7,24.1,70.4 c0,0,76.7-4.6,89.8-4.6c13.1,0,16.6,5.1,12.5,14.1S139.7,135,139.7,135z"
+ id="path16" /><g
+ id="g18"><g
+ id="g20"><path
+ class="st1"
+ d="M129.6,163.3c0,0-35.8-24-12.9-58.3c17.5-26.3,25.5-41.8,24.4-56.7"
+ id="path22" /><g
+ id="g24"><polygon
+ class="st2"
+ points="151,49.1 137.6,34.4 131.6,53.4 "
+ id="polygon26" /></g></g></g><g
+ id="g28"><g
+ id="g30"><path
+ class="st1"
+ d="M105.9,163.3c0,0-35.8-24-12.9-58.3c17.5-26.3,25.5-41.8,24.4-56.7"
+ id="path32" /><g
+ id="g34"><polygon
+ class="st2"
+ points="127.4,49.1 113.9,34.4 107.9,53.4 "
+ id="polygon36" /></g></g></g><g
+ id="g38"><g
+ id="g40"><path
+ class="st1"
+ d="M81.6,163.3c0,0-35.8-24-12.9-58.3c17.5-26.3,25.5-41.8,24.4-56.7"
+ id="path42" /><g
+ id="g44"><polygon
+ class="st2"
+ points="103.1,49.1 89.6,34.4 83.7,53.4 "
+ id="polygon46" /></g></g></g><path
+ class="st1"
+ d="M139.7,135H47.3L8.1,20.1c0,0-2.5-10.9,9.1-11.4c11.6-0.5,19,16.2,19,16.2s12.3,40.7,24.1,70.4 c0,0,76.7-4.6,89.8-4.6c13.1,0,16.6,5.1,12.5,14.1S139.7,135,139.7,135z"
+ id="path48" /></g></g></switch></svg> \ No newline at end of file
diff --git a/app/images/images.qrc b/app/images/images.qrc
new file mode 100644
index 0000000..036c1f5
--- /dev/null
+++ b/app/images/images.qrc
@@ -0,0 +1,26 @@
+<RCC>
+ <qresource prefix="/images">
+ <file>HMI_HVAC_AirDown_Active.svg</file>
+ <file>HMI_HVAC_AirDown_Inactive.svg</file>
+ <file>HMI_HVAC_AirRight_Active.svg</file>
+ <file>HMI_HVAC_AirRight_Inactive.svg</file>
+ <file>HMI_HVAC_AirUp_Active.svg</file>
+ <file>HMI_HVAC_AirUp_Inactive.svg</file>
+ <file>HMI_HVAC_ChairIndicator_OFF.svg</file>
+ <file>HMI_HVAC_ChairIndicator_One.svg</file>
+ <file>HMI_HVAC_ChairIndicator_Two.svg</file>
+ <file>HMI_HVAC_Circulation_Active.svg</file>
+ <file>HMI_HVAC_Circulation_Inactive.svg</file>
+ <file>HMI_HVAC_Fan_Icon.svg</file>
+ <file>HMI_HVAC_Front_Active.svg</file>
+ <file>HMI_HVAC_Front_Inactive.svg</file>
+ <file>HMI_HVAC_Left_Chair_OFF.svg</file>
+ <file>HMI_HVAC_Left_Chair_ON.svg</file>
+ <file>HMI_HVAC_Rear_Active.svg</file>
+ <file>HMI_HVAC_Rear_Inactive.svg</file>
+ <file>HMI_HVAC_Right_Chair_OFF.svg</file>
+ <file>HMI_HVAC_Right_Chair_ON.svg</file>
+ <file>HMI_HVAC_Active.svg</file>
+ <file>HMI_HVAC_Inactive.svg</file>
+ </qresource>
+</RCC>
diff --git a/app/main.cpp b/app/main.cpp
new file mode 100644
index 0000000..b2133f7
--- /dev/null
+++ b/app/main.cpp
@@ -0,0 +1,46 @@
+/*
+ * Copyright (C) 2016 The Qt Company Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <QtCore/QDebug>
+#include <QtGui/QGuiApplication>
+#include <QtQml/QQmlApplicationEngine>
+#include <QtQuickControls2/QQuickStyle>
+
+#ifdef HAVE_LIBHOMESCREEN
+#include <libhomescreen.hpp>
+#endif
+
+int main(int argc, char *argv[])
+{
+#ifdef HAVE_LIBHOMESCREEN
+ LibHomeScreen libHomeScreen;
+
+ if (!libHomeScreen.renderAppToAreaAllowed(0, 1)) {
+ qWarning() << "renderAppToAreaAllowed is denied";
+ return -1;
+ }
+#endif
+
+ QGuiApplication app(argc, argv);
+
+ QQuickStyle::setStyle("AGL");
+
+ QQmlApplicationEngine engine;
+ engine.load(QUrl(QStringLiteral("qrc:/HVAC.qml")));
+
+ return app.exec();
+}
+