BlueSync - BLE Time Sync for Zephyr
High-precision time synchronization for BLE Mesh networks
Loading...
Searching...
No Matches
bluesync_statistic_bsim.c File Reference
#include <zephyr/kernel.h>
#include "posix_native_task.h"
#include "bsim_args_runner.h"
#include <stdio.h>
#include <string.h>
#include "bluesync_statistic.h"
#include "../bluesync_bitfields.h"
#include <zephyr/logging/log.h>
#include "synced_time_logger.h"
Include dependency graph for bluesync_statistic_bsim.c:

Go to the source code of this file.

Data Structures

struct  node_stat
 
struct  bluesync_msg_client_statistic
 

Macros

#define SEPARATION_TOKEN   ";"
 

Functions

 LOG_MODULE_REGISTER (bluesync_statistic_bsim, CONFIG_BLUESYNC_LOG_LEVEL)
 
void bluesync_statistic_packet_status (struct bluesync_msg_client_statistic *packet_status)
 
void statistic_bluesync_status (bluesync_timestamps_t *elem_master, bluesync_timestamps_t *elem_slave, size_t size)
 Analyze and log synchronization statistics based on a series of timestamps.
 
static FILE * open_stat (char *filename, uint32_t device_number)
 
void bluesync_statistic_init ()
 Initialize the BlueSync statistics module.
 
void bluesync_statistic_deinit ()
 Deinitialize the BlueSync statistics module.
 
 NATIVE_TASK (bluesync_statistic_init, BOOT, 101)
 
 NATIVE_TASK (bluesync_statistic_deinit, ON_EXIT, 501)
 

Variables

static struct node_stat node
 

Macro Definition Documentation

◆ SEPARATION_TOKEN

#define SEPARATION_TOKEN   ";"

Definition at line 44 of file bluesync_statistic_bsim.c.

Function Documentation

◆ bluesync_statistic_deinit()

void bluesync_statistic_deinit ( )

Deinitialize the BlueSync statistics module.

This function cleans up and close files

Definition at line 128 of file bluesync_statistic_bsim.c.

◆ bluesync_statistic_init()

void bluesync_statistic_init ( )

Initialize the BlueSync statistics module.

This should be called once at system startup or before beginning a series of synchronization evaluations. It opens needed files.

Definition at line 114 of file bluesync_statistic_bsim.c.

◆ bluesync_statistic_packet_status()

void bluesync_statistic_packet_status ( struct bluesync_msg_client_statistic packet_status)

Definition at line 61 of file bluesync_statistic_bsim.c.

◆ LOG_MODULE_REGISTER()

LOG_MODULE_REGISTER ( bluesync_statistic_bsim  ,
CONFIG_BLUESYNC_LOG_LEVEL   
)

◆ NATIVE_TASK() [1/2]

NATIVE_TASK ( bluesync_statistic_deinit  ,
ON_EXIT  ,
501   
)

◆ NATIVE_TASK() [2/2]

NATIVE_TASK ( bluesync_statistic_init  ,
BOOT  ,
101   
)

◆ open_stat()

static FILE * open_stat ( char *  filename,
uint32_t  device_number 
)
static

Definition at line 96 of file bluesync_statistic_bsim.c.

◆ statistic_bluesync_status()

void statistic_bluesync_status ( bluesync_timestamps_t elem_master,
bluesync_timestamps_t elem_slave,
size_t  size 
)

Analyze and log synchronization statistics based on a series of timestamps.

This function stores master and slave timestamp pairs into a CSV file.

Parameters
elem_masterPointer to the array of master timestamps.
elem_slavePointer to the array of local timestamps captured by the slave.
sizeNumber of timestamp pairs to process.

Definition at line 75 of file bluesync_statistic_bsim.c.

Variable Documentation

◆ node

struct node_stat node
static

Definition at line 51 of file bluesync_statistic_bsim.c.