IBeacons with proximity and clickable button - button

I am trying to find informations about IBeacons, plus bluetooth Dash Buttons and google delivers contradictory results.
Is there a IBeacon's with an button to click. And an interface on the connected device to react on the click event?
I need if possible to have the proximity and click event.
Is this even possible with IBeacons/BLE specifications?
All kind of informations are welcome.
Thanks

IoT buttons like Amazon Dash and Bluetooth LE beacons like iBeacon have fundamental differences:
Amazon Dash connects to the internet over WiFi to make a web service call on button press, and requires configuration with your WiFi network. Other IoT buttons work similarly, although some connect to the internet via a nearby mobile device using Bluetooth. You must write some code and deploy it to a cloud server to do something whenever somebody taps the button.
Bluetooth LE beacons like iBeacon are transmit only Bluetooth LE devices that do not connect to the internet, but simply sent out a bluetooth packet with a unique identifier. These devices are much simpler, and rely on another bluetooth-enabled computer within 40 meters to be listening (typically a mobile phone). You must write an app on the mobile phone then does something when it detects the beacon transmission is detected.
Most Bluetooth LE beacons are always transmitting, although it is possible to buy ones that are click-on click-off like the RadBeacon Dot. This could provide similar functionality to a Amazon Dash if a mobile app is running nearby that can forward the detection to a similar cloud sever as used for an Amazon Dash solution.

Related

Bluetooth I Spy

I want to develop a mobile app that listens for broadcasts by a BLE device. My idea generally is patterned on the game "I spy".
In a room full of objects, there should be a numerous Bluetooth beacons. The beacons will have a button and when the button is pressed, it would send a broadcast. One person goes in the room to solve the puzzle so there won't be the need to consider if the broadcast reaches multiple phones.
When the button is pressed, the app should check the clue given and read the corresponding beacon's ID and then alert the user whether they're correct or not.
I would like this to happen without having the user's phone pair with all BLE beacons.
For the beacon, i'm thinking to use something along the lines of an Adafruit LE Friend or flora wearable. This would be soldered to a CR 2025 or similar battery. Do I also need an Arduino or can this be standalone?
I'm thinking that it could be standalone but I have no experience here
For your use case, the flora wearable is the more suitable choice because you can just solder a battery to it and get it to work (the Adafruit LE Friend requires a PC as it is a USB dongle). You will need to do some reading on basic Bluetooth Low Energy (BLE) concepts, and I recommend that you focus on the following:-
Advertising/Broadcasting: This is what your BLE peripherals such as the flora will be doing. These devices will be sending adverts when a button is pressed or a command is sent.
Scanning/Observing: This is what the app developed on mobile phones will do. Your apps will be continuously scanning for those LE adverts and display relevant information to users when those adverts are read.
Luckily these are relatively easy BLE concepts and there are already many examples for both advertising and scanning.
For more resources, I recommend having a look at the following:-
Bluetooth Low Energy: A Primer
Getting Started with Bluetooth Low Energy
Introduction to BLE
I hope this helps.

How do I program this BLE location tag?

I bought one of these:
https://www.aliexpress.com/item/Smart-finder-Key-finder-Wireless-Bluetooth-Tracker-Anti-lost-alarm-Smart-Tag-Child-Bag-Pet-GPS/32806261079.html
As far as I can tell it is a BLE (Bluetooth Low Energy) location tag.
I downloaded the app for it onto my iphone, and the app instantly recognised it and connected to it. The iPhone app seems to know how far away the tag is - it has a little map of the local area and says how many feet away. I was able to set the device name via the app, but I'm not sure if that set it locally or on the tag itself. The iPhone app also has a "find" button - when you press it, the tag beeps.
So I want to know how I can program this thing myself. I want to be able to identify it when it is nearby, connect to it and make it beep. I've searched for quite a while but not come up with much.
I'm assuming (wrongly/rightly?) that there is some general standard or approach for talking to these BLE location devices and carrying out the basic functions with them - but what is that standard - where is the documentation?
Does anyone have any idea how to program these BLE location tag devices?
BLE devices typically communicate using GATT, either using standard GATT services, or custom ones. The command to make it beep is probably implemented using a custom GATT service.
For finding out the distance to the beacon, typically the RSSI is used. This is a measure of the received power. It needs to be compared to the output power at the emitter. Usually beacons will put their output power in advertisement data, so it can be used without connecting to them. Here since the app is also able to send commands to the beacon, chances are it keeps a connection to it and has a custom GATT protocol to retrieve the output power.
Here is what I would suggest:
Read up on BLE, especially advertising and GATT. For instance read this for advertising and this for GATT. The full BLE spec is available here but should be used for reference and not introduction
Sniff the communication between your device and your phone. You can see this other answer of mine to get started
Replicate the communication protocol in you own app. For that you'll need to use your target platform's BLE libraries. For instance for iOS it is CoreBluetooth

How to manage bluetooth beacons through web?

What I want to do is have a complete control on beacon remotely through web/mobile app (RestApi). I already gone through following sites,
1)https://nectarkast.com/index.html
2)https://kontakt.io/products-and-solutions/beacon-software/
How do these site working? Are they using some custom beacons that has Wifi or network connecting functionality, any help would be really appreciable.
You need (a) a beacon with internet access or (b) a base station near those beacons with internet access and the ability to connect to them via Bluetooth to configure them.
It is also possible to build beacons using Lora, SigFox, or other IoT radio technologies that effectively gives a very low power internet connection that uses little battery.

Programming a BLE Beacon to connect with server

I am developing a solution where, Fixed BLE beacon detects a moving BLE device and sends the relevant data to the server using wifi/ethernet/etc. All the examples I have found have BLE beacons talking to the mobile phone which in my case isnt true. AFIK an embedded systems engineer can configure the fixed beacon to send data to server. BUT is there any ready to use solution that lets the beacon connect to backend? Thanks.
You mention having a "[f]ixed BLE beacon [detect] a moving BLE device". Understand that this is very different from the way an Apple-style BLE iBeacon works, which is a transmit only device. (I mention this because the question is tagged with ibeacon.)
What you are describing is probably better described as either a beacon scanner or a BLE scanner. My company has a Raspberry Pi-based product that can scan for beacons and take programmatic action based on detections. We have a blog post about how to make a beacon turn on a lamp using this device, but you could just as easily make it contact a server when a BLE device is detected.

Sony SmartWatch 2 communication with Host Application on phone

As i know host application for Sony products are responsable for communication between phone and accessory.
But, in bluetooth data transfer from phone to watch what is specially transferred?
For examle, My Extension data as a object array and layout which will be displayed passed to watch? Or all rendered 176x220px UI block is send from phone to watch.
In this transfer is there any security issues to be considered?
Thanks.
Everything is passed to the watch from the host application, so it would be the complete 176x220 bitmap.
As far as security, Bluetooth data is encrypted in BT v2.1+ plus the user still has to pair the device and confirm a pairing code as with all BT devices. So it's not any less secure than any other Bluetooth device on the market in that respect.

Resources