# BLE GAP
This is a school project done with the Make With Ada challenge
https://www.hackster.io/contests/adacore2
## Material
BBC Micro:bit https://microbit.org/.
The nrf Connect application to decompose ble packets.
### Documentation
https://www.bluetooth.com/specifications/bluetooth-core-specification/
## Goal
It was initialy done in order to add a Bluetooth Low Energy stack to
Ada_Driver_Library, unfortunately, we could not make the radio work in
reception mode (Special thanks to Fabien Chouteau who tried to help us).
The main will make a simple BLE advertiser with a name «Ada BLE».
## Logo
The logo is made from the same principle as the Bluetooth logo, with the runic letters for A, D and A.
## Project
We have two submodules that work as layers on the existing BLE module.
### Bluetooth_Low_Energy.Advertising
Allows to make BLE_Packet with the correct payload format specified in the
Bluetooth core specification Vol 3 Part C.
### Bluetooth_Low_Energy.Headers
Allows to make BLE_PDU_Headers with the correct format specified in the
Bluetooth core documentation Vol 6 Part B.
## Cheating
The advertiser module is actually a ripoff off the BLE_Beacon in the
Ada_Driver_Library examples.
## Notes
### Difficulties
- As said in the goal, we couldn't make the radio work in reception mode (It
would stay in Ry_State meaning it would fail to receive a correct preamble:
https://infocenter.nordicsemi.com/pdf/nRF51_RM_v3.0.pdf part 17)
- BLE is a more complex protocol than expected
## Thanks
Thanks to our teachers :
- Raphaël Amiard who has taught us this language
- Eric Perlade who has taught us how to use contracts
- Jose Ruiz who has taught us to never make planes
Again thanks to Fabien Chouteau for his quick response when help was needed.
Comments
Please log in or sign up to comment.