# IMU BHI360

Последние версии всех 3D моделей, фото и схем продукции VBCores можно найти у нас на github: <https://github.com/VBCores/VBCores_files> &#x20;

{% columns %}
{% column width="58.333333333333336%" %}

<div align="right"><figure><img src="https://github.com/VBCores/VBCores_files/raw/main/09-VB-IMU-BHI360/vb-imu-bhi360-1.jpg" alt=""><figcaption></figcaption></figure> <figure><img src="https://github.com/VBCores/VBCores_files/raw/main/09-VB-IMU-BHI360/vb-imu-bhi360-2.jpg" alt=""><figcaption></figcaption></figure></div>
{% endcolumn %}

{% column width="41.666666666666664%" %}

<div align="left"><figure><img src="https://github.com/VBCores/VBCores_files/raw/main/09-VB-IMU-BHI360/vb-imu-bhi360-3.jpg" alt="" width="188"><figcaption></figcaption></figure></div>
{% endcolumn %}
{% endcolumns %}

**VBCores BHI360** — это усовершенствованный 9-осевой IMU с абсолютной ориентацией, построенный на базе датчика **Bosch BHI360**, который объединяет гироскоп, акселерометр и магнитометр **BMM350**. Модуль поставляется в компактном корпусе для пайки (20 × 10,5 мм). Магнитометр BMM350 сконфигурирован как подчинённое устройство для BHI360.

Поддерживаемые интерфейсы: **I²C** или **SPI** с питанием 3,3 В.

Ключевым элементом IMU является встроенное программное обеспечение, обрабатывающее «сырые» данные датчиков. Bosch предоставляет платформу **Sensor Fusion Software (BSX)**, которая работает непосредственно на BHI360 и объединяет данные с разных сенсоров, компенсируя их ограничения (шум, смещение, дрейф) и обеспечивая более надёжную ориентацию. Доступ к BSX осуществляется через **BHy2 SensorAPI**. Однако библиотека основана на Bosch **COINES SDK**  не поддерживается напрямую на Arduino или STM32.

Для Arduino мы рекомендуем использовать [SensorLib](https://github.com/lewisxhe/SensorLib), а пример приложения для STM32 можно найти в нашем [GitHub-репозитории](https://github.com/Dmivaka/STM32-HAL-BHI360).

Так как интерфейсы I²C и SPI редко применяются на ПК x86, мы разработали **USB-мост**, который берёт на себя всю работу по коммуникации с датчиком. Он реализован как **USB HID Sensor** и работает в режиме *plug-and-play* во всех современных ОС.

{% embed url="<https://github.com/VBCores/VBCores_files/raw/main/09-VB-IMU-BHI360/vb-imu-bhi360-pinout.png>" %}

[📥 Скачать PDF (BNO055 IMU USB bridge)](https://raw.githubusercontent.com/VBCores/VBCores_files/main/10-VB-IMU-BNO055/vb-imu-bno055-bridge-pinout.png)

### Sensor Features

* **Supply voltage**: 3.3V
* **Interfaces:**
  * I2C (up to 3.4 MHz)
  * SPI (up to 50 MHz)
* **Available virtual sensors:**
  * 3-axis accelerometer (16 bit)
  * 3-axis gyroscope (16 bit)
  * 3-axis magnetometer ( 16 bit)
  * Gravity vector
  * Rotation vector
  * Game rotation vector
  * Geo-magnetic rotation vector
  * Orientation quaternion

#### Dimensions

* PCB: 20 x 10.5mm

{% embed url="<https://github.com/VBCores/VBCores_files/raw/main/09-VB-IMU-BHI360/vb-imu-bhi360-sensor_schematic.png>" %}
Sensor Schematic
{% endembed %}

[📥 Скачать PDF (BHI360 USB bridge)](https://raw.githubusercontent.com/VBCores/VBCores_files/main/09-VB-IMU-BHI360/vb-imu-bhi360-sensor_schematic.png)&#x20;

### USB Bridge Features

* **Interfaces:** USB 1.1, USB-C connector
* **Default virtual sensors:**
  * 3-axis accelerometer
  * 3-axis gyroscope
  * Game rotation vector

#### Dimensions

* PCB: 46x46 mm
* Mount holes: M2.5 40x40 mm

{% embed url="<https://github.com/VBCores/VBCores_files/raw/main/09-VB-IMU-BHI360/vb-imu-bhi360-bridge_schematic.png>" %}
Схема BHI360 USB Bridge
{% endembed %}

[📥 Скачать PDF (BHI360 USB bridge)](https://raw.githubusercontent.com/VBCores/VBCores_files/main/09-VB-IMU-BHI360/vb-imu-bhi360-bridge_schematic.png)&#x20;

#### SWD Interface

JST GH1.25, 6pin

<table><thead><tr><th width="45.20001220703125">Pin</th><th width="127.79986572265625">Is</th></tr></thead><tbody><tr><td>1</td><td>GND</td></tr><tr><td>2</td><td>5V</td></tr><tr><td>3</td><td>SWCLK</td></tr><tr><td>4</td><td>SWDIO</td></tr><tr><td>5</td><td>TX USART2</td></tr><tr><td>6</td><td>RX USART2</td></tr></tbody></table>
