Why Flexible PCBs are expensive than other PCB types?
Hello friends, I hope you all are in good health. Today we will discuss a detailed overview of flexible PCB, its definition, types, advantages and manufacturing. We will also discuss why we need flexible PCB? We will discuss its uses and the reason for its high price, as it's expensive than other PCB types. I will try to deliver you my best knowledge about flexible PCB so you will clear understanding of flexible PCB. So let’s try to absorb everything about flexible PCB.
Flexible PCB overview
- For irregular-shaped locations, it was difficult to place hard substrate PCBs. So, as necessity is the mother of invention similarly difficult locations and irregular surfaces are the mother of flexible PCB invention.
- Before the 1950s flexible PCBs are not in common use but now they are used everywhere like in ATM keypads and smartwatches. Now let us have a look at the proper definition of FPCB.
Flexible PCB definition
- The board that is made up of flexible plastic substrate usually polyester, polyimide or thin sheets of glass are called flexible printed circuit boards or FPCBs.
- FPCBs have the ability to change their shape because they can twist and bend easily. In some devices, both rigid and flexible PCBs are incorporated to produce the desired functionality.
- FPCB should not be so flexible that the board breaks down during folding or twisting.
Flexible PCB Pricing
Let's discuss the pricing of Flexible PCB and here I am going to take the example of an online PCB Fabrication House named PCBWay. It's a well-renowned PCB house and provides competitive rates with a quality product.
- If you open the PCB Calculator of PCBWay and select Rigid-Flex PCB at the top, you will get a similar result:
- Now, here I am going to select Flexible PCB and I am going to place an order of 10 PCBs, each of size 10x10mm.
- In order to get the quote, we need to click on the Calculate Button and here's the price:
- Now you can see the price for 10 pcs is $125 and it's quite expensive as compared to normal rigid PCB.
- PCBWay provides the best rates for PCB manufacturing and if you check on any other site, you will get even higher rates.
Types of FPCB
- FPCB has a few common types listed below:
- Single-sided FPCB
- Double-sided FPCB
- Multi-layer FFPCB
- Rigid-flex PCB( RFPCB)
- High Density interconnects FPCB.
Single-sided FPCB
- It contains a conductive layer of copper on only one side of the PCB.
- They are used in applications that need highly flexible circuits.
Double-sided FPCB:
- It contains a copper layer on both sides of the PCB. The layers are made connected by vias or by plate through holes( PTH).
- Double-sided FPCB is popular for its ease of manufacturing.
Multilayer FPCB:
- In the multi-layer FPCBs, multi-layer PCBs are connected by vias or PTH.
- It may contain more than 10 conductive layers of copper.
- They are used in designs that require PCBs with high-density connectors.
- Using more layers in flexible PCB design adds to the cost of FPCB.
Rigid-flex printed circuit board:
- In RFPCB, flexible layers are integrated with the rigid layers and PTH technology is used to assemble circuit boards.
- Small Interconnect areas are created by using both rigid and flexible layers so the chances of failure of PCB are reduced in an application.
High-Density flexible FPCB:
- HDI are flexible circuit boards having microvias and precise features.
- They are used to provide more technical solutions interesting of layout, design and construction.
- HDI are known for their improved usage of ICs, greater reliability and high electrical performance.
Materials used in FPCB
- We use flexible materials for both substrate and adhesive.
- The substrate is basically made up of polyimide(PI) film. The PI film does not soften on heating but remains flexible.
- Normally used PI film does not show the best resistance against humidity and tears but upgraded PI can overcome this problem.
- To attach layers adhesives are used. This adhesive should also be flexible but it is difficult to attain so now PI without adhesives are used that attach copper layers without any adhesive.
- Now coverlay film created with PI is used instead of solder mask. To make areas hard staffers are used instead of solder masks.
Manufacturing Process of FPCB
The manufacturing process for FPCB is procedural and structural. that's the main reason for its high cost. The manufacturing process of Flexible PCB is too lengthy, complex and needs a special environment, which makes it too expensive to design. Let us try to understand three major steps involved in the manufacturing of FPCB.
Step 1: Build up flexible PCB
The material used as a substrate is polyimide and in this step, the main focus is to save the base material because it is expensive than FR- 4. So to avoid wastage of polyimide circuits are placed close to each other. It includes the following steps:
- CAD designing: first of all design is prepared using CAD software.
- Drilling: holes are drilled and the size of holes is tried to make small.
- Looping: adding a slight amount of extra material for servicing circuit assembly.
- Sizing conductor: use the thinnest amount of copper.
- Etching: To compensate losses especially line width losses etching is done.
- Routing: the conductor is held perpendicular to the bend and fold. Folding and bending are improved by reducing stress and by helping the conductor perpendicular stress is reduced.
- Ground planes: creating ground areas will improve the flexibility of the circuit by reducing the weight of the circuit board.
Step 2: FPCB fabrication process:
Depending on the design and application the diameter of the hole in FPCB may vary.
- Size of the hole: small holes are best for flexible PCBs. Small size holes are difficult to drill. So the no of holes and size of holes determines as the cost control factors.
- Filleting: filleting is necessary for joining pads and land termination points. By filleting area is multiplied and stress is reduced so flexibility improves.
- PTH: Nowadays, copper is used for preparing vias and plated through holes.
Step 3: focus on physical constraints/ testing:
- Layers and coating problems are dealt with in this step. So the testing of these cover layers is necessary.
- Adhesive-backed films: these films are used for overcoating or at the areas where the adhesive is missing.
- Screen printable liquid overcoats: these are used with polymer films that are thick.
- Photo imaginable liquid and film polymer: It is the modern method used for overcoating because it avoids circuiting traces by acting as a solder mask. It avoids external and internal damages to the board.
- Overlay: After testing, FPCBs are laminated which is called an overlay. For best quality overlay, the budget of flexible PCB increases.
- Packing: FPCBs are packed and delivery is made.
Advantages or benefits of flexible PCB
- It can be twisted, bent, folded, and shaped in various dimensions, unlike rigid PCB.
- It overcomes other technologies like wire harnesses, rigid PCBs, and connectors.
- It can be arranged in various stacked configurations.
- Very easy to install.
- For high flexible applications, single-sided FPCBs are used. As the spaces are generated to make them flexible so they are light in weight and small in size.
- FPCBs are more durable than PCBs and rigid PCBs.
- Using FPCBs the capability of the product is enhanced.
Disadvantages or drawbacks of FPCBs
- Their cost is high than other PCBs because of the poor utilization of panels.
- They can be damaged easily because of their flexibility and poor handling.
- A complex assembly process is used in their manufacturing.
- In case of any fault or problem, they can not be repaired easily. High-quality machinery is required to repair them and the repairing price is also very high.
- For the manufacturing of FPCB highly professional designers with a lot of time are required.
FPCB Market Costs
- The market for the flexible printed circuit board is raising day by day.
- It was $ 200 million in the past and crossed $800 million till 2020.
- High demand is expected in the future.
Applications of flexible printed circuit boards
- FPCBs have diverse applications almost in every industry. They are designed in such a way to meet all the requirements of any kind of flexibility.
- Flexible printed circuit boards are used in both static and dynamic applications based on the requirement.
- Material use varies in static and dynamic applications. So before the manufacturing, their type and requirement should be confirmed.
Static application:
- These applications are also known as flex-to-fit or flex-to-install applications.
- Only a small amount of flexibility is produced in boards for these applications.
- Inexpensive electrodeposited (ED) copper is used to make minimal flexible boards for static applications.
Dynamic applications:
- For dynamic applications, the flexibility of built-in boards is set as high as possible.
- Rolled Annealed (RA) copper is used for making highly flexible printed circuit boards for dynamic industrial applications.
Diverse FPCB industrial applications:
- The applications of flexible printed circuit boards in different industries are listed below
- Electronics: flexible PCBs are used in laptops, cameras, calculators, printer heads, flip cell phones, computers keyboards...etc. Moving the print head of printers and plotters uses flexible PCBs to draw prints. Now flexible solar cells are made which can bend easily. Flexible wristwatches are also becoming popular in young generations.
- Manufacturing: flexible PCBs are also used in robotic arms, sensors equipment, processing machines, bar code equipment, and human-machine interface equipment In the manufacturing industry.
- Automotive: in the automotive industry, flexible printed circuit boards are used in airbag systems, anti-lock brakes, Global positioning systems( GPS), in engine controls.
- Medical: in the medical industry, flexible printed circuit boards are used 8n pacemakers, hearing aid devices, heart monitoring devices, and exercise monitors.
- Miscellaneous: flexible PCBs are also used in resistors, satellites, capacitors, Tower lights, LCD fabrication, light and motion systems.
Development prospects of flexible PCBs
Flexible printed circuit boards should have to be improved in the following aspects:
In the future flexible printed circuit board should be thinner and more flexible. They should have the flexibility of complete 360°.
Improved and developed substrates should be used to overcome the folding resistance.
At this time flexible printed circuit boards are too much costly. In the future, their price should be reduced to increase their market growth rate.
It is very difficult to make flexible PCBs because they required highly qualified personals, high machinery, and a lot of time. In the future, their process level should be upgraded and minimum line width and minimum aperture must meet higher requirements.
Parameters on which the cost of FPCB depends
Many factors affect the cost of the flexible printed circuit board. But I am here to categorize these parameters into these cost drivers.
The size of the flexible PCB is measured in a square inch and the price is calculated as price/ square inch.
So for large flexible printed circuit boards having the vast size, the price will be high than the smaller one.
When the no of layers increases the price of flexible PCB increases. So double-layer FPCB has high price than the single-layer FPCB and multi-layer FPCB must be high in price than single and double layer FPCB. Price also depends upon the material used in the construction. Price also depends upon the no of pads, for more pads used in flexible PCB price will be high.
Price also depends upon the volume of flexible PCB. For greater volume price will be high.
Finishing determines the shelf life of the flexible printed circuit board. With good quality, the finishing price is affected.
- No. Of the holes and size of the holes
It is difficult to make small holes, and for small holes, which are normally drilled in the flexible printed circuit boards, the price will be high than the big holes.
For more holes price will also be high.
- Custom or unique specification
When the custom specification is required that will add to the price of the flexible printed circuit board. Examples of custom specifications are contoured edges, side plating, and solder mask clearance.
Conclusion
In the future, flexible printed circuit boards will play a major role in security and entertainment dynamics.
The demand for flexible printed circuit boards is not high till 2016 but now their demand is increasing day by day. In future preference will be given to the flexible products in the market.
In short, the future belongs to flexible products.
ESP32 MQTT
Hello readers, today we will learn about the messaging protocol supported by ESP32(called MQTT protocol), which is used for IoT applications. The communication protocol to be used for data transmission and connectivity in web-enabled devices depends upon the type of IoT application.
The Internet of Things (IoT) is a network of interconnected computing devices like digital machines, automobiles with inbuilt sensors, having unique identifiers and the ability to communicate data over a network without the need for human intervention.
Before implementation, let's first have a look at what is MQTT Protocol?
Where To Buy? |
---|
No. | Components | Distributor | Link To Buy |
1 | ESP32 | Amazon | Buy Now |
What is MQTT?
- MQTT stands for Message Queuing Telemetry Protocol and is a messaging or communication protocol used for IoT applications.
- In MQTT protocol, a publisher sends a message to the broker with a specific topic tag, and the broker forwards this message to all the Subscribers of that mentioned topic.
- So, in order to understand MQTT Protocol, we need to discuss these 4 terms:
- MQTT Topic
- MQTT Publisher
- MQTT Broker
- MQTT Subscriber
Note:
- The OASIS technical committee is the in-charge of MQTT specifications. The OASIS or the Organization for the Advancement of Structured Information Standards is a non-profit organization dedicated to the development, convergence, and implementation of electronic business standards.
Fig 1: ESP32 MQTT Protocol
MQTT Topic
- In MQTT protocol, a Topic is simply a UTF-8 string i.e. "Arduino", "ESP32", "Beginner Tutorials" etc.
- MQTT Clients can subscribe to these Topics and are called Subscribers to that Topic.
- MQTT Broker sends messages to the Clients based on their Topic subscription.
- A topic may have multiple levels, separated by a forward slash.
MQTT Publisher
- MQTT Publisher(also called MQTT client), as the name suggests, publishes the message on a specific topic and sends it to the broker.
- In simple words, a publisher sends a message(normally a string) to the MQTT Broker, and this message also contains the Topic information.
MQTT Broker
- MQTT Broker(also called MQTT server) acts as a coordinator between the subscriber and the publisher in order to create communication.
- The broker's job description is as follows:
- Receiving messages from the publisher
- Filtering received messages based on assigned Topics from the publisher.
- Determining the interested subscriber in each message based on the assigned Topic
- Finally forwarding the messages to subscribers
MQTT Subscriber
- MQTT Subscriber(also called MQTT client), subscribes to the MQTT Topics and receives the messages from the MQTT broker, sent by the Publisher.
How does MQTT Work
This messaging protocol follows the Publish and Subscribe model. The Publisher and Subscribers of the message, communicate via Topics and are separated from one another. The broker is in charge of their communication. The broker's job is to filter all incoming messages and distribute them to the subscribers in the most efficient way possible. The broker pushes the information to the client whenever something new becomes available, so the client doesn't have to pull the information.
Because there are so many ready-to-use brokers and client applications, getting started with MQTT is a breeze.
Fig 2: MQTT Publish and Subscribe architecture
MQTT Features
Light Weight
It is a lightweight and versatile IoT communication and data transfer protocol aimed at IoT developers who want to strike a compromise between flexibility and network resources.
All the MQTT messages have a small footprint which adds a lightweight feature to this protocol.
In MQTT every message has:
- 2-byte header (fixed)
- A 256 MB message payload
- A 2-byte variable header (optional)
Security
MQTT protocol implementation will allow you to use your User name and password for security purposes. If you added the authentication feature while creating the MQTT server then stranger clients can’t communicate to your MQTT server.
Bidirectional communication
There is no direct link between clients in MQTT.
A broker connects the subscriber and the publisher in this messaging protocol. As a result, the subscriber and publisher can converse about any issue that the broker handles.
Eliminate polling
Polling is a procedure in which the controlling devices wait for input from an external device to determine whether the device is ready to broadcast data. MQTT protocol follows instantaneous push-based delivery. So there is no need to continuously check or poll before sending data which results in reduced network traffic.
Storage and forwarding
MQTT supports the storage and forwarding of persistent messages on the broker. Clients can ask for the broker to keep messages after they've been published. When this feature is used, any persisted message will be broadcast to a client who has subscribed to a topic. The most recent persistent message is the only one that gets saved. Unlike typical messaging queues, however, the MQTT broker prevents these persisted messages from being backed up inside the server.
Decouple and scale
It enables changes in communication patterns and functionality without causing a system-wide ripple effect.
Simplifies communication
As we have already discussed that MQTT follows Subscriber and Publisher architecture where the broker acts as an interface between the clients. So there is no need of computer to computer interface hence providing simplified communication.
Dynamic targeting
- It also supports authentication, publishing, subscribing, keep-alive pings.
- It runs on top of Internet protocol and TCP.
Quality of service
Quality of service is a kind of indicator which ensures that messages are exchanged between the sender and the receiver. There are three levels of QoS:
- just once - this level is not reliable but is the fastest one
- at least once - this level is the default mode
just once - this level is the most reliable, but slowest
MQTT Applications
MQTT protocol is mostly used in IoT(internet of things) applications for data transmission. The data can be read from some sensors or some temperature value.
Fig 3: MQTT Applications
Some other applications where you can use it are :
- Security and surveillance
- Industries & energy
- Logistics
- Medical & healthcare
How to Publish a message using ESP32 MQTT?
- The MQTT protocol is another functionality supported by the ESP32 module. To implement MQTT, we're utilizing the Arduino IDE.
- If you're not sure where to begin coding with the ESP32, check out our prior tutorial, Introduction to the ESP32 Microcontroller Series.
Code Description
Adding libraries will be the initial stage.
- To use ESP32 MQTT to send a message, you'll need two libraries.
#include <WiFi.h>
#include <PubSubClient.h>
- PubSubClient library is not available in ESP32’s library list. You need to download the library first and add the library into Arduino IDE.
Fig 4: Adding library to Arduino IDE.
- Click on Add. Zip Library.
- Browse for the downloaded library file and add.
- PubSubClient library and Wi-Fi library
- We covered Wi-Fi in detail in our previous tutorial, ESP32 web server.
- PubSubClient is a client library that may be used with MQTT applications.
- Add your SSID and Password to create a wi-fi connection. Follow our previous tutorial, ESP32 web server, to learn more about ESP32 Wi-Fi.
const char* ssid = "public"; //add your SSID
const char* password = "ESP32@123"; // add your password
- Add the details about MQTT broker
const char* mqttServer = "m11.cloudmqtt.com";
const int mqttPort = 1883; //12948;
const char* mqttUser = "public";
const char* mqttPassword = "ESP32@123";
Arduino setup() Function
- Initialize the serial monitor.
- Initialize the Wi-Fi. (follow the previous tutorial for more details about (ESP32 Wi-Fi)
Serial.begin(115200);
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED) {
delay(1000);
Serial.println("Connecting to WiFi..");
}
- Print Wi-Fi status on serial monitor
Serial.println("Connected to the Wi-Fi network");
- Define the MQTT server's address and port address.
- To do so, we use the PubSubClient object's setServer function.
- The address and port, both defined early in global variables declaration, will be passed to this procedure as the first and second arguments, respectively.
- setCallback method to define a handling function.
- When a MQTT message is received on a subscribed topic, this handling function is called. This function's code will be saved for later.
client.setServer(mqttServer, mqttPort);
while (!client.connected()) {
Serial.println("Connecting to MQTT...");
if (client.connect("ESP32Client", mqttUser, mqttPassword )) {
Serial.println("connected to MQTT");
} else {
Serial.print("failed to connect ");
Serial.print(client.state());
delay(2000);
}
}
client.publish("esp/test", "ESP32");
- Subscribe for the topic you want to.
client.subscribe("esp/test");
Finally, we'll subscribe to the topic we're interested in. Other clients' communications will be published on that topic, and we will receive them this way. For that purpose, we use the subscribe method, which takes the name of the topic we want to subscribe to as an argument.
Arduino loop() Function
- The next task will be to connect with the MQTT server which will happen in the main loop
- Here, the device will keep trying to connect with the server unless it establishes a connection.
- In order for the client to process incoming messages and maintain the connection to the MQTT server, the function should be invoked on a regular basis.
MQTT Testing
For testing purposes, we will use MQTT_lens which is a Google Chrome application to establish a connection with the broker.
- Here are some screenshots of the MQTT lens broker:
- Create a connection after adding the following details:
- Connection, Hostname, Port etc.
Fig: MQTT_lens broker
This concludes today’s tutorial, hope you find it helpful.