3D Hall (Magnetic sensor) Forum Discussions
I am trying to use Arduino Due to acquire data from the TLI493D-W2BW (I want to initially test two sensors, then a 2x2 matrix, and finally a 4x4 matrix).
The test for one sensor has been successful with the following connections:
Sensor 3V3 → Arduino Due 3.3V,GND → GND, SCL → SCL, SDA → SDA, INT → Arduino Due pin 3, as shown in the code attached in file 01.
When attempting to test two sensors, the connections are as follows:
both sensors' 3V3 are parallel connected to Arduino Due 3.3V, SDA and SCL pins are also individually parallel connected to pins 20 (SDA) and 21 (SCL) on Arduino Due, INT pins are connected to pins 30 and 31 on Arduino Due respectively. The code is as shown in attachment 02, but it only displays "Reading data from SENSOR1...".
I attempted to achieve data acquisition from two sensors by toggling between high and low levels but failed. Previously, I also made modifications according to the code in file 01. I aimed to display data from both sensors in a single line on the serial monitor. However, Then, the data from both sensors is updating in the place where only the data from the first sensor should be displayed, like this:
17:10:28.890 -> Sensor 1: Bx By Bz T | Sensor 2: Bx By Bz T
17:10:29.093 -> 0 0 -1 1152 | 8 2048 16398 8
17:10:29.296 -> 2 0 -1 1152 | -1 -1 -1 4095
17:10:29.499 -> 2 0 0 1152 | -1 -1 -1 4095
17:10:29.701 -> 0 0 0 1152 | -1 -1 -1 4095
The code is as shown in attachment 03.
I also attempted to use transistors to separately control the VDD pins of the sensors to achieve high and low levels, but I still couldn't display the data successfully. The code is as shown in attachment 04.
I would appreciate the assistance from experienced individuals. Thank you very much!
#TLI493D-W2BW
Show LessHello everyone.
I wish to use your TLV493D IC to make a 6 degrees of freedom (6DOF) 3D mouse (e.g. "Spacemouse") with an Arduino Micro Pro (so I can interface with Windows as a joystick to manipulate 3D models in such software as FreeCAD, Fusion 360, Blender,etc).
I am a retired trade school teacher with a 3D printer and I wanted a nice project to try. I have a few questions for you.
1) I would like to know the optimal orientation of the magnet in relation to the TLV493D: should I orient the edge or the flat face of the circular magnet towards the sensor?
2) I downloaded your 2 examples of separately reading linear and rotational data from your TLV493D. However, I would like to know if you would have an example code combining both the linear and rotational data together in a single program.
Accelerometer: https://github.com/Infineon/TLV493D-A1B6-3DMagnetic-Sensor/blob/master/examples/Cartesian/Cartesian.ino
Gyro: https://github.com/Infineon/TLV493D-A1B6-3DMagnetic-Sensor/blob/master/examples/spherical/spherical.ino
3) Also, would you have an example of what I understand is called "Sensor fusion" so I can pass the combined linear/rotational data through the Arduino Mouse library to Windows (using the HID interface)? (i.e. I wish to manipulate a model in 6 degrees of freedom on the screen.).
4)I presume I should use the linear version of the TLV493D?
(photo of 6 spring mounting)
I would appreciate any help I could get.
Lorne Wilkins
Show LessHi There,
I am using TLE493D with A0 and A1 addresses on the same bus. my setting is the default except disable interrupt and active trigger after reading register 0x05 and one-byte read mode. I am polling registers 0 to 5 continuously and some time sensors to stuck. It seems the sensor reset after a while I was wondering if the reset signal which is 0xff 0xff 0x00 0x00 can cause this issue or not. I am not sending a reset signal but I am concerned about it when I read those 6 bytes from one sensor have the same pattern as the reset signal during that cause reset on the other one
Show Less
Hello,
i have a TLE493D-W2B6 MS2GO board and it works fine with the menu-driven software. But now, i need to read the values of magnetic field on the 3 axes with the software that drives our test system (on a pc running Windows). It is written in NI LabVIEW, and can thus make call to libraries, but i don't manage to find the suitable library on the support page of the MS2GO kit.
Is this library existing ? If so, where's the link and the documentation ?
Thanks for any clue,
vincent
Show Lesssmartconx_target@Q!w2e3r4t5y6u7i8o9p0||/t5/3D-Hall-%E7%A3%81%E6%80%A7%E4%BC%A0%E6%84%9F%E5%99%A8/%E5%85%B3%E4%BA%8EIDMS/td-p/687584
Show Less我程序流程图为:初始化(配置为Master Controlled Mode模式)---- 来一个脉冲,读取一次测量数据 ----
reset --- 获取读取10个读寄存器的值 ,重新配置MOD1&2---- 来一个脉冲,读取一次测量数据 --- reset --- 获取读取10个读寄存器的值 ,重新配置MOD1&2 ---- 来一个脉冲,读取一次测量数据 --- 重复reset,再配置,再读取,再reset。
问题一:每次reset后,还需要重新读取10个读寄存器的值 ,再重新配置MOD1&2
问题二:TLV493D-A1B6 初始化完成后,读取第一次采集到的数据后;
reset后,再去读取默认的10个读寄存器进行MOD1&2配置,这时就出现了问题,读取10个读寄存器的值全都为FFh;
reset后,IIC发出读命令后,IIC设备给的没有给主机应答信号,IIC总线的SDA为高电平,实际上从机应该拉低IIC总线的SDA为低电平。
现在的模式是Master Controlled Mode,时钟为400KHz,采取的是IIC每来一个脉冲,就都取一次数据。
我测试了30个TLV493D-A1B6,用的是相同的程序,不能正常工作的有6个。但是这6个不能工作的,
将写寄存器的Low-power period修改一下,又能工作了,但是其余的24个不能正常工作。
Show Less