<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://devzone.nordicsemi.com/cfs-file/__key/system/syndication/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>nRF52 with WM8960 CODEC</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/84676/nrf52-with-wm8960-codec</link><description>Hi, 
 I am trying to interface WM8960 CODEC with nRF52832 using (I2S and I2C) . 
 Problem I am having is with TWI scanner and also sending data to the know i2c address . have error code of 1 
 
 
 
 but as same board . testing with Arduino uno and STM32</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Fri, 25 Feb 2022 16:54:00 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/84676/nrf52-with-wm8960-codec" /><item><title>RE: nRF52 with WM8960 CODEC</title><link>https://devzone.nordicsemi.com/thread/355096?ContentTypeID=1</link><pubDate>Fri, 25 Feb 2022 16:54:00 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:f6260f27-d0bc-46fd-abe6-3abe386fdf4a</guid><dc:creator>J&amp;#248;rgen Holmefjord</dc:creator><description>&lt;p&gt;The I2S peripheral in nRF52832/833/840 have a &lt;a href="https://infocenter.nordicsemi.com/topic/com.nordic.infocenter.nrf52832.ps.v1.1/i2s.html#register.RXTXD.MAXCNT"&gt;MAXCNT register width of 14-bits&lt;/a&gt;, which means you can send up to&amp;nbsp;&lt;span&gt;16383 32-bit words in one transfer.&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF52 with WM8960 CODEC</title><link>https://devzone.nordicsemi.com/thread/354539?ContentTypeID=1</link><pubDate>Wed, 23 Feb 2022 11:43:06 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:86c55d4a-3f92-454c-9462-7eed826e216c</guid><dc:creator>Sunil vignesh</dc:creator><description>&lt;p&gt;Is there a limit for the buffer &lt;/p&gt;
&lt;p&gt;Is it possible to send array[50000];&lt;/p&gt;
&lt;p&gt;because i am having the wave data file that is 4,00,000 of data in array&lt;/p&gt;
&lt;p&gt;if i want to split and send max limit for i2s send is 65535 isn&amp;#39;t it.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF52 with WM8960 CODEC</title><link>https://devzone.nordicsemi.com/thread/354524?ContentTypeID=1</link><pubDate>Wed, 23 Feb 2022 10:18:40 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:f5cba3a0-3142-4c25-8547-2c07f457b0a4</guid><dc:creator>J&amp;#248;rgen Holmefjord</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;You can find the&amp;nbsp;&lt;a title="I2S Loopback Example" href="https://infocenter.nordicsemi.com/topic/sdk_nrf5_v17.1.0/i2s_example_loopback.html?cp=8_1_4_6_15"&gt;I2S Loopback Example&lt;/a&gt;. To use it for sending audio to speaker, simply replace the data with the audio data, remove the rx buffer (.p_rx_buffer = NULL) and remove the check of received data.&lt;/p&gt;
&lt;p&gt;Best regards,&lt;br /&gt;Jørgen&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF52 with WM8960 CODEC</title><link>https://devzone.nordicsemi.com/thread/354458?ContentTypeID=1</link><pubDate>Wed, 23 Feb 2022 05:15:54 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:42ed6e9f-0941-4eb5-b3ba-21eee44fd403</guid><dc:creator>Sunil vignesh</dc:creator><description>&lt;p&gt;Hi &lt;span&gt;J&amp;oslash;rgen&lt;/span&gt;,&lt;/p&gt;
&lt;p&gt;Thank you for the reply. I understand that. I have some other query related to nrf i2s protocol and their transmission with easy DMA . also created new query &lt;a href="https://devzone.nordicsemi.com/f/nordic-q-a/85032/wm8960-i2s-easydma"&gt;here &lt;/a&gt;&lt;/p&gt;
&lt;p&gt;possible can you give me the example for I2s audio play back example or link&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF52 with WM8960 CODEC</title><link>https://devzone.nordicsemi.com/thread/354430?ContentTypeID=1</link><pubDate>Tue, 22 Feb 2022 18:52:15 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:39de3848-2a84-4367-89c8-253801778f45</guid><dc:creator>J&amp;#248;rgen Holmefjord</dc:creator><description>&lt;p&gt;I have not worked with&amp;nbsp;&lt;span&gt;WM8960&amp;nbsp;before, so I can&amp;#39;t comment on how to use this apart from interfacing from the nRF52. You should contact the manufacturer of the device regarding how to use it.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;If it supports both recording audio from mic and playing audio on speaker, you need to connect both SDIN and SDOUT pins.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;I2S is not intended for use with NEOPIXEL, it is just possible to make the I2S peripheral output signals that can control the NEOPIXEL by connecting the SDOUT pin. When using I2S for audio, WS (LRCK), CLK, and SD pin is required.&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF52 with WM8960 CODEC</title><link>https://devzone.nordicsemi.com/thread/354186?ContentTypeID=1</link><pubDate>Mon, 21 Feb 2022 14:42:28 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:0d52e4ad-9e7f-4a71-bb1e-508434d8b67a</guid><dc:creator>Sunil vignesh</dc:creator><description>&lt;p&gt;Hi &lt;span&gt;J&amp;oslash;rgen&lt;/span&gt;,&lt;/p&gt;
&lt;p&gt;I have tested and in twi scanner it is not responding. and If i tried to write the data with the given format the i2c line works.&lt;/p&gt;
&lt;p&gt;Have you work with this WM8960 CODEC module&lt;/p&gt;
&lt;p&gt;I am trying to connect I2S line to tap audio from MIC and transmit to speaker.&lt;/p&gt;
&lt;p&gt;Previously i worked with I2S for NEOPIXEL where i have connect only the SDIN pin&lt;/p&gt;
&lt;p&gt;But here i found&lt;/p&gt;
&lt;p&gt;WS,I2S_CLK, SDIN, SDOUT&lt;/p&gt;
&lt;p&gt;in WM8960 i found WS,CLK, TXSDA, RXSDA.&lt;/p&gt;
&lt;p&gt;I am confusing with pin connection to tap audio signal and also i need to generate audio to the speaker so. as like NEOPIXEL i just need to connect only SDIN to the TXSDA ?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF52 with WM8960 CODEC</title><link>https://devzone.nordicsemi.com/thread/353692?ContentTypeID=1</link><pubDate>Thu, 17 Feb 2022 16:31:24 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:891ebf9d-d945-4b3c-8569-820739d1a76f</guid><dc:creator>J&amp;#248;rgen Holmefjord</dc:creator><description>&lt;p&gt;I looked at the logic trace, and it seems to correctly setup a read on address 0x1A, which should be the address of the&amp;nbsp;&lt;span&gt;WM8960. However, there is no ACK from the slave, which is why you can&amp;#39;t detect it from the code.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;If you are sure that this is the correct address, you may want to remove the other addresses, and check only this address with a scope, to look at the voltage levels, etc. You may also want to compare the scope image from the nRF with scope images from the working communication on the Arduino/STM32.&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF52 with WM8960 CODEC</title><link>https://devzone.nordicsemi.com/thread/353514?ContentTypeID=1</link><pubDate>Thu, 17 Feb 2022 07:25:41 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:868b89d0-c805-4f38-a584-9507b5fb1afc</guid><dc:creator>Sunil vignesh</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;I have checked with the logic analyzer i got result like this&lt;/p&gt;
&lt;p&gt;&lt;img src="https://devzone.nordicsemi.com/resized-image/__size/320x240/__key/communityserver-discussions-components-files/4/pastedimage1645082554881v1.png" alt=" " /&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;I hope you will have the software&lt;/p&gt;
&lt;p&gt;&lt;a href="https://www.saleae.com/downloads/"&gt;https://www.saleae.com/downloads/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="https://devzone.nordicsemi.com/cfs-file/__key/communityserver-discussions-components-files/4/Session-0.zip"&gt;devzone.nordicsemi.com/.../Session-0.zip&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF52 with WM8960 CODEC</title><link>https://devzone.nordicsemi.com/thread/353182?ContentTypeID=1</link><pubDate>Tue, 15 Feb 2022 17:21:43 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:5932ca28-1cef-4169-bc5f-ac34e51dab02</guid><dc:creator>Sunil vignesh</dc:creator><description>&lt;p&gt;Yes, Usually I tried without shift address but no response in the twi line &lt;/p&gt;
&lt;p&gt;i have checked with reference of STM code where the same codec board gets scanned and also able to bring up the codec module.&lt;/p&gt;
&lt;p&gt;I can say that CODEC board works perfect . we can check the logic trace&lt;/p&gt;
&lt;p&gt;what about project configuration . i am using the default TWI SCANNER project configuration&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF52 with WM8960 CODEC</title><link>https://devzone.nordicsemi.com/thread/353171?ContentTypeID=1</link><pubDate>Tue, 15 Feb 2022 16:43:49 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:5dae694b-8869-4c58-af4d-0ea6df817f9b</guid><dc:creator>J&amp;#248;rgen Holmefjord</dc:creator><description>&lt;p&gt;I&amp;#39;m not sure why you added a shift in the address, but if I revert your code back to &amp;quot;err_code = nrf_drv_twi_rx(&amp;amp;m_twi, &lt;strong&gt;address&lt;/strong&gt;, &amp;amp;sample_data, sizeof(sample_data))&amp;quot;, I&amp;#39;m able to correctly detect another I2C sensor.&lt;/p&gt;
&lt;p&gt;If you are not able to detect your sensor with this code, there is either something wrong with the sensor/connections/logic levels/etc, or in your project configuration.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF52 with WM8960 CODEC</title><link>https://devzone.nordicsemi.com/thread/353161?ContentTypeID=1</link><pubDate>Tue, 15 Feb 2022 16:03:26 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e0e2458b-97f9-4c4b-a0a9-76f929c44b04</guid><dc:creator>Sunil vignesh</dc:creator><description>&lt;p&gt;This is the code which i used &lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="c_cpp"&gt;/**
 * Copyright (c) 2016 - 2021, Nordic Semiconductor ASA
 *
 * All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without modification,
 * are permitted provided that the following conditions are met:
 *
 * 1. Redistributions of source code must retain the above copyright notice, this
 *    list of conditions and the following disclaimer.
 *
 * 2. Redistributions in binary form, except as embedded into a Nordic
 *    Semiconductor ASA integrated circuit in a product or a software update for
 *    such product, must reproduce the above copyright notice, this list of
 *    conditions and the following disclaimer in the documentation and/or other
 *    materials provided with the distribution.
 *
 * 3. Neither the name of Nordic Semiconductor ASA nor the names of its
 *    contributors may be used to endorse or promote products derived from this
 *    software without specific prior written permission.
 *
 * 4. This software, with or without modification, must only be used with a
 *    Nordic Semiconductor ASA integrated circuit.
 *
 * 5. Any software provided in binary form under this license must not be reverse
 *    engineered, decompiled, modified and/or disassembled.
 *
 * THIS SOFTWARE IS PROVIDED BY NORDIC SEMICONDUCTOR ASA &amp;quot;AS IS&amp;quot; AND ANY EXPRESS
 * OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
 * OF MERCHANTABILITY, NONINFRINGEMENT, AND FITNESS FOR A PARTICULAR PURPOSE ARE
 * DISCLAIMED. IN NO EVENT SHALL NORDIC SEMICONDUCTOR ASA OR CONTRIBUTORS BE
 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
 * GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
 * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 *
 */
/** @file
 * @defgroup tw_scanner main.c
 * @{
 * @ingroup nrf_twi_example
 * @brief TWI Sensor Example main file.
 *
 * This file contains the source code for a sample application using TWI.
 *
 */

#include &amp;lt;stdio.h&amp;gt;
#include &amp;quot;boards.h&amp;quot;
#include &amp;quot;app_util_platform.h&amp;quot;
#include &amp;quot;app_error.h&amp;quot;
#include &amp;quot;nrf_drv_twi.h&amp;quot;



#include &amp;quot;nrf_log.h&amp;quot;
#include &amp;quot;nrf_log_ctrl.h&amp;quot;
#include &amp;quot;nrf_log_default_backends.h&amp;quot;

/* TWI instance ID. */
#if TWI0_ENABLED
#define TWI_INSTANCE_ID     0
#elif TWI1_ENABLED
#define TWI_INSTANCE_ID     1
#endif

 /* Number of possible TWI addresses. */
 #define TWI_ADDRESSES      127

/* TWI instance. */
static const nrf_drv_twi_t m_twi = NRF_DRV_TWI_INSTANCE(TWI_INSTANCE_ID);


/**
 * @brief TWI initialization.
 */
void twi_init (void)
{
    ret_code_t err_code;

    const nrf_drv_twi_config_t twi_config = {
       .scl                = ARDUINO_SCL_PIN,
       .sda                = ARDUINO_SDA_PIN,
       .frequency          = NRF_DRV_TWI_FREQ_100K,
       .interrupt_priority = APP_IRQ_PRIORITY_HIGH,
       .clear_bus_init     = false
    };

    err_code = nrf_drv_twi_init(&amp;amp;m_twi, &amp;amp;twi_config, NULL, NULL);
    APP_ERROR_CHECK(err_code);

    nrf_drv_twi_enable(&amp;amp;m_twi);
}

