Project Development


...

What's Going On?

As the presentations sessions are coming closer, we are working on our final projects to make it functioning right, presentable, it’s almost going well as planned(Not very Much :D). This wee, we need to answer some questions to know, how is our final project work progress so far, and what is missing so we can work on it.

As an electronics geek I love playing and tinkering with electronics. At the early stage of any electronic development process you're gonna find yourself using a breadboard to test your circuit if it’s working or not. I asked myself why we don’t have a breadboard for the SMD components? Not only that, Why not to have a breadboard for the SMD components with a built-in Atmega328 microcontroller chip that can get programmed as a normal Arduino UNO board through a USB connector?

I started doing my research to see if there are any similar projects, I didn’t find any breadboards made specifically to be compatible with SMD components! But I found a normal breadboard compatible with through-hole components that has a built-in ATmea328P chip that can get programmed like an Arduino UNO! My project will combine these two things together in one combo. The breadboard will have a built-in ATmega328AU microcontroller with full access on it’s GPIOs. So, the user can get all the functionalities of a breadboard that is also compatible with the most-used SMD packages from the fab inventory and all the functionalities of the Arduino board in one package.

The Fab Breadboard is compatible with these SMD packages, 1206, SOT23, SOT23-W, SOT223, SOIC 7, SOIC14. These packages cover almost all the most-used SMD components in the fab inventory, like the LEDs, resistors, capacitors, phototransistors, AMS1117 voltage regulators, ATtiny44, ATtiny45, A4593 motor driver H-bridge, hall effect sensors, … and so on. Also, it has a specific place where you can insert the normal through-hole components in to make some cool stuff.

You can program the Fab breadboard using the Arduino IDE with the Arduino C programming language. The built-in ATmega328P-AU chip has the Arduino UNO bootloader uploaded to it. So, it’s 100% Arduino UNO compatible.

The Fab breadboard has a built-in CH340G USB to serial communication converter IC to make it easy for the user to establish a serial communication between the fab breadboard and the PC/laptop. Also, to make uploading the code to the Fab breadboard easily without the need to use an AVR programmer.

What tasks have been completed, and what tasks remain?

The electronic circuit designing in my project, is the hardest part that needs some time to design, test, ruin your circuit, redesign, test, … and so on. So, I’m working in the circuit design these days and I’m making good progress.

After that, I will work on the project enclosure design which plays an important big role too. We need to design an enclosure that keeps some small SMD components in place. At the same time, we need to make swapping between different SMD components easily and it should not take more than a few seconds.

what has worked? what hasn't?

Fortunately, I worked on the USB-Serial conversion part in the Embedded programming week and it was very satisfying. I used CH340G USB-Serial converter IC to allow the user to communicate with the board from his/her computer through the USB port. So, he can reprogram the board, and read/write data from/to. Then, I redesigned the final project electronic board around the ATmega328 board I designed in the Embedded programming week to allow the user to place some SMD components on it and with just some jumper wires she/he can make connections between the ATmega board and the SMD components.

The first iteration of the PCB manufacturing didn’t work out. After I fabricated the board successfully on the modela, I soldered it but the board didn’t work. With some debugging and troubleshooting, I realized that the ATmega328P microcontroller is corrupted due to a short circuit. I tried to unsolder the ATmega chip from the PCB with the help of the soldering station hot air, but I destroyed the PCB pads xD So I made a new one and it worked fine :D

what questions need to be resolved?

The most question that needs to be resolved is how I will keep the SMD components in place without soldering them?! I think making an enclosure for the breadboard that has some open spots with the exact component dimensions. So, when you place the components on the breadboard and close on it with that enclosure, it will not move around.

I’m thinking of making the enclosure by molding and casting technique. But, the only concern is how big the enclosure will be! If the enclosure is somehow bigger than the silicon blocks that we have in the lab, I will make the enclosure on the 3D printer. I think that will be easier and more time-efficient.

SMD components have very very large different packages with so different sizes, So, how ill the breadboard able to deal with all these different dimensions?! I’m thinking about making the first prototype compatible with different 5 or 6 packages. Trying to cover the most popular SMD components that I use from the Fab Inventory. Like the 1206 package(capacitors, resistors, LEDs, Phototransistors, Temperature sensors, ...), SOT23-W(Hall effect sensor), SOT23( small voltage regulator), SOT223(Large voltage regulators), 14SOIC(Attiny44, Attiny45, A4953 H-bridge, ...) with these packages, I can build a super circuit As a proof of concept!

How will the user connect jumper wires to make connections between the Atmega328 board and the SMD components pins? I’m thinking in adding a bunch of male and female pin headers to make it easy for the user to hook up some jumpers and make his/her cool connections.

what will happen when?

I designed and tested the ATmega328 with the CH340G USB-Serial converter circuit and it works fine. The next step is to develop the breadboard enclosure and test if it will keep the SMD components in place or not. Lastly, design the project Image presentation and make the final presentation video.

what have you learned?

That’s a hard question :D I have learned a lot of stuff. But, the most thing I have learned and I’m very happy because of it, how to work under stress and how to manage my time. Between my daily work, family time, and the diploma work. Also, I have learned how to learn new things and how to break my fears and get out of my comfort zone. I love making project tutorials and documentations. In the fab academy, I have developed my skills in this part and I have learned new types and techniques of documentation. The most important thing is accepting that I don’t have to be perfect in all things and I must give myself the space to fail. It’s ok to fail. That’s how We learn!