Human Following Robot Using Arduino and Ultrasonic Sensor

Submitted by Gourav Tak on

Working of Human Following Robot Using Arduino

In recent years, robotics has witnessed significant advancements, enabling the creation of intelligent machines that can interact with the environment. One exciting application of robotics is the development of human-following robots. These robots can track and follow a person autonomously, making them useful in various scenarios like assistance in crowded areas, navigation support, or even as companions. In this article, we will explore in detail how to build a human following robot using Arduino and three ultrasonic sensors, complete with circuit diagrams and working code. Also, check all the Arduino-based Robotics projects by following the link.

The working of a human following robot using Arduino code and three ultrasonic sensors is an interesting project. What makes this project particularly interesting is the use of not just one, but three ultrasonic sensors. This adds a new dimension to the experience, as we typically see humans following a robot built with one ultrasonic, two IR, and one servo motor.  This servo motor has no role in the operation and also adds unnecessary complications. So I removed this servo and the IR sensors and used 3 ultrasonic sensors. With ultrasonic sensors, you can measure distance and use that information to navigate and follow a human target. Here’s a general outline of the steps involved in creating such a robot.

 

 

Components Needed for Human Following Robot Using Arduino

  • Arduino UNO board ×1

  • Ultrasonic sensor ×3

  • L298N motor driver ×1

  • Robot chassis

  • BO motors ×2

  • Wheels ×2

  • Li-ion battery 3.7V ×2

  • Battery holder ×1

  • Breadboard

  • Ultrasonic sensor holder ×3

  • Switch and jumper wires

Human Following Robot Using Arduino Circuit Diagram

Here is the schematic diagram of a Human-following robot circuit.

Arduino Human Following Robot Circuit Diagram

This design incorporates three ultrasonic sensors, allowing distance measurements in three directions front, right, and left. These sensors are connected to the Arduino board through their respective digital pins. Additionally, the circuit includes two DC motors for movement, which are connected to an L298N motor driver module. The motor driver module is, in turn, connected to the Arduino board using its corresponding digital pins. To power the entire setup, two 3.7V li-ion cells are employed, which are connected to the motor driver module via a switch.

Overall, this circuit diagram showcases the essential components and connections necessary for the Human-following robot to operate effectively.

arduino human following robot circuit

Circuit Connection:

Arduino and HC-SR04 Ultrasonic Sensor Module:

HC-SR04 Ultrasonic sensor Module

  • Connect the VCC pin of each ultrasonic sensor to the 5V pin on the Arduino board.

  • Connect the GND pin of each ultrasonic sensor to the GND pin on the Arduino board.

  • Connect the trigger pin (TRIG) of each ultrasonic sensor to separate digital pins (2,4, and 6) on the Arduino board.

  • Connect the echo pin (ECHO) of each ultrasonic to separate digital pins (3,5, and 7) on the Arduino board.

Arduino and Motor Driver Module:

  • Connect the digital output pins of the Arduino (digital pins 8, 9, 10, and 11) to the appropriate input pins (IN1, IN2, IN3, and IN4) on the motor driver module.

  • Connect the ENA and ENB pins of the motor driver module to the onboard High state pin with the help of a female header.

  • Connect the OUT1, OUT2, OUT3, and OUT4 pins of the motor driver module to the appropriate terminals of the motors.

  • Connect the VCC (+5V) and GND pins of the motor driver module to the appropriate power (Vin) and ground (GND) connections on the Arduino.

Power Supply:

  • Connect the positive terminal of the power supply to the +12V input of the motor driver module.

  • Connect the negative terminal of the power supply to the GND pin of the motor driver module.

  • Connect the GND pin of the Arduino to the GND pin of the motor driver module.

Human Following Robot Using Arduino Code

Here is a simple 3 Ultrasonic sensor-based Human following robot using Arduino Uno code that you can use for your project.

Ultrsonic Sensors on Robot

This code reads the distances from three ultrasonic sensors (‘frontDistance’, ‘leftDistance’, and ‘rightDistance’). It then compares these distances to determine the sensor with the smallest distance. If the smallest distance is below the threshold, it moves the car accordingly using the appropriate motor control function (‘moveForward()’, ‘turnLeft()’, ‘turnRight()’). If none of the distances are below the threshold, it stops the motor using ‘stop()’.

