The Waveshare TTL-ETH (Part ID: 24276) is a TTL to Ethernet module designed to facilitate serial communication over an Ethernet network. This module enables microcontrollers and other devices to connect to the internet or a local network with ease. It is compact, reliable, and ideal for applications requiring Ethernet connectivity without the complexity of implementing a full Ethernet stack.
The following table outlines the key technical details of the Waveshare TTL-ETH module:
Parameter | Value |
---|---|
Supply Voltage | 3.3V or 5V |
Operating Current | ~120mA |
Communication Interface | UART (TTL level) |
Baud Rate Range | 1200 bps to 115200 bps |
Ethernet Standard | 10/100 Mbps |
Dimensions | 48mm × 28mm |
Operating Temperature | -40°C to 85°C |
The Waveshare TTL-ETH module has a 2x5 pin header for interfacing. The pin configuration is as follows:
Pin | Name | Description |
---|---|---|
1 | VCC | Power input (3.3V or 5V) |
2 | GND | Ground |
3 | TXD | UART Transmit (TTL level) |
4 | RXD | UART Receive (TTL level) |
5 | RESET | Reset pin (active low) |
6 | CFG | Configuration mode selection (low for config mode) |
7 | NC | Not connected |
8 | NC | Not connected |
9 | LINK | Ethernet link status indicator (active high) |
10 | ACT | Ethernet activity indicator (active high) |
VCC
pin to a 3.3V or 5V power source and the GND
pin to ground.TXD
and RXD
pins to the UART pins of your microcontroller (e.g., Arduino, Raspberry Pi).CFG
pin low during power-up. This allows you to set parameters such as IP address, baud rate, and communication mode.CFG
pin unconnected or pull it high.Below is an example of how to use the Waveshare TTL-ETH module with an Arduino UNO to send data over Ethernet.
VCC
→ 5V on ArduinoGND
→ GND on ArduinoTXD
→ Pin 10 on Arduino (RX)RXD
→ Pin 11 on Arduino (TX)CFG
→ Leave unconnected for normal operation#include <SoftwareSerial.h>
// Define RX and TX pins for software serial communication
SoftwareSerial ethSerial(10, 11); // RX, TX
void setup() {
// Start serial communication with the module
ethSerial.begin(9600); // Default baud rate for TTL-ETH module
Serial.begin(9600); // For debugging via Serial Monitor
Serial.println("Initializing Waveshare TTL-ETH module...");
delay(1000);
// Example: Send a test message to the Ethernet module
ethSerial.println("Hello, Ethernet!");
Serial.println("Message sent to TTL-ETH module.");
}
void loop() {
// Check if data is received from the Ethernet module
if (ethSerial.available()) {
String receivedData = ethSerial.readString();
Serial.print("Received from TTL-ETH: ");
Serial.println(receivedData);
}
// Check if data is sent from the Serial Monitor
if (Serial.available()) {
String userInput = Serial.readString();
ethSerial.println(userInput); // Send user input to the Ethernet module
Serial.println("Message sent to TTL-ETH module.");
}
}
No Ethernet Connectivity
UART Communication Fails
TXD
and RXD
pins are correctly connected (crossed: TXD to RX, RXD to TX).Module Not Responding
RESET
pin low momentarily.Configuration Mode Not Working
CFG
pin is pulled low during power-up to enter configuration mode.Q1: Can the TTL-ETH module work with 1.8V logic microcontrollers?
A1: No, the module operates at 3.3V or 5V logic levels. Use a level shifter for compatibility.
Q2: How do I update the firmware of the TTL-ETH module?
A2: Firmware updates can be performed using the manufacturer's software and a UART-to-USB adapter.
Q3: Can I use the module with DHCP?
A3: Yes, the module supports both static IP and DHCP. Configure this setting in the configuration mode.
Q4: What is the maximum cable length for Ethernet?
A4: The maximum recommended length for Ethernet cables is 100 meters (328 feet).