Edit config file
config.yaml – everything you need to know!
Let's start with how exactly you can edit the config file. There are several ways to do it. Let's begin with the easiest—using the WebUI!
Prerequisites:
- You need to know the controller's IP address.
WebUI
To open the WebUI, enter the following address in your web browser (the default port is 8090, if you changed it in the configuration, use your custom port):
http://yourboneioip:8090In the top right corner, you'll find the Config section. There you will find the configuration editor. Select the main configuration file config.yaml there.
SSH and Nano
Another way is to use tools available in Debian installed on BeagleBone Black, e.g., the nano text editor!
You need to connect to the controller via SSH.
The configuration file is located in the ~/boneio folder. The exact path is ~/boneio/config.yaml.
To get there, go to the ~/boneio folder by entering in the terminal:\
cd ~/boneiothen enter:
nano config.yamlThe config.yaml file
The boneIO Black configuration file (like the ESP version) consists of several components.
Below, we will discuss their responsibilities, how they work, and describe each line.\
Similar to Home Assistant YAML files, it supports entries such as:
!include– including a file!secret– including variables from the secrets.yaml file
The main configuration file is config.yaml. It is responsible for the key and most important parameters of the controller. This file also contains all references to the individual files where we define MQTT, inputs and their types, as well as outputs.
YAML files allow for very easy and readable commenting – what does this mean? After the hash symbol #, all text until the end of the line has no effect on the application. In other words, you can write any useful information there, and it will not cause errors in the program.
In YAML files, indentation is very important – 2 spaces equal one indentation level!
Remember, here you will only find a short description of each component – just enough to run and initially configure the controller. If you want to read a detailed description – you can find it in the application documentation.
Below is the current configuration file:
mqtt: !include mqtt.yaml
oled:
enabled: yes
screens:
- uptime
- network
- cpu
- disk
- memory
- swap
- outputs
- inputs
- web
lm75:
- id: Board temperature
address: 0x48
ina219:
- address: 0x40
event: !include event.yaml
binary_sensor: !include binary_sensor.yaml
output: !include output32x10A.yaml
boneio:
name: "boneIO Black 32x10A"
version: 0.8
device_type: "32x10A"
web:
# adc: !include adc.yaml Uncomment only if needed.We will discuss all components step by step!
MQTT component:
Reference to the mqtt.yaml file - this file contains the entire MQTT configuration of the controller. We will discuss it later!
mqtt: !include mqtt.yaml Screen component:
Section responsible for the controller's display.
oled:
enabled: yes
screens:
- uptime
- network
- cpu
- disk
- memory
- swap
- outputs
- inputs
- webTemperature sensor:
Section for the lower board temperature sensor - the relays are located on this board.
lm75:
- id: Board temperature
address: 0x48 INA219 sensor section:
This sensor is responsible for measuring the voltage, current, and energy consumption of the controller. It does not measure the power consumption of the outputs!
ina219:
- address: 0x40 Event:
We define the behavior of the inputs as events in this file.
event: !include event.yaml Binary sensors:
We define the behavior of the inputs as binary sensors in this file.
binary_sensor: !include binary_sensor.yaml Output component:
File defining our outputs.
output: !include output.yaml BoneIO section:
Here is defined your controller version.
boneio:
name: "boneIO Black 32x10A"
version: 0.8
device_type: "32x10A" WebUI component:
It's allow to run webui
web: