Introduction
In previous posts we examined how to install OpenPlotter (Ref.1), how to connect a GPS receiver (Ref.2), how to connect AIS (Ref.3), and how to receive VHF (Ref.4). In this post we will examine how to connect & detect a sensor module such as the GY-91 which is referenced in OpenPlotter documentation. This module has two ICs mounted, an MPU-9250 motion detector module and a BMP280 pressure sensor module. This gives us 10DOF or10 degrees of freedom: 3xGryoscope, 3xAccelerometer, 3xMagnetometer, 1xAir pressure. In later posts we will look at how to use these sensors properly, right now we are just connecting & detecting.
GY-91 Sensor Module
The GY-91 sensor board contains an MPU9250 Gyroscope, Accelerometer, Magnetometer (Ref.5) and a BMP280 pressure sensor (Ref.6). These are the modules commonly used with OpenPlotter. Figure 1 shows the board layout and pinouts. The MPU is the dark square IC and the BMP is the silvery rectangular IC. Figure 2 shows the interconnection to the RPi GPIO.


GY-91 Detection
In order to detect the GY-91 we have to install two applications: I2C Sensors and Pypilot. These are shown in Figure 3 OpenPlotter/Settings. This may take several minutes. The next step is to go into the Raspberry Pi Configuration menu and enable I2C as shown in Figure 4. Once these steps are accomplished, we can detect the modules.


BMP280 Detection
Go to OpenPlotter/I2c and select the I2C Addresses on the menu bar. The detected addresses on the I2C bus are shown as in Figure 5. Figure 6 is from the BMP280 data sheet, and indicates that if SDO = 0VDC, then the slave address is $76. Figure 7 shows the I2C addresses $68 for the MPU9250. Then under the menu item Sensors, press Add and from the drop down menu select the BMP280 and associate it with the address $76 as shown in Figure 8. The result is shown in Figure 9. Finally under Connections, add the BMP280 to the SignalK Server as shown in Figure 10.






MPU9250 Detection
Go to OpenPlotter/Pypilot and the MPU9250 should be detected as in Figure 11. Select “Only compass” for now. Then as before, add the MPU to the SignalK server as shown in Figure 12.


SignalK Server
Now finally go to OpenPlotter/SignalK Server to verify that the BMP280 & MPU9250 are connected. You should see I2C & Pypilot SignalK entries as shown in Figure 13. Figure 14 shows the SignalK Instrument Panel with Pressure/Temperature (BMP280) and Heading/Yaw/Pitch/Roll from the MPU9250.


Please send your comments, questions and suggestions to:
jclark@clarktelecommunications.com

References
#1. -“OpenPlotter – Naviagtion System on RPi”
https://jeremyclark.ca/wp/telecom/openplotter-navigation-system-on-rpi/
#2. – “OpenPlotter – GPS Connection”
https://jeremyclark.ca/wp/telecom/openplotter-gps-connection/
#3. – “OpenPlotter – AIS Connection”
https://jeremyclark.ca/wp/telecom/openplotter-ais-connection/
#4. – “OpenPlotter – RTL-SDR for VHF/AIS”
https://jeremyclark.ca/wp/telecom/openplotter-rtl-sdr-for-vhf-ais/
#5. – “MPU-9250 Motion Tracking Device”, TDK Invasense Data Sheet
https://media.digikey.com/pdf/Data%20Sheets/TDK%20PDFs/MPU-9250_Rev_1.1.pdf
#6. – “BMP-280 Digital Pressure Sensor”, Bosch Data Sheet
https://www.bosch-sensortec.com/media/boschsensortec/downloads/datasheets/bst-bmp280-ds001.pdf