Wemos D1 + Bosch BME280 + Chinese load cells

Hello,
as I already specified within presentation section of this forum, I just joined the Hiveeyes community and preliminarly apologize for posing trivial questions. I started digging into IoT hardware very recently, thus I have almost no experience with Arduino/ESP8266 MCUs and in dealing with a so vast universe of development boards, each one featuring distinct peculiarities. However, in order to be pragmathic and to start building a first Open Hive WiFi/MQTT sensor node, i just bought:

  • Adafruit Feather HUZZAH ESP8266
  • HX711 module
  • DS18B20 + DHT22

Moreover, to build a second-step cheaper and less power-hungry Wi-Fi node, I bought:

  • WeMos D1 Mini Pro (5$)
  • Bosch BME280 pressure/temperature/relative humidity sensor (which is very efficient!)

Finally, I need to buy a load cell; so, my question is: is there someone who tested the accuracy, creep, reliability of the load cell in [1], as it does costs 11 EUR shipping included, with respect to the 50 EUR needed for a H30A?

[1] http://www.ebay.com/itm/262586098391

For me the linked load cell looks promising. And in case it’s not under our accuracy requirements you spend only 11 Eur so I would purchase some for testing - not 100 but 3 or 5 for testing. A colleague of us tested some cheap Chinese load cells and was satisfied with the quality in general. I don’t have more details at the moment but perhaps he will specify the observations in the next days. So I will report.

You will find a working sketch for your first setup under

Thanks, @clemens!

@gtuveri: This firmware is currently the best entrypoint for you to get started. While developed to run on the AVR at first, @clemens recently put some more effort in it to make it work on the ESP8266 as well, so you should be able to run it on the Feather HUZZAH as well as the WeMos.

We already put quite an amount of work into the git repository to get you or other users started as quickly as possible by including all the required dependency libraries as well as a commandline-driven build infrastructure as git submodules, so you don’t have to collect each and every bit from the internets to bootstrap your development sandbox. Please have a look at Open Hive GSM and WiFi sensor nodes — Hiveeyes Arduino 0.16.0 documentation for detailed instructions.

We are very much looking forward to receive feedback on this, especially if you are a *nix user and also prefer a commandline-driven sandbox environment over using the Arduino IDE, as some of us do. However, the possibility to receive all required libraries is a thing which can also be helpful for fetching them before including them into the Arduino IDE as well (if you prefer this way).

We are happy to help if you encounter any issues and look forward to your eventual contributions which might arise from your specific requirements. Are you already using git? If not, just ping us as well to get you started on that.

@clemens thanks a lot. I just bought one as well.

Andreas,
many thanks for your detailed answer! Hope the ordered hardware will be delivered soon. I’m a *nix user and I already tested the command line flow; no problems with versioning systems, altough I’m far for being a git master.
According to my short- and mid-term expectations, I hope to make the system alive and kicking :-). The long-term achievements (or dreams, considering my current pace) would include the addition of remote web configuration features to the gateway node like in [1] or like the Configuration Management features in [2].

[1] http://tinkerman.cat/rfm69-wifi-gateway/
[2] Key platform features · Kaa

Hi Giuseppe,

funny you are also reading Xose Pérez pages, we also stumbled across his article


when researching about MQTT topic naming the other day, see Everything MQTT — BERadio 0.12.3 documentation.

Out of that, we evolved a very generic MQTT topic naming scheme suitable for our requirements as well as other small- or large-scale sensor network applications to raise the bar a bit beyond the scope of Home Monitoring Systems in terms of addressing capabilities in wide area network scenarios, see: Data acquisition — Hiveeyes system documentation 0.9.0 documentation.

Regarding remote configuration of the ESP, you might want to have a look at the Homie convention and firmware by Marvin Roger. Alex is already using it:

However, Homie is not about an ISM-to-WiFi gateway. I didn’t recognize yet that you want to do ISM radio transmission as well - great! We also have been looking at the integrated solutions like the RFM69 WIFI Gateway by Xose Pérez and the Espism by Johan Kanflo as well as the NodeMCU-Gateway by Charles Hallard.

However, we currently settled for using a JeeLink by Jean-Claude Wippler plugged into a Raspberry Pi. This gave us the flexibility to prototype the radio protocol and gateway code in Python to evolve the BERadio specification and implementation. The firmware part of BERadio also features automatic message fragmentation by using the BERadio C++ library. In other words: Just drop a bunch of values into it and the library will appropriately split messages across multiple 62-byte payloads which are self-contained and the receiver part on the gateway side will handle them correctly to assemble them back into appropriate messages to be published to the MQTT bus.

Let me know if you are interested in that, BERadio is a very compact, yet 8-bit clean serialization format based on Bencode suitable for efficient transmission of multiple values over radio links with constrained payload sizes. We also did some shootout between different serialization formats at Serialization efficiency.

On the other hand, as @clemens uses the CSV format for data transmission, the beradio-python gateway implementation now also recognizes both BERadio and CSV formats for forwarding to the MQTT bus, see also Open Hive JeeLink radio gateway — Hiveeyes Arduino 0.16.0 documentation.

Cheers,
Andreas.

Hi Giuseppe,

thanks for bringing up the Tinkerman RFM69 WiFi Gateway. I used this stimulus to collect some of the hardware pieces of choice for using as a ISM-to-WiFi gateway in our hardware bazaar category:

As the latter design by Charles Hallard offers so much flexibility regarding the different ISM radio modules, which i think is pretty cool, this piece of hardware looks most promising to me. However, i didn’t get hold of it yet, so you might want to step in…? As you also chose the WeMos D1 for building a sensor node, this could be a perfect fit. The PCB can be ordered from PCBs.io.

With kind regards,
Andreas.

Hi Andreas,
thanks for a so comprehensive explanation. What a chance :-)!
Regarding MQTT addressing, I successfully tested MQTT data push (JSON payload) to Hiveeyes server, performed from my workstation some days ago. Also, I read about your JeeLink-Raspberry Pi ISM-to-WiFi gateway some days ago, but I didn’t realize that the aforementioned setup was conceived for testing and development purposes; this makes sense, as I was searching for a cheaper and more power efficient solution, when I stumbled to Tinkerman and Charles Hallard pages, which also allowed me to discover the WeMos D1 board.
Thus, also according to your observations, I will go through the Hallard solution and will order or make a PCB here. I also read about BERadio (which adoption I took for granted) some days ago, but I will take a look at the efficiency figures with respect to other solutions.
Finally, thank you for the reported information about Homie. Can’t wait to test it as well!
I will keep you updated.

See you,
Giuseppe

I see: hiveeyes-testdrive-automatic - cool! To get your own slot, just use the Online UUID Generator to generate an unique "network" identifier for yourself. The testdrive channel will get purged from time to time.

Cheers,
Andreas.

You might also want to have a look at the CZL601, used by Markus Hies in his Beelogger Version 2. This is also at a cheaper price range of € 11,99 plus shipping.

Many thanks again!

The CZL601 is a 50 kg load cell, so it is not really comparable with your load cell in the initial posting. I would try to use the 200 kg cell for 11 EUR only in case you can build a frame for a single point load cell!

Thanks for clarifying this, @clemens! I missed that detail.