Home Assistant
This documentation provides a step-by-step guide to setting up an Air Quality Monitor using Home Assistant on a Raspberry Pi. The instructions are detailed and designed to be easily followed by anyone, regardless of their technical expertise.
However, it's important to note that this is just one example. You have the flexibility to incorporate a diverse range of devices and sensors into the peaq network. Simply make the necessary changes in the Configuration and include the scripts.yaml, as outlined in step 6.
Prerequisites
A Raspberry Pi with internet connectivity.
An air sensor connected to the Raspberry Pi.
Step 1: Install Node.js using NVM
Before proceeding with the project setup, ensure that Node.js (version 16 or higher) is installed on the Raspberry Pi. We recommend using NVM (Node Version Manager) for this:
- Install NVM:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.38.0/install.sh | bash
- Install Node.js (version 16 or higher) using NVM:
nvm install 16
nvm use 16
Step 2: Install Home Assistant on Raspberry Pi
Follow the steps provided in the official Home Assistant documentation to install the Docker container version of Home Assistant.
Step 3: Clone the Repository
Clone the repository containing the necessary JavaScript files into the Home Assistant Docker container volume. Replace YOUR_REPO_URL with the actual repository URL:
git clone YOUR_REPO_URL
Step 4: Install PM2
PM2 is a process manager for Node.js applications. Install it globally using npm:
npm install pm2 -g
Step 5: Data Collection
Navigate to the directory where you cloned the repository.
Run the test.js file using PM2. This script will continuously collect data from the air sensor and save it to a file named data.json:
pm2 start test.js
Step 6: Update Home Assistant Configuration
Access the configuration.yaml file inside the Docker container.
Add the following shell command to the file:
run_air_quality: 'node /config/pi_air_quality_monitor/main.js'
This command will execute the main.js file, which reads the data from data.json and sends it to our blockchain network.
Step 7: Create a Service in Home Assistant
Open the scripts.yaml file.
Add the following code to create a service:
alias: "Run_Air"
sequence:
- service: shell_command.run_air_quality
Step 8: Run the Script
Navigate to the Home Assistant interface.
Locate the script section and find the Run_Air script.
Execute the script.
Step 9: Verify the Data
After running the script, check the event in the polkadot.js explorer to ensure that the data has been sent to the blockchain network.
Expanding Possibilities with the peaq Network
However, it's important to note that this serves as an illustrative example of connecting an Air Quality Monitor with Home Assistant on a Raspberry Pi to the peaq network. With the modification of scripts in steps 6 and 7, you can extend this connectivity to virtually any sensor you wish to integrate with the peaq network.
Conclusion
Following this example, you can integrate a wide range of devices and sensors into the peaq network. The provided steps serve as a versatile framework for expanding the capabilities of your network.
- Prerequisites
- Step 1: Install Node.js using NVM
- Step 2: Install Home Assistant on Raspberry Pi
- Step 3: Clone the Repository
- Step 4: Install PM2
- Step 5: Data Collection
- Step 6: Update Home Assistant Configuration
- Step 7: Create a Service in Home Assistant
- Step 8: Run the Script
- Step 9: Verify the Data
- Expanding Possibilities with the peaq Network
- Conclusion