Main Project Page: [[Roti_making_robot_rotimatic|Rotimatic]] = WF121-A = Module Page: [[BlueGiga WF121 WiFi]] == Images == [[File:WF121-A top.png|800px]] [[File:WF121-A internal.png|800px]]
== UART ==
=== Developer Guide Notes/Examples ===
Values==== WF121 Factory Configuration ====WF121 Modules are factory shipped with settings listed below. UART2 This UART gives access to BGAPI protocol, which can be used to control the WF121 Module from a separate host.*Pin 17:CTS*Pin 19: RTS*Pin 35: RX*Pin 36: TX*Baud rate 115200bps*Data bits 8*Parity bit none*Stop bit(s) 1*RTS/CTS enabled*RTS and CTS must be connected for the BGAPI communication to work properly.*UART1 is activated, but not accessed in the factory configuration. The corresponding hardware configuration is shown below:<pre><?xml version="1.0" encoding="UTF-8" ?><hardware> <uart channel="0" baud="115200" api="false" /> <uart channel="1" baud="115200" api="true" handshake="True" /></hardware></pre> ==== channel ====
*0: UART channel 1
*1: UART channel 2
*Example:
**channel="0"
==== baud ====
*Default: 57600
*Range: 0-10000000
*Some supported baud rates: 10000000, 5000000, 2500000, 2000000, 1000000, 115200, 57600
*Example:
**channelbaud="0115200"**baud***Default: 57600***Range: 0-10000000***Some supported baud rates: 10000000, 5000000, 2500000, 2000000, 1000000, 115200, 57600
Notice that not all baud rates are possible. BGBuild compiler tries to find best match with least amount of error and outputs the result.
Example:*baud="115200"*=== stopbits Stop bits to use====**Range: 1-2**Default: 1
*Example:
**stopbits="2"
parity Parity to use
Values:
odd: use odd parity bit
even: use even parity bit
none: no parity bit
Default: none
Example:
parity:"odd"
Silicon Labs Page of 19 33
Attribute Value - Description
handshake RTS/CTS for data flow control
Values:
true: RTS/CTS flow control is used
false: RTS/CTS flow control is not used*
Default: false
Example:
handshake="true"
Streaming mode
When using UART in streaming mode ( ), it is highly recommend to use RTS api="false"
/CTS data flow control (handshake="true") to ensure reliable data transfer.
api UART is used for BGAPI protocol
Values:
true: UART is used for BGAPI protocol
false: UART is used for application data
Default: false
Example:
api="true"
When , there should be an application receiving the BGAPI responses and events true
at the host, otherwise the module might get stuck.
==== parity ====
*Values:
**odd: use odd parity bit
**even: use even parity bit
**none: no parity bit
*Default: none
*Example:
**parity:"odd"
==== handshake ====
handshake RTS/CTS for data flow control
*Values:
**true: RTS/CTS flow control is used
**false: RTS/CTS flow control is not used*
*Default: false
*Example:
**handshake="true"
==== api ====
*Values:
**true: UART is used for BGAPI protocol
**false: UART is used for application data
*Default: false
*Example:
**api="true"
Example configurations3.12.1 Using BGAPI over When using UART interfaceThe example below shows how to configure BGAPI in streaming mode, it is highly recommend to be used over UART2 interface with 115200 bps baudrate and hardware flow control.WF121 Project<?xml versionuse RTS api="1.0false" encoding/CTS data flow control (handshake="UTF-8true" ?><hardware> <uart channel="1) to ensure reliable data transfer. api UART is used for BGAPI protocol
When there should be an application receiving the BGAPI responses and events true
at the host, otherwise the module might get stuck.
==== BGAPI / config ====
Using BGAPI over UART interface
The example below shows how to configure BGAPI to be used over UART2 interface with 115200 bps baud rate and hardware flow control.
Using BGAPI over UART2 and enabling UART1 to BGScript applicationThe example below shows how to configure BGAPI to be used over UART2 interface and UART1 interfaceaccess is given to a BGScript application.This is used in multiple example applications delivered with the Bluegiga Wi-Fi Software. The purpose is forexample to use UART1 for BGScript debugging and UART2 for DFU firmware updates.WF121 Project<pre>
<?xml version="1.0" encoding="UTF-8" ?>
<hardware>
<uart channel="0" baud="115200" api="false" handshake="false" /> <uart channel="1" baud="115200" api="Truetrue" handshake="True" />
</hardware>
</pre>
Using BGAPI over UART2 and enabling UART1 to BGScript application
The example below shows how to configure BGAPI to be used over UART2 interface and UART1 interface access is given to a BGScript application. This is used in multiple example applications delivered with the Bluegiga Wi-Fi Software. The purpose is for example to use UART1 for BGScript debugging and UART2 for DFU firmware updates.
WF121 Factory ConfigurationWF121 Modules are factory shipped with settings listed below.Feature Value NotesBGAPIUARTUART2 This UART gives access to BGAPI protocol, which can be used to control the WF121Module from a separate host.Pin 17: CTSPin 19: RTSPin 35: RXPin 36: TXBaudrate115200bpsData bits 8Parity bit noneStop bit(s)1RTS/CTSenabled RTS and CTS must be connected for the BGAPI communication to work properly.UART1 is activated, but not accessed in the factory configuration.The corresponding hardware configuration is shown below:<pre>
<?xml version="1.0" encoding="UTF-8" ?>
<hardware>
<uart channel="0" baud="115200" api="false" handshake="false" /> <uart channel="1" baud="115200" api="trueTrue" handshake="True" />
</hardware>
</pre>
== Documentation == *[https://www.mouser.com/datasheet/2/368/Bluegiga_WF121_Datasheet-1203323.pdf Data Sheet v1.4.9 2013] *[https://www.silabs.com/documents/public/user-guides/UG221.pdf Developer Guide v3.0 2016] *[https://www.silabs.com/documents/public/application-notes/AN998.pdf Application Notes v1.1 2014]