Bluenet  5.7.0
Bluenet, firmware for nRF52 smart home devices
Loading...
Searching...
No Matches
cs_UicrPacket.h
Go to the documentation of this file.
1/*
2 * Author: Crownstone Team
3 * Copyright: Crownstone (https://crownstone.rocks)
4 * Date: Feb 21, 2022
5 * License: LGPLv3+, Apache License 2.0, and/or MIT (triple-licensed)
6 */
7
8#pragma once
9
10#ifdef __cplusplus
11extern "C" {
12#endif
13
14#include <stdint.h>
15
20typedef struct __attribute__((packed)) {
21 uint32_t board;
22
23 union __attribute__((packed)) {
24 struct __attribute__((packed)) {
25 uint8_t productType;
26 uint8_t region;
28 uint8_t reserved;
29 } fields;
30 uint32_t asInt;
31 } productRegionFamily;
32
33 union __attribute__((packed)) {
34 struct __attribute__((packed)) {
35 uint8_t patch;
36 uint8_t minor;
37 uint8_t major;
38 uint8_t reserved;
39 } fields;
40 uint32_t asInt;
41 } majorMinorPatch;
42
43 union __attribute__((packed)) {
44 struct __attribute__((packed)) {
45 uint8_t housing;
46 uint8_t week; // week number
47 uint8_t year; // last 2 digits of the year
48 uint8_t reserved;
49 } fields;
50 uint32_t asInt;
51 } productionDateHousing;
53
54#ifdef __cplusplus
55}
56#endif
Struct with all the Crownstone fields in UICR.
Definition: cs_UicrPacket.h:20
uint8_t productFamily
Definition: cs_UicrPacket.h:27
uint8_t major
Definition: cs_UicrPacket.h:37
uint8_t reserved
Definition: cs_UicrPacket.h:28
uint32_t board
Definition: cs_UicrPacket.h:21
uint8_t region
Definition: cs_UicrPacket.h:26
uint8_t productType
Definition: cs_UicrPacket.h:25
uint8_t housing
Definition: cs_UicrPacket.h:45
uint8_t patch
Definition: cs_UicrPacket.h:35
uint8_t year
Definition: cs_UicrPacket.h:47
uint32_t asInt
Definition: cs_UicrPacket.h:30
uint8_t week
Definition: cs_UicrPacket.h:46
uint8_t minor
Definition: cs_UicrPacket.h:36