SparkFun Electronics Commentsurn:uuid:214d0e4e-f1b1-d287-ce26-ac5b4c9f82492024-03-29T08:15:33-06:00SparkFun ElectronicsCustomer #479449 on SEN-10619 - Triple Axis Magnetometer Breakout - MAG3110Customer #479449urn:uuid:be9d254b-f552-75ac-5686-4e2be8ab56092014-09-26T15:30:09-06:00<p>anybody?</p>
Customer #479449 on SEN-10619 - Triple Axis Magnetometer Breakout - MAG3110Customer #479449urn:uuid:4ac9f044-5512-6d46-8344-361da28a66cd2014-09-25T22:56:33-06:00<p>I need to know if I can use this sensor as a level! in my project I need to detect the orientation of my device and this device might be turned on in any orientation (therefore I do not have a reference orientation so I can use an accelerometer/gyro ) can I use this sensor, and if not, any suggestions ?</p>
Customer #518342 on SEN-10619 - Triple Axis Magnetometer Breakout - MAG3110Customer #518342urn:uuid:f56397f5-c749-8f32-f943-d7c944d948742014-02-07T13:53:34-07:00<p>Hi, I'm trying to do a burst read. I'm using the MAG3110 demo board above/w FreeScale's MC9S08 as the interface. I am doing the following:
// X MSB
IIC1C1 = IIC_Start; <---start signal
IIC1D = IIC_Write; <--- 0x1C
IIC1D = OUT_X_MSB; <--- x-axis MSB (0x01)
IIC1C1 = IIC_Repeat; <---- repeat start
IIC1D = IIC_Read; <---- 0x1D
IIC1C1 = IIC_Stop; <---- stop signal<p>I keep getting 0xFF coming back to my data register, I can confirm this on the scope. It doesn't matter what I ask to read
from the slave address the register always reports 0xFF? I thought I was suppose to get a burst of six bytes coming back, I only see one byte and its the same for everything??? Can someone help!</p></p>
Customer #471059 on SEN-10619 - Triple Axis Magnetometer Breakout - MAG3110Customer #471059urn:uuid:fe8eafcd-eb78-ef25-6c88-b354c92e5fb42013-11-22T12:19:02-07:00<p>By "(you can easily knock them off with a soldering iron)," do you mean a conventional soldering iron or one intended for use with surface mounts? I'm only a little past beginner but know I need to remove them to work with another board. That said I really don't want to destroy another board.</p>
Customer #427002 on SEN-10619 - Triple Axis Magnetometer Breakout - MAG3110Customer #427002urn:uuid:87c38400-9f62-77dd-4d5f-aad74d6bf7da2013-10-28T03:41:32-06:00<p>Hi, I'm trying to connect two Mag3110's to the same I2c Bus on an Arduino. Is there any way to change the slave address of 0x0E on one of the chips so that I can address both of them on the same bus? Thanks.</p>
Toni_K on SEN-10619 - Triple Axis Magnetometer Breakout - MAG3110Toni_Kurn:uuid:889e05bf-b5cd-cd9a-6e7e-bbcba382ecc52013-10-14T14:45:53-06:00<p>Yup. That's why they are commonly used in orientation applications along with accelerometers. They just help increase accuracy of position calculations.</p>
Customer #90068 on SEN-10619 - Triple Axis Magnetometer Breakout - MAG3110Customer #90068urn:uuid:42ab13a5-70bf-87a1-a9ef-96fefb393eed2013-10-13T17:54:33-06:00<p>Ok thanks, so what does the other 2 axis on a magnetometer provide you with? Angle in relationship to magnetic north?</p>
Toni_K on SEN-10619 - Triple Axis Magnetometer Breakout - MAG3110Toni_Kurn:uuid:24b88020-362b-3fb7-198a-dfafddcc4ead2013-10-10T10:00:39-06:00<p>A digital magnetometer is the same thing as a digital compass.</p>
Customer #90068 on SEN-10619 - Triple Axis Magnetometer Breakout - MAG3110Customer #90068urn:uuid:721bbfff-3c7f-b64b-eb01-30376f84ba442013-10-09T19:54:08-06:00<p>I am new to magnetic sensors, what is the difference between a magnetometer and a digital compass?</p>
dylanryan on SEN-10619 - Triple Axis Magnetometer Breakout - MAG3110dylanryanurn:uuid:618165fa-ef51-48df-680b-ea5ef81eaf4f2013-09-11T19:20:04-06:00<p>I'm also having this problem, though I'm reading it out on a Raspberry Pi. I'm getting 0xFF (-1 C) most of the time, and occasionally 0x00 (0C), in ambient conditions around 25C. I never get any other values. Everything else works perfectly, except temp.<p>I've tried reading it both before and after the magnetic values (since the device seems to do some magic when you read the X MSB), and with and without delays in between them (just to see what's up). I've even tried reading all the registers at once, and I am getting correct values in every register, including those immediately before (Z user offset LSB) and immediately after (CTRL 1) the DIE_TEMP register. It's just DIE_TEMP that is haywire.</p><p>I know that -1C and 0C are both theoretically "valid" temperatures, but 0xFF and 0x00 sure look a lot like either hardware problems (letting SDA float high, or holding it low) or else programming problems (-1 and 0 are both often used as "error conditions").</p><p>Does anyone have one with a sane DIE_TEMP? Or do we just have faulty units?</p><p>EDIT: After doing some research, I found a newer datasheet ( http://cache.freescale.com/files/sensors/doc/data_sheet/MAG3110.pdf ) which indicates that the temperature offset is NOT set by the factory, the user has to determine the offset on their own (fun). After playing around with warming up the sensor, it appears that I was lucky/unlucky enough to get a sensor that just happened to have its 0 be at my current room temperature. I am now able to get temperature changes, so I am just going to assume that that is the problem for now unless I ever see it start drastically diverging from other temperature sensors I have.</p><p>SparkFun folks, can you update the link to the newest revision of the datasheet?</p></p>
topo on SEN-10619 - Triple Axis Magnetometer Breakout - MAG3110topourn:uuid:b1836e3e-f882-02cb-8699-67cc6dde7a782013-08-28T21:23:33-06:00<p>hello, two questions, you can connect 2 MAG3110 and view data simultaneously on a single arduino connect a single sensor .... no problem
as calbro the sensor gives erratic values
thanks</p>
Dylan Moore on SEN-10619 - Triple Axis Magnetometer Breakout - MAG3110Dylan Mooreurn:uuid:3edd0cc9-2ee3-2ee3-b996-5ecfa5dce5752013-08-14T15:13:14-06:00<p>INT usually means an interrupt, in the case of a special feature on the chip. You can get the I2C to work without hooking up the INT pin.</p>
Customer #456917 on SEN-10619 - Triple Axis Magnetometer Breakout - MAG3110Customer #456917urn:uuid:d5425a69-e451-bf21-652d-0e39ada5f64f2013-07-25T16:33:43-06:00<p>So I have found the mid point for my MAG3110 to be:
x_offset = -114;
y_offset = 113;
z_offset = 122;<p>And my top reading after subtracting this about 32000... Not really 0.1 uT per tick here is it? :P
Does anyone know how this is this scaled?</p></p>
Customer #456917 on SEN-10619 - Triple Axis Magnetometer Breakout - MAG3110Customer #456917urn:uuid:34a96f74-1bbc-6e07-d3a4-e5c8ff8c0af22013-07-25T03:21:16-06:00<p>I can get readings that seems to be legit but it for sure doesn't spit out uT or even 0.1uT when just reading the data...<p>For example: (using FEZ Domino)
x = (Int16)(receiveData[2] (backarrowbackarrow) 8 | receiveData[1]);</p><p>Will result in a value between -13553 to -7665... (when being stationary)</p><p>If we are not being magnetized as a species by 1355uT my scale or something is waaaaayyyy off! ;)</p><p>A little help please?</p></p>
Customer #440883 on SEN-10619 - Triple Axis Magnetometer Breakout - MAG3110Customer #440883urn:uuid:c5b3f62f-ee3e-b98a-6677-6c3893d2df1d2013-06-26T10:54:15-06:00<p>Actually if I understand this all correctly, the statement "you can hook as many up as you want considering that they have different addresses" is NOT correct... This device has a set 7-bit I2C address = 0x0E that cannot be modified. Therefore only one device can be on an I2C system and communicate properly...</p>
Toni_K on SEN-10619 - Triple Axis Magnetometer Breakout - MAG3110Toni_Kurn:uuid:50a12979-22b2-f3d8-0973-6d5b1523d3882013-05-03T13:10:47-06:00<p>It's code written for the Arduino IDE. You can download a version of it <a href="http://arduino.cc/en/Main/Software" rel="nofollow">here</a>.</p>
Customer #434625 on SEN-10619 - Triple Axis Magnetometer Breakout - MAG3110Customer #434625urn:uuid:755d04c7-1c86-faa3-5acc-6520de2d96062013-05-02T23:40:40-06:00<p>anybody can tell me what's the C compiler that are using in the example code. thanks.</p>
Customer #407214 on SEN-10619 - Triple Axis Magnetometer Breakout - MAG3110Customer #407214urn:uuid:27b43194-540d-20d1-4b06-be7e5da2f2f12013-03-11T08:29:25-06:00<p>Hello, I bought a MAG3110. And also I bought a USBI2C board to read the I2C. But the problem is that on MAG3110, there is the ''SDA'', ''SCL'' and also ''INT''. In the USBI2C board, there is no ''INT''.
So how can I connect them?
Thanks,</p>
Customer #416997 on SEN-10619 - Triple Axis Magnetometer Breakout - MAG3110Customer #416997urn:uuid:e51c82bd-b3c8-9141-c38a-1c70ee61d75e2013-03-08T11:54:32-07:00<p>Why is the reading from this magnetometer isn't the same as the WMM or IGRF models saying there is a large difference between them ???</p>
Tori on SEN-10619 - Triple Axis Magnetometer Breakout - MAG3110Toriurn:uuid:ab4d7b2d-5402-932a-22c0-9d42f06737392013-02-11T03:34:55-07:00<p>I'm not sure if this helps (after 11 months), but the DIE_TEMP register is in two's complement, meaning the value 252 would actually mean -4 °C. If you want to get dirty, you can call the MSb a sign bit and mask it with 0x3f.<p>A cleaner way to convert it would be through a union.</p></p>
MikeGrusin on SEN-10619 - Triple Axis Magnetometer Breakout - MAG3110MikeGrusinurn:uuid:df079f57-179e-7b90-b57b-971e56acebfe2013-01-17T10:43:50-07:00<p>I2C parts can only actively drive the SDA line to ground; for a logic-high signal, the line is left floating, and the pullup resistor determines the high voltage on the line.<p>If you are careful to power your 3.3V I2C part with 3.3V, and the pullup resistors are also connected to 3.3V, then you can safely connect a 3.3V I2C part to a 5V Arduino. (The Wire library will correctly not put a full 5V onto the I2C lines).</p><p>There is some controversy that the Wire library enables the internal weak pull-up resistors on the Arduino, which does put a weak 5V on the line. However, if you are also using external pullup resistors to 3.3V, the resulting voltage won't be greater than 3.6V, which is safe for the 3.3V parts.</p><p>tl;dr: in most cases this is safe to do. Hope this helps!</p></p>
Customer #238854 on SEN-10619 - Triple Axis Magnetometer Breakout - MAG3110Customer #238854urn:uuid:2012358c-d75e-5d0e-0c40-2e0068e06f652013-01-16T23:21:03-07:00<p>The SDA and SCL inputs of the sensor's two wire interface specify a voltage limit of 3.6 volts (+/- a bit) and (if I'm correct) the outputs of the arduino duemilanove are at 5 volts; do people usually accomplish this voltage drop with a voltage divider or an op-amp, or is it even necessary?</p>
Customer #97660 on SEN-10619 - Triple Axis Magnetometer Breakout - MAG3110Customer #97660urn:uuid:81db4aba-b6b9-a3b5-be45-2468ad8262352013-01-09T16:54:11-07:00<p>where can I get the Eagle library of the MAG3110 itself instead of the whole Eagle project?
Im looking for the ".lbr" not the ".sch" or ".brd"<p>thanks</p></p>
Customer #356082 on SEN-10619 - Triple Axis Magnetometer Breakout - MAG3110Customer #356082urn:uuid:bf93d4fa-8133-a5d6-43c3-7b089d0bc9582012-11-30T03:03:48-07:00<p>Hello,<p>I am running this chip on ARM SAM7 processor. But I am having problems with it. I also have other I2C sensors from sparkfun like BMA180, BMP085, TMP102 and they all run perfectly well, under my written software in I2C mode, except the MAG3110 which is driving me crazy...I checked all the addresses and everything in my software many times and everything is correct, but strange thing are happening. Once i write something to control registers 1 or 2 everytime I write something the chip factory ID changes. By default it is set to 0xC4, but depending on the values I write to control registers, like 0x01 to reg1 and 0x80 to reg to (like in datasheet example) I receive chip ID sometimes 0xFB, sometimes 0xEE, or 0xED...this is bullshit...I am not talking about mag values on XYZ axes which is total nonsense...Any Idea why this is happening to me? To be clear I connected only single chip to I2C, no other slaves. I have a hunch that the chip itself is faulty...if anyone have any other explanation please share your thoughts.</p><p>Best regards, Mantas</p></p>
CF Tech on SEN-10619 - Triple Axis Magnetometer Breakout - MAG3110CF Techurn:uuid:528756c9-c8db-1c65-05af-1b8a812bb3662012-10-30T11:33:54-06:00<p>Is this a good compass or not? BecauseI am confused. if there is a better compass can you send me a direct link pls. this is urgent</p>
Customer #344341 on SEN-10619 - Triple Axis Magnetometer Breakout - MAG3110Customer #344341urn:uuid:a9a0658b-9160-4b4d-ea25-11b49d3daf292012-09-26T16:39:03-06:00<p>Has anyone ever had luck programming these devices in LabVIEW in conjunction with a National Instruments USB-8451? Can you please post?</p>
Customer #356082 on SEN-10619 - Triple Axis Magnetometer Breakout - MAG3110Customer #356082urn:uuid:b8901c53-7cfb-e782-48f7-30ad71615ca42012-08-28T16:27:33-06:00<p>Yes SDA stands for serial DATA and SCL stands for serial CLOCK. You can hook up as many as you want considering that they have different addresses. Please read the datasheet before asking these questions. Everything is explained in detail there.<p>Best regards,
Mantas</p></p>
Customer #356082 on SEN-10619 - Triple Axis Magnetometer Breakout - MAG3110Customer #356082urn:uuid:076159eb-1731-8ee7-e90d-b273f50e78262012-08-28T16:24:20-06:00<p>One suggestion to Sparkfun is to make BOB with jumpers on headers, so the end user could decide whether he need a pull-up resistor or not for I2C bus, this way you will keep all customers happy!<p>Best regards,
Mantas</p></p>
Customer #344341 on SEN-10619 - Triple Axis Magnetometer Breakout - MAG3110Customer #344341urn:uuid:e5048792-44cd-021b-9f8f-c798f15d5eeb2012-08-13T11:38:36-06:00<p>Hi,<p>I'm just got this device, and I'm trying to hook it up to a NI-8451 (http://sine.ni.com/nips/cds/view/p/lang/en/nid/202368) or a Diolan DLN series (http://www.diolan.com/comparison/dln.html) I2C to USB converter.</p><p>Some questions since I'm new to this.</p><p>1.) Which pins on this breakout board do I solder to? Obviously VCC and GND, but SDA is your signal, and SCL is your clock? Just double checking. Any special type of wire gauge?</p><p>2.) How about if we wanted to hook up more than one magnetometer to the I2C to USB converter? Anyone have any knowledge with bus expanders?</p><p>Thanks!</p></p>
j_m on SEN-10619 - Triple Axis Magnetometer Breakout - MAG3110j_murn:uuid:d28ef9b8-7394-8bf7-248b-d48c4a274cdb2012-08-05T12:33:11-06:00<p>Hi,<p>does the magnetometer have a offset even after the factory calibration?
With no other parts or disturbing objects around it.</p><p>Would be great to know
Regards
Jakob</p></p>
MikeGrusin on SEN-10619 - Triple Axis Magnetometer Breakout - MAG3110MikeGrusinurn:uuid:f9200948-15c0-bc53-6280-6f1f65091dfb2012-06-11T12:11:03-06:00<p>We go back and forth on this, and because people either need them or they don't, we get complaints either way. ;) We're leaning towards including them by default, for the following reasons:<p>One is that the simplest use case, connecting a single BOB to a microcontroller, should be as painless as possible. Not everyone has the extra resistors, or a convenient location in the circuit to put them in (for example, directly connecting a BOB to an Arduino). Another is that if you don't need them, you're getting into the intermediate and advanced skill levels. We figure that for such users, it's much easier to remove the pullup resistors from a board (you can easily knock them off with a soldering iron), than it is to find the correct size and footprint of SMD resistor, and solder them on, if you <em>do</em> need them (especially for a beginner).</p><p>For some upcoming boards, we're trying pullup resistors tied to NC solder jumpers, to make it easy to disable them if desired. We hope this is the best of both worlds.</p><p>Thanks for your feedback, and good luck on your project!</p></p>
Alex1101 on SEN-10619 - Triple Axis Magnetometer Breakout - MAG3110Alex1101urn:uuid:9a12252d-f3d8-81ce-e080-22a0a079514f2012-06-10T21:59:58-06:00<p>First, the LSB is 0.1 uT, so to convert the result to micro-Tesla you need to multiply captured value by 0.1.<p>Second, as i noticed, this magnetometer has a huge offset (at least the one that I got) - for example, when I rotate the magnetometer the X value changes in the range of about 270 uT to 200 uT, while the proper range should be from about 35uT to -35uT. Looks like I need to load the x-offset register with something like -2350 (note: the user offset is applied to the raw measurement, which is calculated with LSB=0.1uT).</p></p>
Alex1101 on SEN-10619 - Triple Axis Magnetometer Breakout - MAG3110Alex1101urn:uuid:d648b486-6ad5-338f-a34d-d8298ae4fc7d2012-06-10T21:53:25-06:00<p>SparkFun Team,<p>Why do you put the pull-up resistors for SDA/SCL lines on the breakout boards? It is rather easy to pull up these lines on the breadboard or in a custom board, but this practice makes it really difficult to attach several sensors to the same I2C bus.</p><p>I was trying for some time to make this breakout board and the one for MPU-6050 to work on the same bus and was getting strange errors until I noticed that each of the breakout board includes the pull-up resistors (4.7 KOhm for MAG-3110 and 2.5 KOhmn on MPU-6050), which put the bus out of specs.</p><p>Regards,
--Alex</p></p>
GDF on SEN-10619 - Triple Axis Magnetometer Breakout - MAG3110GDFurn:uuid:73904b02-4e99-c1e6-03a0-92980547b02d2012-04-20T06:53:59-06:00<p>Hello I've got the same problem even if I tried the offset method:<pre><code>x = readx();
y = ready();
z = readz();
if(x > extrem[0][1]) extrem[0][1] = x;
if(y > extrem[1][1]) extrem[1][1] = y;
if(z > extrem[2][1]) extrem[2][1] = z;
if(x < extrem[0][0]) extrem[0][0] = x;
if(y < extrem[1][0]) extrem[1][0] = y;
if(z < extrem[2][0]) extrem[2][0] = z;
offset[0] = (extrem[0][0]+extrem[0][1] ) /2;
offset[1] = (extrem[1][0]+extrem[1][1] ) /2;
offset[2] = (extrem[2][0]+extrem[2][1] ) /2;
</code></pre></p>
dccharacter on SEN-10619 - Triple Axis Magnetometer Breakout - MAG3110dccharacterurn:uuid:6764a8cc-26df-5044-cbad-63b0c94db32f2012-04-10T15:11:02-06:00<p>same problem here with arduino/temperature. Reading 253/254/255</p>
nilohdez on SEN-10619 - Triple Axis Magnetometer Breakout - MAG3110nilohdezurn:uuid:5001a0e4-66e8-2f46-0b41-57c332af54ed2012-04-08T14:50:13-06:00<p>Hi, I bought this sensor here in sparkfun and when run example code in Arduino 1 the result is:
x=3320,y=-2750,z=-602
x=3323,y=-2755,z=-597
x=3323,y=-2752,z=-602
x=3317,y=-2751,z=-592<p>Any idea why the measurement are over 1000μT?.
Supply voltage is correct=3.3V from arduino.</p><p>Thanks for any help.</p></p>
Ricket_Cricket on SEN-10619 - Triple Axis Magnetometer Breakout - MAG3110Ricket_Cricketurn:uuid:42c24c84-b49f-9f76-efd2-d277dba9698a2012-04-04T03:12:02-06:00<p>We are having issues reading back a useable temperature value. We read 252 from the DIE_TEMP register using an arduino, at room temperature. The X Y Z, WHO_AM_I and everything looks fine.<p>The register value increases as the temperature increases, until it overflows. Does anyone know the process that needs to be followed to get a useable temperature value? Conversion, offset ?</p></p>
baum on SEN-10619 - Triple Axis Magnetometer Breakout - MAG3110baumurn:uuid:7ed0d051-490c-3cbd-dd58-1fcca358710d2012-01-22T05:59:58-07:00<p>I don't have any experience, but:
1.This one can go to a lower voltage: 1.95V versus 2.16V. If you are doing any battery powered application, you can save some power by running this as low as possible.<ol start="2">
<li><p>This one is more sensitive. 0.1µT = 1mG; the other one is 5mG.</p></li>
<li><p>There are a lot more in the datasheets, varying from maximum magnetic field to idle current... take a look.</p></li>
</ol></p>
juancamilog on SEN-10619 - Triple Axis Magnetometer Breakout - MAG3110juancamilogurn:uuid:e9d72074-60c3-ad4c-99d7-4007371c8a642012-01-07T01:12:54-07:00<p>You can correct the measurements by subtracting an offset from the measurements ( the offset for each axis is (max_measurement + min_measurement)/2 ). This should give you good enough readings. But if you want to be more accurate then you can collect readings while rotating the magnetometer in every direction and fit the measurements to a ellipse. An ellipse is described by the equation x'<em>A</em>x = 1, where x are your measurements. You need to find, using least squares, the values for the matrix A. After that, you can find the transformation that rotates and scales the ellipse into a circle by taking the Cholesky decomposition of A = L'L. With that, for every measurement x you get, you can get x_corrected = L*(x-offset_vector), and your measurements of the heading will be much more accurate. The only thing that is missing is to add an accelerometer to compensate for tilt</p>
juancamilog on SEN-10619 - Triple Axis Magnetometer Breakout - MAG3110juancamilogurn:uuid:4ad5f4a4-1c13-c2b5-72c9-a57a4b695b1c2012-01-07T01:07:38-07:00<p>With either this or the HMC5883L there would be distortion is you put it near a magnet or a ferromagnetic material. That is why you need to calibrate the measurements you get from these. Freescale has provided an application note which explains how to correct this effects.</p>
juancamilog on SEN-10619 - Triple Axis Magnetometer Breakout - MAG3110juancamilogurn:uuid:34ba8861-8d7c-bb8b-88ee-2affc92bac302012-01-07T01:01:57-07:00<p>A magnetometer is not necessarily a compass. There are applications where it is useful to know the direction of a magnetic field.</p>
juancamilog on SEN-10619 - Triple Axis Magnetometer Breakout - MAG3110juancamilogurn:uuid:10bfaa93-4757-7893-8bac-95f783ca37e02012-01-07T01:00:32-07:00<p>Hi,<p>Your problem is due to calibration. You need to correct the offset values, either by writing to the offset registers of the device (OFF_X_MSB ,etc) or by subtracting the offset from the measurements you get. This is caused by hard iron effects. Freescale has an application note (AN4246, i think) which explains this effect and how to correct it.</p></p>
baum on SEN-10619 - Triple Axis Magnetometer Breakout - MAG3110baumurn:uuid:350431a5-eb25-660f-4ab0-9b3422d88b7f2012-01-01T18:45:43-07:00<p>Why 3 dimensions? I understand x,y for N/S and E/W, but how would you use the z axis, especially if it’s not tilt compensated?</p>
Snobbotics on SEN-10619 - Triple Axis Magnetometer Breakout - MAG3110Snobboticsurn:uuid:82b1ed59-4492-7ffb-9d81-bbe086da1c102011-11-06T15:38:58-07:00<p>Also, how sensitive are these? If I had it next to a hard drive would there be a significant distortion?</p>
Snobbotics on SEN-10619 - Triple Axis Magnetometer Breakout - MAG3110Snobboticsurn:uuid:d429f8a8-c40b-ec1b-21b7-6656c9eebe7e2011-11-06T15:38:52-07:00<p>How does this magnetometer compare with http://www.sparkfun.com/products/10530 ? They are both the same price, both use I2C, so why sell both?</p>
MikeGrusin on SEN-10619 - Triple Axis Magnetometer Breakout - MAG3110MikeGrusinurn:uuid:8cb3581f-20df-940a-5720-ad2fbbc73ff12011-10-05T10:53:26-06:00<p>No plans at the moment, but you can always get them (maybe even free samples) from <a href="http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=MAG3110" rel="nofollow">Freescale</a></p>
Greeeg on SEN-10619 - Triple Axis Magnetometer Breakout - MAG3110Greeegurn:uuid:689260c5-85a9-d72b-a179-651c248b6a352011-10-04T20:10:29-06:00<p>Any chance you will start selling this without the breakout board, just the IC?</p>
wedontplay on SEN-10619 - Triple Axis Magnetometer Breakout - MAG3110wedontplayurn:uuid:d95fd0b7-bed7-9867-f478-629550e9e8852011-09-30T07:51:46-06:00<p>I tried to use this to calculate heading and i have for a full rotation 5 degrees of difference, between 55 and 60 degree:<br>
int getHeading(float x, float y, float z){<br>
float heading=0;<br>
if ((x == 0)&&(y < 0))<br>
heading= PI/2.0;<br>
if ((x == 0)&&(y > 0))<br>
heading=3.0<em>PI/2.0;<br>
if (x < 0)<br>
heading = PI - atan(y/x);<br>
if ((x > 0)&&(y < 0))<br>
heading = -atan(y/x);<br>
if ((x > 0)&&(y > 0))<br>
heading = 2.0</em>PI - atan(y/x);<br>
return int(degrees(heading));<br>
}</p>
wedontplay on SEN-10619 - Triple Axis Magnetometer Breakout - MAG3110wedontplayurn:uuid:7f80b9e6-4c2c-79ab-be54-1b7f0d10826d2011-09-29T18:50:20-06:00<p>Hi, i bought this mag sensor as i want to use it as a compass, i loaded your code but when i rotate it (parallel to the ground) the values change very little, about 6 degrees.<br>
I calculated the heading with:<br>
float heading = atan2(readx(), ready());<br>
float headingDegrees = heading * 180/PI;<br>
and i get these values:<br>
x=3398,y=-5064,z=-769<br>
heading=146.10.<br>
what do you think it could be the problem?</p>
A. Babb on SEN-10619 - Triple Axis Magnetometer Breakout - MAG3110A. Babburn:uuid:76ec729f-5908-6ebe-fc59-3940cf15deb62011-09-29T12:12:51-06:00<p>Yes, it's used exactly like a compass.<br>
Be warned though, these are sensitive to radio transmissions from stuff like the Xbee, WiFi, and your cellphone.</p>
Econaut on SEN-10619 - Triple Axis Magnetometer Breakout - MAG3110Econauturn:uuid:71fc6069-99bf-3496-15c4-6c990c1b78782011-09-14T10:59:49-06:00<p>So.. can this be used like a compass? ie a xy plane point of reference for orientation.</p>
Customer #135963 on SEN-10619 - Triple Axis Magnetometer Breakout - MAG3110Customer #135963urn:uuid:85c1c91f-99a5-e40b-f594-9208dd8d59ed2011-09-08T06:48:46-06:00<p>Does anyone have any experience to compare this with the Honeywell mags?</p>