#define WM8960_ADDRESS  0x1a


#define DMA_MAX_SZE     0xFFFF
#define DMA_MAX(x)      (((x) &amp;lt;= 0xFFFF)? (x):0xFFFF)
#define AUDIODATA_SIZE  2   /* 16-bits audio data size */

#define AUIDO_START_ADDRESS       58 /* Offset relative to audio file header size */



uint32_t AudioTotalSize;  /* This variable holds the total size of the audio file */
uint32_t AudioRemSize;    /* This variable holds the remaining data in audio file */
uint16_t *CurrentPos;     /* This variable holds the current position of audio pointer */
uint32_t WaveDataLength=0;
uint8_t XferCplt;
//resgister value
static uint16_t WM8960_REG_VAL[56] =
{
  0x0097, 0x0097, 0x0000, 0x0000, 0x0000, 0x0008, 0x0000, 0x000A,
  0x01C0, 0x0000, 0x00FF, 0x00FF, 0x0000, 0x0000, 0x0000, 0x0000,
  0x0000, 0x007B, 0x0100, 0x0032, 0x0000, 0x00C3, 0x00C3, 0x01C0,
  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
  0x0100, 0x0100, 0x0050, 0x0050, 0x0050, 0x0050, 0x0000, 0x0000,
  0x0000, 0x0000, 0x0040, 0x0000, 0x0000, 0x0050, 0x0050, 0x0000,
  0x0000, 0x0037, 0x004D, 0x0080, 0x0008, 0x0031, 0x0026, 0x00ED
};
/* USER CODE END PFP */

/* Private user code ---------------------------------------------------------*/
/* USER CODE BEGIN 0 */
/**
  * @brief  Write register of WM8960.
  * @param  reg: The number of resigter which to be read.
  * @param  dat: The data which will be writeen to the register.
  * @retval The value of regsiter.
  */
uint8_t WM8960_Write_Reg(uint8_t reg, uint16_t dat)  {

  uint8_t res,I2C_Data[2];

  I2C_Data[0] = (reg&amp;lt;&amp;lt;1)|((uint8_t)((dat&amp;gt;&amp;gt;8)&amp;amp;0x0001));  //RegAddr
  I2C_Data[1] = (uint8_t)(dat&amp;amp;0x00FF);                  //RegValue

    res = nrf_drv_twi_tx(&amp;amp;m_twi,(WM8960_ADDRESS&amp;lt;&amp;lt;1),I2C_Data,2,false);
  //res = HAL_I2C_Master_Transmit(&amp;amp;hi2c1,(WM8960_ADDRESS&amp;lt;&amp;lt;1),I2C_Data,2,10);
  if(res == NRF_SUCCESS)
    WM8960_REG_VAL[reg] = dat;

  return res;
}

