1. Think First Principle.
The first principle of thinking allows you to think about all parts from the fundamental laws of electronics. When a design needs verification or optimization, think of the first principle. For example: what is the voltage? What is the signal? How does this component behave under this condition? This set of thinking allows you to land the project. While abstraction helps in designing, first principle thinking helps in debugging and scaling your designs.
2. Think Around the Core.
Most hardware developers begin projects because they have a couple of hardware components and possibly feel they can build a project with them. Build from the core to the appendages; the CPU (micro-controllers— micro processors) serves as the core while sensors serve as the appendages. This approach will help scale your design.
3. Think like an Engineer but act like an Apprentice.
To solder, join or connect a component, you might have to watch some tutorial videos, where you have to act like an apprentice and follow the instructions as it is ( at least to test things out). Then think like an engineer to integrate it into your design. Should you apply it verbatim or restructure it to meet your design parameters? — The engineer in you will guide you right.
4. Prepare Components for Three Stages.
To guarantee safe execution, you need to budget three sets of components to prototype a real-life hardware project. What? — ( I know your answers — It is too much, blah, blah, blah). Hardware components are very volatile so, you will likely fail at initial attempts. If the failure is due to the wrong connection or power, you hear puff sound or the burning plastic smell. At this point, you have to replace the components. So my 2 cent advice will be to have a batch for the final project, a set for testing and iterating/ bread-boarding, and a set as a reserve to replace any burnt components. It is a rule of thumb that works!
5. Focus on the Idea, not the Board.
While learning hardware, it is easier to go with the available board to test out a concept. During project implementation, economics and design constraints will compel you to stick to your design parameters. The actual boards and sensors to help you achieve that idea should be your deciding factor, not the board you have experience in alone.
6. Leverage Components to Reduce Cost.
Since learning is a continuous process, what happens when you finish building a hardware project as a learner? Won’t you want to learn something more? Exactly! That is why you have to indulge in the rotation of hardware components to learn something new. Back in my undergrad, I indulge in borrowing hardware components to complete a project. A cool trick is to volunteer to help final-year students do their projects for free. Ask them to check back after three weeks while you use some of their components to try out your ideas in the meantime. You deliver your project before that and hence finish up their project in that time frame. Rotating hardware components makes you learn from more projects at a cheaper cost.
7. Read Datasheet and Documentation First.
Doing hardware can seem like building a skyscraper in a forbidden forest with guards and a little road map. It is pertinent you know the law and comply with the instructions so as not to get hurt. Before you use any component, read the documentation. Ask questions like — How can this be powered? What are the limitations of this component? What are the dos and don’t? Proceed with your implementation only after consultation of the documentation.
8. Always have a Fixed Work Bench or a Bag Pack.
Shit happens when physical and environmental changes to hardware components translate into their design. At times, these changes subject the hardware to abnormal behaviours.
Complains like; I didn’t know what happened, It just stopped working, become imminent. To minimise these, have a workstation devoid of external contact or impurities amidst development cycles. If you are a hardware rouge agent — (Developing anywhere there is light and internet (student)) — Endeavour to have a hardware bag pack you use to move your components. While moving them, ensure this is done gently as possible. Kindly heed this advice because hardware can be fragile!
9. Always Budget at least half of the time for Testing.
Many believe everything will work out after component purchase ( which usually takes eternity at times). Alas, the real work begins after component arrival. In every project you do, ensure you have enough time allocated for proper testing and packaging of the project. Experiences have shown that a higher percentage of last-minute component failures are due to the carelessness in development processes due to lack of time. When you have time, you mentally follow the due-diligent process of testing all parts of the design.
10. Always Remember, Breadboard is your friend.
Designs usually look good on paper and simulations but, their feasibility with real-life components shows when you prototype on a breadboard. Always test things out on a breadboard before merging them into the project. A breadboard is a designer’s friend because it helps prototype concepts and saves stress.
In conclusion, these mantras are not laws, they are principles that have been found to work and ensure success. All points raised are my opinion hence, kindly adopt any that resonate with you. I remain your writer/developer — engrgit. Stay tuned for my next article.
Cheersπ
Ibrahim