Ribbit-Network / ribbit-network-frog-hardware

The sensor for the world's largest crowdsourced network of open-source, low-cost, GHG Gas Detection Sensors.
https://www.ribbitnetwork.org/
MIT License
94 stars 26 forks source link

Create a Golioth ESP32 Frog Sensor Prototype #126

Closed keenanjohnson closed 1 year ago

keenanjohnson commented 2 years ago

As discussed in Ribbit-Network/ribbit-network-frog-sensor#63, one of the main challenges in creating a microcontroller based Frog Sensor is establishing a software update system that works as well as Balena does with our current single board linux compute options.

One promising new option is https://golioth.io/. I have been in contact with their team and they are eager to support us! The first step is to create a prototype of the sensor with their software stack and an ESP32.

Steps

Golioth has a free trial which should support everything that is needed.

Aravind-Krishnadeva commented 2 years ago

Greetings, Keenan, Was considering, OTA updates, and nature of our sensors too, when going for a solar powered option. Was just trying to figure out, how frequent will be the updates ( or infrequent), when planning for a solar module. ..

heatblast016 commented 2 years ago

Updating this -- I have the Golioth 'Hello' example working on an ESP32 dev board. Next step is assembling it with NDIR/Barometer and getting a software application working

keenanjohnson commented 2 years ago

Related to this, I created this issue to build out the open-fleet onboarding process for Golioth devices: https://github.com/Ribbit-Network/ribbit-frog-micropython/issues/6

keenanjohnson commented 2 years ago

Golioth (https://golioth.io/) just made it easier to add a couple of cloud functions to an ESP32 without having to become an AWS or Azure expert. We're also going to continue building out training for ESP-IDF https://blog.golioth.io/announcing-the-golioth-esp-idf-sdk/. Hope it is useful for future frogs!

beriberikix commented 2 years ago

Basically, same platform as before (software updates, streaming sensor readings, APIs) but with even better support for ESP32 :)

beriberikix commented 2 years ago

Hello! Saw the latest Roadmap doc and was wondering where this falls on the priority. Thanks!

keenanjohnson commented 2 years ago

My @beriberikix ! Good question! This issue has actually been derisked quite a bit and our main barrier before considering switching to an ESP32 is actually in ensuring that the Golioth fleet management will work with our open-source, open-fleet concept. See Ribbit-Network/ribbit-frog-micropython#6.

We don't have that tied to the roadmap as there is still a fairly large amount of technical and pricing risk for Ribbit to use Golioth.

So far I haven't found a developer volunteer that is excited and has time to work on that. If anyone at Golioth is interested in helping out, that would certainly accelerate this process and we would be able to think about how to integrate it into the roadmap.

keenanjohnson commented 1 year ago

@heatblast016 did you ever get anywhere with this work? Is there source code anywhere we could pick up and start from?

keenanjohnson commented 1 year ago

I've created both a milestone and a git branch to start breaking this work into small chunks and to start committing source code.

keenanjohnson commented 1 year ago

I've added what I think are the basic files for a golioth app into this folder in the branch: https://github.com/Ribbit-Network/ribbit-network-frog-sensor/tree/esp32_golioth/software_esp32

keenanjohnson commented 1 year ago

This issue has been turned into a milestone with many more tasks, so closing this down in favor of the milestone: https://github.com/Ribbit-Network/ribbit-network-frog-sensor/milestone/4