/**
  * @brief  Read register of WM8960.
  * @param  reg: The number of resigter which to be read.
  * @retval The value of regsiter.
  */
uint16_t WM8960_Read_Reg(uint8_t reg) {

  return WM8960_REG_VAL[reg];
}


/**
  * @brief  Initialize WM8960 device.
  * @param  None
  * @retval None
  */
uint8_t WM89060_Init(void)  {

  uint8_t res;

  //Reset Device
  res = WM8960_Write_Reg(0x0f, 0x0000);
  if(res != 0)
    return res;
  else
    printf(&amp;quot;WM8960 reset completed !!\r\n&amp;quot;);

  //Set Power Source
  res =  WM8960_Write_Reg(0x19, 1&amp;lt;&amp;lt;8 | 1&amp;lt;&amp;lt;7 | 1&amp;lt;&amp;lt;6);
  res += WM8960_Write_Reg(0x1A, 1&amp;lt;&amp;lt;8 | 1&amp;lt;&amp;lt;7 | 1&amp;lt;&amp;lt;6 | 1&amp;lt;&amp;lt;5 | 1&amp;lt;&amp;lt;4 | 1&amp;lt;&amp;lt;3);
  res += WM8960_Write_Reg(0x2F, 1&amp;lt;&amp;lt;3 | 1&amp;lt;&amp;lt;2);
  if(res != 0)  {
    printf(&amp;quot;Source set fail !!\r\n&amp;quot;);
    printf(&amp;quot;Error code: %d\r\n&amp;quot;,res);
    return res;
  }

  //Configure clock
  //MCLK-&amp;gt;div1-&amp;gt;SYSCLK-&amp;gt;DAC/ADC sample Freq = 25MHz(MCLK)/2*256 = 48.8kHz
  WM8960_Write_Reg(0x04, 0x0000);

  //Configure ADC/DAC
  WM8960_Write_Reg(0x05, 0x0000);

  //Configure audio interface
  //I2S format 16 bits word length
  WM8960_Write_Reg(0x07, 0x0002);

  //Configure HP_L and HP_R OUTPUTS
  WM8960_Write_Reg(0x02, 0x006F | 0x0100);  //LOUT1 Volume Set
  WM8960_Write_Reg(0x03, 0x006F | 0x0100);  //ROUT1 Volume Set

  //Configure SPK_RP and SPK_RN
  WM8960_Write_Reg(0x28, 0x007F | 0x0100); //Left Speaker Volume
  WM8960_Write_Reg(0x29, 0x007F | 0x0100); //Right Speaker Volume

  //Enable the OUTPUTS
  WM8960_Write_Reg(0x31, 0x00F7); //Enable Class D Speaker Outputs

  //Configure DAC volume
  WM8960_Write_Reg(0x0a, 0x00FF | 0x0100);
  WM8960_Write_Reg(0x0b, 0x00FF | 0x0100);

  //3D
//  WM8960_Write_Reg(0x10, 0x001F);

  //Configure MIXER
  WM8960_Write_Reg(0x22, 1&amp;lt;&amp;lt;8 | 1&amp;lt;&amp;lt;7);
  WM8960_Write_Reg(0x25, 1&amp;lt;&amp;lt;8 | 1&amp;lt;&amp;lt;7);

  //Jack Detect
  WM8960_Write_Reg(0x18, 1&amp;lt;&amp;lt;6 | 0&amp;lt;&amp;lt;5);
  WM8960_Write_Reg(0x17, 0x01C3);
  WM8960_Write_Reg(0x30, 0x0009);//0x000D,0x0005

  return 0;
}

/**
 * @brief Function for main application entry.
 */
