A Guide to Making Your Own Circuit Board: Assembly (Part 2)

Get Started with Altium Upverter, Sign Up Now

Upverter Expert Makers12

The two-layer board shown in the image above is just one of many that is easy to design and produce with relatively low cost. If you’ve moved past the initial design phase and you’re ready to begin preparing for manufacturing and assembly, then you’ll have to follow some important steps. The exact steps really depend on whether you are building on top of a development or breakout board, or if you are going to contract with a short-run manufacturer.

PCB Assembly on Your Own

PCB assembly, also referred to as PCBA, is the process of assembling all your components directly on your circuit board. If you’re working with a breakout board, you’ll have to do all the assembly yourself. There are some services that allow you to order a small run of simple two-layer boards with copper etched in a specific pattern. If you’re a real do-it-yourself type of person, there are some kits available that allow you to actually etch your own two-layer copper board using a toner transfer process. However, this process involves some noxious chemicals and can produce low quality boards.

If you are using an Arduino or similar board, you’ll have much less assembly work to do, and you’ll spend more of your time programming your board. You’ll still need to connect components on the board as shown in your schematic, which is a relatively simple procedure. The same can be said of a breakout board. In both cases, you’ll be less reliant on the PCB layout side of the design process.

If you plan to outsource fabrication and assembly to a manufacturer, then there are some more steps you will need to take before your board hits the production line. On the design side, you’ll need to have a complete PCB layout for your board, as was described in the previous section of this guide. You’ll also need to choose what type of manufacturer you are looking for. Some manufacturers can help you by sourcing components from reliable distributors, while other manufacturers require you to send them your components. Different manufacturers will compete on prices, and some manufacturers will not take short run orders of PCBs.

Once you’ve decided on a manufacturer, you’ll need to submit your board details, bill of materials, Gerber files, and other design data. With short manufacturing runs, you’ll need to wait a few days for your fully assembled board to arrive. In regard to cost, the cost of assembly is highly relative and mostly depends on the type of components being used (through-hole vs. surface mount), the number of unique parts, the size of the boards, and any special requirements. You can save some money on manufacturing if you decide to assemble your board on your own. If you decide to go this route, then you’ll need to procure your own components and some soldering equipment.

Raspberry Pi development board

This Raspberry Pi board will come-preassembled; you’ll only need to add your additional components to create a fully functional device

Preparing Deliverables for Your Manufacturer

After preparing your Gerber files, bills of materials, and any other required information, you’ll need to send these files and your layout and schematic files to your PCB manufacturer. Most PCB manufacturers run a design for manufacturing (DFM) check before beginning fabrication. This is done to ensure the design meets minimum tolerance requirements and ensures your board can be produced with maximum yield. These checks normally focus on examining clearances between neighboring conductive elements like mounting pads, vias, and traces.

If your board passes a DFM check, then the PCB manufacturer will notify you that they are ready to begin manufacturing it. This process usually takes around 2-5 days for shorter manufacturing runs. An average 5 cm by 5 cm PCB might cost you about $1-$5, depending on the fab house you select. Now you can sit back and wait for your boards arrive in the mail!

If your PCB layout does not pass a DFM check, then the board fabricator will notify you of any required changes to your design in order to begin manufacturing. If extensive redesigns are required, then you’ll need to make revisions yourself. If the required revisions are minor, then most board houses will modify your design files for you.

Sourcing is another aspect of preparing for manufacturing when making your own circuit board. Some components have long lead times or may not be available when you start preparing for manufacturing. If you work with the right design software, you’ll have some tools that give you visibility into the component supply chain directly from your electronic components database. Component sourcing problems are a primary reason for delayed board delivery, so you’ll need to check component availability if you want your manufacturer to assemble your board.

If you are planning to assemble your board yourself, then your manufacturer will deliver bare boards without any components. You’ll need to weigh the lead time for different components against the lead time for your fabricated boards. If you’re itching to get your board built and tested, the last thing you need is a 3 day lead time on your boards and a 3 month lead time on your components.

Preparing for Manufacturing in Upverter®

When you’re preparing for manufacturing, you need to quickly convert your design data into the format your manufacturer requires. The image below shows a list of available file formats you can use when preparing for manufacturing. You’ll notice that the list includes Gerber files, netlists for use in simulation programs, drill instructions for CNC machines, your bill of materials, and even 3D STEP models for your board. You can quickly download these files to your device and send them off to your manufacturer.


You might use some of these components while making your own circuit board

You can sign up for free and get access to the best browser-based PCB editor, schematic editor, and component database. Visit Upverter today to learn more.

System-level Electronics Design in a Free Online Circuit Builder

Get Started with Altium Upverter, Sign Up Now

Upverter Expert Makers11 (1).png

Before you get to the schematic and PCB layout stage, you’ll need some systems design tools to help you get started

