This week's individual assignment was to design our own evaluation board around a microcontroller using [EDA software](https://en.wikipedia.org/wiki/Electronic_design_automation). Our group assignment was to observe the operation of a microcontroller circuit board.
...
...
@@ -21,8 +21,11 @@ The individual assignment this week was to design my own evaluation baord around
### Software
I decided to use [KiCad](https://www.kicad.org/) as my EDA software suit. In our lab group we had students using different EDA software:
@@ -31,7 +34,7 @@ My choice came down to a couple of factors:
- Difficult to run classes for Fusion 360. As I said before, me and my coworkers run our Fablab in Trinidad. We run workshops for a few of the labs equipment, and our intention is to greatly expand these offerings. Right now Fusion 360 has a free personal/hubbyist license, and we are able to get student accounts through fab academy. However, there's no guarantee that personal/hobbyist accounts will be available in the future, or they may remove the circuit design feature from the free accounts. Because of this, Fusion 360 is not a great choice for us to relly on for our workshops in the future. Therefore, I would rather familiarize myself with a solution that we are likely to use for our internal programs.
- KiCAD's documentation within FAB Academy. The very first EDA project I looked at in fab academy was [Quentores baord](https://gitlab.fabcloud.org/pub/programmers/quentorres) we made for the electronic production assignment. I think I understood everything that was shown in the schematics so , and since it's a free program it would work well for our internal
- KiCAD's documentation within FAB Academy. The very first EDA project I looked at in fab academy was [Quentores baord](https://gitlab.fabcloud.org/pub/programmers/quentorres) we made for the electronic production assignment. I think I understood everything that was shown in the schematics so , and since it's a free program it would work well for our internal.
- EasyEDA regrets. The one student in our group who used EasyEDA said it worked well for his initial smaller baord, but he eventually abandoned it in favour of Fusion 360 later on. I didn't go into detail on why exactly, but I used that as a signal that better choices were available.
...
...
@@ -40,13 +43,13 @@ My choice came down to a couple of factors:
- I wanted the board I built in this week to be the same one I intended to use for my final project. There were a couple features I wanted for my project that I had to include:
- Output ports for an LED screen. We had a variety of [0.91 inch I2C OLED screens on hand](https://www.amazon.com/Pieces-Display-Module-SSD1306-3-3V-5V/dp/B08L7QW7SR/ref=sims_dp_d_dex_reranking_model_v1_t1_d_sccl_3_2/141-7627330-3764616?pd_rd_w=tXlPt&content-id=amzn1.sym.d95110a4-e921-4e5d-83f5-db6ab3273304&pf_rd_p=d95110a4-e921-4e5d-83f5-db6ab3273304&pf_rd_r=MC1EGZ019NG4GR6YM22C&pd_rd_wg=KL8wF&pd_rd_r=e4ad291f-1c8f-4d7c-85b4-6e20708018f7&pd_rd_i=B08L7QW7SR&th=1), so I opted to use these. They had the advantage of needing less data wires than some other screen types. I wanted the screen to be seperate from the main board so that I could move it around, so my board would have pins to connect as a breakout board. These screens require SoCs that have I2C (SDA/SCL) ports so that would affect my SoC choice.
- Output ports for an LED screen. We had a variety of [0.91 inch I2C OLED screens on hand](https://www.amazon.com/Pieces-Display-Module-SSD1306-3-3V-5V/dp/B08L7QW7SR/ref=sims_dp_d_dex_reranking_model_v1_t1_d_sccl_3_2/141-7627330-3764616?pd_rd_w=tXlPt&content-id=amzn1.sym.d95110a4-e921-4e5d-83f5-db6ab3273304&pf_rd_p=d95110a4-e921-4e5d-83f5-db6ab3273304&pf_rd_r=MC1EGZ019NG4GR6YM22C&pd_rd_wg=KL8wF&pd_rd_r=e4ad291f-1c8f-4d7c-85b4-6e20708018f7&pd_rd_i=B08L7QW7SR&th=1), so I opted to use these. They had the advantage of needing less data wires than some other screen types. I wanted the screen to be seperate from the main board so that I could move it around, so my board would have pins to connect as a breakout board. These screens require SoCs that have I2C (SDA/SCL) ports so that would affect my SoC choice.
- Input ports for Ultrasonic Sensor. I wanted my project to be able to use a variety of inputs that I could change if I wanted, but the main want I wanted to use was an Ultrasonic sensor to measure the distance to the nearest object in front of it. This too would be on a breakout board so that I could reposition it in various places across my final project. The Ultrasonic sensors we had on hand were [Arduino Ultrasonic sensors](https://www.amazon.com/MTDELE-HC-SR04-Ultrasonic-Arduino-Mounting/dp/B0D6WBK52V/ref=sr_1_2_sspa?dib=eyJ2IjoiMSJ9.E2SIkElJhtFWCJCHL5Q6YwwtxyRhETnroFHfs4vAAJPt6Lkb08xs3SOlq7rGFyZ1QXrpVFVK-sOth4IrTpsZGfYootPsYA7DJBwfKPjAvJcabNyjukV__QA9-yjyOHsJCBwD5XVfhEwbNyHqJr96G4Jsg7KnKK3jDRs-FjRe8_LM88F1HGyETI9jy-Kd6oPL_YGfKc64MUo_JMXHKz_SdrOfj-srzFWX62sl0GHQEAs.Ia68tRGtagPhhvIWMT6k1z3C9XvmqP5-0vWuYjMy5gs&dib_tag=se&keywords=ultrasonic+sensor+for+arduino&qid=1742371396&sr=8-2-spons&sp_csd=d2lkZ2V0TmFtZT1zcF9hdGY&psc=1). These require a connection to the main board via SPI (MISO/MOSI) ports, so that would affect my SoC choice.
- Input ports for Ultrasonic Sensor. I wanted my project to be able to use a variety of inputs that I could change if I wanted, but the main want I wanted to use was an Ultrasonic sensor to measure the distance to the nearest object in front of it. This too would be on a breakout board so that I could reposition it in various places across my final project. The Ultrasonic sensors we had on hand were [Arduino Ultrasonic sensors](https://www.amazon.com/MTDELE-HC-SR04-Ultrasonic-Arduino-Mounting/dp/B0D6WBK52V/ref=sr_1_2_sspa?dib=eyJ2IjoiMSJ9.E2SIkElJhtFWCJCHL5Q6YwwtxyRhETnroFHfs4vAAJPt6Lkb08xs3SOlq7rGFyZ1QXrpVFVK-sOth4IrTpsZGfYootPsYA7DJBwfKPjAvJcabNyjukV__QA9-yjyOHsJCBwD5XVfhEwbNyHqJr96G4Jsg7KnKK3jDRs-FjRe8_LM88F1HGyETI9jy-Kd6oPL_YGfKc64MUo_JMXHKz_SdrOfj-srzFWX62sl0GHQEAs.Ia68tRGtagPhhvIWMT6k1z3C9XvmqP5-0vWuYjMy5gs&dib_tag=se&keywords=ultrasonic+sensor+for+arduino&qid=1742371396&sr=8-2-spons&sp_csd=d2lkZ2V0TmFtZT1zcF9hdGY&psc=1). These require a connection to the main board via SPI (MISO/MOSI) ports, so that would affect my SoC choice.
- Buttons. I wanted to have a few surface mounted push buttons (3 in total) on my main board to use as inputs.
- Buttons. I wanted to have a few surface mounted push buttons (3 in total) on my main board to use as inputs.
- LEDs. I wanted to have a few surface mounted LEDs as on my board as future outputs in case I wanted them later.
- LEDs. I wanted to have a few surface mounted LEDs as on my board as future outputs in case I wanted them later.
### Parts choice
...
...
@@ -66,11 +69,15 @@ My choice came down to a couple of factors:
#### Final files
My KiCAD design files can all be downloaded here :