diff --git a/l0dable/src/client.c b/l0dable/src/client.c index ece3fc73ecbc36e35243e05545617077bf7aa5cc..a48a266e88d00bf05727ca386198b28432f67e65 100644 --- a/l0dable/src/client.c +++ b/l0dable/src/client.c @@ -87,6 +87,76 @@ int epic_read_battery_voltage(float *result) return *(int*)_api_call_transact(epc__apistub_buffer); } +/* Autogenerated stub for API_BATTERY_CURRENT */ +int epic_read_battery_current(float *result) +{ + const int epc__apistub_size = sizeof(float *); + void*epc__apistub_buffer; + + epc__apistub_buffer = _api_call_start(API_BATTERY_CURRENT, epc__apistub_size); + /* TODO: Check if epc__apistub_buffer is not NULL */ + + *(float **)(epc__apistub_buffer + 0) = result; + + return *(int*)_api_call_transact(epc__apistub_buffer); +} + +/* Autogenerated stub for API_CHARGEIN_VOLTAGE */ +int epic_read_chargein_voltage(float *result) +{ + const int epc__apistub_size = sizeof(float *); + void*epc__apistub_buffer; + + epc__apistub_buffer = _api_call_start(API_CHARGEIN_VOLTAGE, epc__apistub_size); + /* TODO: Check if epc__apistub_buffer is not NULL */ + + *(float **)(epc__apistub_buffer + 0) = result; + + return *(int*)_api_call_transact(epc__apistub_buffer); +} + +/* Autogenerated stub for API_CHARGEIN_CURRENT */ +int epic_read_chargein_current(float *result) +{ + const int epc__apistub_size = sizeof(float *); + void*epc__apistub_buffer; + + epc__apistub_buffer = _api_call_start(API_CHARGEIN_CURRENT, epc__apistub_size); + /* TODO: Check if epc__apistub_buffer is not NULL */ + + *(float **)(epc__apistub_buffer + 0) = result; + + return *(int*)_api_call_transact(epc__apistub_buffer); +} + +/* Autogenerated stub for API_SYSTEM_VOLTAGE */ +int epic_read_system_voltage(float *result) +{ + const int epc__apistub_size = sizeof(float *); + void*epc__apistub_buffer; + + epc__apistub_buffer = _api_call_start(API_SYSTEM_VOLTAGE, epc__apistub_size); + /* TODO: Check if epc__apistub_buffer is not NULL */ + + *(float **)(epc__apistub_buffer + 0) = result; + + return *(int*)_api_call_transact(epc__apistub_buffer); +} + +/* Autogenerated stub for API_THERMISTOR_VOLTAGE */ +int epic_read_thermistor_voltage(float *result) +{ + const int epc__apistub_size = sizeof(float *); + void*epc__apistub_buffer; + + epc__apistub_buffer = _api_call_start(API_THERMISTOR_VOLTAGE, epc__apistub_size); + /* TODO: Check if epc__apistub_buffer is not NULL */ + + *(float **)(epc__apistub_buffer + 0) = result; + + return *(int*)_api_call_transact(epc__apistub_buffer); +} + /* Autogenerated stub for API_UART_WRITE_STR */ void epic_uart_write_str( const char *str, intptr_t length ) { @@ -415,6 +485,46 @@ void epic_leds_clear_all(uint8_t r, uint8_t g, uint8_t b) _api_call_transact(epc__apistub_buffer); } +/* Autogenerated stub for API_BME680_INIT */ +int epic_bme680_init() +{ + const int epc__apistub_size = 0; + void*epc__apistub_buffer; + + epc__apistub_buffer = _api_call_start(API_BME680_INIT, epc__apistub_size); + /* TODO: Check if epc__apistub_buffer is not NULL */ + + + return *(int*)_api_call_transact(epc__apistub_buffer); +} + +/* Autogenerated stub for API_BME680_DEINIT */ +int epic_bme680_deinit() +{ + const int epc__apistub_size = 0; + void*epc__apistub_buffer; + + epc__apistub_buffer = _api_call_start(API_BME680_DEINIT, epc__apistub_size); + /* TODO: Check if epc__apistub_buffer is not NULL */ + + + return *(int*)_api_call_transact(epc__apistub_buffer); +} + +/* Autogenerated stub for API_BME680_GET_DATA */ +int epic_bme680_read_sensors(struct bme680_sensor_data *data) +{ + const int epc__apistub_size = sizeof(struct bme680_sensor_data *); + void*epc__apistub_buffer; + + epc__apistub_buffer = _api_call_start(API_BME680_GET_DATA, epc__apistub_size); + /* TODO: Check if epc__apistub_buffer is not NULL */ + + *(struct bme680_sensor_data **)(epc__apistub_buffer + 0) = data; + + return *(int*)_api_call_transact(epc__apistub_buffer); +} + /* Autogenerated stub for API_PERSONAL_STATE_SET */ int epic_personal_state_set(uint8_t state, _Bool persistent) { @@ -472,6 +582,48 @@ int epic_stream_read(int sd, void *buf, size_t count) return *(int*)_api_call_transact(epc__apistub_buffer); } +/* Autogenerated stub for API_BHI160_ENABLE */ +int epic_bhi160_enable_sensor( enum bhi160_sensor_type sensor_type, struct bhi160_sensor_config *config ) +{ + const int epc__apistub_size = sizeof(enum bhi160_sensor_type) + sizeof(struct bhi160_sensor_config *); + void*epc__apistub_buffer; + + epc__apistub_buffer = _api_call_start(API_BHI160_ENABLE, epc__apistub_size); + /* TODO: Check if epc__apistub_buffer is not NULL */ + + *(enum bhi160_sensor_type*)(epc__apistub_buffer + 0) = sensor_type; + *(struct bhi160_sensor_config **)(epc__apistub_buffer + sizeof(enum bhi160_sensor_type)) = config; + + return *(int*)_api_call_transact(epc__apistub_buffer); +} + +/* Autogenerated stub for API_BHI160_DISABLE */ +int epic_bhi160_disable_sensor( enum bhi160_sensor_type sensor_type ) +{ + const int epc__apistub_size = sizeof(enum bhi160_sensor_type); + void*epc__apistub_buffer; + + epc__apistub_buffer = _api_call_start(API_BHI160_DISABLE, epc__apistub_size); + /* TODO: Check if epc__apistub_buffer is not NULL */ + + *(enum bhi160_sensor_type*)(epc__apistub_buffer + 0) = sensor_type; + + return *(int*)_api_call_transact(epc__apistub_buffer); +} + +/* Autogenerated stub for API_BHI160_DISABLE_ALL */ +void epic_bhi160_disable_all_sensors() +{ + const int epc__apistub_size = 0; + void*epc__apistub_buffer; + + epc__apistub_buffer = _api_call_start(API_BHI160_DISABLE_ALL, epc__apistub_size); + /* TODO: Check if epc__apistub_buffer is not NULL */ + + + _api_call_transact(epc__apistub_buffer); +} + /* Autogenerated stub for API_VIBRA_SET */ void epic_vibra_set(int status) { @@ -950,6 +1102,12 @@ int epic_trng_read(uint8_t *dest, size_t size) /* Weakly linked stubs for ISRs */ +void epic_isr_bhi160_accelerometer(api_int_id_t id) + __attribute__((weak, alias("__epic_isr_default_handler"))); +void epic_isr_bhi160_orientation(api_int_id_t id) + __attribute__((weak, alias("__epic_isr_default_handler"))); +void epic_isr_bhi160_gyroscope(api_int_id_t id) + __attribute__((weak, alias("__epic_isr_default_handler"))); void __epic_isr_reset(api_int_id_t id) __attribute__((weak, alias("__epic_isr_default_handler"))); void epic_isr_uart_rx(api_int_id_t id) @@ -981,6 +1139,15 @@ void __epic_isr_default_handler(api_int_id_t id) void __dispatch_isr(api_int_id_t id) { switch (id) { + case EPIC_INT_BHI160_ACCELEROMETER: + epic_isr_bhi160_accelerometer(id); + break; + case EPIC_INT_BHI160_ORIENTATION: + epic_isr_bhi160_orientation(id); + break; + case EPIC_INT_BHI160_GYROSCOPE: + epic_isr_bhi160_gyroscope(id); + break; case EPIC_INT_RESET: __epic_isr_reset(id); break;