Skip to content

Commit e384c4f

Browse files
committed
[Mois Labs] Naming things: Welcome, Mois Labs.
- Add folder `moislabs` - Rename program to `beescale-yun.ino` - Improve README
1 parent 430f0eb commit e384c4f

File tree

10 files changed

+117
-69
lines changed

10 files changed

+117
-69
lines changed

.github/workflows/platformio-ci.yaml

Lines changed: 15 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -46,9 +46,9 @@ jobs:
4646
backdoor-any-rfm69: ${{ steps.changes.outputs.backdoor-any-rfm69 }}
4747
backdoor-multihop: ${{ steps.changes.outputs.backdoor-multihop }}
4848
backdoor-node-wifi-mqtt: ${{ steps.changes.outputs.backdoor-node-wifi-mqtt }}
49+
moislabs-beescale-yun: ${{ steps.changes.outputs.moislabs-beescale-yun }}
4950
openhive-any-rfm69: ${{ steps.changes.outputs.openhive-any-rfm69 }}
5051
openhive-gsm-wifi: ${{ steps.changes.outputs.openhive-gsm-wifi }}
51-
openhive-yun: ${{ steps.changes.outputs.openhive-yun }}
5252
openhive-scale-adjust: ${{ steps.changes.outputs.openhive-scale-adjust }}
5353
ringlabs-bienenwaage-20: ${{ steps.changes.outputs.ringlabs-bienenwaage-20 }}
5454
ringlabs-bienenwaage-50: ${{ steps.changes.outputs.ringlabs-bienenwaage-50 }}
@@ -71,6 +71,9 @@ jobs:
7171
backdoor-node-wifi-mqtt:
7272
- 'backdoor/node-wifi-mqtt/**/*.ini'
7373
- 'backdoor/node-wifi-mqtt/**/*.ino'
74+
moislabs-beescale-yun:
75+
- 'moislabs/beescale-yun/**/*.ini'
76+
- 'moislabs/beescale-yun/**/*.ino'
7477
openhive-any-rfm69:
7578
- 'openhive/gateway-rfm69-csv-sdcard/**'
7679
- 'openhive/gateway-rfm69-csv-uart/**'
@@ -81,9 +84,6 @@ jobs:
8184
openhive-scale-adjust:
8285
- 'openhive/scale-adjust/**/*.ini'
8386
- 'openhive/scale-adjust/**/*.ino'
84-
openhive-yun:
85-
- 'openhive/openhive-yun/**/*.ini'
86-
- 'openhive/openhive-yun/**/*.ino'
8787
ringlabs-bienenwaage-20:
8888
- 'ringlabs/bienenwaage-2.0/**/*.ini'
8989
- 'ringlabs/bienenwaage-2.0/**/*.ino'
@@ -122,6 +122,16 @@ jobs:
122122
pip install --upgrade --requirement requirements-test.txt
123123
124124
125+
# ------------------------------------------
126+
# Mois Labs
127+
# ------------------------------------------
128+
129+
- name: Build moislabs-beescale-yun
130+
if: ${{ needs.changes.outputs.moislabs-beescale-yun == 'true' }}
131+
run: |
132+
pio run --project-dir moislabs/beescale-yun
133+
134+
125135
# ------------------------------------------
126136
# Backdoor
127137
# ------------------------------------------
@@ -177,14 +187,9 @@ jobs:
177187
pio run --project-dir openhive/scale-adjust/ADS1231
178188
pio run --project-dir openhive/scale-adjust/HX711
179189
180-
- name: Build openhive-yun
181-
if: ${{ needs.changes.outputs.openhive-yun == 'true' }}
182-
run: |
183-
pio run --project-dir openhive/openhive-yun
184-
185190
186191
# ------------------------------------------
187-
# ringlabs
192+
# Ringlabs
188193
# ------------------------------------------
189194

190195
- name: Build ringlabs/bienenwaage-2.0

doc/source/firmware/moislabs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
../../../moislabs

