Giter Site home page Giter Site logo

lucasplacentino / calido Goto Github PK

View Code? Open in Web Editor NEW
4.0 1.0 1.0 311 KB

Calido - Open Smart Thermostat and Smart Home Controller. Built on a Thingy:91 (nRF9160).

License: Apache License 2.0

CMake 2.31% C 97.69%
iot nordic nordicsemi nrf9160 thingy91 edge-impulse edgeimpulse home-assistant home-automation homeassistant

calido's Introduction

Calido

Calido - Open Smart Thermostat and Smart Home Controller based on a Nordic Semiconductor Thingy:91

Project can be found here (Electromaker.io).

A Make it smart with Nordic Thingy:91 (Electromaker.io) contest project.

Built with a Thingy:91 (nrf9160).

Description/Use

Calido was built to monitor and control a house temperature, humidity, vibrations, overall air quality and its heating system, to control other smart-home devices and to notify the user.

It can send data via MQTT to Home Assistant for user monitoring and automations.

Calido can also use its BLE to fetch data from various external sensors.

Calido can send signal via its GPIOs to relays, for example to turn on and off home heating and cooling.

TinyML can be run on the device to learn and later predict the user's preferred home teperature based on time of day and outside climate.

Data can be sent to Edge Impulse to process it, it could for example be trained with vibrations data to predict earthquakes. This data could be massively crowdsourced in high seismic activity areas to help those regions or countries better predict and prevent future natural disasters.

Set up

  1. Update your Thingy:91's firmware (instructions here).

Get Started with Thingy:91

  1. Put your included iBasis SIM card in your Thingy:91, and register it in nRF Cloud (instructions here).

nRF Cloud SIM card registering

  1. Build the firmware.

  2. Flash it onto your Thingy:91.

  3. Have your MQTT Broker up and linked to HomeAssistant

  4. Connect Edge Impulse docs.edgeimpulse.com/nordic-semi-thingy91
    Get the Edge Impulse project at Calido's EI project page.

Calido's Edge Impulse project page

Contributing

Please be welcome to contribute here.


Details

UI

Calido UI


License

Licensed under an Apache-2.0 license.

calido's People

Contributors

lucasplacentino avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar

Forkers

abhatikar

calido's Issues

Does not build (anymore)

To Reproduce
Steps to reproduce the behavior:

When I want to build your project I get following error:
$ west build --pristine -b thingy91_nrf9160_ns
-- west build: generating a build system
Loading Zephyr default modules (Zephyr base).
-- Application: /home/baswi/ncs/nrf/baswi/Calido
-- Found Python3: /usr/bin/python3.8 (found suitable exact version "3.8.10") found components: Interpreter
-- Cache files will be written to: /home/baswi/.cache/zephyr
-- Zephyr version: 3.1.99 (/home/baswi/ncs/zephyr)
-- Found west (found suitable version "0.14.0", minimum required is "0.7.1")
-- Board: thingy91_nrf9160_ns
-- ZEPHYR_TOOLCHAIN_VARIANT not set, trying to locate Zephyr SDK
-- Found host-tools: zephyr 0.15.1 (/usr/local/zephyr-sdk-0.15.1)
-- Found dtc: /usr/local/zephyr-sdk-0.15.1/sysroots/x86_64-pokysdk-linux/usr/bin/dtc (found suitable version "1.6.0", minimum required is "1.4.6")
-- Found toolchain: zephyr 0.15.1 (/usr/local/zephyr-sdk-0.15.1)
-- Found BOARD.dts: /home/baswi/ncs/nrf/boards/arm/thingy91_nrf9160/thingy91_nrf9160_ns.dts
-- Found devicetree overlay: /home/baswi/ncs/nrf/baswi/Calido/boards/thingy91_nrf9160_ns.overlay
devicetree error: Label 'pwm_led0' appears on /pwmleds/pwm_led_0 and on /pwmleds0/led_pwm_0
-- In: /home/baswi/ncs/nrf/baswi/Calido/build/zephyr, command: /usr/bin/python3.8;/home/baswi/ncs/zephyr/scripts/dts/gen_defines.py;--dts;/home/baswi/ncs/nrf/baswi/Calido/build/zephyr/zephyr.dts.pre;--dtc-flags;'-Wno-unique_unit_address_if_enabled';--bindings-dirs;/home/baswi/ncs/nrf/dts/bindings;/home/baswi/ncs/nrf/boards/arm/thingy91_nrf9160/dts/bindings;/home/baswi/ncs/zephyr/dts/bindings;--header-out;/home/baswi/ncs/nrf/baswi/Calido/build/zephyr/include/generated/devicetree_unfixed.h.new;--device-header-out;/home/baswi/ncs/nrf/baswi/Calido/build/zephyr/include/generated/device_extern.h.new;--dts-out;/home/baswi/ncs/nrf/baswi/Calido/build/zephyr/zephyr.dts.new;--edt-pickle-out;/home/baswi/ncs/nrf/baswi/Calido/build/zephyr/edt.pickle;--vendor-prefixes;/home/baswi/ncs/nrf/dts/bindings/vendor-prefixes.txt;--vendor-prefixes;/home/baswi/ncs/zephyr/dts/bindings/vendor-prefixes.txt
CMake Error at /home/baswi/ncs/zephyr/cmake/modules/dts.cmake:230 (message):
gen_defines.py failed with return code: 1
Call Stack (most recent call first):
/home/baswi/ncs/zephyr/cmake/modules/zephyr_default.cmake:121 (include)
/home/baswi/ncs/zephyr/share/zephyr-package/cmake/ZephyrConfig.cmake:66 (include)
/home/baswi/ncs/zephyr/share/zephyr-package/cmake/ZephyrConfig.cmake:92 (include_boilerplate)
CMakeLists.txt:9 (find_package)