In this section, we define the pin connections for the ultrasonic sensors and motor control. The S1Trig, S2Trig, and S3Trig, variables represent the trigger pins of the three ultrasonic sensors, while S1Echo, S2Echo, and S3Echo, represent their respective echo pins.

The LEFT_MOTOR_PIN1, LEFT_MOTOR_PIN2, RIGHT_MOTOR_PIN1, and RIGHT_MOTOR_PIN2 variables define the pins for controlling the motors.

The MAX_DISTANCE and MIN_DISTANCE_BACK variables set the thresholds for obstacle detection.

// Ultrasonic sensor pins
#define S1Trig 2
#define S2Trig 4
#define S3Trig 6
#define S1Echo 3
#define S2Echo 5
#define S3Echo 7
// Motor control pins
#define LEFT_MOTOR_PIN1 8
#define LEFT_MOTOR_PIN2 9
#define RIGHT_MOTOR_PIN1 10
#define RIGHT_MOTOR_PIN2 11
// Distance thresholds for obstacle detection
#define MAX_DISTANCE 40
#define MIN_DISTANCE_BACK 5

Make sure to adjust the values of ‘MIN_DISTANCE_BACK’ and ‘MAX_DISTANCE’ according to your specific requirements and the characteristics of your robot.

The suitable values for ‘MIN_DISTANCE_BACK’ and ‘MAX_DISTANCE’ depend on the specific requirements and characteristics of your human-following robot. You will need to consider factors such as the speed of your robot, the response time of the sensors, and the desired safety margin

Here are some general guidelines to help you choose suitable values.

MIN_DISTANCE_BACK’ This value represents the distance at which the car should come to a stop when an obstacle or hand is detected directly in front. It should be set to a distance that allows the car to back safely without colliding with the obstacle or hand. A typical value could be around 5-10 cm.

MAX_DISTANCE’ This value represents the maximum distance at which the car considers the path ahead to be clear and can continue moving forward. It should be set to a distance that provides enough room for the car to move without colliding with any obstacles or hands. If your hand and obstacles are going out of this range, the robot should be stop. A typical value could be around 30-50 cm.

These values are just suggestions, and you may need to adjust them based on the specific characteristics of your robot and the environment in which it operates.

These lines set the motor speed limits. ‘MAX_SPEED’ denotes the upper limit for motor speed, while ‘MIN_SPEED’ is a lower value used for a slight left bias. The speed values are typically within the range of 0 to 255, and can be adjusted to suit our specific requirements.

// Maximum and minimum motor speeds
#define MAX_SPEED 150
#define MIN_SPEED 75

The ‘setup()’ function is called once at the start of the program. In the setup() function, we set the motor control pins (LEFT_MOTOR_PIN1, LEFT_MOTOR_PIN2, RIGHT_MOTOR_PIN1, RIGHT_MOTOR_PIN2) as output pins using ‘pinMode()’ . We also set the trigger pins (S1Trig, S2Trig, S3Trig) of the ultrasonic sensors as output pins and the echo pins (S1Echo, S2Echo, S3Echo) as input pins. Lastly, we initialize the serial communication at a baud rate of 9600 for debugging purposes.

void setup() {
  // Set motor control pins as outputs
  pinMode(LEFT_MOTOR_PIN1, OUTPUT);
  pinMode(LEFT_MOTOR_PIN2, OUTPUT);
  pinMode(RIGHT_MOTOR_PIN1, OUTPUT);
  pinMode(RIGHT_MOTOR_PIN2, OUTPUT);
  //Set the Trig pins as output pins
  pinMode(S1Trig, OUTPUT);
  pinMode(S2Trig, OUTPUT);
  pinMode(S3Trig, OUTPUT);
  //Set the Echo pins as input pins
  pinMode(S1Echo, INPUT);
  pinMode(S2Echo, INPUT);
  pinMode(S3Echo, INPUT);
  // Initialize the serial communication for debugging
  Serial.begin(9600);
}

