https://github.com/veracioux/siau-devconf
An MBED C++ code generator for smart home devices
https://github.com/veracioux/siau-devconf
cli cmake cpp json linux mbed mbed-os mqtt qttest
Last synced: about 2 months ago
JSON representation
An MBED C++ code generator for smart home devices
- Host: GitHub
- URL: https://github.com/veracioux/siau-devconf
- Owner: veracioux
- Created: 2021-02-13T00:42:10.000Z (about 4 years ago)
- Default Branch: master
- Last Pushed: 2021-09-24T09:18:24.000Z (over 3 years ago)
- Last Synced: 2025-01-18T07:16:16.935Z (3 months ago)
- Topics: cli, cmake, cpp, json, linux, mbed, mbed-os, mqtt, qttest
- Language: C++
- Homepage:
- Size: 290 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Smart home device configurator
Here's how to use it:
- Fill out a few JSON files with a basic device description
- Generate template C++ code in an mbed workspace
- Implement some C++ functions
- Compile and download to the microcontroller**Features:**
- JSON files can be used by both the smart device and the smart home system
- this is provided by the library `devlib`
- Uses the MQTT protocol
- you only have to implement the device features
- Uses Mbed OS 6
- Tested on Nucleo F746ZGAll of this is provided by the `devconf` program. Below you can find
instructions on how to build it.**Note:** tested on Linux only.
## Documentation
The complete documentation can be found [here](https://siau-devconf.rtfd.io).
## Dependencies
- CMake >= 3.10
- Qt >= 5.9
- qt5-mqtt
- make
- python3, docutils (to build the manual)**Optional:**
- [mbed-cli](https://pypi.org/project/mbed-cli/) if you want to generate an mbed workspace automatically
## Build
Run the following commands:
git clone --recurse-submodules 'https://github.com/veracioux/siau-devconf'
makeThis will create the program `devconf` and the man page in `_build/`
Alternatively, you can call:make app
and
make man
to build them separately.
**NOTE:** `devconf` built this way must be called only from the project root
directory, otherwise it won't work correctly.You can also compile the program directly from `src/CMakeLists.txt`.
## Installation
To install `devconf` on your system run:
make install PREFIX=
**NOTE:** `` **must be an absolute path. This is essential!**
If you just run `make install` without giving the `PREFIX` variable, the program
shall be installed under `/usr/local`. In that case you will need root
permissions.