Defining a minimal BLE stack - A Bluetooth Low Energy implementation in Rust

Examensarbete för masterexamen

Please use this identifier to cite or link to this item: https://hdl.handle.net/20.500.12380/256040
Download file(s):
File Description SizeFormat 
256040.pdfFulltext1.95 MBAdobe PDFView/Open
Type: Examensarbete för masterexamen
Master Thesis
Title: Defining a minimal BLE stack - A Bluetooth Low Energy implementation in Rust
Authors: Lindskogen, Johan
Mäkelä, Francine
Abstract: Today, Internet of Things (IoT) has spread to many everyday situations. The smart devices constituting IoT can be everything from your smartwatch, to components of your car or nodes collecting environmental data in a building. It is not uncommon for these devices to be powered using limited sources, such as batteries. This means that they have to be conserved with their energy. One way for these devices to communicate is via Bluetooth Low Energy (BLE), a wireless protocol specifically designed to consume less energy than the classic Bluetooth protocol. In this master’s thesis, we aim to find the minimal BLE stack required for a device to advertise its existence and for it to enter a connection with another device and keep that connection alive. To check whether our definition holds we present a design and implementation of it in Tock, an operating system for embedded devices. As Tock is written in the programming language Rust, so is also our implementation. The evaluation of the implementation includes two parts. The first part is a validation of the behaviour of a device running our code. We perform different tests, each focusing on a particular behaviour that is required from the device. Next, we conduct performance tests to measure the reliability, power consumption and timing of the device. Our evaluation shows that the implementation fulfils the requirements, even though the performance tests reveal that it is not optimised. As the implementation is a mirror of the design, which in turn is a possible description of the definition of the minimal stack, we conclude that our definition states precisely what is required to fulfil the goal of “establish and keep a connection”.
Keywords: Data- och informationsvetenskap;Computer and Information Science
Issue Date: 2018
Publisher: Chalmers tekniska högskola / Institutionen för data- och informationsteknik (Chalmers)
Chalmers University of Technology / Department of Computer Science and Engineering (Chalmers)
URI: https://hdl.handle.net/20.500.12380/256040
Collection:Examensarbeten för masterexamen // Master Theses



Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.