This blog captures the changes one is likely to see when switching from CYW20719-B1 to CYW20719-B2.

 

  • One Major change for the Application developers is the different IDE requirement for CYW20719-B1 and CYW20719-B2. CYW20719-B1 requires WICED Studio for Application development while ModusToolbox is required for CYW20719-B2.

 

  • The max tx power and configurable power levels have changed between CYW20719B1 and CYW20719-B2.
    • CYW20719-B1: Max tx power = +4 dBm configurable power levels:[4, 0, -4, -8, -12, -16, -20, -24] dBm
    • CYW20719-B2: Max tx power = +6 dBm configurable power levels:[6, 2, -2, -6, -10, -14, -18, -22] dBm

 

  • Serial Peripheral Interface(SPI) driver API has been changed. Now it doesn't accept the pin configuration in the app, it needs to be defined in device configurator.
    • Old API 20719-B1:

void wiced_hal_pspi_init(spi_interface_t           spi,

                                          UINT8                        devRole,

                                          UINT16                      spiPinPullConfig,

                                          UINT32                      spiGpioCfg,

                                          UINT32                      clkSpeed,

                                          SPI_ENDIAN             endian,

                                          SPI_SS_POLARITY  polarity,

                                          SPI_MODE                mode,

                                          UINT8                        csPin);

  • New API 20719-B2:

void wiced_hal_pspi_init( spi_interface_t            spi,

                                           UINT32                       clkSpeed,

                                           SPI_ENDIAN              endian,

                                           SPI_SS_POLARITY   polarity,

                                           SPI_MODE                 mode);      

    

  • I2C combined read API changed. Recieve and transmit parameters have been interchanged for uniformity across devices.

 

Old API 20719-B1:

UINT8 wiced_hal_i2c_combined_read(UINT8*       tx_data,

                                                                  UINT8        tx_data_len,

                                                                  UINT8*       rx_data,

                                                                  UINT16      rx_data_len,

                                                                  UINT8        slave);

 

New API 20719-B2:

uint8_t wiced_hal_i2c_combined_read(uint8_t*      rx_data,

                                                                  uint8_t       rx_data_len,

                                                                  uint8_t*      tx_data,

                                                                  uint16_t     tx_data_len, uint8_t slave);

 

  • Change in enum names. WICED has been appended in front of the names.

20719B1

enum CLK_SRC_SEL

{

    ACLK0,

    ACLK1,

};

 

enum CLK_SRC_FREQ_SEL

{

    ACLK_FREQ_1_MHZ, 

    ACLK_FREQ_24_MHZ

};

 

20719B2

enum WICED_CLK_SRC_SEL

{

    WICED_ACLK0,

    WICED_ACLK1,

};

 

enum WICED_CLK_SRC_FREQ_SEL

{

    WICED_ACLK_FREQ_1_MHZ,

    WICED_ACLK_FREQ_24_MHZ

};

 

  • Change in structure name. WICED has been appended in front of the names.

 

20719-B1

typedef struct{

    uint32_t init_count;

    uint32_t toggle_count;

} pwm_config_t;

 

20719-B2

typedef struct{

    uint32_t init_count;

    uint32_t toggle_count;

} wiced_pwm_config_t;