5.b. Connecting a Microcontroller via TTL Serial
If you have loaded a Wixel app that employs one of the Wixel’s two UARTs (such as the Wireless Serial App), then the Wixel can communicate with another microcontroller via asynchronous, non-inverted TTL serial. Communication between the Wixel and an RS-232 device requires additional hardware.
To connect your microcontroller to a Wixel for serial communication, make these connections:
- GND: Connect the ground (also known as GND or VSS) of your microcontroller to one of the GND pins on the Wixel. This connection is required.
- TX: If you want the microcontroller to be able to receive serial bytes from the Wixel, connect the Wixel’s TX line to the microcontroller’s RX line.
- RX: If you want your microcontroller to be able to send serial bytes to the Wixel, connect the microcontroller’s TX line to the Wixel’s RX line. The Wixel’s RX line is not 5 V tolerant. If your microcontroller is running at 5 V (or any voltage significantly above 3.3 V) then you will need to add extra components to ensure that your microcontroller never drives the Wixel’s RX line higher than 3.3 V. A simple voltage divider consisting of 2 resistors as shown in the diagram above will suffice. The Wixel’s RX line has an internal 20 kΩ pull-up resistor.
- RST: If you want the microcontroller to be able to reset the Wixel, then connect the Wixel’s RST line to any free general-purpose I/O (GPIO) line on the microcontroller. The microcontroller can drive this line low to reset the Wixel and then stop driving the line to release the Wixel from reset. The Wixel’s RST line is not 5 V tolerant. If your microcontroller is running at 5 V (or any voltage significantly above 3.3 V) then you must avoid driving the Wixel’s RST line high. If that is not possible, then you could put a diode between the Wixel’s RST line and the microcontroller’s GPIO to prevent current from flowing in the wrong direction (from the GPIO). The connection to RST is optional and not required for sending or receiving data.
Please refer to the documentation of your specific Wixel app to determine the location of the TX pin(s) and RX pin(s).
Note: The Wixel does not support the RS-232 voltage levels typically used by DB9 serial ports. The Wixel’s I/O lines, including the RX and TX lines, operate on voltages between 0 and 3.3 V are not 5 V tolerant. To connect the Wixel to an RS-232 serial signal, you will need additional level-shifting and inverting hardware like the Pololu 23201a serial adapter (RS-232 serial is inverted; the Wixel’s serial interface expects non-inverted serial).