int main(void)
{
    ret_code_t err_code;
    uint8_t address;
    uint8_t sample_data;
    bool detected_device = false;

    APP_ERROR_CHECK(NRF_LOG_INIT(NULL));
    NRF_LOG_DEFAULT_BACKENDS_INIT();

    NRF_LOG_INFO(&amp;quot;TWI scanner started.&amp;quot;);
    NRF_LOG_FLUSH();
    twi_init();

    for (address = 1; address &amp;lt;= TWI_ADDRESSES; address++)
    {
        err_code = nrf_drv_twi_rx(&amp;amp;m_twi, (address&amp;lt;&amp;lt;1), &amp;amp;sample_data, sizeof(sample_data));
        if (err_code == NRF_SUCCESS)
        {
            detected_device = true;
            NRF_LOG_INFO(&amp;quot;TWI device detected at address 0x%x.&amp;quot;, address);
        }
        NRF_LOG_FLUSH();
    }

    if (!detected_device)
    {
        NRF_LOG_INFO(&amp;quot;No device was found.&amp;quot;);
        NRF_LOG_FLUSH();
    }
int res = WM89060_Init();
    if(res == 0)  {
      NRF_LOG_INFO(&amp;quot;WM89060_Init complete !!\r\n&amp;quot;);
    }
    else  {
      NRF_LOG_INFO(&amp;quot;WM89060_Init fail ! Error code: %d\r\n&amp;quot;, res);      
    }

NRF_LOG_FLUSH();
   
}

/** @} */
&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;i want to setup the scope . i will setup and send you the traces&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF52 with WM8960 CODEC</title><link>https://devzone.nordicsemi.com/thread/353157?ContentTypeID=1</link><pubDate>Tue, 15 Feb 2022 15:34:07 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:31ccc89c-84d5-4c28-b02b-e2c4fcaeaee2</guid><dc:creator>J&amp;#248;rgen Holmefjord</dc:creator><description>&lt;p&gt;Sounds like it should work then.&lt;/p&gt;
&lt;p&gt;Did you change the configuration in the TWI Scanner when adding the &amp;quot;&lt;span&gt;sending data to the know i2c address&amp;quot; part? Did you try the unmodified example?&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Can you provide a logic trace of the TWI bus?&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF52 with WM8960 CODEC</title><link>https://devzone.nordicsemi.com/thread/352794?ContentTypeID=1</link><pubDate>Mon, 14 Feb 2022 05:55:48 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:c888538f-fbcf-4b94-b417-9f4f5b42b95e</guid><dc:creator>Sunil vignesh</dc:creator><description>&lt;p&gt;Anything i have missed &lt;span&gt;J&amp;oslash;rgen&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF52 with WM8960 CODEC</title><link>https://devzone.nordicsemi.com/thread/352656?ContentTypeID=1</link><pubDate>Fri, 11 Feb 2022 14:03:26 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:29c8e0d7-6e7d-495c-8f13-51a646556ef0</guid><dc:creator>Sunil vignesh</dc:creator><description>&lt;p&gt;Hi, I am using pin 26(sda),27(scl)&lt;/p&gt;
&lt;p&gt;supply voltage is 3.3v in arduino and stm&lt;/p&gt;
&lt;p&gt;codec opteration voltage is 2.71-3.6v&lt;/p&gt;
&lt;p&gt;but vdd in dk is 2.5-2.8v&lt;/p&gt;
&lt;p&gt;so i give external supply to dk and i gives 3.3v in vdd&lt;/p&gt;
&lt;p&gt;that time also no improve&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF52 with WM8960 CODEC</title><link>https://devzone.nordicsemi.com/thread/352608?ContentTypeID=1</link><pubDate>Fri, 11 Feb 2022 12:53:59 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:26cb5fec-bb7f-4323-a0a2-3846021f67b9</guid><dc:creator>J&amp;#248;rgen Holmefjord</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;Have you checked the connections to the I2C device is correct, and that it is powered correctly?&amp;nbsp;Which GPIOs are you using for SCL/SDA?&lt;/p&gt;
&lt;p&gt;What is the supply voltage of the I2C device?&amp;nbsp;&lt;span&gt;Arduino uno and STM32 may support 5V level when interfacing I2C devices, but nRF52832 may not support this when running at 3V supply or lower.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Can you provide a logic trace of the TWI bus?&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Best regards,&lt;br /&gt;Jørgen&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>