Skip to content

Commit

Permalink
serial streaming of vitals added
Browse files Browse the repository at this point in the history
  • Loading branch information
MishalJasmine committed Nov 5, 2024
1 parent b2bb34b commit d2ddc54
Show file tree
Hide file tree
Showing 3 changed files with 27 additions and 34 deletions.
51 changes: 24 additions & 27 deletions app/src/data_module.c
Original file line number Diff line number Diff line change
Expand Up @@ -127,12 +127,19 @@ float firCoeffs[NUM_TAPS] = {0.990, 0.990, 0.990, 0.990, 0.990, 0.990, 0.990, 0.
arm_fir_instance_f32 sFIR;
float firState[NUM_TAPS + BLOCK_SIZE - 1];

int16_t spo2_serial;
int16_t hr_serial;
int16_t rr_serial;
extern int16_t temp_serial;

void send_data_ov3_format()
{
uint8_t pkt_pos_counter = 0;
struct hpi_ecg_bioz_sensor_data_t ecg_bioz_sensor_sample;
struct hpi_ppg_sensor_data_t ppg_sensor_sample;
struct hpi_temp_sensor_data_t temp_sensor_sample;

//struct hpi_ecg_bioz_sensor_data_t ecg_bioz_sensor_sample;
//struct hpi_ppg_sensor_data_t ppg_sensor_sample;
//struct hpi_temp_sensor_data_t temp_sensor_sample;

for (int i = 0; i < HPI_OV3_DATA_ECG_LEN; i++)
{
hpi_ov3_data[pkt_pos_counter++] = (uint8_t)ecg_serial_streaming[i];
Expand All @@ -145,32 +152,17 @@ void send_data_ov3_format()
hpi_ov3_data[pkt_pos_counter++] = (uint8_t)(resp_serial_streaming[i] >> 8);
}

/*for (int i=0;i<HPI_OV3_DATA_LEN;i++)
{
printk("Packet %d value %d\n",i,hpi_ov3_data[i]);
}*/

// hpi_ov3_data[pkt_pos_counter++] = (uint8_t)1;

for (int i = 0; i < HPI_OV3_DATA_RED_LEN; i++)
{
hpi_ov3_data[pkt_pos_counter++] = (uint8_t)ppg_serial_streaming[i];
hpi_ov3_data[pkt_pos_counter++] = (uint8_t)(ppg_serial_streaming[i] >> 8);
}

/*for (int i = 0; i < HPI_OV3_DATA_IR_LEN; i++)
{
hpi_ov3_data[pkt_pos_counter++] = (uint8_t)raw_ir[i];
hpi_ov3_data[pkt_pos_counter++] = (uint8_t)(raw_ir[i] >> 8);
}*/

hpi_ov3_data[pkt_pos_counter++] = (uint8_t)temp_sensor_sample.temp;
hpi_ov3_data[pkt_pos_counter++] = (uint8_t)(temp_sensor_sample.temp >> 8);
hpi_ov3_data[pkt_pos_counter++] = (uint8_t)(ppg_sensor_sample.spo2);
hpi_ov3_data[pkt_pos_counter++] = (uint8_t)(ecg_bioz_sensor_sample.hr);
hpi_ov3_data[pkt_pos_counter++] = (uint8_t)(ecg_bioz_sensor_sample.rr);

// LOG_INF("Sending Data %d", pkt_pos_counter);
hpi_ov3_data[pkt_pos_counter++] = (uint8_t)temp_serial;
hpi_ov3_data[pkt_pos_counter++] = (uint8_t)(temp_serial >> 8);
hpi_ov3_data[pkt_pos_counter++] = spo2_serial;
hpi_ov3_data[pkt_pos_counter++] = hr_serial;
hpi_ov3_data[pkt_pos_counter++] = rr_serial;

if (settings_send_usb_enabled)
{
Expand Down Expand Up @@ -451,7 +443,6 @@ void data_thread(void)
struct hpi_ecg_bioz_sensor_data_t ecg_bioz_sensor_sample;
struct hpi_ppg_sensor_data_t ppg_sensor_sample;


// record_init_session_log();

int m_temp_sample_counter = 0;
Expand Down Expand Up @@ -525,8 +516,8 @@ void data_thread(void)
resp_process_sample(resp_i16_buf, resp_i16_filt_out);
resp_algo_process(resp_i16_filt_out, &globalRespirationRate);

ecg_bioz_sensor_sample.hr = ecg_bioz_sensor_sample.hr;
ecg_bioz_sensor_sample.rr = globalRespirationRate;
rr_serial = globalRespirationRate;


// #ifdef CONFIG_BT
if (settings_send_ble_enabled)
Expand Down Expand Up @@ -564,6 +555,7 @@ void data_thread(void)
if (settings_send_usb_enabled)
{
buffer_ppg_data_for_serial(ppg_sensor_sample.ppg_red_samples, PPG_POINTS_PER_SAMPLE);

// buffer_bioz_data_for_serial(ecg_bioz_sensor_sample.bioz_samples, ecg_bioz_sensor_sample.bioz_num_samples);
}

Expand Down Expand Up @@ -607,8 +599,12 @@ void data_thread(void)
#endif
// #ifdef CONFIG_BT
ble_spo2_notify(m_spo2);
if (settings_send_usb_enabled)
{
spo2_serial = m_spo2;
}
// #endif
ppg_sensor_sample.spo2 = m_spo2;


}

Expand All @@ -617,6 +613,7 @@ void data_thread(void)
#ifdef CONFIG_HEALTHYPI_DISPLAY_ENABLED
hpi_scr_home_update_pr(m_hr);
#endif
hr_serial = m_hr;
}

for (int i = FreqS; i < BUFFER_SIZE; i++)
Expand Down
3 changes: 2 additions & 1 deletion app/src/hw_module.c
Original file line number Diff line number Diff line change
Expand Up @@ -71,6 +71,7 @@ const struct device *const afe4400_dev = DEVICE_DT_GET_ANY(ti_afe4400);
const struct device *const max30205_dev = DEVICE_DT_GET_ANY(maxim_max30205);
const struct device *fg_dev;
struct hpi_temp_sensor_data_t temp_sensor_sample;
int16_t temp_serial;

#ifdef CONFIG_HEALTHYPI_DISPLAY_ENABLED
static const struct pwm_dt_spec bl_led_pwm = PWM_DT_SPEC_GET(DT_ALIAS(bl_led_pwm));
Expand Down Expand Up @@ -379,7 +380,7 @@ void hw_thread(void)
global_batt_level = hpi_hw_read_batt();

global_temp_val = hpi_hw_read_temp();
temp_sensor_sample.temp = global_temp_val;
temp_serial = global_temp_val;

#ifdef CONFIG_DISPLAY
hpi_disp_update_batt_level(global_batt_level);
Expand Down
7 changes: 1 addition & 6 deletions app/src/sampling_module.h
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ struct hpi_ecg_bioz_sensor_data_t
int32_t bioz_samples[BIOZ_POINTS_PER_SAMPLE];
uint8_t ecg_num_samples;
uint8_t bioz_num_samples;
uint16_t rr;
uint16_t rtor;
uint16_t hr;
uint8_t ecg_lead_off;
uint8_t bioz_lead_off;
Expand All @@ -37,11 +37,6 @@ struct hpi_ppg_sensor_data_t
uint8_t spo2;
};

struct hpi_temp_sensor_data_t
{
int16_t temp;
};




Expand Down

0 comments on commit d2ddc54

Please sign in to comment.