When it comes to PCB design, most designers (and software companies) place schematic design as the starting line in any design. While it’s true that your schematic will form the foundation of your PCB layout, adding another layer of abstraction to your design provides a number of benefits as any electronics system becomes more complex. This extra level of abstraction may seem like an unnecessary task, but it will save you time later as you start creating your schematic.

The electronics system design space has historically consisted of a relatively small number of users, and Microsoft Office tends to be the most popular set of tools for system design. If you’re building your next electronic product, where can you get the tools you need for system-level design? Instead of working with an external flowchart tool, your electronics design software should include the features you need to create a functional block diagram or other system-level diagram for your next project. You can access system design features that are uniquely adapted to electronics in the right free online circuit builder.

Should You Start at the Component Level?

With a simpler device, starting at the component level is not necessarily a bad thing, simply because you are using fewer components. As a project becomes more complex, the answer becomes a definite “no.” In a complex system, it becomes easy to lose track of high level functionality as you focus more on the components in a schematic, rather than the links between groups of components.

Instead, it is better to start at the functional level, where the relationships between different product functions are described without specifying specific components. An example is shown in the image below. In this simple camera system, the different portions of the system that provide broad functionality (the camera, FPGA, Flash memory, and USB connectivity) are linked together to show how data and signals move between groups of components. While this system diagram only includes four functional blocks, it becomes easy to see how this same system could become increasingly complex as more functions are added.


The start of a simple camera module in Upverter’s free online circuit builder

This approach lends itself naturally to hierarchical schematic design. In this design methodology, each of the functional blocks in the above image would be designed in its own schematic. These individual schematics would contain all the components required to provide the specific functionality for that block. These schematics are then linked together by defining nets throughout the system. This forms a parent-child relationship between different portions of the system that reflects the system-level diagram. Once you receive your prototypes, it becomes much easier to trace design problems back to a specific functional block. If you need to implement a redesign, you just need to go back to the schematic for the functional block that happens to have a problem.

If you’re skeptical of this design methodology, then take a cue from successful electronics design architects around the world. The central ideas in system design are used at the IC level, board level, and overall product level in the most advanced technical industries. When you start designing your next electronic device at the system level rather than the schematic level, you can give yourself and your collaborators a higher level view of functionality, rather than getting mired at the component level.

Upverter’s Free Online Circuit Builder for System Design

Not all design platforms include a set of tools for creating functional block diagrams of electronics systems. This means you’ll need to use an external drawing program on your desktop or subscribe to a flowchart program. While these tools allow you to create a block diagram for a hardware system or a workflow for software, they don’t all include tools that for electronics systems.

The free online circuit builder in Upverter gives you access to an advanced schematic editor, PCB layout editor, and tools to generate deliverables for your manufacturer. These online design tools are accessible alongside a system design tool that includes premade and customizable functional blocks. You’ll even be able to explore your projects in 3D. All these design tools interface with a revision history feature that tracks changes to your design by all collaborators.


You can build boards like this with the right free online circuit builder

Placing these tools online provides a number of benefits that simply aren’t accessible in desktop design programs. First, your design is accessible anywhere by multiple team members. You’ll also be able to export your design files in standard formats for use in your favorite desktop design platform. Finally, you’ll have access to a massive components database without having to use a 3rd party data warehousing tool.

With the browser-based design features in Upverter®, anyone has the ability to access systems design, schematic design, and PCB layout tools in a free online circuit builder. The unique browser-based design interface includes an extensive components library and features to help you prepare for manufacturing, allowing you to take your design from start to finish. Upverter’s free online circuit builder includes standard features any designer expects to find in their electronics design software.

You can sign up for free and get access to the best browser-based PCB editor, schematic editor, and component database. Visit Upverter today to learn more.

A Guide to Making Your Own Circuit Board: Design Time (Part 1)

Get Started with Altium Upverter, Sign Up Now

Upverter Expert Makers11.png

You might use some of these components while making your own circuit board

As a newbie, hobbyist, or even electronics enthusiast, you can easily get overwhelmed with some of the terminologies used in the electronics industry. We have seen cases where a lot of upcoming electronics enthusiasts quickly lose interest in this domain and drift to other sectors. If you’re planning to make your own circuit board, it can be difficult to figure out how to get started. It all starts with the right components, design software, and plan for assembly.

Making Your Own Circuit Board

Any new product or electronics project will need a printed circuit board (PCB) to support the electronic components that give your new project its functionality. All your components are connected with copper traces embedded on the board, as well as mounting pads and other conductive elements. If it’s your first time designing a PCB, you’ll need to think about how your components connect to each other and how they will attach to your substrate.

A PCB can be single-sided, i.e., one copper layer, double-sided (two copper layers), or they can have multiple layers, as seen in some complex development boards and computer motherboards. A board with fewer layers is usually easier to design and costs less to assemble. PCBs can be produced at home depending on the board complexity, or you can outsource assembly to a PCB manufacturer for a fee.

