Firmware to connect Sensors and Actuators
Posted: Sun Jul 27, 2025 12:16 am
I work for an ag-tech company designing equipment for shrimp production. For the past 8 years I have used Esp32 and Esp8266 in almost every project I designed, they are powerful devices and I love working with them. In 2024 we won Gold at the Edison Awards https://edisonawards.com/2024-winners/ with the Shrimpbox in the FOOD & AGRICULTURAL ADVANCEMENTS category, an automated system to grow shrimp in urban settings based on the footprint of a 40 ft shipping container, the main controller in it is an ESP32 running custom libraries that I have been developing for years for my projects. You can look for some videos of it on youtube. The code for it is still working on all Shrimpboxes but there was a lot of spaghetti code and patches in it as I started coding it when I had not a good understanding of memory management and the use of modern C++ features.
3D Rendering of Shrimpbox ShrimpBox control center. The Esp32 controls 16 relays by Modbus and the 2 VFDs also by Modbus. Also has an ESP8266 device called Jellyfish that monitors the PH, Temperature and Salinity of the water.
Last year I started a new personal project based in what I learnt, I want to create some kits to build some cool gadgets but want to allow users to create objects in a dynamic way with the preinstalled firmware. My old libraries had all kinds of classes I could chose from at compilation time, the downside is that requires reprogramming the ic, I'm creating a firmware where the user can create the interfaces to build many different devices to make it easy for new users and maybe get interested in this kind of stuff. The firmware can run in ESP8266 and ESP32 development boards.

The idea is that the user is going to be able to build many different devices with the same firmware just setting up different panels as inputs and outputs.
I'm working on a prototype for a gravimetric liquids dispenser based on the Esp8266 on a Wemos D1 Mini with a 12 volts pump driven through a transistor by PWM from D5 of the mini, a load cell connected to D0 and D8 and a push button to D7. I'm using the custom Firefly firmware to build this machine.
Liquids Dispenser 3D render Prototype Video
https://youtu.be/bmZOhdgTDt0
Creating Dispenser Panels
https://youtu.be/s1iO_enHbHg
The website Im setting up for this project is critter-devices.com , in the documentation page there are links to download the firmware as zip files that include web and python installers, there is a version for esp8288 and one for esp32.
There are some examples on how to create panels here: https://www.critter-devices.com/wp-cont ... nels_2.pdf
I have a lot of work to do with documentation, if you want to try it and get stuck send me a msg and I'll help you out. If you have esptool.py running in your machine it should be easy to upload to your device check the instructions at https://www.critter-devices.com/wp-cont ... load_2.pdf
Happy programming !!!
Edit: I changed the title of the post as I'm posting mostly updates about the firmware in this thread.
3D Rendering of Shrimpbox ShrimpBox control center. The Esp32 controls 16 relays by Modbus and the 2 VFDs also by Modbus. Also has an ESP8266 device called Jellyfish that monitors the PH, Temperature and Salinity of the water.
Last year I started a new personal project based in what I learnt, I want to create some kits to build some cool gadgets but want to allow users to create objects in a dynamic way with the preinstalled firmware. My old libraries had all kinds of classes I could chose from at compilation time, the downside is that requires reprogramming the ic, I'm creating a firmware where the user can create the interfaces to build many different devices to make it easy for new users and maybe get interested in this kind of stuff. The firmware can run in ESP8266 and ESP32 development boards.

The idea is that the user is going to be able to build many different devices with the same firmware just setting up different panels as inputs and outputs.
I'm working on a prototype for a gravimetric liquids dispenser based on the Esp8266 on a Wemos D1 Mini with a 12 volts pump driven through a transistor by PWM from D5 of the mini, a load cell connected to D0 and D8 and a push button to D7. I'm using the custom Firefly firmware to build this machine.
Liquids Dispenser 3D render Prototype Video
https://youtu.be/bmZOhdgTDt0
Creating Dispenser Panels
https://youtu.be/s1iO_enHbHg
The website Im setting up for this project is critter-devices.com , in the documentation page there are links to download the firmware as zip files that include web and python installers, there is a version for esp8288 and one for esp32.
There are some examples on how to create panels here: https://www.critter-devices.com/wp-cont ... nels_2.pdf
I have a lot of work to do with documentation, if you want to try it and get stuck send me a msg and I'll help you out. If you have esptool.py running in your machine it should be easy to upload to your device check the instructions at https://www.critter-devices.com/wp-cont ... load_2.pdf
Happy programming !!!
Edit: I changed the title of the post as I'm posting mostly updates about the firmware in this thread.