-- Configuring incomplete, errors occurred!
FATAL ERROR: command exited with status 1: /usr/bin/cmake -DWEST_PYTHON=/usr/bin/python3 -B/home/baswi/ncs/nrf/baswi/Calido/build -GNinja -DBOARD=thingy91_nrf9160_ns -S/home/baswi/ncs/nrf/baswi/Calido

***after commenting out the led definitions in the overlay file in the board directory, I get another error:
$ west build --pristine -b thingy91_nrf9160_ns
-- west build: making build dir /home/baswi/ncs/nrf/baswi/Calido/build pristine
-- west build: generating a build system
Loading Zephyr default modules (Zephyr base).
-- Application: /home/baswi/ncs/nrf/baswi/Calido
-- Found Python3: /usr/bin/python3.8 (found suitable exact version "3.8.10") found components: Interpreter
-- Cache files will be written to: /home/baswi/.cache/zephyr
-- Zephyr version: 3.1.99 (/home/baswi/ncs/zephyr)
-- Found west (found suitable version "0.14.0", minimum required is "0.7.1")
-- Board: thingy91_nrf9160_ns
-- ZEPHYR_TOOLCHAIN_VARIANT not set, trying to locate Zephyr SDK
-- Found host-tools: zephyr 0.15.1 (/usr/local/zephyr-sdk-0.15.1)
-- Found dtc: /usr/local/zephyr-sdk-0.15.1/sysroots/x86_64-pokysdk-linux/usr/bin/dtc (found suitable version "1.6.0", minimum required is "1.4.6")
-- Found toolchain: zephyr 0.15.1 (/usr/local/zephyr-sdk-0.15.1)
-- Found BOARD.dts: /home/baswi/ncs/nrf/boards/arm/thingy91_nrf9160/thingy91_nrf9160_ns.dts
-- Found devicetree overlay: /home/baswi/ncs/nrf/baswi/Calido/boards/thingy91_nrf9160_ns.overlay
-- Generated zephyr.dts: /home/baswi/ncs/nrf/baswi/Calido/build/zephyr/zephyr.dts
-- Generated devicetree_unfixed.h: /home/baswi/ncs/nrf/baswi/Calido/build/zephyr/include/generated/devicetree_unfixed.h
-- Generated device_extern.h: /home/baswi/ncs/nrf/baswi/Calido/build/zephyr/include/generated/device_extern.h
-- Including generated dts.cmake file: /home/baswi/ncs/nrf/baswi/Calido/build/zephyr/dts.cmake
Parsing /home/baswi/ncs/nrf/baswi/Calido/Kconfig
Loaded configuration '/home/baswi/ncs/nrf/boards/arm/thingy91_nrf9160/thingy91_nrf9160_ns_defconfig'
Merged configuration '/home/baswi/ncs/nrf/baswi/Calido/prj.conf'
Merged configuration '/home/baswi/ncs/nrf/baswi/Calido/boards/thingy91_nrf9160_ns.conf'

/home/baswi/ncs/nrf/baswi/Calido/prj.conf:28: warning: attempt to assign the value 'n' to the undefined symbol DK_LIBRARY_INVERT_LEDS

/home/baswi/ncs/nrf/baswi/Calido/prj.conf:86: warning: attempt to assign the value 'y' to the undefined symbol EVENT_MANAGER

/home/baswi/ncs/nrf/baswi/Calido/prj.conf:87: warning: attempt to assign the value '0' to the undefined symbol EVENT_MANAGER_EVENT_LOG_BUF_LEN

/home/baswi/ncs/nrf/baswi/Calido/prj.conf:88: warning: attempt to assign the value 'n' to the undefined symbol EVENT_MANAGER_LOG_EVENT_TYPE

error: Aborting due to Kconfig warnings

CMake Error at /home/baswi/ncs/zephyr/cmake/modules/kconfig.cmake:293 (message):
command failed with return code: 1
Call Stack (most recent call first):
/home/baswi/ncs/zephyr/cmake/modules/zephyr_default.cmake:121 (include)
/home/baswi/ncs/zephyr/share/zephyr-package/cmake/ZephyrConfig.cmake:66 (include)
/home/baswi/ncs/zephyr/share/zephyr-package/cmake/ZephyrConfig.cmake:92 (include_boilerplate)
CMakeLists.txt:9 (find_package)

-- Configuring incomplete, errors occurred!
FATAL ERROR: command exited with status 1: /usr/bin/cmake -DWEST_PYTHON=/usr/bin/python3 -B/home/baswi/ncs/nrf/baswi/Calido/build -GNinja -DBOARD=thingy91_nrf9160_ns -S/home/baswi/ncs/nrf/baswi/Calido

Expected behavior
a successful build

Screenshots
If applicable, add screenshots to help explain your problem.

Desktop (please complete the following information):

  • OS: [e.g. iOS]: Linux mint 5.15.0-43-generic #46~20.04.1-Ubuntu SMP Thu Jul 14 15:20:17 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux
  • Versions: see log messages

Additional context
Add any other context about the problem here.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.