Low-Power Bluetooth Development Technology Overview - Basic Concepts and Architecture

1, terminology

People working on low-power Bluetooth use their own terminology to describe some technical features and specifications. Here are a few related terms:

Adaptive Frequency Hopping (AFH): A technique that uses a subset of frequencies to prevent the device from using other frequencies (such as Wi-Fi access points).

Architecture: A low-power Bluetooth design.

Band: See radio band.

Frequency hopping: Multiple frequency communications between two devices. Only one frequency is used at a time, and each frequency is used sequentially in a determined order.

Layer: A part of a system that implements a specific function, such as the physical layer responsible for radio operations. Each layer in the system is based on the upper or lower layer abstraction. The link layer does not need to know all the details about the radio function; the Logical Link Control Layer and Adaptation Layer (L2CAP) do not need to know all the details about how the link layer works. This abstract concept is critical to managing complex systems.

Master: A complex device in a piconet that coordinates operations with other devices.

Piconet: The abbreviation of the words pico and network, which means a very small network. A piconet consists of a single master device and one or more slave devices. The device is responsible for coordinating all the devices in the piconet. Other slave device operations.

Radio band: A radio wave is divided by frequency or wavelength. Different radio waves have different rules and usage methods.

Slave: A simple device that works with a master device.

Wi-Fi: A complementary wireless technology designed for high transmission rates for Internet access to complex devices such as computers.

2, asymmetric design

All low-power Bluetooth architectures are designed to be asymmetric, with the goal of making less energy-intensive devices less burdensome.

For the personal understanding of "Definitive Guide to Low-Power Bluetooth Development", the following low-power Bluetooth system tomogram is drawn.

3, the client - server architecture

With a pure client-server architecture, the server is only used as a data store and does not care who the client is. Clients can link directly to the server or can connect via the Internet gateway from the other side of the globe. The client-server gateway mode can also be used to support Internet security from the client to the gateway. The gateway can perform operations such as access control, firewall, and client authorization, and then grant the client access outside the gateway.

The main advantage of the client-server architecture is that the client and the server are divided. When different parts of the system are located on different devices, this division is essential. I love that part of it as a server and the other part as On the client side, the relationship between the two in the system is determined.

4. Service-oriented architecture

The client-side further abstraction on the server architecture is a server-oriented paradigm. This is a model that organizes the information in the server into services. The service ikeyi is discovered, interacted, or used as known semantics, which means that the service has a definite behavior that always produces the same result when given the same conditions.

This paradigm is the foundation of the most successful Internet systems, such as SOAP, REST, COBRA, RPC, Web services, and more.

(1), formal contract

A service is considered a service. It is because it provides a formal description of the public function and how it works. One benefit of a formal contract is that an instance of a service is easily replaced by an instance of another service. This can happen as long as the instances of the two services have the same functionality and behavior. In low power Bluetooth. These official fishing tackles are among the service specifications. And for the Bluetooth SIG. These specifications also have corresponding test specifications. To ensure the effectiveness of the implementation of the behavior.

(2), loose coupling

In object-oriented software, a single system component is an independent object that is designed to be a boundary effect. The interactions that occur between components can be clearly defined and tested. Minimize dependencies so that the implementation of the modified service does not introduce unexpected boundary effects. Thereby reducing the risk.

(3), abstraction

Service abstraction is a very important design principle, and failure to violate this principle can have serious consequences. If you don't use abstraction, let the client know all the implementation details of the service. Then the way the client uses the service will seriously restrict the evolution of the service.

(4) Reusability

The concept of reusability has been the design goal expected by object-oriented methods for many years. However, true reusability is an ability to adapt a service to many different applications. If you don't think seriously, the service you design can only do one kind of work. In a good design, the service can be independent of the specific implementation process. This means that the service can be quickly and easily reused in other applications. The Bluetooth Technology Alliance has set up a working group to deal with this Yao war. The only work of the working group is to find common functions and abstract their requirements for effective reuse.

(5), no state

In order to allow many clients to support service extensions. The server cannot save state data for any client. The server may be able to define a service to remember all the information that the client has told them. It is not necessary for the client to repeat this information on subsequent requests. But the same problem with this method is that this information takes up a lot of memory. It also relies on shared state information that is synchronized between the client and the server. This will cause the server to rely entirely on the correct operation of the client, and this assumption is undoubtedly untenable.