Anyone that wants to make their own circuit board can consider using some system-level design tools and building on top of a development board, like an Arduino, Beagle Bone, or Raspberry Pi. These boards provide plenty of features and are easy to program with open source software, especially if you already have some software experience. Whether you use a breakout board, development board, or you assemble something yourself, making your PCB involves going through some important processes.

Another great way to get started with using design software and getting some ideas for a new project is to take a look at some open hardware projects. Not all design tools will give you access to open hardware projects in a GitHub-style interface. If you can access and fork these projects directly from your design tools, you can easily expand on an existing project that you know works, rather than reinventing the wheel.

Schematic and Board Design

Before getting into the schematic design and board design stages, you’ll want to make sure you carefully define your board’s functionality. This should include specifying requirements at the functional level and determining which components you need for the job. If you’ve already gone this far, then you’re ready to jump into the design process.

Circuit Design

Circuit design is the first stage of producing a PCB, and it just happens to be the most crucial stage. No matter how well a car is designed, if you put a terrible driver in the front seat, someone is going to get into an accident. This same analogy applies to making your own circuit board; no matter how good the manufacturer is, the end product will perform poorly if the board and schematic are designed incorrectly.


Getting started making your own circuit board with a new schematic

In this stage, you’ll need to create a sort of blueprint that describes how the electrical components will be connected to each other. To create your schematic, it’s best to use a schematic design program that includes a large electronic components database. After selecting which design tool you want to use, you can quickly jump into the schematic editor and start adding your desired components. Your job is to connect them together, define your power and ground pins, headers, and other required I/Os.

Most electronics enthusiasts aren’t in the business of hiring design engineers to build their boards. This is where your design tools can provide some major assistance as they can check to see whether your circuits will meet basic electrical design rules. If you’re familiar with a simulation tool like SPICE or Verilog, you can use your design software to run simulations directly from your schematic. This gives you an opportunity to test your board’s functionality before you actually build it.

PCB Layout

The next stage after the schematic design is designing the PCB layout. The PCB layout is all about allocating where the actual components will be placed on the final board. The PCB layout will also show how copper traces will be routed and connected between components. The easiest way to get started with a layout is to use a design platform with a schematic capture tool. This saves you a significant amount of time getting started with a new layout as CAD models will get imported into a new board directly from your schematic.

UPS_layoutAn example of a 5 V, 2.5 A uninterruptible power supply board

Component placement on any PCB is crucial. Some components might interfere with each other and cause unexpected behavior. For example, if you have both Bluetooth and Wi-Fi modules, they both operate at 2.4 GHz and can interfere with each other or with other components on the board if not placed correctly. Be sure to follow your component manufacturer’s guidelines if you’re unsure of how to work with some of these components. Some development boards, notably some Arduino boards, will already include these components in the layout, and you can rest assured that they will work properly. This allows you to focus on expanding your board’s functionality instead of debugging component placement.

Once your board has passed all your rules and constraint checks, it’s time to start preparing for manufacturing and assembly. By this point, you should have an idea of whether you want to assemble your board yourself, or whether you want to contract with a manufacturer. If you’re using a breakout board or development board, you’ll most likely be assembling your own board. More complex devices will require a custom board that can only be fabricated by a manufacturer.

Making Your Own Circuit Board Online

If you’re interested in accessing a top-notch electronic design automation (EDA) platform, Upverter is ideal for new designers that want to quickly get started with a new project. Unlike other plawtforms that separate schematic and PCB design into separate programs, Upverter provides a schematic editor, PCB layout editor, and even a 3D viewer that lets you see how your board will look once it is assembled. All these features are accessible in a single browser-based platform. You’ll also have access to some tools that help you prepare your board for manufacturing. We’ll get a deeper look at these manufacturing features in our next article.

You can sign up for free and get access to the best browser-based PCB editor, schematic editor, and component database. Visit Upverter today to learn more.

Importing and Modifying Arduino Projects in Upverter

Get Started with Altium Upverter, Sign Up Now


If you’re looking for a great platform for creating a prototype electronics system, then Arduino is one of your best bets. Arduino boards offer plenty of capabilities in a compact package, including USB connectivity, reasonably fast processing, and connectivity with external devices. The schematic and layout files are also available as open source design data, allowing you to quickly import and modify an Arduino board using your favorite design software.

Upgrading Existing Arduino Projects

Although Arduino boards are readily available and provide a great pre-assembled platform for building a new system, Arduino boards carry some disadvantages. First, the Arduino IDE is not the best platform for building firmware, so you will need to find another editor to create code for firmware. If you already have some experience building software, then this shouldn’t be a huge obstacle. The Arduino library controls many MCU peripherals that you might not need, and getting under the hood and replacing 

In terms of the hardware capabilities, some Arduino boards only use 8 bit MCUs, and only Atmel microcontrollers are officially supported. There are a number of Atmel MCUs that you can use to upgrade the board to 16 or 32 bits, so you can create your own more-powerful variant of an Arduino board using Atmel MCUs or another brand of MCUs. In general, going beyond 8 bit MCUs means you will have fewer restraints on processing power and register width for logical operations and arithmetic.

