smcdouall

*
Newbie
Posts: 2
Logged
Hi, I'm getting an error with the code here when using the code in this tutorial https://tinycircuits.com/blogs/learn/arduino-speedometer-hall-sensor-magnet.

The result from hall.readMag() in the TinyCircuits_A1454.cpp is always -1. This is because the x and y values in the function are also -1. This is regardless of the magnets position to the sensor. I have tried swapping out various sensors/cables/Arduinos and even tried it on other computers and it still doesn't work. Around two weeks ago this code did work as intended. I am wondering if there has been an update to one of the libraries that has caused something to no longer work?

I tried ChatGPT a little and it found that running the following:

byte err = Wire.endTransmission();
Serial.print("I2C error: ");
Serial.println(err);

Resulted in err = 2 which apparently means "2: Received NACK on transmit of address".

This apparently means the board sent the sensor's I²C address, but the sensor didn't acknowledge it (NACKed it)

It also suggested trying an I²C scan to see what devices it could find. The only one it could find was 0x70 which I believe is the TinyCircuits Wireling TinyShield.

Any help would be greatly appreciated. This code was working before and now doesn't when I've tried to upload it to other Arduinos/the same original one.

smcdouall

*
Newbie
Posts: 2
Logged
Solved it. Looks like the issue was I was using the digital hall sensors instead of the analogue ones. Looking on this https://learn.tinycircuits.com/Wirelings/Hall-Effect_Wireling_Tutorial/ you can see the two sensors do vary slightly (the analogue one has a larger chip).

Just posting my reply here in case this helps anyone else out in the future.

DorothyJames

*
Newbie
Posts: 2
Logged
Quote from: smcdouall on September 01, 2025, 08:30:17 AMSolved it. Looks like the issue was I was using the digital hall sensors instead of the analogue ones. Looking on this https://learn.tinycircuits.com/Wirelings/Hall-Effect_Wireling_Tutorial/ you can see the two sensors do vary slightly (the analogue one has a larger chip). Pacman 30th Anniversary

Just posting my reply here in case this helps anyone else out in the future.

Seeing "Received NACK on transmit of address" is frustrating! Have you tried shortening your I²C wires? I had a similar issue once, and simply using shorter, higher-quality wires solved the problem, seemingly addressing some signal degradation.

Could signal degradation be the issue?

Tannersville

*
Newbie
Posts: 1
Logged
@Crazy Cattle 3D It sounds like you're dealing with quite a frustrating issue! From what you've described, it could indeed be related to library updates or hardware conflicts. Double-checking your connections and ensuring all components are compatible might help too.

SMF spam blocked by CleanTalk