LieBtrau / arduino-as3933

Arduino interface to the AS3933 3D LF wakeup receiver
GNU General Public License v3.0
14 stars 15 forks source link

calibration #11

Closed c26steam closed 9 months ago

c26steam commented 1 year ago

i'm trying to utilize this library and i'm having issues getting it to function. I was initially failing to communicate with the as3933, but I believe I have all the wiring correct and I can start the calibration function, but the frequency is always 0.

14:20:06.217 -> r5: 69 14:20:06.217 -> r6: 96 14:20:06.217 -> Tuning antenna : LF1 14:20:06.250 -> Testing bit: 4 14:20:07.184 -> Frequency: 0 14:20:07.184 -> Testing bit: 3 14:20:08.168 -> Frequency: 0 14:20:08.168 -> Testing bit: 2 14:20:09.172 -> Frequency: 0 14:20:09.173 -> Testing bit: 1 14:20:10.165 -> Frequency: 0 14:20:10.200 -> Testing bit: 0 14:20:11.162 -> Frequency: 0 14:20:11.193 -> Calibration for antenna 1 fails

here is a photo of my schematic,

image

not really sure where to go from here. there is a high possibility that this chip is fried because i supplied 5v power to the crystal osc rather than ground initially, but this is the only as3933 i have available at the moment. let me know what you think, thank you!

LieBtrau commented 1 year ago

Hi, Your schematic seems incomplete and incorrect:

  1. The L1, C3 connection is incorrect. The wire next to R1 short-circuits L1 & C3. This can never oscillate.
  2. C3 should be chosen such that it makes a parallel LC-circuit with L1. That would be 1.6nF. I would start with 1.5nF.
  3. No connections on SDO, SDI, SCL
  4. LED1 is floating
  5. The common node of C1 and C2 should be connected to VCC according to the datasheet. It's probably floating in your design.

Once you fixed this, I suggest using an oscilloscope (10x probe) to :

  1. verify that X1 is oscillating
  2. verify oscillation on L1.
  3. Tune C3 (by adding extra capacitors, so provide extra footprints in your pcb-layout) to get maximum oscillation at 125kHz. The AS3933 has internal tuning, but the tuning range is limited. Just enough to correct for manufacturing tolerances).

I don't know what your reason is for using this IC, but I guess in most applications a Bluetooth Low Energy solution would be superior to an LF-wakeup receiver, see also one of my previous comments.

c26steam commented 1 year ago

Thank you for your quick response, i've taken everything you said into consideration.

the short circuit was an error and I had my actual circuit correct. I changed the capacitor to a 1.5 nf and the best result I got was a frequency of 1hz on bit 3, and was not able to recreate it. I changed out X1, c1, and c2 for new components & connected c1 and c2 to vcc pin, and still nothing. I did the calculations for the inductance and capacitance of my antenna and I will need entirely different values, 38 ohm rather than 680k ohm, and a 6.5nf capacitor instead of 100 pf I had originally thought. I don't have access to an oscilloscope at the moment, so that is kinda out of the question. I'm going to head to the electronics store and pick up new resistors and capacitors & try again. any other ideas ?

c26steam commented 1 year ago

I've put the new resistors/capacitors in but I'm still getting a 0 resonant frequency, with the occasional 1hz. where do you think I went wrong? i've checked the connections on my device and everything seems alright and accurate with my new schematic.

LieBtrau commented 1 year ago

Hi, You can't develop electronics when you're lacking even the basic tools, such as an oscilloscope. Maybe someone can lend you one or buy an old analog scope from eBay for €50. There are better ways to spend your time than trying to get this to work without an oscilloscope. Either get a temporary job to get the money to buy an oscilloscope or start saving money so that you can buy one. In the mean time, you can go to your local library and read about electronics (e.g. The Art of Electronics) to increase your knowledge. I also started electronics a long time ago, only having a multimeter. Finally I bought a second hand oscilloscope from the school I attended. I should have done the buy much earlier, it would have saved me lots of time and frustration. I'm only advising you to not repeat my mistakes.

I guess you're prototyping this circuit on perfboard. Make sure to get your grounding right. I doubt that your calculations for the RLC are correct. 38Ω seems like a much too small value. Your parallel resonance will be too heavily damped.

c26steam commented 1 year ago

do you think incorrect values in the lcr circuit would entirely mess up the antenna tuning and return a 0? or its an issue with oscillation? and yeah, I don't have too large of a budget but I was looking at this oscilloscope and i believe it fits my needs, to verify if the 32.768 oscillators is oscillating. I was also reading the as3933 datasheet, and I see this: "The Three channels can be tuned separately. The host system (MCU) has to connect the LC-oscillator to the antenna to measure the resonance frequency on the pin CL_DAT. "

in my device, I do not have any pins connected to DAT, or CL_DAT. The only pins I have connected to my arduino are the spi pins. Is this my issue?

Thank you for your time.

LieBtrau commented 1 year ago

Hi, The oscilloscope you're suggesting should be sufficient for debugging this design. Incorrect values will certainly mess up antenna tuning. The internal tuning of the AS3933 can only make small adjustments to the parallel capacitor. The datasheet and application note describe how to do the antenna tuning. An internal LCoscillator of the AS3933 is connected to the antenna. The oscillation signal can be read from the CL_DAT or DAT pin. You should be able to measure that with your scope. If that is ok, you can connect it to the MCU for some kind of auto-tuning routine.

c26steam commented 12 months ago

I've been messing around with this for a long time today, and I am not able to get communication from the as3933 and i am stumped. I can't even get to the point I was at before, at least getting the correct default register values from the as3933.

is there an issue with my schematic ? or an issue with connections ? i have followed it exactly onto a breadboard.

image image
c26steam commented 12 months ago

The values of R5 & r6 will switch from : 00:50:15.403 -> r5: 80 00:50:15.403 -> r6: 0 or 00:41:25.516 -> r5: 0 00:41:25.516 -> r6: 0 or 00:32:38.159 -> r5: FF 00:32:38.186 -> r6: FF

with no changes to any of the hardware. where have i gone wrong? any ideas ?

c26steam commented 11 months ago

well i designed a pcb and used jclpcb's assembly service because I am almost certain it is a hardware issue on my end. here's my schematic that should work according to the datasheet,

image image

we'll see i guess💯

LieBtrau commented 11 months ago

Hi, When electronics hardware doesn't work, the first thing to do is to check the integrity of the power supply with a multimeter (or oscilloscope). You should ask yourself the following questions:

  1. What is the maximum supply voltage of my IC according to absolute maximum ratings in the datasheet?
  2. What is the value of the supply voltage that I actually measure using a multimeter?
LieBtrau commented 9 months ago

C26steam finally gave up.