If you look at the layout, there is a bit of wasted board space between the primary MCU and the top connector, and Arduino decided to put their logo in this area. You could use the existing schematic and create your own layout for a custom Arduino board if you’re feeling adventurous. You could also modify the existing layout to fit into a smaller board, although this can be difficult if you aren’t using the right design software.

There are some examples where companies have taken an existing Arduino and beefed up its capabilities to provide faster clock speeds, more communication channels, and greater memory. Take a look at this example from Microchip if you want to get an idea of what you can do with modified Arduino projects.

Getting Started with Arduino Projects in Upverter®

If you want to design directly on top of an Arduino board or modify an existing Arduino, you can go to the Arduino store and download the schematic and layout files. You can then import them directly into Upverter and start modifying them as you like. I decided to get started with the Arduino Uno and start modifying it directly in Upverter. Once you download the Eagle .SCH and .BRD files, you can create a new project in Upverter and import this schematic and layout data as a new Arduino project.

In this example, we’ll ditch the external 16 MHz clock oscillator and just use the internal 32 MHz clock in the new MCU. The ATXMEGA32E5-M4U MCU from Atmel is a more powerful controller than the existing ATMEGA16U2 in the Arduino Uno schematic. Once you ditch the external clock, you can free up some board space in the layout and finish your routing. The ATXMEGA32E5-M4U can also be found in Upverter’s component database, so you can immediately add it to the Arduino schematic and layout. You can swap out the existing MCU automatically or manually.

Removing an oscillator from Arduino projectsYou can ditch the external oscillator before adding the new MCU

If you don’t feel like swapping the existing MCU with the automated tool, you can just select the existing MCU in the schematic and delete it. You can then go to the Add Component window, search for the ATXMEGA32E5-M4U, and place it in your schematic. The last step is to route the existing connections back to the new MCU.

As you rebuild the schematic around the new MCU, you’ll find that there is a slight alignment mismatch between the existing open connections and the new connections to the new MCU. This is shown in the figure below (see the red box). However, you can rest assured that the new connections are routed properly, and you can check that the reference designators match on the new and existing connections.

ATXMEGA32E5-M4UIgnore the slight alignment mismatch for the moment

Going back to the PCB layout, you’ll see that the new MCU will fit nicely in the old location, however you will need to change up your routing so that you can make the required connections. Like most component swaps, the new component generally doesn’t have the same pin arrangement as the old component, so some modifications to the layout will be required.

newMCUThe new MCU will fit nicely in the red box above

Wrapping Up and Sharing

Once you’ve routed connections to the new ATXMEGA32E5-M4U MCU and removed the slower clock oscillator, you’ll find that there is some more space on your board to place some other components if you like. There is no perfect way to route the open traces back to the new MCU, so it’s up to you to finish off your layout. When you’re ready, you can share your upgraded Arduino board with the Upverter community by marking your project completed and making it publicly accessible in your Dashboard area.

You can complete the same process shown above with any of the other components found on the board as you see fit. Note that the other MCU (the large ATMega328P in the DIP package) is the primary controller in this board and interfaces directly with the I/O pins. You could remove this other MCU and route your I/Os to the new MCU and greatly reduce the size of the board.

The other option for completing custom Arduino projects is to ditch the current layout and redesign it entirely. Depending on how pins are arranged on the new component, you may find it easier to simply reroute your board rather than modify an existing design.

There are many online PCB design platforms, but few give you the tools you need to take a design from start to finish without adapting at least one external program into your workflow. The browser-based PCB design platform from Upverter provides all the tools you need to build or modify Arduino projects and share them with other designers. There are plenty of other open source hardware projects on Upverter to help you get started. This online design platform includes all the standard features designers expect in electronics design software and contains an extensive library of components for building your Arduino projects.

You can sign up for free and get access to the best browser-based PCB editor, schematic editor, and component database. Visit Upverter today to learn more.

HC-SR04 Ultrasonic Sensors Power Super Mario Brothers Staircase

HCSR04 Ultrasonic sensors project in Upverter

Following is the Mind Your Steps project, which I am conducting student workshops for at SUIC Digital Communication Design students. The goal of these workshops is to explore the possibility of using technology to augment daily experiences and promote new productive human behaviors in day-to-day life.  

The workshop’s timeline is only 1 week, so things need to move as quickly as possible to meet that deadline. In the first class, all of the five students, who had never been exposed to the subject of physical computing before, were lectured with a lot of case studies and learned the explanation for the technology behind it. Students were then told to brainstorm and pick the location for their projects by the end of the very first day. 

