130 likes | 149 Views
This project aims to design a generic API/Protocol Stack for Bluetooth devices to support seamless communication and M2MP functionality. It addresses issues such as device connectivity, broadcast reliability, information relay between Piconets, and the limitations of range and scalability.
E N D
M2MP over Bluetooth Project Members Tony Stamp Evan Teran Josh Zatulove Louie Gosselin
Agenda • Bluetooth Introduction • Apparent Problems/Issues • Design Overview • Conclusion
Bluetooth • Bluetooth is based on a master/slave model where the master controls data communication among the slaves. • The master uses TDM to run the communication between and for the slaves. • There is a maximum of 7 active slaves in one Bluetooth network.
Bluetooth Continued • If at any time the master leaves the Bluetooth network, the entire group of devices will drop connection, and must re-instantiate a new network • The network that Bluetooth devices form is known as a Piconet, and a grouping of these Piconets are known as Scatternets.
BT - Piconets • Piconets are logical groupings of 1-7 slaves and one master. They operate using master assigned addresses. • These Piconets can operate in parallel without interference near other Piconets Piconet2 Master N1 Piconet1 N2
BT - Scatternets • When two Piconets communicate and combine they form a scatternet. To use them some sort of communication protocol must exist that supports them. Common Shared Slave
Problems To Overcome • How do we deal with Devices entering and leaving our area? • Over 7 Devices? • How do we broadcast and instantiate reliability • How do we relay information between Piconets (a Scatternet) • Are their limitations to how far we can go?
Design & Problem Solutions • The overall goal and mission statement is to produce an extremely generic API/Protocol Stack that allows all applications to run seamlessly on the Bluetooth network, instead of tying it directly to an application type such as chat.
Design & Problem Solutions • If a master leaves a Piconet there must be a decision to “elect” a new master and the low level Bluetooth network must re-establish without the application realizing the issue. • Information must be available to the network describing number of slaves and Scatternet to allow for the joining and departing of slaves
Design & Problem Solutions • We are requiring that our protocol provides a reliable and efficient broadcast method.
Design & Problem Solutions • To connect between multiple Piconets and form a Scatternet, slaves alone must have the capability of existing in two or more Piconets. These slaves act as relays for broadcast messages on the previous Piconet. • To allow this group-id’s are to be used, to define where delivery is to occur.
Design & Problem Solutions • With the ability to span many Piconets together to form a huge scatternet, how far can we allow them to go. It is concieveable that a Piconet some large arbitrary number N Piconets away may be the same group as the first. Should we limit this with a hop count? To prevent some form of infinite broadcasting?
Conclusion • Generally a great deal of support exists in the current stack of the Bluetooth devices. We need to design a broadcast and relay method to support expansion and M2MP functionality.