W04 - Electronics Production¶
1. Weekly Assignments ( -> what I did this week )¶
- group assignment
Characterize the design rules for your PCB production process: document feeds, speeds, plunge rate, depth of cut (traces and outline) and tooling. document your work (in a group or individually)
- individual assignment:
Make an in-circuit programmer by milling and stuffing the PCB, test it, then optionally try other PCB fabrication process.
Have you?¶
Questions from “Fab Academy 2020 Assignments and Assessment ¶
( -> my answers )¶
- linked to the group assignment page ( -> yes, site )
- Documented how you made (mill, stuff, solder) the board ( -> yes )
- Documented that your board is functional ( -> yes )
- Explained any problems and how you fixed them
- Included a ‘hero shot’ of your board ( -> yes )
2. Group Assignment Link¶
3. Description of Assignment work¶
making FabTiny ISP
Tutorial Building the FabTinyISP
1) milling the board¶
(1) downloading the pattern image file
(2) prepare the milling data by Mods
(3) milling
CNC parmeters for circuit pattern
tool diameter (in) ; 0.0156 (1/64)
cut depth (in) ; 0.004
max depth (in) ; 0.004
offset number ; 4
milling speed ; 4 mm/s
CNC parmeters for holes and outline
tool diameter (in) ; 0.0312 (1/32)
cut depth (in) ; 0.024
max depth (in) ; 0.072
offset number ; 1
milling speed ; 4 mm/s
data by Mods | milling |
---|---|
4) cleaning
remove the unnecessary part | flux on the surface of PCB |
---|---|
2) stuffing¶
(1) parts collection
(2) soldering
(3) contact check
parts collection | contact check |
---|---|
3) software setting¶
installing the firmware (hex file) into FabTinyISP ( download -> build -> make flash )
Run make
to build hex file, named “fts_firmware.hex”.
downloading the firmware | firmware build |
---|---|
edit “Makefile” for the appropriate programmer.
This time, I used “avrisp2 “. Therefore, I edited like below.
PROGRAMMER ?= avrisp2
edit the makefile ( avrisp2 ) | |
---|---|
Regarding the environment for software development, ” CrossPack “ was recommended, in the ” Tutorial Building the FabTinyISP ” . But it didn’t work properly on my MacBook Pro ( macOS Mojave version 10.14.6).
Then, by referring the site below, I decided to use ” homebrew-avr “.
Embedded programming, by Fab Academy2019 Anton Pchelkin
As described in the above site, I visited osx-cross / homebrew-avr , then, executed the commands as follows.
brew tap osx-cross/avr
brew install avr-gcc
brew install avrdude
Then, Run make flash
, to erase the target chip, and program its flash memory with the contents of the “fts_firmware.hex”.
make flash | |
---|---|
removing the jumper | MacBook recognizes USBtinySPI |
---|---|
4) functional testing as ISP¶
” LED blink test “
To check the function as ISP, I used the PCB & software from “fab academy2018 Jun Kawahara”.
embedded programming, by Fab Academy2018 Jun Kawahara
electronics production, by Fab Academy2018 Jun Kawahara
Then, the program was successfully installed by using my FabTiny ISP.
LED blink test | |
---|---|
installing the LED blink test program | |
---|---|
4. Some failed approached¶
When I installed avr-gcc, I tried Macports and CrossPack, but they didn’t work. ( So, I used homebrew-avr, then it was OK. )
5. Important Learning Outcome¶
Tool chains are not officially supported by Apple, so there are some systems which does not work properly like the above. It is important to look for the latest available tools.
6. Links to Files and Code¶
( no original files or codes this week )
7. Appendix¶
Electronics design, by Fab Academy2019 Kae Nagano
embedded programming, by Fab Academy2018 Jun Kawahara
electronics production, by Fab Academy2018 Jun Kawahara