Close

FieldKit Now: What We’ve Done So Far

A project log for FieldKit

Environmental sensing for everyone.

jacob-lewallenJacob Lewallen 06/11/2018 at 21:050 Comments

Last week, the Conservify team started their tenure at the SupplyFrame DesignLab Residency! This opportunity is something we've been looking forward to for several weeks and we're very excited. This first post is going to outline the current state of FieldKit and give a brief rundown of the goals we have for our time at the DesignLab. A kind of "state of the project" to set the stage for future updates.

State of the Hardware

FieldKit’s evolution began where many present day electronics projects do, as a series of glued together prototype boards from Adafruit and the internet at large. After a couple years bouncing between various MCUs in the Arduino space for various one off projects we eventually settled on the Adafruit Feather line, specifically those containing the ATSAMD21G chip (their M0 boards). We liked the variety they offered, the compatibility with Arduino tools and libraries, and the trade off the chip made between power and capabilities. It was nice having all the peripherals as well as the memory when compared to other Arduino boards.  They became a natural choice as we began prototyping the various FieldKit modules. This post assumes you’re slightly familiar with our project so please read the summary if you haven’t.

This may be a good time to point out that Arduino compatibility is important to us as a feature for two reasons. First, we are hoping to provide a platform people are comfortable hacking on and modifying for themselves and Arduino provides that framework. The second is related, and that is that it's important to us that we have something approachable for STEM related applications.

So, going into the residency we have early versions of the following modules designed and being tested:

Core

Our core module is our most complicated board and was the first one we began designing last year. This board is pretty densely packed for our standards and includes GPS, SD, Serial Flash, WiFi (WINC1500), LoRa, LiPo Fuel gauge and charging, and some other smaller systems.

Atlas

Water quality based on the Atlas Scientific line of sensors. This board has room for five Atlas modules of any kind. We’ve been designing the board to be populated with ORP, DO, pH, Temp, and EC. In the next few weeks we'll also be adding a pressure sensor to this module for depth readings.

Weather

This module is designed to work with the relatively cheap rain/wind weather meters available at a few online retailers. It also has a separate PCB that holds a few environmental sensors like temperature, pressure, humidity and ambient light.

Sonar

A very basic module for attaching to a sonar sensor for water depth readings. This board also has a LoRa module and charging abilities because of certain slim municipal deployments we're anticipating.

Naturalist

This board is effectively a Core board and a Weather smashed together with two other sensors thrown in, specifically an SPH0645 MEMS microphone and a BNO055 IMU. This was originally developed to be a separate module but was merged into a single board to save space and simplify the project. It will also be one of our early focal points at the DL residency as we experiment with enclosure fabrication.

Naturalist is also special because when we designed the integrated single-PCB version we did so anticipating using that as a basis for a new version of our Core board. Core had gone through enough revisions that we felt things could benefit from a redesign.

State of the Software

Our firmware is mostly C++ with some C sprinkled throughout. We keep separate repositories for our module specific firmware and all common code is in a shared repository. We’ve considered a mono-repo approach but haven’t felt a huge need to make that jump just yet. In some ways it would make things easier for us, especially as the build effectively treats the cloned repositories as one.

I’ll be writing more posts about our software architecture in the future. Part of our recent focus has been writing automated testing and creating re-usable components from the software we have, in addition to field testing the software for bugs that only appear after sustained real time use.

State of the Infrastructure

We have a development instance of our backend setup on AWS and managed through Terraform scripts. The server is written in Go and all storage is handled via S3 and a PostgreSQL RDS instance. Our frontend uses React/Redux.

Internally we have a dev server that hosts our ticket system (JIRA), Jenkins server and various smaller internal services.

Planned Work/Goals

Our main goals for our time at the residency is to prepare the hardware side of our products for manufacturer as much as possible. Given the current state of things this includes:

  1. Enclosure design and fabrication, specifically experimenting with the injection molding capabilities at the DesignLab. This includes establishing a set of common design idioms and elements to carry across the various modules.
  2. BOM optimization and handling for small batch assembly. All of the assembly we’ve done until now have been by hand (via reflow) We’d like to start seeing batches of boards arriving from a SBA place sometime this year.

If you’re familiar with FieldKit, and our organization Conservify, you may know that right now it’s just Shah and myself, Jacob. Shah’s focus will be on the enclosure design efforts, drawing on some of his experience recently using our Glowforge to laser cut some acrylic cases. My focus will be the boards and our various BOMs, as well as wrapping up our software backlog.

Last week we got settled and Shah met with Giovanni, a designer with the lab, to talk about initial considerations we should have as we begin to work on injection molded enclosure designs.

In more human, less technical news it’s been nice spending time in Pasadena, where the DesignLab is. The weather this past week has been gorgeous and walking the streets in Old Pasadena is always a treat. We’re starting to see some consistent summer sun down here in Southern California. It’s a much more green place than the part of Los Angeles where the Conservify lab is located.

We’ve got a few exciting projects we’ll be taking advantage of to test the work we’re doing and we’re looking forward to bringing you all more information about that as they unfold! Thanks for reading!

Discussions