Ruuvitag with 'eddystone' firmware, and altBeacon

Hey, need some assistance…
Looking for a way of using ruuvitag, with the ‘eddystone’ firmware, and with altBeacon on android.
The need is to detect the ruuvitag, and using an android app to trigger (turn on for example) one of the ruuvitag gpio)

any idea or sample app will be more than welcome.

Thanks,
Dan

Hello,

Turning LED on after Android has detected would require 2-way communication with GATT .
You could prototype this with Espruino.

Thanks a lot for your reply.
I am actually looking for some android example using ruuvitag, with the ‘eddystone’ firmware, and with altBeacon on android.
Is there such an example you know of?
Is it even possible to do that with ‘eddystone’?

Hello,

Eddystone is a beacon firmware, by default there is no 2-way communication. You’ll need to add the 2-way communication to the Eddystone FW. AltBeacon seems to be also focused on proximity applications with beacons, you’d probably need to modify the Android app too.

Thanks again.
I understand Eddystone is a beacon firmware. I guess what I am actually asking is:
on an android app I am developing, can I detect the ruuvitag beacon (when Eddystone or maybe another fw flashed to it)
and then use android ble sdk to send a command/request to the ruuvitag, for example to turn on one of the gpio?

Hello,

This is doable and we actually have a proof-of-concept of such program using Web Bluetooth.
However the PoC is built on top of Nordic SDK15 which requires updating the software radio, bootloader and application, we recommend trying it out only if you have Ruuvi DevKit.

So, I am trying another approach:
What if I do not use Beacon? Can I use only BLE (GATT on the android side) so the androi detects the ruuvi and send it data to turn on GPIO?
If so, what Firmware should I use?
Do you have any android code samples for this case?

Hello,

This would be doable. We do not have Android code samples as of right now for such functionality.
On the firmware side, please follow our FW development blog at blog.ruuvi.com. Configuring the tag via GATT is not yet scheduled, but I could make part 17 about controlling LEDs if there is enough interest. It would take maybe 3 months from now.

In meanwhile, you can play around with https://github.com/ruuvi/ruuvi.firmware.c/releases/tag/3.0.0-alpha and https://ojousima.github.io/ruuvi-gatt-demo/ , however there is no documentation or official support for them yet.

Thanks again.
I just need to understand something: Are you referring only to the ruvi firmware?

Meaning, if I flash the Eddystone fw, does this solve the GATT issue?
I was sure the Eddystone fw supports GATT so I would be able to ‘write’ to the device.

Best regards,
Dan

Hello,

Eddystone is configured over GATT, however by default the Eddystone is in non-connectable mode. You’ll need to press “B” or scan the tag with NFC to enter connectable mode on Ruuvi Eddystone.

Also, being connectable does not mean that you can control the LEDs over GATT, LED configuring over GATT would have to be implemented separately

One more question, hopefully the last one :grinning:
We’re developing an iOS app. in order to get notification from the Core Location framework, we must register with the UUID of your iBeacon.
In which mode or how can we get the iBeacon UUID?

iBeacon is not currently officially supported by RuuviTag, however you can use Nordic Semiconductor iBeacon example on RuuviTag to get started. We could also develop iBeacon firmware for you, please contact sales@ruuvi.com with your estimated volume and schedule if you’re interested in a quote.

Thanks again for your really amazing support.
If GATT is not supported, how can your GPIO be used from a phone?
The target is to be automatically notified on a beacon entered the region(on android an iOS), and then send a short commend to your ruuvi-tag to open/close a GPIO.

As for the quote for a firmware, could it do what we aim for?

Hello,

Custom firmware work is required to support your application on RuuviTag. We could develop the firmware at Ruuvi, or you could develop the firmware by yourself or use some third-party agency to develop the firmware.

Pretty much anything can be done, we’ll just need to figure out how much time it will take and how much money it will cost.

Thanks a lot. I will send an email about a quote