152 struct bhy2_data_quaternion data;
156 bhy2_parse_quaternion(data_ptr, &data);
158 BoschSensorUtils::time_to_s_ns(_timestamp, &s, &ns, &tns);
159 Serial.print(
"SID:"); Serial.print(sensor_id);
160 Serial.print(
" T:"); Serial.print(s);
161 Serial.print(
"."); Serial.print(ns);
162 Serial.print(
" x:"); Serial.print(data.x / 16384.0f);
163 Serial.print(
" y:"); Serial.print(data.y / 16384.0f);
164 Serial.print(
" x:"); Serial.print(data.z / 16384.0f);
165 Serial.print(
" w:"); Serial.print(data.w / 16384.0f);
166 Serial.print(
" acc:"); Serial.println(((data.accuracy * 180.0f) / 16384.0f) / 3.141592653589793f);
181 Serial.begin(115200);
187 Serial.println(
"Initializing Sensors...");
190 bhy.setFirmware(bosch_firmware_image, bosch_firmware_size);
201 Serial.println(
"Initializing Sensors...");
203#ifdef USE_I2C_INTERFACE
208 Serial.print(
"Failed to initialize sensor - error code:");
209 Serial.println(
bhy.getError());
216#ifdef USE_SPI_INTERFACE
219 Serial.print(
"Failed to initialize sensor - error code:");
220 Serial.println(
bhy.getError());
227 Serial.println(
"Initializing the sensor successfully!");
230 BoschSensorInfo info =
bhy.getSensorInfo();
233 ArduinoStreamPrinter printer(Serial);
234 info.printInfo(printer);
236 info.printInfo([](
const char *format, ...) ->
int {
238 va_start(args, format);
239 int result = vprintf(format, args);
246 float sample_rate = 100.0;
247 uint32_t report_latency_ms = 0;
249#ifdef USING_DATA_HELPER
251 stepCounter.enable(sample_rate, report_latency_ms);
254 bhy.configure(BoschSensorID::ROTATION_VECTOR, sample_rate, report_latency_ms);
258#ifdef USING_SENSOR_IRQ_METHOD