DAY4 intern in Deutschland : Bluetooth
Today we have a chance to join presentation of Indian student’s project.
Propose of his project is to make the way to programming home automation device or service without coding, It just lay some physical object to specific area and device can understand how would you like to let it work.
Background of this project is Image processing.
From picture above, you can see webcam at the bottom: it capture the pattern of physical objects as shown at the left side picture. After detecting all pattern, so computer know that what we want to do, it will command device to do it.
This project is interesting because home automation is in fashion and most people do not know how to coding. So, this is the way to help people to programming without knowledge of coding. In my opinion, It can apply to educational toys, the more tangible, the more interesting for kids.
I searched for Bluetooth on the internet: Above all, Bluetooth module in Calliope acts as Peripheral. It can only invite and accept connect from central device (like hub such as Smartphone, Laptop). Technically Calliope can act as central and peripheral BUT now it does not have enough RAM to support Bluetooth stack.
A maximum of 4 devices may be paired with a Calliope simultaneously but only one paired device may connect to the Calliope at a time.
Calliope does task in concept of Event. One Event carries 8 bits(Base16) which provides 2 types information: Event ID(4 bits) and Event value(4 bits).
If we connect Calliope with a smartphone via application named nRF Connect, we can access to the event service of Calliope. Every event service has UUID(Unique identifier: Base16 32 bits) and it has its own Characteristics. We could use these characteristics as the variables to read or write to/from them for controlling Calliope.
Back to Event package they should be in Little-endian format ; The least significant byte (LSB) value, The other bytes follow in increasing order of significance. This is akin to right-to-left reading in hexadecimal order.
You can learn about Bluetooth service via this below link, do not confuse it is for Microbit, it is work in Calliope too.
Bluetooth Developer Studio - Profile Report
Bluetooth Developer Studio Level 3 Profile Report
Next, we want to communicate by using Bluetooth but only found the way to communicate with cellphone and it has its application(Only Microbit).
All things considered, The application can not do many things as we want. It can just upload code into Microbit and controlling little thing.