Categories
Fab Academy AS220 - Providence, RI Fab Academy Providence -Year II - Teaching

Hello RGB

rgb
This board is a “hello world” for a basic  RGB LED. The program flashed to the microcontroller cycles through the available LED colors.   To make it yourself – download the Fab Academy board diagrams / pngs and code.

Categories
Fab Academy AS220 - Providence, RI Fab Academy Providence -Year II - Teaching

Hello LED Matrix

Hello LED MatrixHello LED Matrix
This board is a “hello world” for a basic LED matrix. I labeled some green LEDs as red by accident, so there are green and red LEDs on the board. (I had intended them to be all red).  Download the Fab Academy board diagrams / pngs and code.

Board In Action

Programming Setup

To Flash the Board

sudo make -f hello.array.84.make program-usbtiny

Terminal Output Upon Success

avr-gcc -mmcu=attiny84 -Wall -Os -DF_CPU=8000000 -I./
-o hello.array.84.out hello.array.84.c
avr-objcopy -j .text -O ihex hello.array.84.out hello.array.84.c.hex;\
   avr-size --mcu=attiny84 --format=avr hello.array.84.out
AVR Memory Usage
----------------
Device: attiny84

Program:     358 bytes (4.4% Full)
(.text + .data + .bootloader)

Data:          1 bytes (0.2% Full)
(.data + .bss + .noinit)

avrdude -p t84 -P usb -c usbtiny -U flash:w:hello.array.84.c.hex

avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.01s

avrdude: Device signature = 0x1e930c
avrdude: NOTE: FLASH memory has been specified, an erase cycle will be
performed
         To disable this feature, specify the -D option.
avrdude: erasing chip
avrdude: reading input file "hello.array.84.c.hex"
avrdude: input file hello.array.84.c.hex auto detected as Intel Hex
avrdude: writing flash (358 bytes):

Writing | ################################################## | 100% 1.03s

avrdude: 358 bytes of flash written
avrdude: verifying flash memory against hello.array.84.c.hex:
avrdude: load data flash data from input file hello.array.84.c.hex:
avrdude: input file hello.array.84.c.hex auto detected as Intel Hex
avrdude: input file hello.array.84.c.hex contains 358 bytes
avrdude: reading on-chip flash data:

Reading | ################################################## | 100% 0.60s

avrdude: verifying ...
avrdude: 358 bytes of flash verified

avrdude: safemode: Fuses OK

avrdude done.  Thank you.
Categories
Fab Academy AS220 - Providence, RI Fab Academy Providence -Year II - Teaching

Hello Phototransistor

The purpose of this board is to take input from a phototransistor and display it visually using a python program when the board is connected to a computer via a FTDI cable. Link to the Fab Academy board diagrams / pngs and code.

To Flash the Board

sudo make -f hello.light.45.make program-usbtiny

Terminal Output When Board is Being Flashed

[sudo] password for akaziuna: 
avr-gcc -mmcu=attiny45 -Wall -Os -DF_CPU=8000000 -I./ 
-o hello.light.45.out hello.light.45.c
avr-objcopy -j .text -O ihex hello.light.45.out hello.light.45.c.hex;\
avr-size --mcu=attiny45 --format=avr hello.light.45.out
AVR Memory Usage
----------------
Device: attiny45

Program:     426 bytes (10.4% Full)
(.text + .data + .bootloader)

Data:          0 bytes (0.0% Full)
(.data + .bss + .noinit)


avrdude -p t45 -P usb -c usbtiny -U flash:w:hello.light.45.c.hex

avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.01s

avrdude: Device signature = 0x1e9206
avrdude: NOTE: FLASH memory has been specified, an erase cycle will be performed
         To disable this feature, specify the -D option.
avrdude: erasing chip
avrdude: reading input file "hello.light.45.c.hex"
avrdude: input file hello.light.45.c.hex auto detected as Intel Hex
avrdude: writing flash (426 bytes):

Writing | ################################################## | 100% 1.27s



avrdude: 426 bytes of flash written
avrdude: verifying flash memory against hello.light.45.c.hex:
avrdude: load data flash data from input file hello.light.45.c.hex:
avrdude: input file hello.light.45.c.hex auto detected as Intel Hex
avrdude: input file hello.light.45.c.hex contains 426 bytes
avrdude: reading on-chip flash data:

Reading | ################################################## | 100% 0.77s



avrdude: verifying ...
avrdude: 426 bytes of flash verified

avrdude: safemode: Fuses OK

avrdude done.  Thank you.

Run The Visualization Program

python hello.light.45.py /dev/ttyUSB0 
Categories
Fab Academy AS220 - Providence, RI Fab Academy Providence -Year II - Teaching

Hello Microphone

Hello Microphone Board

The purpose of this board is to take microphone input and display it visually using a python program when the board is connected to a computer via a FTDI cable. For whatever reason, I found that the non-fab inventory microphone I used only picked up high pitched electronic noises / music.  The microphone / program did not display input from sounds in a lower range or general music or background noise.

Visualized Microphone Output – Dead Kennedys “Man With The Dogs”

Programming Hello Microphone with the FabISP

To Flash the Microntroller:

To program your Hello Microphone – download all the files

sudo make -f hello.mic.45.make program-usbtiny

If Working – This is the Terminal Output Produced

avr-objcopy -j .text -O ihex hello.mic.45.out hello.mic.45.c.hex;\
avr-size --mcu=attiny45 --format=avr hello.mic.45.out
AVR Memory Usage
----------------
Device: attiny45

Program:     500 bytes (12.2% Full)
(.text + .data + .bootloader)

Data:        200 bytes (78.1% Full)
(.data + .bss + .noinit)

avrdude -p t45 -P usb -c usbtiny -U flash:w:hello.mic.45.c.hex

avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.00s

avrdude: Device signature = 0x1e9206
avrdude: NOTE: FLASH memory has been specified, an erase cycle will be performed
To disable this feature, specify the -D option.
avrdude: erasing chip
avrdude: reading input file "hello.mic.45.c.hex"
avrdude: input file hello.mic.45.c.hex auto detected as Intel Hex
avrdude: writing flash (500 bytes):

Writing | ################################################## | 100% 0.87s

avrdude: 500 bytes of flash written
avrdude: verifying flash memory against hello.mic.45.c.hex:
avrdude: load data flash data from input file hello.mic.45.c.hex:
avrdude: input file hello.mic.45.c.hex auto detected as Intel Hex
avrdude: input file hello.mic.45.c.hex contains 500 bytes
avrdude: reading on-chip flash data:

Reading | ################################################## | 100% 1.00s

avrdude: verifying ...
avrdude: 500 bytes of flash verified

avrdude: safemode: Fuses OK

avrdude done.  Thank you.

run software

Run The Python Program (Ubuntu)

python hello.mic.45.py /dev/ttyUSB0