-
Notifications
You must be signed in to change notification settings - Fork 9
TEAM DEVELOPMENT SETUP
Here are some tips for you guys went setting up your local development
Our app has a complex system between hardware and software divisions. so we have to choice whether an easer way to develop our own domain
still in working process
if you want to connect to BLE board, camera you has to use real device
- UI side
mobile simulator
- This is for local UI/UX development, you will be using custom Flutter Core_Mock architecture for doing it (without BLE and camera)
- Integration side
real mobile hardware
- This part you need to have BLE board has ours firmware install by the IoT team
- Flutter app is already pre-config BLE GATT profile to read custom BLE UUID here
Flutter application as an testing suite for IoT BLE is hard-complex to develop "within our develop resource and time"
I suggest using [LightBlue® — Bluetooth Low Energy] IOS | Android [Window,Mac] also avablie if your machine has BLE
We're using a custom BLE GATT profile which means the UUID will be hard to look at but you guys can base on our documentation here where we define our BLE GATT services, characteristics.
gatt_profile:
- BLE_SERVICE_THERMOMETER_UUID: "00000B00-5226-4AE0-8977-656FD3C42DA2"
When you get familiar with LightBlue, you will be able to know that every time the BLE board notify LightBlue will get it. But the format is kind of a mess so you have to **decode **it I suggest using a tool on the website http://www.unit-conversion.info/texttools/ascii/ to decode and see the value has been transfer over BLE protocol
BLE GATT:
BLE_SERVICE_THERMOMETER_UUID: "00000B00-5226-4AE0-8977-656FD3C42DA2"
data:
051 051 (ascii) => String: => 33 (ascii decode to text)
meaning: Data from THERMOMETER is 33
What I would do when i don't have sensor to connect to BLE Board
You will use BLE_SENSOR_EMULATOR in short it allows your machine (PC) talk to BLE Board (ESP32) over serial and send data over BLE GATT. BLE_SENSOR_EMULATOR are located here is a Python script with serial comunication
step to use
- Config your
machine PORT
in the Python script here - hit enter :>
- base on while loop it will call BLE Board to send each package, you could re-configure to your liking
=> if you still on LightBLue you will see the data been notify
sequenceDiagram
participant IoT
participant Mobile
rect rgb(100, 159, 100)
IoT->>Mobile:devlopemnt_enviorment
alt is_ble
Note over IoT,Mobile:real hardware mobile
else
Note over IoT,Mobile:mobile emulator for UI
end
end