This forum uses cookies
This forum makes use of cookies to store your login information if you are registered, and your last visit if you are not. Cookies are small text documents stored on your computer; the cookies set by this forum can only be used on this website and pose no security risk. Cookies on this forum also track the specific topics you have read and when you last read them. Please confirm whether you accept or reject these cookies being set.

A cookie will be stored in your browser regardless of choice to prevent you being asked this question again. You will be able to change your cookie settings at any time using the link in the footer.

Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Basic IMU/I2C setup question
I have the MPU-9250 hooked up to the I2C gpio ports on a Pi and data is coming out fine.  It's not clear to me that this data is available as a serial feed.  I would like to send the heading data to an NMEA 0183 display I have made (, but how to I configure a serial output from an I2C source?  I know how to and have configured serial output from my other serial input based sources (wind, AIS, STW, etc.).  I think I am just not seeing something.  Help?  Thanks!
Just a thought; If you have all the datas you need in node-red, maybe you can use a serial node to send it to?
Hmm, was not aware of node-red. I can see how that could work, I'll take a look at it. But really, isn't openplotter setup to forward I2C sensor data to opencpn or other? Does it do it automatically and I'm just not aware of it?
(2017-04-05, 07:52 PM)jswalwell Wrote: Hmm, was not aware of node-red.  I can see how that could work, I'll take a look at it.  But really, isn't openplotter setup to forward I2C sensor data to opencpn or other?  Does it do it automatically and I'm just not aware of it?

Is the MPU-9250 data showing up as signalk ?   If so then in openplotter beta (not sure about v0.8) you can create nmea083, in the openplotter window look for "NMEA 0183 generator" in the tools menu. I use it to convert a signalk ds18 engine temperature sensor into a water temperature nmea 0183 sentence so it can be seen in opencpn dashboard. 
Okay, I did get the nmea generator generating the **HDG sentence last night. However, even though navigation.headingMagnetic (Pi is on boat, this syntax from my memory) shows up in signalk, the value is static in the signalk diagnostic view (355.xx) and the data is 0.0 in the HDG sentence. When I go into the calibration stuff for the IMU the sensor is clearly working. Did I miss a step?
Oh interesting. I just did a fresh download and install of openplotter on my second Pi to use as a test bench and the I2C tab has changed. It looks like there is auto-detection of sensors and checkboxes to output nmea data, in this case $HDG. Very nice! I'll give it a try this evening.
I've also been struggling with my IMU. In my case, I got one of these

It's an MPU-9255, which doesn't get detected. When I force the config file to an MPU-9250, I still get nothing when I try to do the calibration. I was able to get data out of this when I compiled the calibration program separately from sources.
For aggravation avoidance it might be worth the $12 to go back to the 9250.

Didn't have a chance to test the new I2C stuff last night, probably tonight.
My thoughts exactly! Looking at Amazon now.
After cloning this Github fork:, and compiling/installing, I was able to get RTIMULibCal to detect the MPU9255 and calibrate it. Unfortunately, Openplotter isn't ready for an IMU type "11" and fails to start.

I'd be interested in finding where in the Openplotter code this is failing, as it seems so close! other news, I ordered an MPU9250.

EDIT: Perhaps this is the driver that should be included in Openplotter? It wouldn't hurt to have a few more IMUs available.

Forum Jump:

Users browsing this thread: 1 Guest(s)