This block of code consists of three functions (‘sensorOne()’, ‘sensorTwo()’, ‘sensorThree()’) responsible for measuring the distance using ultrasonic sensors.

The ‘sensorOne()’ function measures the distance using the first ultrasonic sensor. It's important to note that the conversion of the pulse duration to distance is based on the assumption that the speed of sound is approximately 343 meters per second. Dividing by 29 and halving the result provides an approximate conversion from microseconds to centimeters.

The ‘sensorTwo()’ and ‘sensorThree()’ functions work similarly, but for the second and third ultrasonic sensors, respectively.

// Function to measure the distance using an ultrasonic sensor
int sensorOne() {
  //pulse output
  digitalWrite(S1Trig, LOW);
  delayMicroseconds(2);
  digitalWrite(S1Trig, HIGH);
  delayMicroseconds(10);
  digitalWrite(S1Trig, LOW);
  long t = pulseIn(S1Echo, HIGH);//Get the pulse
  int cm = t / 29 / 2; //Convert time to the distance
  return cm; // Return the values from the sensor
}
//Get the sensor values
int sensorTwo() {
  //pulse output
  digitalWrite(S2Trig, LOW);
  delayMicroseconds(2);
  digitalWrite(S2Trig, HIGH);
  delayMicroseconds(10);
  digitalWrite(S2Trig, LOW);
  long t = pulseIn(S2Echo, HIGH);//Get the pulse
  int cm = t / 29 / 2; //Convert time to the distance
  return cm; // Return the values from the sensor
}
//Get the sensor values
int sensorThree() {
  //pulse output
  digitalWrite(S3Trig, LOW);
  delayMicroseconds(2);
  digitalWrite(S3Trig, HIGH);
  delayMicroseconds(10);
  digitalWrite(S3Trig, LOW);
  long t = pulseIn(S3Echo, HIGH);//Get the pulse
  int cm = t / 29 / 2; //Convert time to the distance
  return cm; // Return the values from the sensor
}

In this section, the ‘loop()’ function begins by calling the ‘sensorOne()’, ‘sensorTwo()’, and ‘sensorThree()’ functions to measure the distances from the ultrasonic sensors. The distances are then stored in the variables ‘frontDistance’, ‘leftDistance’, and ‘rightDistance’.

Next, the code utilizes the ‘Serial’ object to print the distance values to the serial monitor for debugging and monitoring purposes.

