This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Data Side Channel

Are there any examples out there for using the Data Side Channel to send a simple byte of data? I cannot seem to find any.

Also, how is the data side communication channel enabled in the master?  Using the commander, I see that WPM_DSC_EN = 0. Which means the master does not support DSC.

Any help in this is appreciated.

Thanks

  • Hi Chris, 

    You will need to enable host controlled mode with the configurator. 

    As for examples I'm not sure if there is something, but if it is it will be located within this example / library code:
    http://www.ti.com/general/docs/litabsmultiplefilelist.tsp?literatureNumber=swra369a

    I'll ask around if someone have a PurePath commander script for this that I can share..it will show how it can be used. 

    Regards, 
    kjetil
     

  • Also....I get the following from the master side while a slave is connected:

    Decoded data

    Index

    Name

    Value

    Description

    [0:3]

    DEVICE_ID[31:0]

    471262208 (0x1C16E400)

    Network ID of current network (device ID of master)

    [4:7]

    MANF_ID[31:0]

    18874525 (0x0120009D)

    Manufacturer ID of protocol master

    [8:11]

    PROD_ID [31:0]

    1778384896 (0x6A000000)

    Product ID of protocol master

    [12][7:5]

    -

    0

    Reserved, ignore value

    [12][4]

    WPM_DSC_EN

    0

    Indicates that master supports data side channel communication

    [12][3]

    WPM_MFCT_FILT

    0

    Indicates that master only accepts slaves with matching manufacturer ID into network

    [12][2]

    WPM_PAIR_SIGNAL

    0

    Indicates that master is signaling that it is attempting to pair with a new slave

    [12][1]

    WPM_ALLOWS_JOIN

    0

    Indicates that master can accept more slaves into network

    [12][0]

    -

    1

    Reserved, ignore value

    [13:14]

    ACH_SUPPORT[15:0]

    0

    Bitmask indicating which audio channels the protocol master supports. The bit indexes correspond to the logical audio channel indexes defined for NWM_ACH_SET_USAGE.

    [15][7]

    ACH_ACTIVE[0]

    0

    Flag that indicates whether audio channel at spatial location 0 is currently in use in audio network

    And:

    Decoded data

    Index

    Name

    Value

    Description

    [0][7:4]

    -

    1

    Reserved, ignore value

    [0][3:0]

    NWK_STATUS

    12 (0xC)

    Current network status of protocol master:
    0: No network maintained
    other: Maintaining network

    [1:2][15:12]

    -

    1

    Reserved, ignore value

    [1:2][11:0]

    SAMPLE_RATE[11:0]

    1764 (0x6E4)

    Current sample rate (in increments of 25 Hz)

    [3:4]

    ACH_USED[15:0]

    1

    Bitmask indicating which audio channels is consumed/produced by any slaves

    Slave

    Name

    Value

    Description

    [0]

    DEVICE_ID[31:0]

    536911210 (0x20009D6A)

    Device ID of slave

    [0]

    MANF_ID[31:0]

    1

    Manufacturer ID reported by slave

    [0]

    PROD_ID[31:0]

    1

    Product / family ID reported by slave

    [0]

    ACH_USED[15:0]

    1

    Bitmask indicating which audio channels the slave is consuming/producing. The bit indexes correspond to the logical audio channel indexes defined for NWM_ACH_SET_USAGE

    [0]

    -

    0

    Reserved, ignore value

    [0]

    -

    0

    Reserved, ignore value

    [0]

    SLAVE_SHORT_ID

    1

    Short ID for referencing a protocol slave (1-7)

    [0]

    WPS_DSC_EN

    1

    If set, indicates that slave supports a data side-channel

    As you can see.....the master still has WPM_DSC_EN set to 0.  Host controlled is being used both sides.....master controlled by the PPW commander.

    I am sending data from the slave but not seeing anything on the master when performing dsc_rx_datagram();

    Any advice?  Thanks

  • Also, why do my device ID's appear different once a connection is made between the slave and master?

    See the information below:

    DI_GET_DEVICE_INFO on the master returned the following:

    Decoded data

    Index

    Name

    Value

    Description

    [0:3]

    DEVICE_ID[31:0]

    536985723 (0x2001C07B)

    Unique 32b device ID.
    Values 0x00000000 or 0xFFFFFFFF can never occur

    [4:7]

    MANF_ID[31:0]

    1

    Unique 32b manufacturer ID.
    Value 0xFFFFFFFF means not set / do not care. The manufacturer and product/family ID can be used as filtering criteria when scanning for WASP networks or when a master determined whether a slave can join its network.

    [8:11]

    PROD_ID[31:0]

    1

    Product / family ID as determined by manufacturer
    Value 0xFFFFFFFF means not set / do not care

    NWM_GET_STATUS_S performed on the master returned the following:

    Index

    Name

    Value

    Description

    [0:3]

    DEVICE_ID[31:0]

    471262208 (0x1C16E400)

    Network ID of current network (device ID of master)

    [4:7]

    MANF_ID[31:0]

    18874525 (0x0120009D)

    Manufacturer ID of protocol master

    [8:11]

    PROD_ID [31:0]

    1778384896 (0x6A000000)

    Product ID of protocol master

    [12][7:5]

    -

    0

    Reserved, ignore value

    [12][4]

    WPM_DSC_EN

    0

    Indicates that master supports data side channel communication

    [12][3]

    WPM_MFCT_FILT

    0

    Indicates that master only accepts slaves with matching manufacturer ID into network

    [12][2]

    WPM_PAIR_SIGNAL

    0

    Indicates that master is signaling that it is attempting to pair with a new slave

    [12][1]

    WPM_ALLOWS_JOIN

    0

    Indicates that master can accept more slaves into network

    [12][0]

    -

    1

    Reserved, ignore value

    [13:14]

    ACH_SUPPORT[15:0]

    0

    Bitmask indicating which audio channels the protocol master supports. The bit indexes correspond to the logical audio channel indexes defined for NWM_ACH_SET_USAGE.

    [15][7]

    ACH_ACTIVE[0]

    0

    Flag that indicates whether audio channel at spatial location 0 is currently in use in audio network

    Notice the device ID values return different values.  Why is this?

    Thanks

  • Hi Chris,

    All the strange things you are seeing has to do with calling the wrong commands. When you issue a NWM_GET_STATUS on the master you have to use NWM_GET_STATUS_M. When you issue this command on the slave you have to use NWM_GET_STATUS_S. If you have two CC Debuggers connected at the same time (one for the master and one for the slave) it is the current id that decides which CC Debugger you are comunicating with. For example if master is connected to CC Debugger id (0xABCD) and the slave is connected to (0x1234) you have to issue NWM_GET_STATUS_M on the 0xABCD and vise versa.

    -Kristoffer