Compare commits
5 Commits
STS_P2_L1X
...
STS_R1D
Author | SHA1 | Date |
---|---|---|
|
8fa710a678 | |
|
00fb0e1df3 | |
|
e408229c54 | |
|
66ee3a4ffc | |
|
3dcc507f3b |
|
@ -47,12 +47,12 @@ extern "C" {
|
||||||
/**
|
/**
|
||||||
* @brief Verbose level for all trace logs
|
* @brief Verbose level for all trace logs
|
||||||
*/
|
*/
|
||||||
#define VERBOSE_LEVEL VLEVEL_OFF
|
#define VERBOSE_LEVEL VLEVEL_M
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Enable trace logs
|
* @brief Enable trace logs
|
||||||
*/
|
*/
|
||||||
#define APP_LOG_ENABLED 0
|
#define APP_LOG_ENABLED 1
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Activate monitoring (probes) of some internal RF signals for debug purpose
|
* @brief Activate monitoring (probes) of some internal RF signals for debug purpose
|
||||||
|
@ -75,13 +75,13 @@ extern "C" {
|
||||||
* @brief Enable/Disable MCU Debugger pins (dbg serial wires)
|
* @brief Enable/Disable MCU Debugger pins (dbg serial wires)
|
||||||
* @note by HW serial wires are ON by default, need to put them OFF to save power
|
* @note by HW serial wires are ON by default, need to put them OFF to save power
|
||||||
*/
|
*/
|
||||||
#define DEBUGGER_ENABLED 0
|
#define DEBUGGER_ENABLED 1
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Disable Low Power mode
|
* @brief Disable Low Power mode
|
||||||
* @note 0: LowPowerMode enabled. MCU enters stop2 mode, 1: LowPowerMode disabled. MCU enters sleep mode only
|
* @note 0: LowPowerMode enabled. MCU enters stop2 mode, 1: LowPowerMode disabled. MCU enters sleep mode only
|
||||||
*/
|
*/
|
||||||
#define LOW_POWER_DISABLE 0
|
#define LOW_POWER_DISABLE 1
|
||||||
|
|
||||||
/* USER CODE BEGIN EC */
|
/* USER CODE BEGIN EC */
|
||||||
|
|
||||||
|
|
|
@ -112,7 +112,7 @@
|
||||||
#define YUNHORN_STS_AC_CODE_SIZE 20U
|
#define YUNHORN_STS_AC_CODE_SIZE 20U
|
||||||
|
|
||||||
#define STS_NVM_CFG_SIZE 32U
|
#define STS_NVM_CFG_SIZE 32U
|
||||||
#define STS_CFG_PCFG_SIZE 28U
|
#define STS_CFG_PCFG_SIZE 20U
|
||||||
#define STS_CFG_CMD_SIZE 30U
|
#define STS_CFG_CMD_SIZE 30U
|
||||||
#define STS_CFG_CMD_SHORT_LEN 8U
|
#define STS_CFG_CMD_SHORT_LEN 8U
|
||||||
#define STS_MODE_COLOR_CMD_LEN 5U
|
#define STS_MODE_COLOR_CMD_LEN 5U
|
||||||
|
|
|
@ -485,29 +485,55 @@ typedef struct
|
||||||
// 0 --- 10 11 12 -- 39 40 41 42 43 44-63
|
// 0 --- 10 11 12 -- 39 40 41 42 43 44-63
|
||||||
// LEN P RSS FALL_DETECTION AC_CODE
|
// LEN P RSS FALL_DETECTION AC_CODE
|
||||||
enum nvm_order {
|
enum nvm_order {
|
||||||
NVM_MTM1=0,
|
NVM_MTM1=0, // 0
|
||||||
NVM_MTM2,
|
NVM_MTM2, // 1
|
||||||
NVM_VER,
|
NVM_VER, // 2
|
||||||
NVM_HWV,
|
NVM_HWV, // 3
|
||||||
NVM_PERIODICITY,
|
NVM_PERIODICITY, // 4
|
||||||
NVM_UNIT,
|
NVM_UNIT, // 5
|
||||||
NVM_SAMPLING,
|
NVM_SAMPLING, // 6
|
||||||
NVM_S_UNIT,
|
NVM_S_UNIT, // 7
|
||||||
NVM_WORK_MODE,
|
NVM_WORK_MODE, // 8
|
||||||
NVM_SERVICE_MASK,
|
NVM_SERVICE_MASK, // 9
|
||||||
NVM_RESERVE01, //10
|
NVM_IOC_MASK, //10
|
||||||
NVM_LEN, //11, 32=0x20
|
NVM_LEN, //11, 32=0x20
|
||||||
NVM_CFG_START, //12, p[0] bytes for configs,
|
NVM_CFG_START=12, //12, p[0] bytes for configs,
|
||||||
//13, p[1]
|
//13, p[1]
|
||||||
//14, p[2]
|
//14, p[2]
|
||||||
// ...
|
//15, p[3]
|
||||||
//39, P[27]
|
//16, p[4]
|
||||||
NVM_FALL_DETECTION_ACC_THRESHOLD=40, //40
|
//17, p[5]
|
||||||
NVM_FALL_DETECTION_DEPTH_THRESHOLD, //41
|
//18, p[6]
|
||||||
NVM_FALL_DETECTION_RESERVE, //42
|
//19, p[7]
|
||||||
NVM_OCCUPANCY_OVERTIME_THRESHOLD, //43
|
//20, p[8]
|
||||||
NVM_AC_CODE_START=44 //STORED, NO UPLOAD
|
//21, p[9]
|
||||||
//63, 20 bytes for AC code
|
//22, p[10]
|
||||||
|
//23, p[11]
|
||||||
|
//24, p[12]
|
||||||
|
//25, p[13]
|
||||||
|
//26, p[14]
|
||||||
|
//27, p[15]
|
||||||
|
//28, p[16]
|
||||||
|
//29, p[17]
|
||||||
|
//30, p[18]
|
||||||
|
NVM_CFG_START_END=31, //31, p[19]
|
||||||
|
NVM_RESERVE02, //32
|
||||||
|
NVM_RESERVE03, //33
|
||||||
|
NVM_SENSOR_INSTALL_HEIGHT, //34
|
||||||
|
NVM_ALARM_PARAMETER05, //35
|
||||||
|
NVM_ALARM_MUTE_RESET_TIMER, //36
|
||||||
|
NVM_ALARM_LAMP_BAR_FLASHING_COLOR, //37
|
||||||
|
NVM_OCCUPANCY_OVERTIME_THRESHOLD, //38
|
||||||
|
|
||||||
|
NVM_MOTIONLESS_DURATION_THRESHOLD, //39
|
||||||
|
NVM_UNCONSCIOUS_LEVEL_THRESHOLD, //40
|
||||||
|
|
||||||
|
NVM_FALL_DETECTION_ACC_THRESHOLD, //41
|
||||||
|
NVM_FALL_DETECTION_DEPTH_THRESHOLD, //42
|
||||||
|
NVM_FALL_CONFIRM_THRESHOLD, //43
|
||||||
|
|
||||||
|
NVM_AC_CODE_START=44 //STORED, NO UPLOAD
|
||||||
|
//63, 20 bytes for AC code
|
||||||
};
|
};
|
||||||
|
|
||||||
typedef struct sts_cfg_nvm {
|
typedef struct sts_cfg_nvm {
|
||||||
|
@ -524,10 +550,22 @@ typedef struct sts_cfg_nvm {
|
||||||
uint8_t reseve01;
|
uint8_t reseve01;
|
||||||
uint8_t length; // length of following parameters except AC CODE(20bytes)
|
uint8_t length; // length of following parameters except AC CODE(20bytes)
|
||||||
uint8_t p[STS_CFG_PCFG_SIZE];
|
uint8_t p[STS_CFG_PCFG_SIZE];
|
||||||
uint8_t fall_detection_acc_threshold; // 0 - 9: 0:disable: 1-9 accelaration mg/s2
|
|
||||||
|
uint8_t reserve02;
|
||||||
|
uint8_t reserve03;
|
||||||
|
uint8_t sensor_install_height_in_10cm;
|
||||||
|
uint8_t alarm_parameter05;
|
||||||
|
uint8_t alarm_mute_reset_timer_in_10sec; //60(0x3C) sec alarm_mute_or_reset_expire_timer_in_sec
|
||||||
|
uint8_t alarm_lamp_bar_flashing_color; //Lamp Bar Flashing color define, 0x20, 2==STS_RED, 0 = STS_DARK, 0x23, 2=STS_RED, 3=STS_BLUE
|
||||||
|
uint8_t occupancy_overtime_threshold_in_10min; // 0 - 9: 0:disable, 1-9 occupy over time threshold * 10 min
|
||||||
|
|
||||||
|
uint8_t motionless_duration_threshold_in_min; // 10(0x0A) min (2 min.) motionless_duration_threshold_in_min
|
||||||
|
uint8_t unconscious_or_motionless_level_threshold; // 0 - 9 motion level *128
|
||||||
|
|
||||||
|
uint8_t fall_detection_acc_threshold; // 0 - 9: 0:disable: 1-9 accelaration mg/s2
|
||||||
uint8_t fall_detection_depth_threshold; // 0 - 9: 0:disable: 1-9 fall down depth * 10 cm
|
uint8_t fall_detection_depth_threshold; // 0 - 9: 0:disable: 1-9 fall down depth * 10 cm
|
||||||
uint8_t fall_detection_reserve;
|
uint8_t fall_confirm_threshold_in_10sec; // 0-60(0x3C) Sec, or 3*10(0x03) sec default falldown_confirm_threshold_in_10sec
|
||||||
uint8_t occupancy_overtime_threshold; // 0 - 9: 0:disable, 1-9 occupy over time threshold * 10 min
|
|
||||||
uint8_t ac[YUNHORN_STS_AC_CODE_SIZE]; // authorization code, 20 bytes MCU UUID coded
|
uint8_t ac[YUNHORN_STS_AC_CODE_SIZE]; // authorization code, 20 bytes MCU UUID coded
|
||||||
} sts_cfg_nvm_t;
|
} sts_cfg_nvm_t;
|
||||||
|
|
||||||
|
|
|
@ -77,7 +77,7 @@ void MX_DMA_Init(void)
|
||||||
HAL_NVIC_SetPriority(DMA1_Channel6_IRQn, 0, 0);
|
HAL_NVIC_SetPriority(DMA1_Channel6_IRQn, 0, 0);
|
||||||
HAL_NVIC_EnableIRQ(DMA1_Channel6_IRQn);
|
HAL_NVIC_EnableIRQ(DMA1_Channel6_IRQn);
|
||||||
#endif
|
#endif
|
||||||
#if 0
|
#if 1
|
||||||
/* DMA1_Channel7_IRQn interrupt configuration */
|
/* DMA1_Channel7_IRQn interrupt configuration */
|
||||||
HAL_NVIC_SetPriority(DMA1_Channel7_IRQn, 2, 0);
|
HAL_NVIC_SetPriority(DMA1_Channel7_IRQn, 2, 0);
|
||||||
HAL_NVIC_EnableIRQ(DMA1_Channel7_IRQn);
|
HAL_NVIC_EnableIRQ(DMA1_Channel7_IRQn);
|
||||||
|
|
|
@ -108,7 +108,7 @@ int main(void)
|
||||||
|
|
||||||
/* Initialize all configured peripherals */
|
/* Initialize all configured peripherals */
|
||||||
MX_GPIO_Init();
|
MX_GPIO_Init();
|
||||||
HAL_UART_DeInit(&huart2);
|
//HAL_UART_DeInit(&huart2);
|
||||||
MX_DMA_Init();
|
MX_DMA_Init();
|
||||||
MX_I2C2_Init();
|
MX_I2C2_Init();
|
||||||
#if 0
|
#if 0
|
||||||
|
|
|
@ -68,19 +68,19 @@ volatile sts_cfg_nvm_t sts_cfg_nvm = {
|
||||||
sts_mtmcode2,
|
sts_mtmcode2,
|
||||||
sts_version,
|
sts_version,
|
||||||
sts_hardware_ver,
|
sts_hardware_ver,
|
||||||
0x01, //Regular TxPeriodicity interval
|
0x01, //Regular TxPeriodicity interval
|
||||||
'M', //unit of Regular TxPeriodicity interval
|
'M', //Uplink data interval unit, for heart-beat uplink
|
||||||
0x3C, //Heart-beat interval or Sampling interval
|
0x3C, //Heart-beat interval or Sampling interval
|
||||||
'M', //unit of Heart-beat interval or Sampling interval
|
'M', //Sampling sensor interval unit, for real-time sensing of MEMS
|
||||||
0x04, // dual mode
|
0x04, // dual mode=4, uni_mode =5
|
||||||
0x00, // service mask
|
0x00, // sts service mask
|
||||||
0x00, // reserve01
|
0x00, //sts_ioc_mask
|
||||||
0x20, //32 bytes, below start of p[0]
|
0x20, //32 bytes, below start of p[0] 20 BYTES AND 12 BYTES FALL DOWN CFG
|
||||||
{ // *******************below 28 bytes
|
{ // below 20 bytes
|
||||||
0x08, //start_m [8]*0.1 meter =0.8
|
0x08, //start_m [8]*0.1 meter =0.8
|
||||||
0x19, //lenght_m 0x19=[25]*0.1=2.5f meter
|
0x19, //lenght_m 0x19=[25]*0.1=2.5f meter
|
||||||
0x0F, //threshold 0X0F=[15]*0.1=1.5f
|
0x0F, //threshold 0X0F=[15]*0.1=1.5f
|
||||||
0x28, //receiver gain 0x28 =[40]*0.01=0.40f max 99=0x63
|
0x28, //receiver gain 0x28 =[40]*0.01=0.40f max 99=0x63
|
||||||
0x04, //profile [4]=4
|
0x04, //profile [4]=4
|
||||||
0x0A, //rate tracking 0x0A=10= 10U
|
0x0A, //rate tracking 0x0A=10= 10U
|
||||||
0x41, //rate presence 0x41=65= 65U
|
0x41, //rate presence 0x41=65= 65U
|
||||||
|
@ -89,32 +89,32 @@ volatile sts_cfg_nvm_t sts_cfg_nvm = {
|
||||||
0x05, //inter frame deviation time const 0x05=[5]*0.1=0.5f
|
0x05, //inter frame deviation time const 0x05=[5]*0.1=0.5f
|
||||||
0x0A, //inter frame fast cutoff 0x0A=[10] = 10U
|
0x0A, //inter frame fast cutoff 0x0A=[10] = 10U
|
||||||
0x01, //inter frame slow cutoff,0x01=1[1]*0.01=0.01f
|
0x01, //inter frame slow cutoff,0x01=1[1]*0.01=0.01f
|
||||||
0x00, //intra frame time const [0]=0
|
0x00, ///intra frame time const [0]=0 Lower to reduce sensitivity, higher to increase sensitivity
|
||||||
0x00, //intra frame weight, 0x00=[0]*0.1=0.0F
|
0x0A, //intra frame weight, 0x00=[0]*0.1=0.0F 0x0A=10, 10*0.1=1 FOR FAST MOVEMENT TRACKING FALL DETECTION
|
||||||
0x05, //output time const 0x05=[5]*0.1=0.5
|
0x05, //output time const 0x05=[5]*0.1=0.5
|
||||||
0x02, //downsampling factor [2]=2
|
0x02, //downsampling factor [2]=2
|
||||||
0x03, //power saving mode ACTIVE [3] = 3U
|
0x03, //power saving mode ACTIVE [3] = 3U
|
||||||
0xFF, //reserve
|
0x00, //reserve --P[17]
|
||||||
0xFF, //reserve
|
0x00, //reserve --P[18]
|
||||||
0xFF, //reserve
|
0x00, //reserve --P[19]
|
||||||
0xFF, //reserve
|
}, // above 20 bytes
|
||||||
0xFF, //reserve
|
0x00, //reserve2
|
||||||
0xFF, //reserve
|
0x00, //reserve3
|
||||||
0xFF, //reserve
|
0x20, //sensor install height in 10 cm, default 32*10=320cm, 3.2meter
|
||||||
0xFF, //reserve
|
|
||||||
0xFF, //reserve
|
0x00, //reserve5 alarm_parameter05
|
||||||
0xFF, //reserve
|
0x06, //reserve6 alarm_mute_or_reset_expire_timer_in_10sec, 60 seconds
|
||||||
0xF, //reserve
|
0x23, //reserve7 alarm Lamp Bar Flashing color define, 0x20, 2==STS_RED, 0 = STS_DARK, 0x23, 2=STS_RED, 3=STS_BLUE
|
||||||
}, // ******************* above 28 bytes28 bytes
|
0x03, //reserve8 occupancy over time threshold 3*10 = 30 minutes
|
||||||
// ******************* below 4 bytes
|
|
||||||
|
0x09, //reserve8 motionless_duration_threshold_in_min+1, normal: 10 min(0x0A) Minutes (2 min.) 1-9== 2-10min
|
||||||
|
0x09, //unconscious threshold * 128, 0-9, 9*128=1280 motion level
|
||||||
|
|
||||||
0x01, //fall_detection_acc_threshold = *10 acceleration measure
|
0x01, //fall_detection_acc_threshold = *10 acceleration measure
|
||||||
0x03, //fall detection_depth_threshold *10cm
|
0x03, //fall detection_depth_threshold *10cm
|
||||||
0x00, //reserve
|
0x03, //falldown_confirm_threshold_in_10sec, 0x3=30 sec default
|
||||||
0x02, //occupancy over time threshold *10 minutes
|
// below 20 bytes for RFAC code
|
||||||
// ******************* ABOVE 4 bytes
|
{0x0,0x0,0x0,0x0,0x0, 0x0,0x0,0x0,0x0,0x0, 0x0,0x0,0x0,0x0,0x0, 0x0,0x0,0x0,0x0,0x0},
|
||||||
// below 20 bytes AC
|
|
||||||
{0x0,0x0,0x0,0x0,0x0, 0x0,0x0,0x0,0x0,0x0, 0x0,0x0,0x0,0x0,0x0, 0x0,0x0,0x0,0x0,0x0}
|
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
@ -1010,6 +1010,12 @@ static void OnJoinRequest(LmHandlerJoinParams_t *joinParams)
|
||||||
}
|
}
|
||||||
|
|
||||||
STS_LoRa_WAN_Joined = (uint8_t) joinParams->Mode;
|
STS_LoRa_WAN_Joined = (uint8_t) joinParams->Mode;
|
||||||
|
AppData.Port = 1;
|
||||||
|
AppData.BufferSize = 10;
|
||||||
|
UTIL_MEM_cpy_8((uint8_t*)AppData.Buffer, "YUNHORN168", 10);
|
||||||
|
LmHandlerParams.IsTxConfirmed = true;
|
||||||
|
LmHandlerErrorStatus_t status = LmHandlerSend(&AppData, LmHandlerParams.IsTxConfirmed, false);
|
||||||
|
if (status ==LORAMAC_HANDLER_SUCCESS ) LmHandlerParams.IsTxConfirmed = false;
|
||||||
|
|
||||||
OnYunhornSTSHeartBeatPeriodicityChanged(HeartBeatPeriodicity);
|
OnYunhornSTSHeartBeatPeriodicityChanged(HeartBeatPeriodicity);
|
||||||
OnTxPeriodicityChanged(TxPeriodicity);
|
OnTxPeriodicityChanged(TxPeriodicity);
|
||||||
|
@ -1023,7 +1029,7 @@ static void OnJoinRequest(LmHandlerJoinParams_t *joinParams)
|
||||||
APP_LOG(TS_OFF, VLEVEL_M, "###### U/L FRAME:JOIN | DR:%d | PWR:%d\r\n", joinParams->Datarate, joinParams->TxPower);
|
APP_LOG(TS_OFF, VLEVEL_M, "###### U/L FRAME:JOIN | DR:%d | PWR:%d\r\n", joinParams->Datarate, joinParams->TxPower);
|
||||||
}
|
}
|
||||||
//heart_beat_timer = 1;
|
//heart_beat_timer = 1;
|
||||||
SendTxData();
|
//SendTxData();
|
||||||
//UTIL_SEQ_SetTask((1 << CFG_SEQ_Task_LoRaSendOnTxTimerOrButtonEvent), CFG_SEQ_Prio_0);
|
//UTIL_SEQ_SetTask((1 << CFG_SEQ_Task_LoRaSendOnTxTimerOrButtonEvent), CFG_SEQ_Prio_0);
|
||||||
//STS_SENSOR_Upload_Message(LORAWAN_USER_HTBT_PORT, 12,"Yunhorn88STS");
|
//STS_SENSOR_Upload_Message(LORAWAN_USER_HTBT_PORT, 12,"Yunhorn88STS");
|
||||||
//STS_SENSOR_Upload_Message(LORAWAN_USER_HTBT_PORT, 12,"Yunhorn88STS");
|
//STS_SENSOR_Upload_Message(LORAWAN_USER_HTBT_PORT, 12,"Yunhorn88STS");
|
||||||
|
@ -1582,7 +1588,7 @@ void USER_APP_AUTO_RESPONDER_Parse(char *tlv_buf, size_t tlv_buf_size)
|
||||||
outbuf[i++] = (uint8_t) cfg_in_nvm[NVM_S_UNIT]; //Heart-beat or SAMPLING Periodicity unit
|
outbuf[i++] = (uint8_t) cfg_in_nvm[NVM_S_UNIT]; //Heart-beat or SAMPLING Periodicity unit
|
||||||
outbuf[i++] = (uint8_t) cfg_in_nvm[NVM_WORK_MODE]; // STS WORK MODE
|
outbuf[i++] = (uint8_t) cfg_in_nvm[NVM_WORK_MODE]; // STS WORK MODE
|
||||||
outbuf[i++] = (uint8_t) cfg_in_nvm[NVM_SERVICE_MASK]; //service mask
|
outbuf[i++] = (uint8_t) cfg_in_nvm[NVM_SERVICE_MASK]; //service mask
|
||||||
outbuf[i++] = (uint8_t) cfg_in_nvm[NVM_RESERVE01]; //service mask
|
outbuf[i++] = (uint8_t) cfg_in_nvm[NVM_IOC_MASK]; //service mask
|
||||||
outbuf[i++] = (uint8_t) cfg_in_nvm[NVM_LEN]; //length of following cfg value
|
outbuf[i++] = (uint8_t) cfg_in_nvm[NVM_LEN]; //length of following cfg value
|
||||||
|
|
||||||
for (uint8_t j=0; j < cfg_in_nvm[NVM_LEN]; j++) {
|
for (uint8_t j=0; j < cfg_in_nvm[NVM_LEN]; j++) {
|
||||||
|
@ -1945,8 +1951,8 @@ void OnStoreSTSCFGContextRequest(void)
|
||||||
|
|
||||||
nvm_store_value[i++] = sts_cfg_nvm.fall_detection_acc_threshold;
|
nvm_store_value[i++] = sts_cfg_nvm.fall_detection_acc_threshold;
|
||||||
nvm_store_value[i++] = sts_cfg_nvm.fall_detection_depth_threshold;
|
nvm_store_value[i++] = sts_cfg_nvm.fall_detection_depth_threshold;
|
||||||
nvm_store_value[i++] = sts_cfg_nvm.fall_detection_reserve;
|
nvm_store_value[i++] = sts_cfg_nvm.fall_confirm_threshold_in_10sec;
|
||||||
nvm_store_value[i++] = sts_cfg_nvm.occupancy_overtime_threshold;
|
//nvm_store_value[i++] = sts_cfg_nvm.occupancy_overtime_threshold;
|
||||||
if ((sts_cfg_nvm.ac[0]!=0x0) && (sts_cfg_nvm.ac[19]!=0x0)) {
|
if ((sts_cfg_nvm.ac[0]!=0x0) && (sts_cfg_nvm.ac[19]!=0x0)) {
|
||||||
for (j = 0; j < YUNHORN_STS_AC_CODE_SIZE; j++) {
|
for (j = 0; j < YUNHORN_STS_AC_CODE_SIZE; j++) {
|
||||||
nvm_store_value[i++] = (sts_cfg_nvm.ac[j]);
|
nvm_store_value[i++] = (sts_cfg_nvm.ac[j]);
|
||||||
|
@ -2008,7 +2014,7 @@ void STS_REBOOT_CONFIG_Init(void)
|
||||||
sts_cfg_nvm.s_unit = (uint8_t)(nvm_stored_value[NVM_S_UNIT]);
|
sts_cfg_nvm.s_unit = (uint8_t)(nvm_stored_value[NVM_S_UNIT]);
|
||||||
sts_cfg_nvm.work_mode = (uint8_t)(nvm_stored_value[NVM_WORK_MODE]);
|
sts_cfg_nvm.work_mode = (uint8_t)(nvm_stored_value[NVM_WORK_MODE]);
|
||||||
sts_cfg_nvm.sts_service_mask = (uint8_t)(nvm_stored_value[NVM_SERVICE_MASK]);
|
sts_cfg_nvm.sts_service_mask = (uint8_t)(nvm_stored_value[NVM_SERVICE_MASK]);
|
||||||
sts_cfg_nvm.reseve01 = (uint8_t)(nvm_stored_value[NVM_RESERVE01]);
|
sts_cfg_nvm.reseve01 = (uint8_t)(nvm_stored_value[NVM_IOC_MASK]);
|
||||||
sts_cfg_nvm.length = (uint8_t)(nvm_stored_value[NVM_LEN]&0x3F); //MAX 32 bytes
|
sts_cfg_nvm.length = (uint8_t)(nvm_stored_value[NVM_LEN]&0x3F); //MAX 32 bytes
|
||||||
|
|
||||||
for (uint8_t j=0; j< sts_cfg_nvm.length; j++) {
|
for (uint8_t j=0; j< sts_cfg_nvm.length; j++) {
|
||||||
|
@ -2017,8 +2023,8 @@ void STS_REBOOT_CONFIG_Init(void)
|
||||||
|
|
||||||
sts_cfg_nvm.fall_detection_acc_threshold = (uint8_t)nvm_stored_value[NVM_FALL_DETECTION_ACC_THRESHOLD];
|
sts_cfg_nvm.fall_detection_acc_threshold = (uint8_t)nvm_stored_value[NVM_FALL_DETECTION_ACC_THRESHOLD];
|
||||||
sts_cfg_nvm.fall_detection_depth_threshold = (uint8_t)nvm_stored_value[NVM_FALL_DETECTION_DEPTH_THRESHOLD];
|
sts_cfg_nvm.fall_detection_depth_threshold = (uint8_t)nvm_stored_value[NVM_FALL_DETECTION_DEPTH_THRESHOLD];
|
||||||
sts_cfg_nvm.fall_detection_reserve = (uint8_t)nvm_stored_value[NVM_FALL_DETECTION_RESERVE];
|
sts_cfg_nvm.fall_confirm_threshold_in_10sec = (uint8_t)nvm_stored_value[NVM_FALL_CONFIRM_THRESHOLD];
|
||||||
sts_cfg_nvm.occupancy_overtime_threshold = (uint8_t)nvm_stored_value[NVM_OCCUPANCY_OVERTIME_THRESHOLD];
|
//sts_cfg_nvm.occupancy_overtime_threshold = (uint8_t)nvm_stored_value[NVM_OCCUPANCY_OVERTIME_THRESHOLD];
|
||||||
|
|
||||||
for (uint8_t j=0; j< YUNHORN_STS_AC_CODE_SIZE; j++) {
|
for (uint8_t j=0; j< YUNHORN_STS_AC_CODE_SIZE; j++) {
|
||||||
sts_cfg_nvm.ac[j] = (uint8_t)nvm_stored_value[NVM_AC_CODE_START +j];
|
sts_cfg_nvm.ac[j] = (uint8_t)nvm_stored_value[NVM_AC_CODE_START +j];
|
||||||
|
|
|
@ -71,7 +71,7 @@ extern "C" {
|
||||||
/*!
|
/*!
|
||||||
* LoRaWAN default class
|
* LoRaWAN default class
|
||||||
*/
|
*/
|
||||||
#define LORAWAN_DEFAULT_CLASS CLASS_A
|
#define LORAWAN_DEFAULT_CLASS CLASS_C
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* LoRaWAN default confirm state
|
* LoRaWAN default confirm state
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
<provider copy-of="extension" id="org.eclipse.cdt.ui.UserLanguageSettingsProvider"/>
|
<provider copy-of="extension" id="org.eclipse.cdt.ui.UserLanguageSettingsProvider"/>
|
||||||
<provider-reference id="org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider" ref="shared-provider"/>
|
<provider-reference id="org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider" ref="shared-provider"/>
|
||||||
<provider-reference id="org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider" ref="shared-provider"/>
|
<provider-reference id="org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider" ref="shared-provider"/>
|
||||||
<provider class="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" console="false" env-hash="862132610873898441" id="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" keep-relative-paths="false" name="MCU ARM GCC Built-in Compiler Settings" parameter="${COMMAND} ${FLAGS} -E -P -v -dD "${INPUTS}"" prefer-non-shared="true">
|
<provider class="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" console="false" env-hash="1048471218779752885" id="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" keep-relative-paths="false" name="MCU ARM GCC Built-in Compiler Settings" parameter="${COMMAND} ${FLAGS} -E -P -v -dD "${INPUTS}"" prefer-non-shared="true">
|
||||||
<language-scope id="org.eclipse.cdt.core.gcc"/>
|
<language-scope id="org.eclipse.cdt.core.gcc"/>
|
||||||
<language-scope id="org.eclipse.cdt.core.g++"/>
|
<language-scope id="org.eclipse.cdt.core.g++"/>
|
||||||
</provider>
|
</provider>
|
||||||
|
@ -16,7 +16,7 @@
|
||||||
<provider copy-of="extension" id="org.eclipse.cdt.ui.UserLanguageSettingsProvider"/>
|
<provider copy-of="extension" id="org.eclipse.cdt.ui.UserLanguageSettingsProvider"/>
|
||||||
<provider-reference id="org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider" ref="shared-provider"/>
|
<provider-reference id="org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider" ref="shared-provider"/>
|
||||||
<provider-reference id="org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider" ref="shared-provider"/>
|
<provider-reference id="org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider" ref="shared-provider"/>
|
||||||
<provider class="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" console="false" env-hash="862132610873898441" id="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" keep-relative-paths="false" name="MCU ARM GCC Built-in Compiler Settings" parameter="${COMMAND} ${FLAGS} -E -P -v -dD "${INPUTS}"" prefer-non-shared="true">
|
<provider class="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" console="false" env-hash="1048471218779752885" id="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" keep-relative-paths="false" name="MCU ARM GCC Built-in Compiler Settings" parameter="${COMMAND} ${FLAGS} -E -P -v -dD "${INPUTS}"" prefer-non-shared="true">
|
||||||
<language-scope id="org.eclipse.cdt.core.gcc"/>
|
<language-scope id="org.eclipse.cdt.core.gcc"/>
|
||||||
<language-scope id="org.eclipse.cdt.core.g++"/>
|
<language-scope id="org.eclipse.cdt.core.g++"/>
|
||||||
</provider>
|
</provider>
|
||||||
|
|
Loading…
Reference in New Issue