project:maerklin:system_control:ble:start
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
project:maerklin:system_control:ble:start [2025/08/30 11:41] – [0x2A26 (firmware revision)] Peter Siegmund | project:maerklin:system_control:ble:start [2025/09/03 09:15] (current) – [Concept] Peter Siegmund | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== Bluetooth Low Energy | + | ===== Bluetooth Low Energy ===== |
- | Bluetooth Low Energy | + | This project utilizes |
+ | |||
+ | The standard UUIDs referenced | ||
===== Concept ===== | ===== Concept ===== | ||
- | BLE hast a three layered | + | The BLE protocol is built on a three-layered |
- | ===== Services ===== | + | - **Service: |
+ | - **Characteristic: | ||
+ | - **Descriptor: | ||
- | I checked | + | Each peripheral (the device to be controlled) announces its presence |
- | Every device will have the **0x180A**, which will tell everyone what it will be. My other services will be the same across other devices, but the characteristics within will be different. | + | ===== Services ===== |
- | The following section will be a summary of the used services. | + | For custom, project-specific services, |
- | ==== 0x180A | + | ==== Device Information Service |
+ | This standard service is implemented by every device to provide basic information, | ||
- | The device information service for describing the device | + | ==== Light Service |
+ | This service groups all characteristics | ||
+ | **(Note: The associated characteristics are not yet fully defined.)** | ||
- | ==== 0xA000 | + | ==== Settings Service |
+ | This service provides general configuration options for the device. | ||
+ | **(Note: The associated characteristics are not yet fully defined.)** | ||
- | ==== 0xA999 (settings service) | + | ===== Characteristics ====== |
- | ===== Characteristics ===== | + | ==== Device Name (0x2A00) |
+ | Represents the name of the device as it should appear to the user. | ||
- | ==== 0x2A00 | + | ==== Firmware Revision |
+ | Returns the current firmware version string. This value is critical for performing Firmware-Over-the-Air (FOTA) updates. | ||
- | It depends on the device, as expected. | + | ==== Hardware Revision |
- | ==== 0x2A26 | + | Returns the hardware version of the custom PCB. This is relevant because updated board revisions may require different data handling or firmware versions. |
- | It reflects the firmware version, which is important for FOTA (firmware over the air) updates. | + | ==== Manufacturer |
- | ==== 0x2A27 | + | Returns the static string value " |
- | ==== 0x2A29 (manufacturer) ==== | ||
- | |||
- | The returned value will always be **mars3142**. | ||
===== Descriptors ===== | ===== Descriptors ===== | ||
+ | ==== User Description (0x2901) ==== | ||
+ | This descriptor provides a user-readable description for a characteristic. It allows a user interface (UI) to display a meaningful name for custom characteristics (e.g., // | ||
+ | |||
+ | ==== Presentation Format (0x2904) ===== | ||
+ | Defines the data type and format of a characteristic' | ||
+ | |||
+ | ==== Valid Range (0x2906) ==== | ||
+ | Defines a valid range (minimum and maximum) for a characteristic' |
project/maerklin/system_control/ble/start.1756554080.txt.gz · Last modified: by Peter Siegmund