The students came up with two locations. The first one was in front of the mirror in a women’s restroom. Female students noticed that other women were spending too much time in front of the mirror, and that maybe we could make an interactive installation to change that behavior. The second location was a staircase between the 8th and 9th floors of the CAT building (which is located at the university). The staircase seemed to be a better location for everyone to be able to participate in the installation and not be limited by lack of access to the women’s restroom. During the lecture period, students were inspired by the piano stairs in the Odenplan subway in Stockholm Sweden, which was implemented to promote the use of the staircase as opposed to the escalator. This interactive project continues to promote healthy behavior by reducing human traffic for the escalator and making the stairs an entertaining choice.

A screenshot from Super Mario Bros
Super Mario Bros offered a great player experience among many mid-eighties games.

If you can recall any popular mid-eighties platformer game in which players attempt to avoid certain objects and catch other objects, Super Mario Bros is sure to be one of the first games to come to mind. Our goal was to bring this fun experience from video game to reality. Since all of the students were too new to the technology for the project to succeed, I was responsible for the technical part and the students were responsible for the overall aesthetics of the project. The Super Mario Bros graphic on the wall around the staircase, the floor, and an electronics enclosure were created by the students. We chose an 8-bit style graphic to give a retro mood to audiences and remind them of the fun experiences 8-bit games provided in their youth. The content of the graphic had to relate to the context of the place, which is Silpakorn University International College in Bangkok, and it had to be relatable to students of the arts.

Wallpaper beside the college’s staircase
The design of the wallpaper beside the staircase is done by the students.

The picture above is the Super Mario Bros-esque graphic design the students came up with, including a lot of 8-bit pixellated buildings and other environmental features. The strawberry pattern above is the symbol that refers to the arts faculty.

Staircase steps are decorated with rewards and traps
Staircase steps are decorated with rewards and traps that provide feedback when stepped on.

The students chose four Mario-like rewards and traps; bombs and turtle shells as traps, and strawberries and coins as rewards. The audience receives audio feedback when stepping on the symbols.

View of the staircase from the higher floor
View of the staircase from above.

Here is what we ended up with on the first installation day. As you can see, we still had too much free space on the wall which needed to be filled. The banner describing the project also seemed to be tilted a bit, so the students had to come up with a clever way to solve it.

Close up view on some of the electronic equipment in the staircase
You could see an HC-SR04 ultrasonic sensors blending in with the buildings in the wallpaper.

For safety reasons, we hid the wires alongside the staircases so that bypassers wouldn’t trip over them.

Side view of the staircase
Close-up of equipment on staircase.


The Hardware

A table with hardware on it
The hardware used includes prototyping boards and loudspeakers.

Here is the prototype I built at home. The whole project required four. Each set included one microcontroller (AVR on the Arduino), one DFPlayer Mini MP3 Player for Arduino, one microSD card, one speaker and two HC-SR04 ultrasonic sensors. For the prototype I chose Arduino Uno for the ease of hooking up the wires to the peripherals. The MP3 module has no problem supporting a 3W speaker, so I used it in the project, but for the prototype I chose a higher watt speaker that required an amplifier module to drive them. The SD card is loaded with the mp3 files which are matched to each symbol. All of the electronics sets are running on 5V, so one 5V 30A power supply should be more than enough to power the project.

Watch the prototype test SUIC stair sweeper here.

Here is how the prototype basically works. The HC-SR04 ultrasonic sensors are set with the appropriate distances to detect when human stepping on the traps or rewards. After the HC-SR04 ultrasonic sensor detects any objects in range a sound will play according to the symbol the sensor is paired with. Four different symbols are mapped to four different sounds.

A team member soldering pin headers to an Arduino Nano
Here is an image of the first time soldering. On the right-hand is 3W speaker. After we finish assembly all of the units in the lab. Its time for on-site installation.

Here is the schematic of each unit. The units are powered by a 5V power supply, + for VIN pin and – to GND pin. The schematic of the staircase circuit, built on Fritzing platform, including two HC-SR04 ultrasonic sensors, an Arduino Nano, an SD card reader, and a 3W speaker.

The schematic of the staircase circuit.
The schematic of the staircase circuit.

Here is the schematic of each unit. The unit is powered by a 5V power supply, + for VIN pin and – to GND pin.

Schematic diagram for Mario Stairs project
The schematic of the staircase circuit, built on Fritzing platform, including two HC-SR04 ultrasonic sensors, an Arduino Nano, an SD card reader, and a 3W speaker.
PCB layout for the ultrasonic sensor and audio player board
PCB Layout
Photo of final PCB
Final PCB board ready to be soldered on.

We had to place each box at the exact location we were preparing, because if we misplaced them, the triggered sound would be wrong and we’d need to reopen the enclosure and reinstall the code. The wire length needed to be adjustable due to the measuring error. 

The Ultrasonic required 4 pins to function: Vin, GND, Echo, and Trig. I used two black power wires—each with red and black wires inside to connect the sensor modules to the Arduino microcontroller modules, as you can see in the image.

Final top view of the staircase with Super Mario inspired electronics
Final view of the staircase ready for students in the coming school year!

