Bluenet  5.7.0
Bluenet, firmware for nRF52 smart home devices
Loading...
Searching...
No Matches
cs_PacketsInternal.h File Reference
Include dependency graph for cs_PacketsInternal.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  cs_data_t
 Packets (structs) that are used internally in the firmware, and can be changed freely. More...
 
struct  cs_const_data_t
 Variable length data encapsulation in terms of length and pointer to data. More...
 
struct  cs_result_t
 
struct  cs_async_result_t
 
struct  device_address_t
 
struct  scanned_device_t
 Scanned device. More...
 
struct  internal_multi_switch_item_cmd_t
 A single multi switch command. More...
 
struct  internal_multi_switch_item_t
 A single multi switch packet, with target id. More...
 
struct  control_command_packet_t
 
struct  mesh_control_command_packet_t
 Mesh control command packet. More...
 
struct  cs_mesh_msg_t
 Struct to communicate a mesh message. More...
 
struct  state_external_stone_t
 Struct to communicate received state of other stones. More...
 
struct  ble_connected_t
 
struct  adv_background_t
 Unparsed background advertisement. More...
 
struct  adv_background_parsed_t
 Parsed background advertisement. More...
 
struct  adv_background_parsed_v1_t
 
struct  profile_location_t
 
struct  internal_register_tracked_device_packet_t
 
struct  internal_tracked_device_heartbeat_packet_t
 
struct  adc_channel_config_t
 Struct to configure an ADC channel. More...
 
struct  adc_config_t
 Struct to configure the ADC. More...
 
struct  adc_channel_config_result_t
 Result struct after configuring an ADC channel. More...
 
struct  adc_buffer_t
 Struct communicated from the ADC class when it's done sampling a buffer. More...
 
struct  microapp_advertise_request_t
 
struct  microapp_upload_internal_t
 
struct  microapp_message_internal_t
 
struct  mesh_topo_mac_result_t
 
struct  cs_twi_init_t
 
struct  cs_twi_write_t
 
struct  cs_twi_read_t
 
struct  cs_gpio_init_t
 
struct  cs_gpio_write_t
 
struct  cs_gpio_read_t
 
struct  cs_gpio_update_t
 

Macros

#define CS_ADC_REF_PIN_NOT_AVAILABLE   255
 
#define CS_ADC_PIN_VDD   100
 

Typedefs

typedef internal_register_tracked_device_packet_t internal_update_tracked_device_packet_t
 

Enumerations

enum  CS_ADDRESS_TYPE {
  CS_ADDRESS_TYPE_PUBLIC = 0 , CS_ADDRESS_TYPE_RANDOM_STATIC = 1 , CS_ADDRESS_TYPE_RANDOM_PRIVATE_RESOLVABLE = 2 , CS_ADDRESS_TYPE_RANDOM_PRIVATE_NON_RESOLVABLE = 3 ,
  CS_ADDRESS_TYPE_ANONYMOUS = 0x7F
}
 Copy of BLE_GAP_ADDR_TYPES. More...
 
enum  cs_mesh_msg_reliability : uint8_t {
  CS_MESH_RELIABILITY_INVALID = 0 , CS_MESH_RELIABILITY_LOWEST = 1 , CS_MESH_RELIABILITY_LOW = 3 , CS_MESH_RELIABILITY_MEDIUM = 5 ,
  CS_MESH_RELIABILITY_HIGH = 10
}
 How reliable a mesh message should be. More...
 
enum  cs_mesh_msg_urgency { CS_MESH_URGENCY_LOW , CS_MESH_URGENCY_HIGH }
 How urgent a message is. More...
 
enum class  PresenceMutation : uint8_t {
  NothingChanged , Online , Offline , LastUserExitSphere ,
  FirstUserEnterSphere , OccupiedRoomsMaskChanged
}
 

Functions

bool cs_multi_switch_item_is_valid (internal_multi_switch_item_t *item, size16_t size)
 

Macro Definition Documentation

◆ CS_ADC_PIN_VDD

#define CS_ADC_PIN_VDD   100

◆ CS_ADC_REF_PIN_NOT_AVAILABLE

#define CS_ADC_REF_PIN_NOT_AVAILABLE   255

Typedef Documentation

◆ internal_update_tracked_device_packet_t

Enumeration Type Documentation

◆ CS_ADDRESS_TYPE

Copy of BLE_GAP_ADDR_TYPES.

More details, see: https://devzone.nordicsemi.com/f/nordic-q-a/27012/how-to-distinguish-between-random-and-public-gap-addresses https://devzone.nordicsemi.com/f/nordic-q-a/2084/gap-address-types

Enumerator
CS_ADDRESS_TYPE_PUBLIC 
CS_ADDRESS_TYPE_RANDOM_STATIC 
CS_ADDRESS_TYPE_RANDOM_PRIVATE_RESOLVABLE 
CS_ADDRESS_TYPE_RANDOM_PRIVATE_NON_RESOLVABLE 
CS_ADDRESS_TYPE_ANONYMOUS 

◆ cs_mesh_msg_reliability

enum cs_mesh_msg_reliability : uint8_t

How reliable a mesh message should be.

For now, the associated number is the number of times the message gets sent.

The highest number 10 = 0b1010, hence only four bits are used.

Enumerator
CS_MESH_RELIABILITY_INVALID 
CS_MESH_RELIABILITY_LOWEST 
CS_MESH_RELIABILITY_LOW 
CS_MESH_RELIABILITY_MEDIUM 
CS_MESH_RELIABILITY_HIGH 

◆ cs_mesh_msg_urgency

How urgent a message is.

Lower urgency means that it's okay if the message is not sent immediately.

Enumerator
CS_MESH_URGENCY_LOW 
CS_MESH_URGENCY_HIGH 

◆ PresenceMutation

enum class PresenceMutation : uint8_t
strong
Enumerator
NothingChanged 
Online 
Offline 
LastUserExitSphere 
FirstUserEnterSphere 
OccupiedRoomsMaskChanged 

Function Documentation

◆ cs_multi_switch_item_is_valid()

bool cs_multi_switch_item_is_valid ( internal_multi_switch_item_t item,
size16_t  size 
)
inline