JY RM3100 problem in connection in I2C mode

Good day. a new JY RM 3100 magnetometer has arrived. It has TTL / I2C / SPI protocols. by default, it works in SPI mode, in order to connect via I2C, you need to set the I2C address and activate the Enable pin. it is not very clearly described in the documentation. manufacturer support does not respond. here is the instruction for it https://drive.google.com/file/d/1h-Nq1n3PxCxxn9_qnfksme3nev5LY1VG/view?usp=share_link
I will also attach a photo



what contacts should I use to transfer to work on I2c?

1 Like

Usually with these chips there is a way of pulling a pin high or low to switch to I2C. You would have to consult the datasheet.

yes, I understand that, but the I2C enable pin is missing, so I can’t solve the problem of switching to I2C

According to the manual you provide, you have to fully interpret&experiment this:
image

yes, but the software specified in the instructions does not find the magnetometer and hangs constantly. the support service reads the message, but does not answer anything on this issue, and there is no possibility to connect via SPI. they answered another request and provided a connection diagram, but I’m not sure that it will work.

That seems a common I2C connection, providing supply and the pullup resistors.


This seems the schematic. Signal I2C_EN seems internal, so you can try to locate it and check its level with above connection done. It seems generated at J1, which is not clear what it is: you can try to read its markings.

In general, you should try to connect the module to Arduino’s in all connection modes, find or write Arduino software, and see what works.

everything worked out by moving the resistor and setting the address

From the RM3100 datasheet:
I2CEN (pin 22)
This pin should be pulled LOW when using the SPI interface or pulled HIGH when
using the I2C interface.

On the reference design above I2C_EN appears pulled low. So it seems that a user should follow the traces on this PCB and see that I2C_EN goes to two possible resistor locations: one pulling it low and the other pulling it high, and be inspired to move (unsolder/solder) the SMD resistor. Amazing.

Out of curiosity which RM3100 do you have that has a serial interface? The one in this thread is either SPI (default) or I2C.

per an easy google search it revealed this which in the title states I2C/SPI/TTL

I know what’s in the title. There is no serial port option so I was wondering if they were talking about a different board. I don’t think I have seen any Mag’s with serial ports and I don’t think Ardupilot supports it if there was.

there is a serial port, the magnetometer is configured with it, a command to activate I2C is sent through the WitMotion software, then the address of the magnetometer is formed using the method of high and low level generation, it is perfectly displayed in MissionPlanner through the I2C interface, but the quality of the magnetometer is so-so, although the coils used are quite clear.