Here is how the staircase project looked when it was ready to be tested—no obstructive wires in sight. We spent one more day debugging code and rewiring an electronics.

And here is the project in action. We finished the project in the summer, so no students were present at the time. We’ll need to wait until the semester starts again to see whether we’ve achieved our goal or not.


#include "Arduino.h"
#include "SoftwareSerial.h"

//Library that I chose to control mp3 module
#include "DFRobotDFPlayerMini.h"

SoftwareSerial mySoftwareSerial(10, 11);  // RX, TX
DFRobotDFPlayerMini myDFPlayer;

// Two ultrasonic pins setting up
#define trigPin1 9
#define echoPin1 8
#define trigPin2 7
#define echoPin2 6

long duration, distance, distance1, firstSensor, secondSensor;

void setup()

  pinMode(trigPin1, OUTPUT);
  pinMode(echoPin1, INPUT);
  pinMode(trigPin2, OUTPUT);
  pinMode(echoPin2, INPUT);

  Serial.println(F("DFRobot DFPlayer Mini Demo"));
  Serial.println(F("Initializing DFPlayer ... (May take 3~5 seconds)"));
  if (!myDFPlayer.begin(mySoftwareSerial)) {  //Use softwareSerial to communicate with mp3.
    Serial.println(F("Unable to begin:"));
    Serial.println(F("1.Please recheck the connection!"));
    Serial.println(F("2.Please insert the SD card!"));
  Serial.println(F("DFPlayer Mini online."));

  myDFPlayer.volume(30);  //Set volume value. From 0 to 30


void loop() {

  // read distance data from both sensors
  SonarSensor(trigPin1, echoPin1);
  SonarSensor1(trigPin2, echoPin2);
  firstSensor = distance;
  secondSensor = distance1;

  // I prioritize the first ultrasonic first, so the two sounds will not be overlapped
  if (distance < 40 && distance > 10) {
  } else if (distance1 < 40 && distance1 > 10) {


void SonarSensor(int trigPin,int echoPin)
  digitalWrite(trigPin, LOW);
  digitalWrite(trigPin, HIGH);
  digitalWrite(trigPin, LOW);
  duration = pulseIn(echoPin, HIGH);
  distance = (duration/2) / 29.1;

void SonarSensor1(int trigPin,int echoPin)
  digitalWrite(trigPin, LOW);
  digitalWrite(trigPin, HIGH);
  digitalWrite(trigPin, LOW);
  duration = pulseIn(echoPin, HIGH);
  distance1 = (duration/2) / 29.1;

Future implementation

There are several ways this project can be implemented in the future. First, we can make question mark boxes like the ones in the Super Mario games in the areas between both floors that require humans to jump or hit them. When we hit the box, something might pop up above the box by a linear motor—or an LED might light up. Second, the symbol on the floor only has sound feedback right now. If we add tactile feedback when we step on the symbol, this will make the project much more fun to play with. 

This workshop is doing an experimental project that serves as a mind opener to students, encouraging them to recognize that technology is not limited to smartphones and the internet, but that technology can be applied to many areas in our life which usually go untouched. 

Salutes to all the kiddos Yong, Nat, Petch, Kim, Kap! 🙂

With so many aspects of our lives run by electronics, PCBs are like the glue that holds modern life together. Do you have an idea for a project? Try Upverter today, or get more inspiration about the types of projects you can do in Upverter. 

By Natthakit Kangsadansenanon

Using a Circuit Builder Online with Upverter

Get Started with Altium Upverter, Sign Up Now

Upverter Expert Makers8

Any new or experienced PCB designer with a great idea for a new product will have plenty of challenges to overcome, and they need a number of tools to create a high quality design that is manufacturable. From schematic design tools to layout tools and component libraries, the best PCB design programs and platforms offer designers a large number of features for creating advanced PCBs.

Collaboration is another pain point that designers experience when working on complex products. Some design platforms make collaboration easier than others, and the price points and functionality in different programs can vary wildly. Thankfully, there is an easier way to collaborate with your design team and create high quality boards on a budget.

Why Should I Use a Circuit Builder Online?

Using a circuit builder online can help ease your collaboration pains and provide you with the tools you need to create boards that are actually manufacturable. The right online design tools will also give you access to a huge library of components and datasheets. Your team will be able to track changes to projects within a single interface, as well as prepare designs for full-scale production.

What Makes a Great Online Circuit Builder?

A great online circuit builder will include many of the same tools that are present in desktop PCB design applications. If you take a look at most online design tools, you will see that they offer limited functionality, forcing you to choose multiple tools just to create a new design. Desktop design programs have a chance of reading between data formats, but separated online tools do not have this capability.

The best online circuit design software will include the features you need to take a design all the way to production in a single program. You shouldn’t have to cobble together multiple online design programs just to finish an important project, and designers on your team should have full access to the design features required to build great PCBs. This improves productivity and eases collaboration across design teams.

  • Other online design platforms give you little to no control over your design rules, and most do not enforce any design rules at all. Upverter allows you to tailor your design rules and constraints to your specific application. This helps you meet your performance requirements. Learn more about working with constraints in Upverter.
  • Upverter’s browser-based design interface is built for collaboration. Your work is stored in a secure database and can be easily shared with your team members. Learn more about collaboration in Upverter.

Screenshot of a PCB for a watch in UpverterPCB layout for an electromechanical watch created with Upverter

Completing Your Designs with an Online Circuit Builder

There is no reason you should be forced to work with multiple design tools that enforce inconsistent workflows just to finish your design. If you’re considering using a circuit builder online, your browser-based design software should include all the tools you need to turn your idea into a finished layout and plan for production. Even more important, your online design tools should be accessible in a single interface with consistent workflow among design features.

Preparing for Manufacturing with a Circuit Builder Online

When you’re ready to plan for manufacturing, you’ll need tools in your design software that generate deliverables for your manufacturer directly from your design data. There is no reason you should have to manually copy design information into a word processor, browse distributor websites for components, and generate Gerber files in a separate program. With Upverter, you’ll have the tools you need to prepare a complete package of deliverables for your manufacturer.

Screenshot of the part creation tool in UpverterCreating custom components in Upverter

Upverter: A Comprehensive Circuit Builder Online

Other browser-based programs separate features behind multiple paywalls, forcing you to pull out your credit card every time you need to complete a critical design step. With Upverter, you’ll have greater access to the features you need, making collaboration among multiple people in your organization much easier. Upverter is the only comprehensive browser-based PCB design solution.

Upverter’s Complete Browser-based Design Platform

When you use Upverter, you’ll have access to a complete design platform with professional features in a single location. The days of trying to mix multiple online circuit design tools into a single program are over. You can have access to everything you need to create a PCB online with Upverter.

Upverter has taken the time to nurture a vibrant community of designers and wants you to interact with the community. Between the open source projects, easy-to-use design tools, and vibrant community of experienced designers, Upverter has the tools and resources you need to bring your next idea to life.

You can sign up for free and get access to the best browser-based PCB editor, schematic editor, and component database. Visit Upverter today to learn more.

Online PCB Printing: What to Know With Small or Large PCB Services

PCB production with a CNC machine

If you’re like any designer, you’ve probably spent more time than necessary trying to hammer out all the kinks of your printed circuit board before you go into making your device. But, especially if you’re not particularly part of the industry, you might wonder how exactly the “printed” gets put into the “printed circuit board”. After you’ve spent time learning the particulars of PCB design and laying out your new dream device, it’s time to bring your board to life.

If you start searching the internet for manufacturers, you will find a long list of companies with varying capabilities, prices, and turnaround times. Production sizes, printing costs, electronic component listings and necessities for audits, suppliers, and turn-around times all may vary.

So how do you pick the right manufacturer for your needs? There are several variables to consider when deciding on a manufacturer and your order size. All manufacturers follow a similar process, but not all manufacturers have the same capabilities or prices.

So You’ve Decided to Print Your Board. Now What?

If you have your heart set on manufacturing your device, it is best to take some time to learn design for manufacturing (DFM) and design of assembly (DFA) practices while you are still in the design phase. Most manufacturers can produce simpler boards without undue costs. Taking some time to learn DFM and DFA practices based on your manufacturer’s capabilities will help prevent delays, redesigns, and unexpected costs.

The next critical question involves quantity. How many boards do you need to order? Do you need them tomorrow, next month, or can deliveries be staggered? Should you order a small prototype run first? These are important questions that can have a big impact on your schedule and your wallet.

Many manufacturers will provide a short-run of PCBs. Their costs vary by geography, manufacturing capabilities, and board complexity. If you live in a moderately sized city, you can likely find a local manufacturer that you can speak with in-person. Short-runs are useful if you want to use a small group of devices for testing, if you want to get opinions about your device from beta users, or if you just want one or two for your at-home purposes.

If you are intending to start selling and distributing your device to wider audiences, you will need to order from a large-run manufacturer. Your fabrication and assembly costs per board will be lower when you order a large manufacturing run. Ordering a large-run is only a good idea if you have already thoroughly tested your board as a prototype. If you order prototypes and thoroughly test them before moving to full production, you’ll have an opportunity to change your design if needed.

If a company is going to charge money for a large manufacturing run, then it needs to work correctly and that will involve testing prototypes in-house. Aside from allowing you to perform some redesigns, prototypes also allow manufacturers to ensure that the fabrication and assembly processes can produce defect-free boards. Some manufacturers will also run basic in-house testing on your prototype.

Testing a PCB prototype

What Does PCB Manufacturing Look Like?

Once you get your design finished, you’ve validated it with simulations, and you’ve located a manufacturer that can produce the quantities you want, it’s time to prepare your manufacturing outputs. Your manufacturer will need certain documents generated from your design. These documents include Gerber files, Excellon drill files, a CAM draft of your design, and a bill of materials. Your manufacturer will tell you what information they need to plan out the fabrication and assembly process.

Once you get your design to the point where you want to order prototypes, you will need to supply several pieces of information about your design to your manufacturer. Whether you’re manufacturing the next great smartphone or something much simpler, this requirement goes above and beyond the board layout. Your manufacturer needs manufacturing specifications, component sourcing information, suitable component substitutes, and much more.

Some manufacturers will actually give you a discount if you perform DFM checks in advance, as this prevents the manufacturer from having to make last-minute changes to your design to accommodate your order. It also allows you to address any design issues before your information gets sent to the fabrication house.

If you are interested in ordering a larger fabrication run, the last thing you need is to receive your finished boards, only to find that they do not meet your specifications. It is a good idea to order a short run first and check that this short run meets your design specifications. This gives you the chance to implement any last-minute critical redesigns before ordering a large run.

Fabrication and Assembly

Fabrication houses need your manufacturing outputs so that they can build a step-by-step process to build your board. It’s okay if you are not familiar with all the steps involved in fabricating a PCB, your manufacturer will determine the best process to fabricate your board that fits within their capabilities. Your manufacturing outputs will help your fabricator determine the best fabrication process for your circuit board.

Designers that are serious about manufacturing PCBs will panelize their boards, even if they are only purchasing a small run. This involves arranging your PCB into a pattern (called a “panel”). These patterns are arranged through your PCB layout on large boards to have the fabrication house cut or rout the boards from the panel. This increases the number of boards you can manufacture at one and reduce your costs for production.

Once your boards are fabricated, it’s time to assemble components on your board. If your manufacturer will also perform assembly, the manufacturer will be working off of your bill of materials. This document contains component sourcing information, cost estimates, and any suitable replacement components. Effectively, it should serve as a one-stop source for your circuit board’s electronic component needs.

Automated soldering machine

Manufacturing Perils

Problems with manufactured boards come primarily from design mistakes, poor communication with your manufacturer and plain old carelessness on the part of manufacturers. Only two of these things are within your control. But, paying enough attention through the start of your manufacturing process will (hopefully) ensure that enough attention is paid from your manufacturer’s end on your circuit board and all required packaging.

Some design choices can incur significant costs and lead to serious design headaches if you don’t communicate with your manufacturer early in the design stage. Even the shape of your board can incur design costs that suddenly make your board unaffordable. Communicating with your manufacturer about how your device can be designed to match their capabilities lets you consider redesigns before your first quote and manufacturing run.

An experienced manufacturer should be able to identify common assembly issues before they begin a manufacturing run. As a typical example, unevenly applied solder paste and slightly misaligned components can lead to tombstoning while soldering components, causing your components stand up vertically and leave an open connection. If your manufacturer can identify problems like this and warn you ahead of time so that you can implement any redesigns as necessary.

No two manufacturers are the same, and finding the right manufacturers can help alleviate all these issues. Not all fabrication houses will offer to help you complete a PCB project from start to finish. If you can find a manufacturer that is prompt with client communications, can point out design issues before fabrication and recommend the best redesign steps, you will increase your chances of receiving the best boards on your first run.

From Beginner Board Design to Advanced PCB Layouts

More complex board designs like rigid-flex and multi-layer PCBs have a more extensive manufacturing process. Both types of boards are becoming the standard in a number of applications. Since these boards are more specialized, they tend to have higher costs and longer turnaround time.

Multi-layer Boards

Multi-layer boards allow connections to be routed below the surface layer, allowing you to increase your connection and component density. Fabricating a multi-layer board is similar to fabricating multiple single layer boards and the layers are overlaid and bonded together. Connecting to internal layers requires placing vias at certain points in each layer. Your manufacturer will have certain requirements on how vias should be used in your PCB.

Rigid-Flex Boards

Rigid-flex boards use a flexible conductive ribbon to connect two or more PCBs, and these boards can be used in more complex packages. The important manufacturing step involves applying a coverlay over the flexible part of the circuit, which shields the circuit from damage. As a designer, there are certain design rules you should follow if you when laying out the traces in your flex ribbon.

Just as is the case in fabricating a simple board, your manufacturer should be able to identify any design issues in more advanced boards that will create manufacturing problems. This is where communication with your manufacturer during the design phase is crucial. This gives you the opportunity to understand any design constraints before you finish designing your board and send it to your manufacturer.

If you aren’t a PCB or electronics design guru with a huge budget, you should consider using browser-based design software. With built-in component generators, automatic routers, and an intuitive user interface, IoT 360 helps you streamline your design process without breaking the bank. IoT 360 has a ton of options and allows you to export your manufacturing outputs in an industry standard format.

If you are interested and want to learn more about the capabilities of browser-based designs and product development, sign-up for our service and contact us for more information.