void loop() {
  int frontDistance = sensorOne();
  int leftDistance = sensorTwo();
  int rightDistance = sensorThree();
  Serial.print("Front: ");
  Serial.print(frontDistance);
  Serial.print(" cm, Left: ");
  Serial.print(leftDistance);
  Serial.print(" cm, Right: ");
  Serial.print(rightDistance);
  Serial.println(" cm");

In this section of code condition checks if the front distance is less than a threshold value ‘MIN_DISTANCE_BACK’ that indicates a very low distance. If this condition is true, it means that the front distance is very low, and the robot should move backward to avoid a collision. In this case, the ‘moveBackward()’ function is called.

if (frontDistance < MIN_DISTANCE_BACK) {
    moveBackward();
    Serial.println("backward");

If the previous condition is false, this condition is checked. if the front distance is less than the left distance, less than the right distance, and less than the ‘MAX_DISTANCE’ threshold. If this condition is true, it means that the front distance is the smallest among the three distances, and it is also below the maximum distance threshold. In this case, the ‘moveForward()’ function is called to make the car move forward.

else if (frontDistance < leftDistance && frontDistance < rightDistance && frontDistance < MAX_DISTANCE) {
    moveForward();
    Serial.println("forward");

If the previous condition is false, this condition is checked. It verifies if the left distance is less than the right distance and less than the ‘MAX_DISTANCE’ threshold. This condition indicates that the left distance is the smallest among the three distances, and it is also below the minimum distance threshold. Therefore, the ‘turnLeft()’ function is called to make the car turn left.

else if (leftDistance < rightDistance && leftDistance < MAX_DISTANCE) {
    turnLeft();
    Serial.println("left");

If neither of the previous conditions is met, this condition is checked. It ensures that the right distance is less than the ‘MAX_DISTANCE’ threshold. This condition suggests that the right distance is the smallest among the three distances, and it is below the minimum distance threshold. The ‘turnRight()’ function is called to make the car turn right.

else if (rightDistance < MAX_DISTANCE) {
    turnRight();
    Serial.println("right");

If none of the previous conditions are true, it means that none of the distances satisfy the conditions for movement. Therefore, the ‘stop()’ function is called to stop the car.

 else {
    stop();
    Serial.println("stop");

In summary, the code checks the distances from the three ultrasonic sensors and determines the direction in which the car should move based on the 3 ultrasonic sensors with the smallest distance.

 

Important aspects of this Arduino-powered human-following robot project include:

  • Three-sensor setup for 360-degree human identification
  • Distance measurement and decision-making in real-time
  • Navigation that operates automatically without human assistance
  • Avoiding collisions and maintaining a safe following distance

 

 

Technical Summary and GitHub Repository 

Using three HC-SR04 ultrasonic sensors and an L298N motor driver for precise directional control, this Arduino project shows off the robot's ability to track itself. For simple replication and modification, the full source code, circuit schematics, and assembly guidelines are accessible in our GitHub repository. To download the Arduino code, view comprehensive wiring schematics, and participate in the open-source robotics community, visit our GitHub page.

Code Schematics Download Icon

 

Frequently Asked Questions

⇥ How does an Arduino-powered human-following robot operate?
Three ultrasonic sensors are used by the Arduino-powered human following robot to determine a person's distance and presence. After processing this data, the Arduino manages motors to follow the identified individual while keeping a safe distance.

⇥ Which motor driver is ideal for an Arduino human-following robot?
The most widely used motor driver for Arduino human-following robots is the L298N. Additionally, some builders use the L293D motor driver shield, which connects to the Arduino Uno directly. Both can supply enough current for small robot applications and manage 2-4 DC motors.

⇥ Is it possible to create a human-following robot without soldering?
Yes, you can use motor driver shields that connect straight to an Arduino, breadboards, and jumper wires to construct a human-following robot. For novices and prototyping, this method is ideal.

⇥ What uses do human-following robots have in the real world?
Shopping cart robots in malls, luggage-carrying robots in airports, security patrol robots, elderly care assistance robots, educational demonstration robots, and companion robots that behave like pets are a few examples of applications.

 

Conclusion

This human following robot using Arduino project and three ultrasonic sensors is an exciting and rewarding project that combines programming, electronics, and mechanics. With Arduino’s versatility and the availability of affordable components, creating your own human-following robot is within reach.

Human-following robots have a wide range of applications in various fields, such as retail stores, malls, and hotels, to provide personalized assistance to customers. Human-following robots can be employed in security and surveillance systems to track and monitor individuals in public spaces. They can be used in Entertainment and events, elderly care, guided tours, research and development, education and research, and personal robotics.

They are just a few examples of the applications of human-following robots. As technology advances and robotics continues to evolve, we can expect even more diverse and innovative applications in the future.

Explore Practical Projects Similar To Robots Using Arduino

Explore a range of hands-on robotics projects powered by Arduino, from line-following bots to obstacle-avoiding vehicles. These practical builds help you understand sensor integration, motor control, and real-world automation techniques. Ideal for beginners and hobbyists, these projects bring theory to life through interactive learning.

 Simple Light Following Robot using Arduino UNO

Simple Light Following Robot using Arduino UNO

Today, we are building a simple Arduino-based project: a light-following robot. This project is perfect for beginners, and we'll use LDR sensor modules to detect light and an MX1508 motor driver module for control. By building this simple light following robot you will learn the basics of robotics and how to use a microcontroller like Arduino to read sensor data and control motors.

Line Follower Robot using Arduino UNO: How to Build (Step-by-Step Guide)

Line Follower Robot using Arduino UNO: How to Build (Step-by-Step Guide)

This step-by-step guide will show you how to build a professional-grade line follower robot using Arduino UNO, with complete code explanations and troubleshooting tips. Perfect for beginners and intermediate makers alike, this project combines hardware interfacing, sensor calibration, and motor control fundamentals.

Have any question related to this Article?

DIY ESP32 WLED Controller: Step-by-Step Guide

This DIY tutorial is all about making our home lighting smart and fun without any complicated steps. We can connect a standard 12V LED strip to a tiny wi-fi chip and build our own custom smart lighting system, which can be completely controlled from a smartphone or computer.

This DIY guide skips the days of writing complex coding lines to program the light patterns and goes with a ready-made, open-source software called WLED. Once we power on our physical build, the system automatically connects to our home Wi-Fi network; it's an ESP32-based WLED Controller Setup. You can also check out similar ESP32 Projects and IoT projects done previously here at Circuit Digest.

How Does the ESP32 Based WLED Controller Work?

In this project, we can send commands from a smartphone or the web dashboard of WLED to control the colours in addressable RGB lighting. When a user slides their fingers across the colour wheel, it sends the HTTP or JSON request over local Wi-Fi, which is intercepted by ESP32. Inside the ESP32, these Network packets are decoded and converted to digital data. WLED organises these data sequentially, 24 bits (red – 8 bits, green – 8 bits, blue – 8 bits) for every pixel in the group.

The ESP32 pushes this data out in 3.3V Digital Logic; the internal logical level shifter in the addressable RGB light converts the 3.3V logic to 5V logic. The first 24 bits received are stripped off to control the 3 physical LEDs connected by PWM (Pulse Width Modulation) to control their brightness. It also has a timer feature to turn off the addressable LED after an hour. The successive bits are regenerated and sent to the next chip. Here is the Voice-Controlled Smart Home Assistant project, where we showcased how voice recognition is incorporated with the RGB light.

Components Required:

Below is the list of components required to build this project with their description.

S.no    Components        SpecificationQuantity
1.MicrocontrollerESP32 Dev Kit1
2.Resistor330Ω1
3.Capacitor(100μF-1000μF) Electrolytic1
4.Power Supply12V1
5.Addressable RGB LEDs 1

Wiring Diagram:
 

The ESP32 WLED controller Schematic setup is quite simple. From GPIO 16(RX2) 330Ω resistor is connected; the other end of the resistor is connected to the DIN of the CX2811A driver addressable RGB LEDs. The 100μF capacitor is placed between GND and +12V, and GND and +12V are given to CX2811A, addressing RGB LEDs. The GND of the ESP32 and the power supply are commonly grounded. You can also check out the Smart WLED Clock with RTC, PIR, Audio feedback and Environmental Monitoring project in CircuitDigest, which integrates addressable RGB LEDs with clock setup.
 

Step-by-Step WLED Software Configuration

The ESP32 WLED Controller setup process, step-by-step configuration, is listed below. This makes an unprogrammed ESP32 a fully automated smart lighting system.

Connect the ESP32 to the PC, open the https://install.wled.me/ website, click install, it shows many COM ports, select the CP2102 USB to UART bridge Controller (COM3) and click install. It will be installed. It will display a flash option to erase the ESP32 memory. Click erase, and it will be flashed and programmed for WLED.

 

 

Then the Configure Wi-Fi menu opens, where you give your local Wi-Fi name and password and click Connect. The ESP32 will be connected to the Wi-Fi Network you entered. Double-check the network name and password. If it is not connected.

If the Wi-Fi is connected, the menu will open like Device connected to the network and click Visit Device to open the WLED Web Dash.

WLED Web Dash opens, it shows menus to customise the RGB light, change Wi-Fi, The Colour palette, it has timer options, it has a sync option to your Home Assistant, etc.

Click the config tab at the top of the screen; it opens a menu from where we can able to change Wi-Fi, change hardware and software parameters, sync, and timer, etc.

Click the Wi-Fi and Network tab. From there, we can change the mDNS address to any name you want to access the website, for example, the name it is set to is wledmohammed. From there, we can access our WLED through the name we set previously.

Click the LED and Hardware setup tab. Here, we need to change the type to WS281X, uncheck the Enable automatic brightness limiter, select the GPIO to 16 and select the number of LEDs you need to turn ON.  These setups can also be done by Mobile Phone using the WLED application. If the strip light has 4 pins (V+, GND, DATA, CLK), choose APA102 or WS2801. If the strip has 5 pins (V+, R, G, B, W), choose PWM RGB. We can also able to choose the number of LEDs to glow.

Output:

The Final physical circuit successfully powers the 12V addressable LED strip using the ESP32. When the ESP32 is turned ON, it hosts a WLED Web page. Where we can control the lighting of the strip using a colour Palette disc on a webpage, also by setting a timer function, we can be able to turn it OFF and ON at a preset time.

Live Demo: Smart Wi-Fi LED Controller with ESP32

Experience the real-time performance of the ESP32 WLED controller, showcasing wireless LED control, smooth animations, and smart lighting features.

Troubleshooting

Issue 1: How to properly ground the circuit?
Fix: The GND terminal of the RGB light and the 12V supply ground need to be common-grounded.
Issue 2: Which Rating of Power supply needs to be given to the addressable RGB light?
Fix: The RGB addressable LEDs have a CX2811A IC. One CX2811A chip controls three Red, three Green, and three Blue LEDs simultaneously. Each LED consumes 3.2V and a total of 9.6V. remaining 2.4V will be dropped externally or internally by it.
Issue 3: What to do when the colour we selected in Web Dash or Phone does not match the addressable RGB light?
Fix: In the web dashboard or application, there will be more colour codes such as GBR, BGR, RBG, BRG. BRG is the option to choose on the Config page.
Issue 4: What to do when the ESP32 is connected to the WLED application, but we can’t control the strip?
Fix: if the Wi-Fi credentials you are given is you phone Wi-Fi, you need to turn OFF Mobile Data while turning Hotspot ON.

Real World Application:

Smart Home Ambient Lighting: Integrated cove lighting for living rooms, false ceilings, and under-cabinet kitchen lights. 
Commercial Display Branding: Dynamic lighting for storefront windows, product display shelves, and digital signage boards in retail outlets. 
Gaming Setups and Entertainment Zone: Immersive PC desk backlighting, home theatre setups, or studio backgrounds. 
 

FAQs:

1. Why are the strip colours not changing?
It will happen due to the missing GPIO connection to the strip, and also make sure the ESP32 GND and Power Supply GND are common-grounded.

2. Do we need to connect the GNDBreaker Pin to the Power Jack?
There is no need to connect the GNDBreaker Pin in the Power Jack because it is used only in case of Battery is used.

3. Which WLED setting needs to be used for the CX2811A strip?
Set the LED type to WS281X, as it uses the same protocol. The only difference is that you set the colour order to BRG

4. Why is the web page not opening?
If the Power is not supplied to the ESP32 will not host the Webpage; you need to be connected to the same network as the ESP32 is connected.

5. Why is the WLED Controller not working even after giving all the connections?
Check the arrows of the strip light, it is needed to be pointed away from the ESP32. 

6. Are the PIN in Web Page and the physical connection needed to be same?
The pins should match; if it doesn’t match, the data will not be sent to the strip light.
 

Explore More LED Projects

Discover a collection of DIY LED projects using Arduino, ESP8266, NeoPixel, and WS2811 addressable LED strips. Learn LED interfacing, interactive lighting effects, and IoT-based RGB lighting through practical maker projects.

Interfacing WS2812B Neopixel LED Strip with Arduino

Interfacing WS2812B Neopixel LED Strip with Arduino

So, in this Arduino interfacing tutorial series, we are going to look at how to interface such LEDs with Arduino. We will be interfacing the WS2812B LEDs, which are also known as NeoPixel. 

 How to make an Interactive 2 player Arcade Game using WS2811 LED Strip and Arduino Nano

How to make an Interactive 2-player Arcade Game using WS2811 LED Strip and Arduino Nano

In this blog, we will learn how to create this fun 2-player game made using Arduino. We will learn about the WS2811 LED strip, and then we will learn about the design, electronics, as well as coding of this game.

 ESP8266 and Neopixel LED Strips Based RGB Night Lamp Controlled By Blynk App

ESP8266 and Neopixel LED Strips Based RGB Night Lamp Controlled By Blynk App

So, today we have a great project for you people that is a Wi-Fi-controlled Ironman mask. So, today we have a great project for you people that is a Wi-Fi-controlled Ironman mask. 

Have any question related to this Article?

Kerala's Super Fab Lab: Where Startups Go From Idea to Prototype in Hours, Not Months

Submitted by Staff on

A fab lab, short for fabrication laboratory, is a digital fabrication workspace rather than a traditional hand-tool workshop. The concept originated at the MIT Center for Bits and Atoms, where professor Neil Gershenfeld conceptualized and scaled the idea into an entity called the Fab Foundation. Gershenfeld drew inspiration from a visit to Pabal, near Pune, where Dr. Kalbag was building a community maker space for local farmers and others who needed to make agricultural tools not available through conventional markets.

TE Connectivity’s 56G MezzaWave Connectors and Cable Assemblies Feature Open-Pin-Field Architecture

Submitted by Staff on

Bandwidth requirements in data centers, edge computing, and industrial automation are rising faster than the board space available to support them, and the equipment running these workloads often has to keep performing in conditions that are anything but gentle. That combination puts unusual strain on interconnects, which is precisely the segment TE Connectivity is targeting with its 56G MezzaWave family of connectors and cable assemblies.

An open-pin-field platform for next-generation modularity

The defining feature of the family is an open-pin-field array architecture rated for data rates up to 56 Gbps PAM4. Unlike a fixed pin arrangement, this layout gives engineers control over how signal routing and grounding are arranged on the board, which is what makes the connectors suitable for modular systems that need to evolve over time rather than being locked into one configuration.

Eighteen connectors, two cable assemblies

TE rounds out the family with 18 distinct connector part numbers, covering pin counts from 80 to 560, stack heights from 7mm to 10mm, and a shared 1.27mm pitch. For board layouts where stacking directly isn't feasible, two cable assembly options take over instead: a 300-position version and a 160-position version, both built on 36 AWG cable with a 50 ohm signal path.

Power handling is folded into the connector hardware itself rather than requiring separate components. Each connector carries dedicated pins rated for 1.6A, so a system needs fewer discrete parts to deliver power alongside its data signals.

Lower switching costs, lower manufacturing costs

Two separate cost levers come into play once a system is in production. The connectors are drop-in compatible with existing parts, so a hardware refresh doesn't force a board redesign. That alone cuts down on engineering hours when upgrading a system. Separately, because the connectors are built on BGA (ball grid array) technology, manufacturing tends to come with its own cost advantage, independent of any design-reuse savings.

Engineered for harsh-environment durability

Mechanically, the connectors are rated to withstand 1,000 mating cycles before performance degrades, and they're built to function across a -55°C to +125°C range, wide enough to cover most industrial and ruggedized deployment scenarios. On the standards side, the family carries VITA 57.1 FMC and VITA 57.4 FMC+ certification, so it slots into existing FPGA mezzanine card ecosystems without compatibility issues.

Where to find it

For specifications, datasheets, and ordering information:

DigiKey: TE Connectivity 5G Network Solutions

TE Connectivity: 56G MezzaWave Connectors

Have any question related to this Article?

Assembly Is Just the Beginning: The Case for Design-Led Manufacturing

Submitted by Staff on

At electronica India and productronica India 2026, Aswinth Raj, editor of CircuitDigest, sat down with Sameer Jain, co-founder and director of business growth at Brandworks Technologies, to discuss India's transition from electronics assembly to design-led manufacturing.

Inside the ESP32-2424S012C Development Board: Exploring the Hardware Teardown

Submitted by Anand D on

This is the teardown tutorial of ESP32-2424S012C, an ESP32 C3-based development board with an integrated display. This device comes in very handy, as it has our favourite ESP32-C3 onboard, a 1.28” IPS Capacitive Touch Screen display with a 240×240 px resolution. The coolest thing about this is that it can be custom-programmed to our specifications using a wide range of IDEs, including the Arduino IDE.

Exploring Quectel’s Single-Board Computers: From Edge AI to 100 TOPS Robotics Platforms

At the recent Electronica 2026 expo, I had the chance to spend some time at the Quectel booth speaking with Vijay Prakash (Product Manager, Quectel) and exploring their latest lineup of AI-focused single-board computers and smart compute modules. Most of us are already familiar with popular SBC platforms like Raspberry Pi and NVIDIA Jetson boards from NVIDIA.