Therefore, the status information is stored on the server. But they are all server state, not client state. This means that regardless of the stateless design goal, all interactions between the client and the server are removed.

(6), combinability

   This goal is to encourage servers to be combined with each other.

(7), autonomy

In the case of autonomy, tasks can be performed separately, without having to worry about what is happening around them.

(8), discoverability

To use a service, you must be able to discover the service. Discoverability is usually achieved through a separate protocol that interacts with the service. Low-power Bluetooth uses a different approach: using the same protocol for discovery and service interaction, the protocol is called an "attribute protocol."

5, low-power Bluetooth architecture

It is divided into three basic parts: controllers, hosts, and applications.

Controller: Usually a physical device that can send and receive radio signals, and how to translate these signals into packets carrying information.

Host: Usually a software stack that manages how two or more devices communicate and how to use the radio to provide several different services.

Application: The software stack is used, which in turn is the controller to implement the user instance.

The low-power Bluetooth architecture diagram is as follows:

There are both physical and link layers in the controller, as well as the direct test mode and the lower half of the Host Controller Interface (HCI) layer. There are three protocols included in the host: Logical Link Control and Adaptation Protocol (L2CAP) Attribute Protocol and Security Manager Protocol, including Common Attribute Specification (GATT), Universal Access Specification (GAP) and mode (MODE).

(1), controller:

The controller is connected to the outside through an antenna and connected to the host through a host control interface (HCI).

The physical layer in the controller: a 2.4G radio with outputs 0 and 1.

Direct test mode in the controller: The direct test mode allows the tester to have the controller's physical layer send a series of data packets and receive a series of data packets. The direct test mode is not subjected to energy testing and can be used to perform linear tests. And calibrating the radio.

Link layer in the controller: It is the most complex part of the low-power Bluetooth architecture, responsible for broadcasting, scanning, establishing and maintaining links, and ensuring that packets are organized in the right way. There are two types of channels at the link layer, a broadcast channel and a data channel.

The lower half of the host control interface: Provides a standard interface to communicate with the controller. More than 60% of Bluetooth controllers can use the HCI interface, which allows the host to send commands and data packets to the controller. The physical interfaces that have been defined are USB, SDIO, and variants of the two UARTs.

(2) Host:

The host does a lot of things, and the host builds the upper part of the host controller interface.

Logical link layer and adaptation protocol in the host: L2CAP is the multiplex layer of Bluetooth low energy. Two basic concepts, L2CAP channel and L2CAP signaling, are defined. The channel is a two-way data channel, and none of the channels are independent. In low-power Bluetooth, only fixed channels are used, one for the signaling channel, one for the security manager, and one for the attribute protocol.

Security management protocol in the host: defines a simple pairing and key distribution protocol. Pairing is a process of obtaining trust from the other party. The two devices can be enjoyed when they are reconnected at a certain moment in the future. The previously distributed keys are encrypted to quickly authenticate each other's identities.

Attribute Protocol in Host: Defines a set of rules for accessing data on the peer device.

Common attribute specification in the host: defines the type of the attribute and how to use it.

Generic Access Specification in Hosts: Defines how devices discover, link, and provide useful information to users. It also defines how long-lasting relationships between devices—binding.

(3, application layer:

The above types are defined: characteristics (characterusTIc), services, and profiles.

Characteristics in the application layer: A small block of data in a known format, represented by a Universally Unique Identifier (UUID), which is designed to be reusable, is not designed to behave, and is characterized as a computer readable format. .

Services in the application layer: A service is a human-readable set of features and their associated behavioral specifications that define only the relevant characteristics and behaviors on the server, without defining the behavior of the client. There are two types of services, primary and secondary, whether a service is primary or secondary, depending on the definition of the service, and the primary service characterizes what a given device does primarily. It is through these services that users understand what the device does. Secondary services are those that assist with primary or other secondary services.

Specification in the application layer: It is the final expression of the use case or application. A specification is a description of one or more devices. Each device provides one or more services. The specification describes how to discover and link devices so that each device determines the extended structure. The specification also describes the behavior of the client. Discovering a service-and-service feature, a relationship between a specification and a service is a many-to-many mapping.

Siemens High Voltage Dc Converter Transformer

Data Center Switchgear,Lv Switchgear Components,Medium Voltage Switchgear Products,Multi-Type Switchgears

Shandong Shunkai electrical equipment co., LTD. , https://www.chinasdsk.com

Posted on