Author Topic: Using Skyworks Si4730 FM/AM radio module with Arduino  (Read 747 times)

0 Members and 1 Guest are viewing this topic.

Offline XploDTopic starter

  • Newbie
  • Posts: 8
  • Country: hr
Using Skyworks Si4730 FM/AM radio module with Arduino
« on: March 18, 2024, 09:55:18 pm »
I have a tuner module (from Denon AVR-X1300W) with a Skyworks SI4731-D60 inside. I'm trying to use it with Arduino, but without luck. It's a complete board (with antenna connectors, oscillator, passive elements and everything), see attached images.

My module has the following pins: GND, INT, /RST, /CE, SDIO, SCLK, VCC, R_OUT, L_OUT.

I meassured it inside the AVR and VCC is 5V and serial communication is on 3.3V.

I have an Arduino Nano clone, and a 4CH bi-directional logic level converter. I did the following:
 - Converter HV -> Arduino +5V
 - Converter LV -> Arduino +3.3V
 - Tuner VCC ->Arduino +5V
 - Tuner GND -> Converter GND -> Arduino GND
 - Tuner SDIO -> Converter LV1-HV1 -> Arduino A4 (SDA)
 - Tuner SCLK -> Converter LV2-HV2 -> Arduino A5 (SCL)
 - Tuner /RST -> Converter LV4-HV4 -> Arduino D12
 - Tuner /CE -> /
 - Tuner INT ->/

I found this schematic on the example for PU2CLR's Arduino library for those tuner ICs. And I tried the "SI4735_01_POC.ino" example (Test and validation of the SI4735 Arduino Library). But it won't even detect my tuner, I keep getting "Si473X not found!". I also tried the I2C scanner but it doesn't detect any I2C device.

Do you have any idea what am I doing wrong? I guess the problem might be in the /CE and INT pins not being connected to anything, although the library and the tutorial found here https://pu2clr.github.io/SI4735 doesn't mention those pins. I guess the board they are using doesn't have those pins exposed. What should I do with them?

PS. I've also connected the audio out to my amplifier, I can hear a pop when I connect Arduino to USB and when I disconnect it, but there's no any sound at all. I guess the IC is muted by default.
 

Offline m k

  • Super Contributor
  • ***
  • Posts: 2009
  • Country: fi
Re: Using Skyworks Si4730 FM/AM radio module with Arduino
« Reply #1 on: March 29, 2024, 02:06:18 pm »
/CE is usually Chip Enable, here active low, so probably correctly grounded.

Don't know what INT is, maybe Interrupt or Internal.

The device has also an address, controller must known it.
Can't say anything about the scanner.
Advance-Aneng-Appa-AVO-Beckman-Data Tech-Fluke-General Radio-H. W. Sullivan-Heathkit-HP-Kaise-Kyoritsu-Leeds & Northrup-Mastech-REO-Simpson-Sinclair-Tektronix-Tokyo Rikosha-Triplett-YFE
(plus lesser brands from the work shop of the world)
 

Offline XploDTopic starter

  • Newbie
  • Posts: 8
  • Country: hr
Re: Using Skyworks Si4730 FM/AM radio module with Arduino
« Reply #2 on: March 29, 2024, 06:21:17 pm »
I haven't connected CE anywhere, it's floating in the air so that might be one of the problems. INT is probably interrupt, yes. But I don't know where to connect them to be able to use PU2CLR's library.

But I borrowed Bus Pirate and tried to analyze the communication when it's connected to original Denon's board, take a look on the images in attachment.

RST seems to be pulled high, INT low and /CE seems to be used actively by the Denon. It's pulled high when there's no communication, and then it gets set to low while the data is being sent and after that pulled high again.

So maybe I should try to connect RST to 3.3V, INT to GND. But what should I do with /CE? Can I just connect it to GND and make it low all the time, or should I find a way to integrate it into the library?
 

Offline m k

  • Super Contributor
  • ***
  • Posts: 2009
  • Country: fi
Re: Using Skyworks Si4730 FM/AM radio module with Arduino
« Reply #3 on: March 30, 2024, 10:21:09 am »
/RST is active low reset, so it must be high before anything can happen.

/CE seems to be active low Chip Enable, if there are no other devices you can leave it low.