doc/source/firmware/overview.md

Lines changed: 22 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -11,21 +11,28 @@ open source projects.
1111

1212
## Groups
1313

14-
This section lists firmwares by group / origin, alphabetically and
15-
chronologically sorted.
14+
This section enumerates and groups firmwares by origin, chronologically sorted
15+
in the order of appearance.
1616

17-
### Open Hive
1817

19-
All systems conceived by Open Hive and friends.
18+
### Mois Labs
2019

21-
:::{note} **References:**
22-
Markus Euskirchen and Clemens Gruber reported about the development progress.
23-
- http://open-hive.org/
24-
- https://www.euse.de/wp/blog/series/bienenwaage/
25-
- https://www.euse.de/wp/blog/series/bienenwaage2/
26-
:::
20+
Collecting beehive sensor data since 2011. With the first »Hello, world« post in
21+
[November 2011], and the most recent one in [May 2023], you can see that Markus
22+
is surely one of the most avid and proficient data collectors, and inspired many
23+
others to start similar projects.
24+
25+
:::{seealso}
26+
He published many articles about his journey, and it is a pleasure to read all
27+
about the development progress in the [bienenwaage] and [bienenwaage2] sections
28+
on his personal blog.
29+
:::
30+
31+
[bienenwaage]: https://www.euse.de/wp/blog/series/bienenwaage/
32+
[bienenwaage2]: https://www.euse.de/wp/blog/series/bienenwaage2/
33+
[November 2011]: https://www.euse.de/wp/blog/2011/11/bienen-ueberwachen/
34+
[May 2023]: https://www.euse.de/wp/blog/2023/05/wettermessung-direkt-am-stand/
2735

28-
#### GSM, Wi-Fi
2936

3037
::::::{grid} 1
3138
:margin: 0
@@ -38,13 +45,13 @@ Markus Euskirchen and Clemens Gruber reported about the development progress.
3845

