Beemos
Bee monitoring system
Goal of the project
This on-going project is hosted at the Hackuarium association, a DIY biology hacking-space and open laboratory located in Ecublens (Switzerland).
The goal of the Bee Monitoring System (BeeMoS) project is to provide an open-source hardware and software solution in order to monitor honeybee hives from a distance at a reasonable cost. Such a system would bring consistent and valuable non-biased data to assist beekeepers in their beekeeping tasks e.g to follow how much honey is collected and when to add an extra honey supper or to harvest honey; and to receive personalized alarms e.g. in case of swarming and theft. From the bees' perspective, this could allow to minimize the number of bee hive inspections and thereby cause less disturbance.
In a second phase, data gathering from multiple hives and apiaries could be used to detect abnormalities at a large scale and to build useful models to detect or prevent queen loss, swarming or conditions favorable for bee diseases.
Why should we care about bees? Western honeybees (Apis mellifera) are important insect pollinators that live in colonies of thousands individuals with a single queen. As bee foragers travel from plant to plant to collect nectar and pollen, plant cross‐pollination occurs, allowing plant reproduction and in particular fruit production. Honeybees are estimated to contribute to US$215 billion worth of crops annually worldwide (Smith et al. 2014) and to pollinate about one third of the Western world's crop species (McGregor, 1976).
Despite their importance, honey bees have been facing important declines due to multiple causes including acarian, viral and bacterial pests, exposure to pesticides and poor diet due to large-scale monocultures. The automatized large scale monitoring of bees could allow to detect unexpected patterns and to provide data-based evidence on the long run rather than biased interpretations based on a few manual inspections.
Electronics
Board: ESP32-C3 Mini Lolin
Current pin assignments:
GPIO PIN | PURPOSE | DESCRIPTION |
---|---|---|
0 | Battery level | Analog read battery level using voltage resistor with R1=R2=220kOhm. First tests indicate a value of 2895 for a full NCR18650B battery (4.12V) , and a value of 1869 when the battery is empty (2.615V). |
1 | Not assigned yet | |
2 | Not assigned yet | |
3 | I2C SDA | I2C (SDA+SCL) is used to control Si7021 temperature and humidity sensor as well as other devices (scale, light measurements...) |
4 | I2C SCL | I2C can be set on any pair of GPIO pins, the code must explicitly specify those pins (with Wire.begin(SDA,SCL) e.g. Wire.begin(3,4) |
5 | Not assigned yet | Caution: this pin is on ADC2 and by default there are conflicts when WiFi is used in code. |
6 | 1-Wire | The 1-Wire protocol allows to connect multiple DS18B20 temperature probes to the same pin. The external temperature probe is connected to this pin. |
7 | Builtin LED | This pin is used for the "Blink" task which is the lowest priority task blinking the LED. It allows to detect in case the board is in a frozen state or reboots frequently by observing the LED blink pattern (or absence of blinking). |
8 | 1-Wire | The external temperature probe is connected to this pin. |
9 | Pin not exposed, internally used for button switch | |
10 | Not assigned yet |