Electronics Design Group Assignment Individual Assignment Circuit Design Programming Testing Challenges Downloads

Electronics Design


Assignment requirements:

Group Assignment
  • Use the test equipment in your lab to observe the operation of a microcontroller circuit board (in minimum, check operating voltage on the board with multimeter or voltmeter and use oscilloscope to check noise of operating voltage and interpret a data signal).
  • Document your work (in a group or individually).
Individual Assignment
  • Redraw one of the echo hello-world boards or something equivalent, add (at least) a button and LED (with current-limiting resistor) or equivalent input and output, check the design rules, make it, test it.
  • 3D scan an object, try to prepare it for printing (and optionally print it).

Learning outcomes:

  • Select and use software for circuit board design.
  • Demonstrate workflows used in circuit board design.

Assessment criteria

  • Linked to the group assignment page.
  • Documented what you have learned in electronics design.
  • Explain problems and how you fixed them, if you make a board and it doesn't work; fix the board (with jumper wires etc) until it does work.
  • Included original design files (Eagle, KiCad, - whatever).
  • Included a hero shot of your board.
  • Loaded a program and tested if your board works.

Group Assignment

In this week we learned more about electronics testing tools, design tools and about electronics itself.

Oscilloscope

  • With our instructor he explained how oscilloscope is used and demonstrated an example of using it on a PWM signal.


  • Oscilloscope is a type of electronic test instrument that graphically displays varying signal voltages, usually as a calibrated two-dimensional plot of one or more signals as a function of time
  • Video below shows a signal reading of changing duty cycle of a PWM signal overtime.


  • Individual Assignment

    This Week I should redraw one of the echo hello-world boards, So first I decided to use KiCad software.


    Circuit Design

  • First I downloaded KiCad 6.
  • Then I downloaded the Fab Electronics Library for KiCad and followed the installation instruction until I got everything set up.
  • Then I selected the ATtiny44 t44-echo to redraw it and started with Schematic.
  • Main tools I have used while doing the schematic where add a symbol and I always select my symbol from fab library to match components in our inventory.
  • Used Add a net label to write the name of each trace instead of connected them (I don't like when it looks messy with lost of wiring).
  • Used Add a no-connection flag on not connected pins to pass the check.
  • Finally, Annotate Schematic to be able to send the components to the board editor.


  • Then Click on Open PCB in board editor to see the board editor where we see components as footprints not sumbols.
  • Click on Update PCB with changes made to schematic and you will see that all components imported into the board editor, you will have to click this button everytime you make changes to schematic.
  • From Edit board setup button beside the Save button I went to Desing Rules > Constraints and Net Classes put the values I want based on Week4 machine characterization.
  • I started placing components and took a few sneak peaks to the original board and last I made the same organization of the components only added a button and a LED with a resistor, also, I added a 0 ohm resistor to use it as a jumper.
  • When moving components it took big steps and I wanted small steps so I edited the Grid from the top toolbar to 0.127mm to be able to move components better.
  • After finishing placing components I went to inkscape and traced a logo that I like from AOT animation and saved it as SVG file then in board editor from File > Import > Graphics and selected the SVG file and choosed the layer to be Edge.Cuts and scaled it to fit the design.


  • Manufacturing

    I won't talk much about this as it's covered in Electronics Production week, I'm just repeating the process, but here's a few photos.



    Soldering

    Let's solder these components.




    Programming

  • To program this board I used my FabISP programmer and followed the Programming guide from classes schedule.
  • I copied text from echo.c.make and pasted it to a txt document then removed the extension .txt from it's name and renamed it to hello.ftdi.44.echo.make.
  • Then copied text from echo.c and pasted it to a txt document then removed the extension .txt from it's name and renamed it to hello.ftdi.44.echo.c.
  • Then I right click in the folder containing the 2 files and clicked Git Bash here.
  • Then typed in terminal make -f hello.ftdi.44.echo.make and that created a HEX file and OUT file.
  • Then typed make -f hello.ftdi.44.echo.make program-usbtiny-fuses while connecting my FabISP to my laptop and connection it with the hello echo board using ISP 6-pin connector.
    I got an error here but I will take about that in Challenges section
  • Then typed make -f hello.ftdi.44.echo.make program-usbtiny
  • After getting successful messages I opened an arduino IDE and opened serial monitor while connecting my board with an FTDI cable and tested it in serial.


  • Hero shot, maybe.



  • Testing

  • I wanted a code to test the button and LED I have added so I used MKamel our instructor code, only edited the pin numbers to pins I'm using and added pinMode(SW, INPUT_PULLUP);
  • Then I used arduino IDE to upload this code, So from tools I set up it to match my FabISP and ATtiny44 board.




  • Challenges

    I have got an error that means my board can't be detected, with help of our instructor using a multimeter we discovered that the RST pin in the ATtiny44 chip isn't connected and that was a mistake in my design, so instead of making another board we put a jumper above the chip and it worked.




    Downloads

    KiCad project, milling photos and programming files