cancel
Showing results for 
Search instead for 
Did you mean: 

STWBC86 use for bi-directional communication

willzhou
ST Employee

STWBC86 TX can be use for bi-directional communication, when rx send PP-packet as QI defined,

STWBC86 update to 1251 version and use GUI to read i2c reg address 0x0100, and it can read RX PP-packet.

https://github.com/STwirelesscharger/STSW-WPSTUDIO/blob/main/STSW-WBC86FWBPP/STEVAL-WBC86TX_nvmpatch_1251.memh

About GUI you can find here https://www.st.com/en/embedded-software/stsw-wpstudio.html

 

willzhou_0-1708334043723.png

 

In order to give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.
1 ACCEPTED SOLUTION

Accepted Solutions

Hi,

The communication from Tx to Rx is not possible using the GUI.

Indeed, the Qi standard specifies that the response to a Rx packet must be initiated after 10ms and no longer than 15 ms after the incoming message is received.

You need to use a MCU with an interruption, as described in the AN attached (we can also provide c. code example and python scripts).

Regards.

View solution in original post

7 REPLIES 7
Filippo_TS
Associate II

Hi,

I'm trying to setup a bi-directional communication between the STEVAL-WBC86TX and STEVAL-WLC38RX.

I have successfully updated the NVM of the STWBC86 to 1251, as suggested by @willzhou, but I can't able to send Proprietry Packets from RX to TX, and see the result on the 0x0100 reg address.

Can someone help me setting up the STSW-WPSTUDIO V2.2.5 in order to do that?

 

Thank you.

Hi Filippo

Can you use "Step Sequencer" and WriteRead 01 00 in the GUI?

Do you have issues on operate GUI?

@Didier HERROUIN can you also help to check this?

In order to give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.

Hi Filippo,

Do you face issue to connect the board to the GUI ?
You can use the latest GUI version attached (v2.4.0).

After sending the packet from Rx to Tx, you can check that a Proprietary Packet has been received by the STWBC86 by reading the bit "TX PP PKT RCVD LTCH" in the "Tx interrupt latch" menu of the GUI.

Then, with the patch file 1251 (you do not have to update the config file) the data should be visible at address 0x100 (see the GUI snapshot sent by Will). 

 

Filippo_TS
Associate II

Hi,

Thank you for the answer.

I don't have any issue connecting the two boards to the GUI. They works fine. 

The WLC38[RX] has 1437 patch ID, while the WBC86[TX] has 1251 patch ID.

 

What I want to do is simply send a byte, like "0xAA", from RX to TX. So I have set the WPSTUDIO like in the following image. 

At first I've pressed the "W" button to MSG SEND1 with the field filled with "AA", then I've pressed the "W" button to RX SEND MSG/Perform action.

Filippo_TS_0-1719236522124.png

Nothing happened on TX side. The TX PP PKT RCVD LTCH is still to "Did not occur" and the 0x100 address is empty.

There is something wrong on what I have set on the Communication tab?

Thank you all.

Hi Filippo,

As you want to send a proprietary message, you must add a PP header so that it is recognized by the Tx.

For "AA" sending, you must write AA 18 in the register (0x18 is the header defined by the Qi standard to send 1 byte):

DidierHERROUIN_0-1719238345383.png

If you want to send "AA BB", you should write AA BB 28 in the register, and so on.

Regards.

 

Hi Didier,

Thank you for the quick response.

I have followed your hint and now I have been able to send PP from RX to TX. Thank you again.

 

May I ask you how to setup WPSTUDIO for a communication in backward direction?

For example, send a response from TX to RX.

 

Regards.

 

Hi,

The communication from Tx to Rx is not possible using the GUI.

Indeed, the Qi standard specifies that the response to a Rx packet must be initiated after 10ms and no longer than 15 ms after the incoming message is received.

You need to use a MCU with an interruption, as described in the AN attached (we can also provide c. code example and python scripts).

Regards.