IM19 and UM980

Hi. I connected IM19 imu module with Unicore UM980 and ESP32 for GNSS RTK surveying.

I measured imu to ant and pole height and insert measures to im19 module, I got a fix, calibrate imu, and start recording points, but when I rotate a pole, point jump all around for few cm (10-12cm) and when make a full circle it returns to the begining. What may be a problem?

It might help to draw or video a demo of what’s going on…but I think you’re saying if you ‘spin’ the device in-place (like twisting a vertical cylinder) the measurement jumps around but corrects itself once you’ve made a full rotation?

If that is the case I’d guess the IMU offset is incorrect somehow

Hi @bare ,

It does sound like you have not configured LEVER_ARM and/or INSTALL_ANGLE correctly. Please double check your settings. Please also be aware that LEVER_ARM and LEVER_ARM2 use different coordinate systems. Again please check your settings.

If you need more detailed help, we will need a 3D drawing showing the position and orientation of the IM19 compared to the antenna.

There is a long discussion about the IM19 coordinate system here.

I hope this helps,
Paul

@bare

Also, for the UM980, you need to set GNSS_CARD=UNICORE (not GNSS_CARD=OEM) and enable BESTPOSB, PSRVELB and GPGGA on the COM port connected to the IM19, at 5Hz, at 115200 baud. Please check.

Best,
Paul

Thanks for the answers. I was out in the field for a while so I couldn’t answer. I’ll try to check all the measures. In the meantime, if anyone can check if everything is okay with the code I’m using, please let me know.

im19_v9_dualcore.zip.txt (10.9 KB)

If the module is oriented as in picture, chip on the board facing up, x axis forward and y axis left, is the install angle 0,0,0 or 180,0,0 ?

The antenna is above the module.

Did you mean “y axis right”?

@bare :

Assuming you did mean “y axis right” :

The INSTALL_ANGLE is 0,0,0 when X points Front

If you are using LEVER_ARM2 to set the antenna position (not LEVER_ARM), then the Z coordinate is negative

I hope this helps,
Paul

Sorry, yes, right. In my case y axis is on the right, but in the video where the coordinate system is explained, the y axis is on the left side and I can only get that if I rotate the module on z axis so that the chip is facing down. Since chip is facing up in my case would be 180 degrees on the z axis, or am I wrong?

The u-blox video uses the Front-Left-Up reference frame.
The IM19 IMU uses the Front-Right-Down reference frame.


Thanks for your patience.
OK. The IM19 chip is facing up, the x axis is facing forward, so the install angle should be 0,0,0. The center of the antenna is exactly above the imu mark on the chip.

These are the commands I am sending to configure im19 via esp32.

These are the points that I recorded with the tip in the same place and by tilting the pole all around, they are scattered in approx. 6 cm.

Is that ok or can I improve something?

Hi @bare ,

That may be your issue. The center of the antenna should be above the center of the IM19 Breakout PCB. We carefully positioned the chip to place the actual IMU at the center of the PCB.

Looking inside the IM19 STEP file, you can see the IMU chip itself:

From the center of the IM19 package, the IMU is offset by -2.72mm x 5.72mm:

Please ignore the IMU mark on the chip. It is only there to define the axes. It does not define the IMU origin.

The IMU Z origin is 1.6mm above the top surface of the PCB, 3.2mm from back surface of the PCB.

I hope this helps,
Paul

In our RTK Everywhere Firmware, which uses the IM19:

We do not configure AUTO_FIX. We leave that set to the default.

We do configure MAG_AUTO_SAVE=ENABLE

I hope this helps,
Paul

Just to explain the IMU origin a little more:

From the IM19 Integration Guide, the IMU origin is defined as:

The IMU origin is (4.68, 3.48)mm from the bottom left corner of the IM19 package.

So, from the center of the (14.80, 18.40)mm package, it is offset by 2.72mm “Left” (negative Y) and 5.72mm “Down” (negative X).

I hope this helps,
Paul

Last post for today :wink:

The next step is to check the STATUS field in the NASC message:

image

Please tell us what values you see there, as you calibrate the IMU. When the calibration is complete, bit “2” “Ready” will be set.

The calibration is:
Check you have RTK Fix
Shake the pole - or walk with the pole
Rock the pole backwards and forwards, without moving the pole tip
Rotate the pole 90 degrees
Rock backwards and forwards again

Sorry, my mistake…again. I checked now and the pcb is right in the middle, so it shouldn’t be a problem.

These are output massages from IM19, after tilt. It says that the tilt is ok after two, three moves back and forward, so I don’t know if it makes sense to continue with the calibration.

If I keep the tip of the pole in the same place , after 10-15 sec. the error decreases, but otherwise it jumps around a lot

Hi @bare ,

The STATUS of 1E0402 is good. It means everything is working.

Edit: I see the AGEDIFF increasing from 12 to 17 seconds. It suggests there could be a problem with your RTK corrections. How are your RTK corrections being delivered? Via Bluetooth?

I hope this helps,
Paul

In your photo, I don’t see anything connected to the CH342_EN pin:

image

By default, IM19 UART1 and UART2 are connected to the CH342. The CH342 will ‘fight’ the GNSS data on UART2 RX (RX2).

To isolate the CH342, you can: pull the CH342_EN pin to GND; or solder the CH342 EN jumper closed.

image

I hope this helps,
Paul

Age is high because I disconnected Swmaps to be able to connect bluetooth terminal, so ntrip lost connection, otherwise it is from 1 to 3 sec.

Ch342 pin is connected to gnd, but i had to disconnect the wires for taking a picture because it’s a bit crowded inside.

Can the wires cause interference?

@bare :

Wow. That is quite a project!

A couple of suggestions:

Check your UM980 is running the latest firmware. The latest version we know about is 17548, but there may be newer versions out there. If you find one, please let us know.

Do you have any switching regulators in there? Maybe to drop the battery 5V down to 3.3V? The IM19 has a sensitive magnetometer inside. The electrical noise from switching regulators may cause problems. Use linear regulators if you can.

Always run your power and ground wires close together. Use figure-8 cable if you can, otherwise twist them together. This helps minimize the “loop area” and stops your wires from becoming antennas - prone to noise.

I hope this helps,
Paul