• Source code (Arduino sketch) uploaded to GitHub

    kodera2t04/19/2018 at 12:39 0 comments

    Here I uploaded Arduino sketch for Si4720 FM transceiver.

    Basic part is,

    Receiver initialize and setting receiving frequency

        i2c_write(RADIO,0x01,0b10010000,0b00000101);//receive boot up command, receiver, crystal enabled, analogoutput
        i2c_write4(RADIO,0x20,0x00,s_upper2,s_lower2,0x05);//receive set frequency  

     Transmitting initialization part:

      i2c_write(RADIO,0x01,0xd2,0x50);
      i2c_write5(RADIO,0x12,0x00,0x21,0x01,0x1d,0x4c); //TX FM deviation to 75kHz
      i2c_write5(RADIO,0x12,0x00,0x21,0x04,0b00000010,0b01111111); //TX line level                                                                                                                                                                                                
      i2c_write5(RADIO,0x12,0x00,0x21,0x06,0x00,0x01); //TX pre-emphasis to 50us
      i2c_write5(RADIO,0x12,0x00,0x22,0x00,0x00,0x03); //TX limiter enable
      
      i2c_write5(RADIO,0x12,0x00,0x21,0x04,0x21,0x5E);
      i2c_write5(RADIO,0x12,0x00,0x00,0x01,0x00,0xC1);
      i2c_write5(RADIO,0x12,0x00,0x21,0x07,0x4a,0x38); 
      i2c_write4(RADIO,0x31,0x00,0x00,0x78,0x00);
      i2c_write3(RADIO,0x30,0x00,s_upper2,s_lower2);  

    Default deviation is not 75kHz so we have to set it. Also the default de-emphasis time constant  of receiver is Asia Europe (50us) but transmitter is 75us of US.

    Both SSD1306 OLED and Si4720 are connected to Mega328P through I2C.

  • What is upper and lower limit frequency of operation?

    kodera2t04/18/2018 at 06:42 0 comments

    The chip KT0915 of the other DSP radio project has a bonus frequency range well covering avionics frequency (around up to 140MHz) and it is curious how the Si4720 covers the frequency band. Here I checked it..

    The first one is the lower limit of transmitting. As is written in data sheet, the lower limit is 76MHz (I am not sure the 400kHz offset).

    And the next one is the upper limit of transmitting. Also as the same as lower limit, it is up to 108 as in datasheet. Off-band data can be sent to Si4720 but it simply cease to operate outside.

    Next is the receiving lower limit measurement. It was 64MHz. The frequency data below 64MHz can be sent but it simply not receive any signal.

    And the result of receiving. I indeed expect bonus extra upper limit but,,,,,

    108 MHz

    is the upper limit of reception. Not so interesting at all...

    So the summary is

    lower limit (MHz)Upper limit (MHz)
    Transmitter76 108
    Receiver64108

    Hummmmm.....

  • Mysterious "sample circuit"

    kodera2t04/18/2018 at 01:05 0 comments

    The data sheet of Si4720 says integrated crystal oscillator can be activated at booting, and relevant sample circuit can be found in the data sheet. 

    BUT

    As you see, one of the terminal of crystal as shown inset of figure is not written. One side is RCLK, which is clear, but the other is where!!!!!

    The answer is,,,,

    It's GPO3. In the sample circuit, GPO3 of Si4720 is connected to GND but cut it and connect one of the additional 32.768 kHz crystal circuit and activate it on booting, it starts oscillate. I don't know why but inside Si4720 data sheet, this fact is not described.. why?

  • So how it is made..

    kodera2t04/18/2018 at 00:04 0 comments

    Here is the whole schematic. Actually nothing to hide. Si4720 receives I2C commend from ATmega328P with Arduino bootloader and also tiny OLED (64x32 pixels) is connected through I2C bus. One rotary encoder is added for the purpose of frequency control.

    Actual operation can be found in the following movie...