INT is probably output and not mandatory.
Advance-Aneng-Appa-AVO-Beckman-Data Tech-Fluke-General Radio-H. W. Sullivan-Heathkit-HP-Kaise-Kyoritsu-Leeds & Northrup-Mastech-REO-Simpson-Sinclair-Tektronix-Tokyo Rikosha-Triplett-YFE
(plus lesser brands from the work shop of the world)
 

Offline XploDTopic starter

  • Newbie
  • Posts: 8
  • Country: hr
Re: Using Skyworks Si4730 FM/AM radio module with Arduino
« Reply #4 on: March 31, 2024, 08:53:05 pm »
I investigated the module today in details and confirmed that all pins are correctly connected to the Si4730 itself:

- INT -> you were correct; this is connected to the GPO2/INT (pin 18)
- RST -> connected to the RST (pin 5)
- CE -> connected to the SEN (pin 6)
- SDIO -> connected to the SDIO (pin 8)
- SCLK -> connected to the SCLK (pin 7)

I've left INT floating, I've connected CE to GND and the rest three I connected according to the following schematic (from the library itself):

| Si4735 pin      |  Arduino Pin  |
| ----------------| ------------  |
| RESET (pin 15)  |     12        |
| SDIO (pin 18)   |     A4        |
| CLK (pin 17)    |     A5        |

(I'm confused by those pin numbers in this docs as the number 1 in front seems to be not needed)

But I'm not able to get it working, the library won't recognize it.

Maybe I'm doing something wrong with Arduino? I have an Arduino Nano clone from eBay. I've connected SDIO to A4, SCLK to A5 and RST to D12 (the last one). A4 and A5 are supposed to be I2C pins on Arduino Nano and RST is defined like this:

#define RESET_PIN 12

Maybe this is wrong?
 

Offline m k

  • Super Contributor
  • ***
  • Posts: 2009
  • Country: fi
Re: Using Skyworks Si4730 FM/AM radio module with Arduino
« Reply #5 on: April 01, 2024, 10:28:20 am »
So after all /CE seems to be something else than Chip Enable.
/SEN is for 3-wire control.

Datasheet chapter 4.19 (p.26/40) has Control Interface.
It says that bus mode is selected when /RST goes up.

One can guess that since /SEN is used 3-wire control is also in use.
There transaction starts when /SEN goes low.

For 3-wire control GPO1 must have a pull-down when /RST goes up.
If that is the case, for 2-wire control you must prevent that pull-down.

You can also try Arduino scanner.
It's simple, you know what it is and it should see you device.
With it you can also easily add controlling pins when needed.
Advance-Aneng-Appa-AVO-Beckman-Data Tech-Fluke-General Radio-H. W. Sullivan-Heathkit-HP-Kaise-Kyoritsu-Leeds & Northrup-Mastech-REO-Simpson-Sinclair-Tektronix-Tokyo Rikosha-Triplett-YFE
(plus lesser brands from the work shop of the world)
 

Offline XploDTopic starter

  • Newbie
  • Posts: 8
  • Country: hr
Re: Using Skyworks Si4730 FM/AM radio module with Arduino
« Reply #6 on: April 01, 2024, 12:41:43 pm »
Now I'm confused even more. This means that I can't use the library that I linked?

I really want to avoid manually sending bits to it since it's a rather complex IC with many options.
 

Offline m k

  • Super Contributor
  • ***
  • Posts: 2009
  • Country: fi
Re: Using Skyworks Si4730 FM/AM radio module with Arduino
« Reply #7 on: April 01, 2024, 05:31:42 pm »
You can change its operation to 2-wire.
Just disconnect GPO1 from its pull-down.
The chip has internal pull-up, so 2-wire is a default style.
Advance-Aneng-Appa-AVO-Beckman-Data Tech-Fluke-General Radio-H. W. Sullivan-Heathkit-HP-Kaise-Kyoritsu-Leeds & Northrup-Mastech-REO-Simpson-Sinclair-Tektronix-Tokyo Rikosha-Triplett-YFE
(plus lesser brands from the work shop of the world)
 

Offline mariush

  • Super Contributor
  • ***
  • Posts: 5029
  • Country: ro
  • .
Re: Using Skyworks Si4730 FM/AM radio module with Arduino
« Reply #8 on: April 01, 2024, 05:44:49 pm »
In case it helps, Mikroe has a board with Skyworks Si4732 : https://www.mikroe.com/amfm-2-click

They have api and source code free on github : https://github.com/MikroElektronika/mikrosdk_click_v2/tree/master/clicks/amfm2

 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf