Project status: Ruuvi Gateway

Hi, I have a SPI sensor to interface to Nordic chip and need connection to 6 GPIOs+Vdd+Gnd. Is it possible using the grove sensor? Or I would need to design my own PCB?

From a firmware perspective, will I need to create and flash two firmwares, one for wifi chip and one for the nordic chip, or it will be possible to manage wifi connections, send http requests and so on, through the nordic chip only?

Do you have an estimated date for first samples?

Thank you

Is this related to the Dongle project? The first Dongle revision (discussed above) uses ESP32, not nRF52.

The firmware project discussed above is built on ESP32 (a combined WiFi + BLE chip).

Hi everyone,

This is super interesting topic and from customer point of view Iā€™m interested in the schedule.
Whatā€™s the planned schedule for Ruuvi Dongle? Are we talking about months or years before I could order one?

I know I could solve my use case with gateway made out of Raspberry Pi, but the problem is I donā€™t believe enough on my technical skills. Of course I could find a maker to build the gateway and that might be my path.

Thanks for a great forum and nice products! Kudos to Ruuvi Team and Community!

Cheers

Is there any code for ESP32 we could test? Very early stage version of code is okay, if it is at least semi-official and may lead to official version later. Iā€™m mapping out technologies which we could use in very interesting environmental sensor project in Helsinki area this and next year.

Weā€™re currently evaluating ESP32ā€™s BLE scanning performance using development kits and havenā€™t designed Ruuvi Dongle hardware (yet). You can order one today:

https://www.mouser.fi/ProductDetail/Espressif-Systems/ESP32-PICO-KIT?qs=sGAEpiMZZMve4%2FbfQkoj%252BHzDN28CGzC3PBc1kpaVZN8%3D

We already chatted about this in Telegram, but for the benefit of others coming across the thread. Unofficial code is at https://github.com/ojousima/ojousima.esp32_blegw.c, weā€™ll move the code under Ruuvi once itā€™s at readier stage.

My biggest issue when I tried to compile Otsoā€™s code was wrong esp-idf version. The code compiles with v3.1, but not with v4.x version, which gets installed if you clone the code from github. In addition, if you use --recursive switch when cloning, all those submodules will be in wrong version and checking out esp-idf v3.1 after initialising them wonā€™t downgrade them.

Iā€™m not an expert in this topic, but here is how I finally got esp-idf environment working:

git clone https://github.com/espressif/esp-idf.git
cd esp-idf
git checkout release/v3.1
git submodule init
git submodule update
pip install -U -r docs/requirements.txt
git describe --tags --dirty
-> v3.1.4-55-ge83bdf62c

There was also issues when esp32-ble2mqtt was compiling, but Iā€™ll get back in them later.

1 Like

A Dongle update!

After prototyping with the ESP32, weā€™ve now started to build custom electronics. Iā€™m working with its schematics as we speak.

Main features are:

  • nRF52 to listen BLE messages (!)
  • ESP32
  • WiFi
  • USB
  • Sensors (TBD)
  • Ruuvi Connector expansion port
  • Easy operation
  • All open-source

Main reasons for adding an nRF52 to listen Bluetooth messages are to have a

  • better antenna and
  • 100% duty cycle.

ESP32 has a shared antenna between WiFi/BLE and ESP32 modules have teeny-tiny PCB antennas.

Ruuvi Dongle will have a far more better BLE antenna and itā€™ll listen continuously in order to catch all the signals coming from nearby BLE beacons. ESP32 will provide a WiFi connectivity.

If youā€™re interested in contributing the firmware projects, give @otso a shout.

2 Likes

Hey @lauri!

Are you guys thinking about using Bluetooth class 1 or 2 for the dongle?

By default, the Dongle listens nearby broadcasting Ruuvi products and therefore it wonā€™t transmit anything. AFAIK, the article youā€™re referring to is about legacy Bluetooth devices (not BLE).

ETSI EN 300 328 defines EIRP at 1 MHz bandwidth to be max 10 dBm. This means that in Europe, 10 dBm is the max tx power for a BLE transmitter.

I thought you were developing 2-way communication between the Dongle and the tags.
I know that the link is not about BLE but it applies the same logic (class 1 and 2).
The BLE limit by definition is +10dBm, but the NRF52 can already transmit at +8dBm.

@JON_BOY, have you used this Fanstel BWG832F gateway with RuuviTags successfully?

Dont you have to develop your own firmware for the Fanstel? If and when you do so, there will be no problem to use it to pick up Ruuvi packages.

A quick Dongle update:

Two new firmware projects (ESP32 + nRF52) have been started in cooperation with Offcode Oy.

Electronics are progressing well. Prototypes are aimed to be ready by the end of this year.

First mechanics design drafts are ready and will be published later.

Stay tuned for more info :slight_smile:

4 Likes

Thanks for the update Lauri. waiting for something to test :slight_smile:

Iā€™ve lots of Ruuvitags in production in different places, I can be a tester volunteer! :slight_smile:

Great. I want tested it!. Congratulations

This looks awesome. Will you be able to flash the dongle with different Firmwares like you can the Ruuvitag? If so, what are you thinking about including as firmware?

Iā€™d also love to see the dongle have the ability to broadcast BLE packets itself (I may be biased on this). What are your thoughts on that?

We plan to include bootloader in both ESP32 and nRF52, so you can upload your own code to both without any special equipment. Thereā€™s no plan for other firmwares at least yet, but usually porting FW from one nRF52 board to another is really quick unless new drivers for external sensors have to be coded.

1 Like

Hey,
I found this really late, but this sounds great! While reading all the posts some things came to my mind.

  1. Related to this: ā€œAdvertisement data is sent via MQTT with topic ā€œRuuvi/{MAC_ADDRESS}/ā€.ā€
    Is it fixed this way? I could think that it would be beneficial to determine the MQTT topics freely and utilizing parsing of the BLE messages. For example I might want to have different topics for different device types or physical locations or message content.

  2. Regarding what messages to forward. I would like to see filtering where any part of the BLE message could be used for whitelisting or blacklisting messages.

For both 1 & 2 maybe regular expressions would be powerful and simple enough? Is it user friendly enough is another question.

  1. Bigger topicā€¦ I would love to see this device function also as Bluetooth Mesh node with at least Proxy and Relay features, but ideally also Friend feature. I donā€™t know how easily it would be possible, but It would be great to create a network using e.g. Bluetooth Mesh light bulbs or any other devices and then have this or some of these gateways to get connection to Internet and have custom use cases utilizing the network.

  2. Form factorā€¦ I think the USB dongle is great. Itā€™s easy to find USB chargers and even that is often not needed as USB sockets are ā€œeverywhereā€. I think I would also benefit from PoE, but price is higher priority!

  3. For reference check: https://en.minewtech.com/gateway.html
    https://usermanual.wiki/MINEW-TECHNOLOGIES/G1
    Here is also screenshot of the service config page:

Then some questionsā€¦

What kind of rough price point are you thinking of?
Do you have idea when the device could get out at least for testing?