Week 7: Electronics Design

Scroll Down

Assignment

Assignment: Group: Use the test equipment in your lab to observe the operation of a microcontroller circuit board. Individual: Redraw the echo hello-world board, add (at least) a button and LED (with current-limiting resistor), check the design rules, make it (if you have time this week, test it). Optional: simulate its operation. Measure its operation Learning outcomes: Select and use software for circuit board design. Demonstrate workflows used in circuit board design Assessment: Have you:

  • a) Shown your process using words/images/screenshots
  • b)Explained problems and how you fixed them, including how you worked with design rules for milling (DRC in EagleCad and KiCad), and
  • c) Included original design files (Eagle, KiCad, Inkscape, .cad - whatever)
  • Group work

    We have linked our group assignment external you can view it here

    Use the test equipment in your lab to observe the operation of a microcontroller circuit board

    Unfortunatly in our lab we did not have a osciloscope so I ended up using the multimeter to do my measurments and make my observations.

    As you can see below I used the multimeter to check the microcontroller , Button , and Led Voltage when powered.

    When measuring the vcc and gnd pins of my microcontroller I got 4.8

    When measuring the vcc and gnd pins of my Led initially I programmed my led to blink too fast so I could not get a proper reading but then when I went ahead and lower the speed I got 5 when on and 0 when off

    Lastly when I measured the button I got 4.7.

    ReDesign the echo hello-world board

    Summary

    • Resign the hello world board
    • Creat New Project & Sketch KICAD
    • Import Fab Library
    • Import Components
    • Connect Components
    • Give Compoents correct name and value
    • Annotate the design
    • Assign Footprint to Symbols
    • Generate Netlist
    • Open Pcb New
    • Read in Generate netlist
    • In Pcb New Set Design Rules (Setup -Design Rules)
    • Rearrange Components and Make Traces
    • Place your Auxillary Axis
    • Plot Layers
    • Flatcam
    • Tool dia 0.4
    • Cutz -0.2
    • Travel Z 2
    • Feedrate x y 0.3
    • Feed rate z plunge 0.5
    • Spindle speed 12000
    • Cutout tool 0.8
    • Margin 1.5
    • Gapsize 0.15
    • Milling the PCB
    • File formatt Inver z axis
    • Coordinates- origin of coordinates
    • Mis. Params-Zero Point
    • Programming the Hello World Board Using Arduino Ide

    Redesign the echo hello-world board

    The first thing which we had to do was to redesign the Hello world board and add a led and a button. You can find the link to the board here from fab academy site.

    The software which I used was kicad for windows.I started off by making a new project and named it hello world then I selected

  • New --Sketch
  • to make a sketch of my new project.

    I then went ahead and added my components to my sketch by clicking on the place symbol icon on the right of the workspace. The first component which I searched for was the microcontroller atiny 44a. Before being able to find the correct components from the list you need to head to fab academy site HERE and download the libraries and add it to kicad. After you have your libraries added you scroll down and search for fab folder and inside that folder you will find the correct components by name and size for this assessment.

    I then went ahead and added the other components from the hello world board and used the place wire tool to make my connections. I also labeled my components according to the sketch by right clicking on the names and selecting edit value. See below the components list

  • 2x10k Ohm Resistors
  • 1x 1k Ohm Resistor
  • 1x Attiny44a Microcontroller
  • 1x Resonator 20 MHZ
  • 1x Avr Isp Connector
  • 1x 6x 1 Pin Connector
  • 1x 1uF Capacitor
  • 1x 6mm Switch
  • 1x Led green
  • I then went and check if my components were labeled correctly by clicking on

  • annotate schematic symbol
  • and clicking on
  • annotate
  • .

    I then went and assigned my pcb footprints to my schematic symbols with the

  • assign pcb footprints to schematic symbols
  • icon on top of the menu.note: make sure to navigate to the fab folder to get the correct footprints.

    After generating the footprints correctly I went ahead and generated my netlist my clicking the

  • generate netlist
  • tab on the menu on top. I then clicked on the
  • PCBNEW
  • icon to open the new window to import the netlist and I clicked on
  • read netlist
  • above to read the netlis into the window.

    I then went ahead and adjusted the design rules.I adjusted the

  • clearance to 0.2 and track width to 0.35
  • .

    I then arranged my components to match the hello world board. I started off by putting aside the led resistor and pushbutton and arranged the other components to match the hello world board as much as I could.I then went ahead and made the tracks for my routes to connect my components correctly by selecting the rout track menu item and making the connections. Note: The rout tract menu item highlights where you should make your routes so it’s quite straight forward you just have to make sure you dont make your routes too close to each other

    For the fun of it I added the 3d view components to my board and previewed it to see what it would actually look like.I had to double click on my component and add 3D component and search for the right component from the 3d folder.It was abit tedious because we had to manually search for each component and match it by name. For viewing your board in 3d view just navigate on top of your worspace menu and click on 3D Viewer

    I then went ahead and exported my sketch and imported it into flatcam to give it the correct parameters to be read by the stepcraft cnc machine. The parameters which I used are below.

    Flatcam Selected
    Tool Dia 0.4
    Cutz -0.2
    travel Z 2
    End Move Z 2.0000
    Feed-Rate-X-Y 0.3
    Feed Rate Z Plunge 0.5
    Reed Rate Rapidals 3.0000
    Spindle Speed 12000
    Flatcam Cutout Tool
    Tool Dia 0.8
    Margin 1.5
    Gap Size 0.15

    When I was done I went and exported two .nc files.One was the inner cutting of my pcb which I called julie.nc and the other was the outerpart which I called julie-cutout.nc

    Lessons

    I wasted a lot of time having to change my routes because I placed them too close to each other. When making your route tracks make sure you keep a reasonable amount of space between them so that when it's time to cut your traces out they don't connect.

    Milling and Assembling the PCB

    Milling and Assembling the PCB

    For milling my hello world bord I used the stepcraft c300. I copied my julie.nc and julie-cutout.nc filess onto my memory stick and paste it onto the laptop connected to the stepcraft which was running Winpcnc which is the software used to control the stepcraft.

    Before I could cut out my pcb I had to select my piece of copper plate and add double sided tape to it so it could stick onto the base plate of the stepcraft so that it could hold the copper plate in place when milling. Make sure to place tape all around the area which you will be cutting because if there is a uneven piece on your copper board the end mill could break easily.

    I then went ahead and jog to my zero position and started milling my pcb.I first did the inner part of my hello world board then I went and did the outer part.

    My hello world board took approximatly 1 hour to complete.

    After milling my pcb I went ahead and selected my components and started to solder them unto the board.

  • 2x10k Ohm Resistors
  • 1x 1k Ohm Resistor
  • 1x Attiny44a Microcontroller
  • 1x Resonator 20 MHZ
  • 1x Avr Isp Connector
  • 1x 6x 1 Pin Connector
  • 1x 1uF Capacitor
  • 1x 6mm Switch
  • 1x Led green
  • Lessons Learn

    When milling your board make sure you used safty glasses because the copper dust could be dangerous for your eyes

    When soldering your board make sure to keep in mind that the led is a diode you need to make sure the green line connects to ground because I almost forgot to check that.

    When soldering the microcontroller make sure the triangle is on the correct side connecting to vcc.

    Programming the PCB

    Programming the PCB

    After soldering my pcb I now had to program it. I then connected my pcb to the previous fab isb which I made from week5. I connected it via isp.If you are going to make this connection make sure you have the mapping correctly you can follow the guid below.

    After double checking the pinouts correctly you can go ahead and program your microcontroller board.I presume if you are using windows that you already have the drivers for the Fab Isp so when you check on device manager you should see either Fab isb or usb tiny.

    Go ahead select the basic blink sketch and make sure you change the led pin according to yours mine was on pin 5 which mapped to arduino pin 8

    You should then open your arduino ide and add this link https://raw.githubusercontent.com/damellis/attiny/ide-1.6.x-boards-manager/package_damellis_attiny_index.json to your preference so that you can get the atiny board installed on board manager.

    Once you have the board installed go ahead and select the Atiny board -- Processor Atiny44 (choose based on ur atiny) Clock 20mhz external

  • Programmer-- Usbtiny and no need to select a port.
  • Go ahead and power your board and connect your programmer into your laptop and Run Bootloader.

    After running bootloader succcessfully go ahead and upload your blink led sketch it should take 5 to 10 seconds to upload.

    Lessons Learn

    I did not have much issues when programming my hello world board the only issue which I had was not seeing the port on the arduino ide but I just press upload anyway and it worked.

    One of the confusing things my classmates and I encountered was powering our hello world board when it was connected to our Fab isp programmer board. We initially took off both resistors from the fab isp and had to use the arduino to power the hello world board but then we realized if we kept one of the 0 OHM resistors we did not need to power the hello world board apart you can see the image below compared to the one above. Both works.

    Download Files Here


    helloworldfinal-Edge.Cuts.gbr
    helloworldfinal-F.Cu
    Julie.nc
    Julie-Cut.nc
    Arduino Blink Sketch

    Contact Us

    Where To Find Us

    Paramaribo Suriname
    Ethnalaan
    50..

    Follow Us