A pet project to build my own smarthome network using 3rd party tools.
- Create .env file copying
.development.env
in setup folder. - Run required dependencies using docker-compose (MQTT broker and SMTP server) with
./run-dev-services.ps1
on setup folder. - Read received emails on http://localhost:8025/
- To simulate an occupancy detected event, run
dotnet test --filter TestCategory=DeviceOccupiedSimulation
This is the main application that listens MQTT topics for occupancy sensors and weather.
To start using occupancy sensors (motion or magnet sensors), you must create a devices.json file based on devices.sample.json you can find on project.
This is an application that emits environmental data to an MQTT topic and can be consumed on the SmartHome API.
For development, use simulator mode. Rename file /src/jj-smarthome-sensehat/.sample.env
to .env
if debugging locally, or use setup scripts for docker.
Use pi-sense-hat-remote-simulator web simulator.
- On /setup folder, set variables on
.env
file from sample file.sample.env
- If a new version is deployed, run
./build.sh
script - Run
RUN_SERVICES=1 RUN_WEBAPI=1 RUN_SENSEHAT=1 ./run.sh
to launch all services in background
TODO
- Zigbee usb dongle: CC2531 USB stick.
- Raspberry Pi as a Hub for hosting the system
- Raspberry Pi Sense Hat to monitor environmental information and using joystick for commands.
- Aqara temperature, humidity and pressure sensor
- Aqara human body movement and illuminance sensor
- Aqara door & window contact sensor