3946
:::{grid-item}
4047
:columns: 8
41-
[Open Hive Yún](#openhive-yun)
48+
[](#beescale-yun)
4249

4350
Running the [Mois Box], transmitting sensor data over HTTP, using the
4451
[Bridge Library for Yún devices].
4552

46-
**Date:** 2014
47-
**Source:** [openhive-yun.ino]
53+
**Date:** 2011
54+
**Source:** [beescale-yun.ino]
4855
:::
4956
:::{grid-item}
5057
:columns: 4
@@ -477,8 +484,8 @@ backdoor/node-pipa/README
477484
backdoor/node-wifi-mqtt/README
478485
homie/node-homie-basic/README
479486
homie/node-homie-lowpower/README
487+
moislabs/beescale-yun/README
480488
openhive/openhive-gsm-wifi/README
481-
openhive/openhive-yun/README
482489
openhive/rfm69-gateway-sdcard/README
483490
openhive/rfm69-gateway-uart/README
484491
openhive/rfm69-node/README

doc/source/resources-md.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
[Hiveeyes project]: https://hiveeyes.org/
44
[Hiveeyes Arduino repository]: https://github.com/hiveeyes/arduino
55
[Hiveeyes Backend]: https://getkotori.org/
6+
[Open Hive Bee Scale GSM]: https://community.hiveeyes.org/t/open-hive-bee-monitoring-system-hardware-overview-gsm-node/279
67
[Open Hive Box]: https://hiveeyes.org/docs/system/vendor/open-hive/#open-hive-seeeduino-stalker
78
[Open Hive WiFi Solar]: https://community.hiveeyes.org/t/open-hive-wifi-solar-adafruit-huzzah/247
89
[node-rfm69-beradio.ino]: https://github.com/hiveeyes/arduino/blob/main/backdoor/node-rfm69-beradio/node-rfm69-beradio.ino
@@ -15,7 +16,7 @@
1516
[scale-adjust-ads1231.ino]: https://github.com/hiveeyes/arduino/blob/main/openhive/scale-adjust/ADS1231/scale-adjust-ads1231.ino
1617
[scale-adjust-hx711.ino]: https://github.com/hiveeyes/arduino/blob/main/openhive/scale-adjust/HX711/scale-adjust-hx711.ino
1718
[BERadio C++]: https://github.com/hiveeyes/arduino/tree/main/libraries/BERadio
18-
[node-yun-http.ino]: https://github.com/hiveeyes/arduino/blob/main/openhive/openhive-yun/openhive-yun.ino
19+
[beescale-yun.ino]: https://github.com/hiveeyes/arduino/blob/main/moislabs/beescale-yun/beescale-yun.ino
1920
[Mois Box]: https://www.euse.de/wp/blog/2017/03/bienenwaage-2_0/
2021
[OpenHive-Lib]: https://github.com/hiveeyes/arduino/tree/main/libraries/OpenHive
2122
[openhive-gsm-wifi.ino]: https://github.com/hiveeyes/arduino/blob/main/openhive/openhive-gsm-wifi/openhive-gsm-wifi.ino
@@ -35,6 +36,7 @@
3536
[Microchip]: https://en.wikipedia.org/wiki/Microchip_Technology
3637
[AVR microcontroller family]: https://en.wikipedia.org/wiki/MegaAVR
3738
[ATmega328]: https://en.wikipedia.org/wiki/ATmega328
39+
[ATmega328P]: https://www.microchip.com/en-us/product/ATmega328P
3840
[Seeeduino Stalker v2.3]: https://web.archive.org/web/20180118214610/https://wiki.seeedstudio.com/wiki/Seeeduino_Stalker_v2.3
3941
[ESP8266]: https://en.wikipedia.org/wiki/ESP8266
4042
[ESP32]: https://en.wikipedia.org/wiki/ESP32
@@ -118,7 +120,6 @@
118120
[LoRaWAN]: https://en.wikipedia.org/wiki/LoRaWAN#LoRaWAN
119121
[LTE Cat M1]: https://en.wikipedia.org/wiki/LTE-M
120122
[LTE Cat NB1]: https://en.wikipedia.org/wiki/Narrowband_IoT
121-
[openhive-yun.ino]: https://github.com/hiveeyes/arduino/blob/main/openhive/openhive-yun/openhive-yun.ino
122123
[picocom]: https://github.com/npat-efault/picocom
123124
[pipa-espressif.ino]: https://github.com/hiveeyes/arduino/blob/main/backdoor/node-pipa/examples/pipa-espressif/pipa-espressif.ino
124125
[PlatformIO Registry]: https://registry.platformio.org/

doc/source/resources.rst

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@
2323
.. -----------
2424
2525
.. Open Hive
26+
.. _Open Hive Bee Scale GSM: https://community.hiveeyes.org/t/open-hive-bee-monitoring-system-hardware-overview-gsm-node/279
2627
.. _Open Hive Box: https://hiveeyes.org/docs/system/vendor/open-hive/#open-hive-seeeduino-stalker
2728
.. _Open Hive WiFi Solar: https://community.hiveeyes.org/t/open-hive-wifi-solar-adafruit-huzzah/247
2829

@@ -45,7 +46,7 @@
4546
.. _BERadio C++: https://github.com/hiveeyes/arduino/tree/main/libraries/BERadio
4647

4748
.. Mois
48-
.. _node-yun-http.ino: https://github.com/hiveeyes/arduino/blob/main/openhive/openhive-yun/openhive-yun.ino
49+
.. _beescale-yun.ino: https://github.com/hiveeyes/arduino/blob/main/moislabs/beescale-yun/beescale-yun.ino
4950
.. _Mois Box: https://www.euse.de/wp/blog/2017/03/bienenwaage-2_0/
5051

5152
.. Open Hive
@@ -85,6 +86,7 @@
8586
.. _Microchip: https://en.wikipedia.org/wiki/Microchip_Technology
8687
.. _AVR microcontroller family: https://en.wikipedia.org/wiki/MegaAVR
8788
.. _ATmega328: https://en.wikipedia.org/wiki/ATmega328
89+
.. _ATmega328P: https://www.microchip.com/en-us/product/ATmega328P
8890
.. _Seeeduino Stalker v2.3: https://web.archive.org/web/20180118214610/https://wiki.seeedstudio.com/wiki/Seeeduino_Stalker_v2.3
8991

9092
.. Espressif
@@ -197,7 +199,6 @@
197199
.. _LoRaWAN: https://en.wikipedia.org/wiki/LoRaWAN#LoRaWAN
198200
.. _LTE Cat M1: https://en.wikipedia.org/wiki/LTE-M
199201
.. _LTE Cat NB1: https://en.wikipedia.org/wiki/Narrowband_IoT
200-
.. _openhive-yun.ino: https://github.com/hiveeyes/arduino/blob/main/openhive/openhive-yun/openhive-yun.ino
201202
.. _picocom: https://github.com/npat-efault/picocom
202203
.. _pipa-espressif.ino: https://github.com/hiveeyes/arduino/blob/main/backdoor/node-pipa/examples/pipa-espressif/pipa-espressif.ino
203204
.. _PlatformIO Registry: https://registry.platformio.org/
@@ -214,5 +215,9 @@
214215
.. https://stackoverflow.com/questions/4550021/working-example-of-floating-image-in-restructured-text
215216
.. |clearfix| raw:: html
216217

218+
<style>
219+
.clearfix {
220+
clear: both;
221+
}
222+
</style>
217223
<div class="clearfix"></div>
218-
Lines changed: 68 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -3,87 +3,92 @@
33
.. _mois-node:
44
.. _mois-firmware:
55
.. _node-yun-http:
6-
.. _openhive-yun:
6+
.. _beescale-yun:
77

8-
################
9-
Mois sensor node
10-
################
8+
######################
9+
Mois Labs Beescale Yún
10+
######################
1111

1212
.. tip::
1313

1414
Please `continue reading this document on our documentation space
15-
<https://hiveeyes.org/docs/arduino/firmware/openhive/openhive-yun/README.html>`_,
15+
<https://hiveeyes.org/docs/arduino/firmware/moislabs/beescale-yun/README.html>`_,
1616
all inline links will be working there.
1717

1818

1919
.. highlight:: bash
2020

21-
************
22-
Introduction
23-
************
24-
25-
This firmware powers the `Mois Box`_, based on the `Arduino Yún Shield`_-compatible `Dragino Yun Shield v2.4`_.
26-
Telemetry data is transmitted to a `custom PHP receiver program <https://github.com/bee-mois/beescale/blob/master/add_line2.php>`_
27-
over HTTP using the `Yún HTTP Client`_ from the `Bridge Library for Yún devices`_. It is also stored locally on a SD card.
28-
The most recent firmware version is always available at `node-yun-http.ino`_.
21+
*****
22+
About
23+
*****
2924

25+
The second generation `Mois Box`_ is a beehive monitoring system based on the
26+
`Arduino Yún Shield`_-compatible `Dragino Yun Shield v2.4`_.
3027

3128
.. figure:: https://ptrace.hiveeyes.org/2017-03-21_mois-node-yun-http.jpg
3229
:alt: Mois Box with electronics
33-
:width: 450px
30+
:width: 350px
3431
:align: left
3532

3633
`Mois Box`_
3734

38-
3935
.. figure:: http://www.dragino.com/media/k2/galleries/105/YunShieldv2.4_10.png
4036
:target: https://wiki1.dragino.com/index.php/Yun_Shield
4137
:alt: Dragino Yun Shield v2.4
42-
:width: 450px
38+
:width: 350px
4339
:align: right
4440

4541
`Dragino Yun Shield v2.4`_
4642

47-
4843
|clearfix|
4944

45+
Project repository
46+
==================
47+
48+
`@bee-mois`_ is maintaining the full sources, including all auxiliary helper programs,
49+
within the `beescale repository`_.
50+
5051

51-
Platform and supported peripherals
52-
==================================
52+
********
53+
Hardware
54+
********
5355

5456
Board
55-
-----
57+
=====
5658
- `Dragino Yun Shield v2.4`_
5759

5860
Sensors
59-
-------
61+
=======
6062
- ADS1231_ ADC weigh scale breakout board
6163
- DS18B20_ digital thermometer
6264
- DHT22_ (RHT03_) digital humidity/temperature sensor
6365
- `TSL25911`_ Ambient Light Sensor aka.
6466
`Adafruit TSL2591 STEMMA QT`_ High Dynamic Range Digital Light Sensor
6567

6668

67-
*****
68-
Setup
69-
*****
7069

71-
Clone git repository
72-
====================
70+
********
71+
Firmware
72+
********
73+
74+
The most recent firmware version is available at `beescale-yun.ino`_.
75+
76+
Acquire source code
77+
===================
7378
::
7479

7580
# Acquire source code repository
7681
git clone https://github.com/hiveeyes/arduino
7782

7883
# Select this firmware
79-
cd arduino/openhive/openhive-yun
84+
cd arduino/moislabs/beescale-yun
8085

8186

82-
Configure firmware
83-
==================
87+
Configure
88+
=========
8489
.. highlight:: c++
8590

86-
Have a look at the source code `node-yun-http.ino`_ and adapt feature flags and setting
91+
Have a look at the source code `beescale-yun.ino`_ and adapt feature flags and setting
8792
variables according to your environment.
8893

8994
Configure load cell calibration settings::
@@ -98,18 +103,13 @@ Configure load cell calibration settings::
98103

99104
.. tip::
100105

101-
Use :ref:`scale-adjust-firmware` to determine those values.
102-
103-
104-
*****
105-
Usage
106-
*****
107-
108-
.. highlight:: bash
106+
Please use the corresponding :ref:`scale-adjust-firmware` to determine those values.
109107

110108
Build
111109
=====
112110

111+
.. highlight:: bash
112+
113113
The build system is based on `PlatformIO`_, which will install toolchains and build
114114
your customized firmware without efforts. All you need is a Python installation.
115115

@@ -130,5 +130,34 @@ Upload to MCU
130130
If you need to build for different targets, or if you want to modernize your dependencies,
131131
you may want to adjust the ``platformio.ini`` file, to match your needs.
132132

133-
In order to make changes to the firmware, edit the ``node-yun-http.ino`` file, and
133+
In order to make changes to the firmware, edit the ``beescale-yun.ino`` file, and
134134
invoke ``make build`` to build it again.
135+
136+
137+
*********************
138+
Telemetry and backend
139+
*********************
140+
141+
The `Bridge Library for Yún devices`_ enables communication between the `ATmega328P`_ MCU
142+
on the `Arduino Uno`_, and the `AR9331`_, in order to submit data from the sensor domain
143+
to the Linux machine. It will enable transparent HTTP communication using the venerable
144+
Arduino `HttpClient`_ library.
145+
146+
.. code-block:: c++
147+
148+
#include <Bridge.h>
149+
#include <HttpClient.h>
150+
151+
HttpClient client;
152+
client.post(url);
153+
154+
Using this HTTP client (example implementation at `Yún HTTP Client`_), telemetry data is
155+
transmitted to a `custom PHP receiver program`_, and is also stored on the SD card attached
156+
to the device.
157+
158+
159+
.. _AR9331: http://en.techinfodepot.shoutwiki.com/wiki/Atheros_AR9331
160+
.. _@bee-mois: https://github.com/bee-mois
161+
.. _beescale repository: https://github.com/bee-mois/beescale
162+
.. _custom PHP receiver program: https://github.com/bee-mois/beescale/blob/master/add_line2.php
163+
.. _HttpClient: https://www.arduino.cc/reference/en/libraries/httpclient/

0 commit comments

Comments
 (0)