Skip to content

WildernessLabs/Clima

Repository files navigation

Clima is a solar-powered, custom embedded-IoT solution that tracks climate from a suite of sensors, saves data locally for access via Bluetooth, uses a RESTful Web API, and synchronizes data to the cloud.

Contents

Clima Versions

We offer clima in two options, a full dedicated kit that it's fully solar powered build and ideal to measure weather outdoors, or a much simplified version that you can build with our Hack Kits.

Both versions are 100% open source, including all of the enclosure design files, and PCB design of the pro version.

Clima.Pro Version Clima.HackKit Version
With this kit, it includes the complete package of sensors, PCB enclosure and mount to place this outdoors. You'll be able to measure wind speed/direction, rain volume, atmospheric conditions like temperature, pressure, humidity, CO2 levels and GPS Coordinates. With the Meadow Hack Kit, you can build this project to measure indoor room temperature with an analog temperature sensor, use a 240x240 TFT Spi display and three push buttons to build a simple UI using MicroGraphics to do things like change temperature units, and more.

Assembly Instructions

A complete kit of Clima.Pro can be found on the Wilderness Labs Store and the Instructions for assembly can be found here.

The store version is 100% kit complete, including the option to upgrade the PCB, Enclosure and Battery only, if you include a previous version of the kit.

You can also source all of the components yourself. For a list of components see the Clima Pro Bill of Material (BoM)

Getting Started

To simplify the way to use this Meadow-powered reference IoT product, we've created a NuGet package that instantiates and encapsulates the onboard hardware into a Clima class.

  1. Add the ProjectLab Nuget package your project:

  2. Instantiate the IClimaHardware object:

public class MeadowApp : App<F7CoreComputeV2>
{
    IClimaHardware clima;

    public override Task Initialize()
    {
        clima = Clima.Create();
        ...
  1. To Access the Clima onboard peripherals (AtmosphericSensor, for example):
    if (clima.AtmosphericSensor is { } bme688)
    {
        bme688.Updated += Bme688Updated;
        bme688.StartUpdating();
    }
  1. Like on step 3, you can also access the rest of peripherals:

    • EnvironmentalSensor - Access the SCD40 sensor
    • WindVane - Access the Wind Vane to check wind direction
    • RainGauge - Access the Rain Gauge to check rain volume
    • Anemometer - Access the Anemometer to get wind speed
    • SolarVoltageInput - Access the voltage input from the Solar Add-on
    • Gnss - Access the NEO-M8 GNSS/GPS module
    • ColorLed - Access an RGB LED
  2. Run the Clima_Demo project that uses all the peripherals onboard and outputs readings every few seconds.

Hardware Specifications

You can find the schematics and other design files in the Hardware_Design folder.

Mobile Companion App

This project also comes with a Xamarin.Forms Clima companion app (on Android and iOS) that shows you how to communicate with your Meadow device using Bluetooth and Maple for both kit versions.

Clima companion app

Get an API Key for OpenWeather

Go to Register for an OpenWeather API Key

Clima.HackKit

Clima hack kit

Instructions on how to assemble the Clima Hack Kit Version can be found here

Support

Having trouble building/running these projects?

  • File an issue with a repro case to investigate, and/or
  • Join our public Slack, where we have an awesome community helping, sharing and building amazing things using Meadow.