Building Android Apps to Control Bluetooth LE Devices

  Переглядів 34,487

CrossComm, Inc.

CrossComm, Inc.

День тому

Our Senior Developer Ben Berry led a discussion at RIoT Developer Day (August 20, 2019) on how to get started with building an Android application using Bluetooth Low Energy.
He gave a brief history and introduction of Bluetooth itself and walked through the code to scan for BLE devices, connect to one, discover its services, negotiate a new MTU, read and write characteristics, and enable notifications when characteristics change.

КОМЕНТАРІ: 33
@NovelBits
@NovelBits 2 роки тому
Nice presentation! Just a clarification: in BLE, the concept of "pairing" does actually exist, and there is security available. The old "pairing" term in Classic Bluetooth is mirrored in BLE by another term called "bonding". The key is that you don't have to use bonding and securing the connection if you don't need it, but it's also there if you do need it! Also, most BLE devices actually stay connected and "do not drop the connection" as suggested by the presenter, instead the two devices remain connected (for as long as possible) but only wake up the radio to send data and then go back to "sleep" in order to conserve power (this happens primarily on the "peripheral" which is the device that is usually battery powered).
@kunwarparikshitraghav973
@kunwarparikshitraghav973 Рік тому
wow, never expected any video on you tube to teach me so many things in less than an hour. Thanks a lot.
@JoseGustavoAbreuMurta
@JoseGustavoAbreuMurta Рік тому
Best presentation about BLE on UKposts. Thank you very much.
@huwy
@huwy 2 роки тому
The best intro presentation I've found on BLE, thank you for this.
@jiovanniromo3478
@jiovanniromo3478 2 роки тому
I'm a Junior Android dev and i just got assigned a task where i have to use BLE, but the LeScanCallback on the project wasn't triggering. Thanks to your vid i understood how can i do the scanning and pairing with a device (thanks to the ScanCallback , wich is what you used, everything worked!). And this is so great since there isn't concrete tutorials or documentation about BLE. Thank you once again.
@braindeveloperdimensional5579
@braindeveloperdimensional5579 2 роки тому
Thanks for the explanation. It helped clear a lot of doubts I had.
@XxCrazyManoxX
@XxCrazyManoxX 3 роки тому
Hey, you kind of ... saved my life, buddy ! This vid' helped me a lot for my school project where i had to explain how BLE works. The best part is that i had no interest for my project but with your video i kinda have now.
@crosscomm1
@crosscomm1 3 роки тому
So happy to hear that we could help!
@devinheadrick4510
@devinheadrick4510 4 роки тому
Thank you for the upload!
@crosscomm1
@crosscomm1 3 роки тому
Our pleasure!
@oyacanl3997
@oyacanl3997 2 роки тому
Thank you very much, this was very helpful!
@RaabStephan
@RaabStephan 4 роки тому
I wrote something quite similar in Java. I have everything else pretty much the same, I had written Scan and gattCallback methods in a similar fashion. Unfortunately the scanCallback doesn't seem to trigger. So I've been looking for working examples online, so far to no avail
@nishithpandya2629
@nishithpandya2629 Рік тому
awesome instructor and great work helps a lot for developer community
@dr4gon743
@dr4gon743 3 роки тому
Lovely conceptual video. Amazingly elucidated.
@crosscomm1
@crosscomm1 3 роки тому
Thank you! And thanks for watching!
@sofianeabdelaziz9031
@sofianeabdelaziz9031 Рік тому
thank you so much !
@chriskosik663
@chriskosik663 3 роки тому
Nice talk. Clear explanation.
@crosscomm1
@crosscomm1 3 роки тому
Glad you think so! Thanks for watching!
@pouyatavakoli4958
@pouyatavakoli4958 4 роки тому
Thanks for the tutorial. It helped clear some stuff. Some quick questions: 1. what does expandUuid() do in your gattCallback object/class? 2. If all I'm doing is reading from the characteristic would I essentially just have your code that you have for OnCharacteristicChanged in OnCharacteristicRead? For example in my OnCharacteristicRead function I would have a line that just has "val readData= characteristic!!.value[0].toInt()?
@CoryRoy
@CoryRoy 3 роки тому
I think the expandUuid() does this: private fun expandUuid(i: Int): UUID { return UUID.fromString("0000${i.toString(16)}-0000-1000-8000-00805f9b34fb") }
@LuisVazquez-kj1ym
@LuisVazquez-kj1ym 3 роки тому
Hello thanks can i make the same in arduino with hm 10 ble module?
@the_nomadic_ajith
@the_nomadic_ajith 2 роки тому
Excellent presentation. Everything explained concisely and to the point. But please increase the audio volume. I had to try out many earphones and speakers to watch this video.
@the_nomadic_ajith
@the_nomadic_ajith 2 роки тому
And also please bring out more videos like this if possible. It would be interesting.
@gamerschannel4436
@gamerschannel4436 4 роки тому
Android dfu ? I want to understand that
@samdressler4981
@samdressler4981 3 роки тому
I am and creating an application to connect to an Arduino Nano BLE, is there a way for me to connect to it directly using the MAC address or manufacturer ID?
@talatkuyuk6556
@talatkuyuk6556 2 роки тому
Why do you need it? You can set the BLE service with an UUID in Arduino Nano BLE, then you can target this UUID while scanning.
@joaoramos8237
@joaoramos8237 3 роки тому
Does anyone know what's the library used for the runWithPermissions extension?
@jashgopani32
@jashgopani32 3 роки тому
You can find the library here github.com/QuickPermissions/QuickPermissions-Kotlin
@motocare7535
@motocare7535 3 роки тому
I beleive it's the one called QuickPermissions github.com/QuickPermissions/QuickPermissions-Kotlin
@marcelocampossilva7024
@marcelocampossilva7024 2 роки тому
Thank you so much for this presentation! It cleared a lot of questions I had. I am newbie for Android Kotlin and I am coming from embedded world (8bit microcontrollers). Would you be able to share the code of this presentation somehow? Github maybe?
@Muddassir_Ahmed
@Muddassir_Ahmed 4 роки тому
slides or github link?
@vallettagrandharbour
@vallettagrandharbour 3 роки тому
www.crosscomm.com/blog/post/Bluetooth-Low-Energy-Android
@epiendless1128
@epiendless1128 2 роки тому
Hmm, Android Studio doesn't seem to be able to find Quickpermissions, despite setting up both build files as instructed. That's turning this tutorial into a bit of a dead end.
Master BLE Basics in Just 10 Minutes: The Ultimate Guide!
9:15
Novel Bits
Переглядів 86 тис.
Introduction to Bluetooth Low Energy
1:28:41
Nordic Semiconductor
Переглядів 38 тис.
GADGETS VS HACKS || Random Useful Tools For your child #hacks #gadgets
00:35
Первая поломка Scirocco! Балацко попал на мотор.
1:13:12
Xamarin BLE App for latest Android releases (12 and higher)
38:51
MoThunderz
Переглядів 8 тис.
Building a scalable, modularized, testable app from scratch
21:31
Android Developers
Переглядів 150 тис.
Big Tech AI Is A Lie
16:56
Tina Huang
Переглядів 31 тис.
Every Programming Language Ever Explained in 15 Minutes
15:29
Flash Bytes
Переглядів 210 тис.
How ChatGPT Built My App in Minutes 🤯
8:28
Website Learners
Переглядів 1,7 млн
Reverse Engineering Bluetooth Low Energy (BLE) Devices
59:52
Elektor TV
Переглядів 3 тис.
Most overpowered way to build mobile apps?
8:33
Beyond Fireship
Переглядів 670 тис.