SlideShare ist ein Scribd-Unternehmen logo
1 von 33
Downloaden Sie, um offline zu lesen
SGVLUG 8 April 2010
How to Make
an Eight Bit Computer
and
Save the World!
Braddock Gaskill
Humane Informatics
braddock@braddock.com
SGVLUG 8 April 2010
Overview
-Present Device
-Overview
-Goals
-Device Demo
-Functional Requirements
-AVR Open Ecosystem - Uzebox
-AVR Open Ecosystem - Arduino
-AVR Open Ecosystem - gcc, avr-libc, avrdude
-AVR Open Ecosystem - avrfreaks, uzebox forums, etc
-Video Requirement - Tellymate
-SD Card Requirement - Wave Shield/Uzebox
-FAT Requirement - Petite FatFS
-USB Desirement - V-USB
-Schematic (Eagle, GEDA, gschem, PCB Artist)
-Layout
-Bill of Materials
-PCB Fabrication
-Assembly
-Pricing
SGVLUG 8 April 2010
Talk Overview
Today's Audience
Independently Wealthy Philanphrapists
Non-Governmental Organizations, UN, etc
DoD Civil Affairs, USAID
Geeks interested in
Playing with Microcontrollers
Building & Fabricating things
Open Source Tools and Hardware
Today's Talk
Overview and demo of device
Survey of AVR Open Source Hardware
Survey of AVR Open Source Tools
Walk through of design and design tools
Walk through of fabrication and manufacturing
SGVLUG 8 April 2010
Bridging TV/Internet Gap
SGVLUG 8 April 2010
Bridging TV/Internet Gap
Market
>700 million
SGVLUG 8 April 2010
Pitch
2GB SD Card = ~5,000 books or better part of
Wikipedia
Humane Reader device turns any TV set into an
e-book/wikipedia reader.
Production Cost
approx $20
(incl SD Card)
SGVLUG 8 April 2010
Value Proposition
The Humane Reader can provide a
virtual library to any developing
world school or individual with
electrical power for less than the cost
of a single textbook.
SGVLUG 8 April 2010
Secondary Goals
Goal: Create an extendable, hackable, 8-bit
general computing platform both for first through
third world developers and experimenters.
Effect: Join and leverage the existing open source
hardware community (Arduino, AVR, etc) to
spur further development.
Effect: Provide a learning platform as well as
simple e-book reader.
SGVLUG 8 April 2010
Demo
DEMO
SGVLUG 8 April 2010
Design Requirements
NTSC/PAL Video Output
SD Card Interface (w/FAT)
Cheap Input Interface (buttons)
Power (Micro-USB Adaptor)
PS/2 Keyboard Interface (optional)
USB interface (optional)
Audio (optional)
IR (optional)
SGVLUG 8 April 2010
AVR Open Ecosystem: Uzebox
SGVLUG 8 April 2010
AVR Open Ecosystem: Uzebox
8-bit gaming "console"
FEATURES: NTSC/PAL color video output,
game controller input, SD Card, custom
"kernel", solid community
FAILURES: expensive video chip, expensive
MCU (Atmega644), overclocked design
Too Expensive ($95 sparkfun)
SGVLUG 8 April 2010
AVR Open Ecosystem: Arduino
HARDWARE:
Simple break-out board with pseudo- standard
expansion headers
Wide variety of extension "shields" - Ethernet,
Wifi, Bluetooth, SD Cards, video
SOFTWARE: Provides an educationally-oriented
"easy" IDE.
COMMUNITY: Excellent. Dev tutorials, forums, etc
CONCLUSION: Shield, IDE, and software
compatible.
SGVLUG 8 April 2010
AVR Open Ecosystem: Tools
avr-gcc compiler - full C, partial C++, bintools, well
supported alternative to Atmel's compiler
avr-libc - standard C library for AVR. Includes printf, etc
(roll your own IO backend)
avrdude - OSS Programmer - many methods
simulavr emulator - several OSS emulators - waste of time
(?)
avarice - JTAG debugging. HW Expensive. Glitchy (-Os).
AVR Dragon for <32k MCUs.
SGVLUG 8 April 2010
Schematic
SGVLUG 8 April 2010
Video Output
REQ: NTSC/PAL Video Output
PROBLEM: Very fast signal. For B&W, only
a few cycles per dot.
SOLUTION: Use existing Tellymate project
software.
SGVLUG 8 April 2010
Video Output
SOLUTION: Use existing Tellymate project
software.
Tellymate uses MCU's SPI device to output 9
dots at a time (~22 cycles per SPI buffer load
@16MHz).
SGVLUG 8 April 2010
SD Card Requirement
Interface:
SD Cards have a simple 4-wire SPI hardware interface.
3.3V signal levels
SOLUTION: 5V to 3.3V voltage dividers for MCU
output, MCU can discern 3.3V input
Power:
SD Card needs 3.3V power
theoretical (but not observed) current requirements are
high.
SOLUTION: Add 3.3V regulator
3.3V handling "inspired" by Uzebox schematic
SGVLUG 8 April 2010
SD Card Schematic
SGVLUG 8 April 2010
FAT Filesystem
Several Open Source AVR FAT on SPI SD Card
implementations
WaveHC library for Arduino
Uzebox
FatFS and Petite FatFS (pFatFS - same author)
SOLUTION: Petite FatFS
Chosen for tiny size and simplicity
AVR SD Card example required hacking - bad
timings
SGVLUG 8 April 2010
FAT FS Issues
Issues with FAT FS on SD Card
Minimal RAM for caching (2kbyte MCU)
Reading 1 byte requires reading full 512 byte sector
from SD Card
FAT random seek times LINEAR to seek position
(VERY bad for 2 GB database).
Solutions
Minimal 128 byte cache added
Non-fragmented file seek optimization
SGVLUG 8 April 2010
USB
USB Power
Micro-USB 5V power connector
Micro-USB new world-wide cell phone charger
standard = low cost
USB Data Interface
Arduino uses a serial bootloader w/FT232 USB
serial chip
FT232 more expensive, less flexible than adding a
third Atmega for USB peripherals
Open V-USB project provides firmware
SGVLUG 8 April 2010
USB Schematic
USB provides regulated 5V power, but needs
3.3V data signaling
SGVLUG 8 April 2010
Free or Open EDA Tools
Open Source GEDA Suite
(as of 2005, when I last used them)
gschem - schematic capture - "decent and usable"
pcb - layout - "unsophisticated?"
Cadsoft Eagle (freeware/commercial)
Unixy-feel - scriptable, cmd line, mostly parsable text
file formats
Free for simpler layouts
"Professional grade!"
PCB Artist
freeware, Advanced Circuits
new, simple, but Advanced lock-in
SGVLUG 8 April 2010
Layout
SGVLUG 8 April 2010
PCB Fabrication
Advanced Circuits
Leader by far for fast-turn PCB fab
Made in USA, great capabilities
"What I use for prototypes"
BatchPCB.com
super low cost
batch together low volume panels of
individual orders for fab in China
long lead time
SGVLUG 8 April 2010
Home PCB Assembly
Prototypes assembled myself
Tools for SMT home assembly
Liquid flux w/needle dispenser bottle
PCB cleaning alcohol and swabs
Fine tip soldering iron
desolder braid, etc
GOOD tweezers
Magnifier (Microscope)
Hot air rework station
Solder paste (optional)
Good PCB vice
SGVLUG 8 April 2010
Suppliers
SGVLUG 8 April 2010
Enclosure
#1 - No Enclosure
Hobbiests require no enclosure
#2 - Conformal Coating/Paint
Conformal Coating - an acrylic gloss used to
protect PCBs
#3 - Plate/Spacer Sandwich
Cost effective <1KU
#4 - Plastic Case
Tooling Cost
Cost effective >1KU
SGVLUG 8 April 2010
PCB Assembly
Screaming Circuits
Leader in USA
Asmbly: 100U = $27 per board!
EzPCB
China
Set up for easy small runs
Asmbly:
100U = $9 per board
1000U = $6 per board
10kU = $4.50 per board
SGVLUG 8 April 2010
The BOM Stops Here
Manufacturer should cost optimize your Bill of
Materials in quotation.
SGVLUG 8 April 2010
Production Cost
*Does not include enclosure or SD Card
SGVLUG 8 April 2010
TITLE

Weitere ähnliche Inhalte

Was ist angesagt?

Ultimate Modded Commodore 64
Ultimate Modded Commodore 64Ultimate Modded Commodore 64
Ultimate Modded Commodore 64Leif Bloomquist
 
Wi-Fi Modem For the Commodore 64
Wi-Fi Modem For the Commodore 64Wi-Fi Modem For the Commodore 64
Wi-Fi Modem For the Commodore 64Leif Bloomquist
 
BURO Arduino Workshop
BURO Arduino WorkshopBURO Arduino Workshop
BURO Arduino WorkshopOmer Kilic
 
Introduction to XMOS Software Defined Silicon Technology
Introduction to XMOS Software Defined Silicon TechnologyIntroduction to XMOS Software Defined Silicon Technology
Introduction to XMOS Software Defined Silicon TechnologyOmer Kilic
 
[German] Boards für das IoT-Prototyping
[German] Boards für das IoT-Prototyping[German] Boards für das IoT-Prototyping
[German] Boards für das IoT-PrototypingLars Gregori
 
Interacting with Intel Edison
Interacting with Intel EdisonInteracting with Intel Edison
Interacting with Intel EdisonFITC
 
งานนำเสนอ Amd
งานนำเสนอ Amdงานนำเสนอ Amd
งานนำเสนอ AmdNubow
 
Inside ASUS ZENBOOK
Inside ASUS ZENBOOKInside ASUS ZENBOOK
Inside ASUS ZENBOOKJJ Wu
 
Show & Tell.- Introduction
Show & Tell.- IntroductionShow & Tell.- Introduction
Show & Tell.- Introductionzvikapika
 
Lab Handson: Power your Creations with Intel Edison!
Lab Handson: Power your Creations with Intel Edison!Lab Handson: Power your Creations with Intel Edison!
Lab Handson: Power your Creations with Intel Edison!Codemotion
 
Custom Simulator Control Panel - Kerbal Space Program
Custom Simulator Control Panel - Kerbal Space ProgramCustom Simulator Control Panel - Kerbal Space Program
Custom Simulator Control Panel - Kerbal Space ProgramAndrew Schnobrich
 
Intel Processors
Intel ProcessorsIntel Processors
Intel Processorshome
 
Get To Know Galileo
Get To Know GalileoGet To Know Galileo
Get To Know Galileodocprofsky
 

Was ist angesagt? (20)

Ultimate Modded Commodore 64
Ultimate Modded Commodore 64Ultimate Modded Commodore 64
Ultimate Modded Commodore 64
 
Wi-Fi Modem For the Commodore 64
Wi-Fi Modem For the Commodore 64Wi-Fi Modem For the Commodore 64
Wi-Fi Modem For the Commodore 64
 
BURO Arduino Workshop
BURO Arduino WorkshopBURO Arduino Workshop
BURO Arduino Workshop
 
Introduction to XMOS Software Defined Silicon Technology
Introduction to XMOS Software Defined Silicon TechnologyIntroduction to XMOS Software Defined Silicon Technology
Introduction to XMOS Software Defined Silicon Technology
 
2016/11/05: OSWDem16 intro
2016/11/05: OSWDem16 intro2016/11/05: OSWDem16 intro
2016/11/05: OSWDem16 intro
 
[German] Boards für das IoT-Prototyping
[German] Boards für das IoT-Prototyping[German] Boards für das IoT-Prototyping
[German] Boards für das IoT-Prototyping
 
Interacting with Intel Edison
Interacting with Intel EdisonInteracting with Intel Edison
Interacting with Intel Edison
 
งานนำเสนอ Amd
งานนำเสนอ Amdงานนำเสนอ Amd
งานนำเสนอ Amd
 
Power brick ultra brochure
Power brick ultra brochurePower brick ultra brochure
Power brick ultra brochure
 
Beaglebone black
Beaglebone blackBeaglebone black
Beaglebone black
 
Inside ASUS ZENBOOK
Inside ASUS ZENBOOKInside ASUS ZENBOOK
Inside ASUS ZENBOOK
 
O meu futuro PC
O meu futuro PCO meu futuro PC
O meu futuro PC
 
Show & Tell.- Introduction
Show & Tell.- IntroductionShow & Tell.- Introduction
Show & Tell.- Introduction
 
Lab Handson: Power your Creations with Intel Edison!
Lab Handson: Power your Creations with Intel Edison!Lab Handson: Power your Creations with Intel Edison!
Lab Handson: Power your Creations with Intel Edison!
 
Arduino7
Arduino7Arduino7
Arduino7
 
Soquetes de Processadores
Soquetes de ProcessadoresSoquetes de Processadores
Soquetes de Processadores
 
Custom Simulator Control Panel - Kerbal Space Program
Custom Simulator Control Panel - Kerbal Space ProgramCustom Simulator Control Panel - Kerbal Space Program
Custom Simulator Control Panel - Kerbal Space Program
 
Intel Processors
Intel ProcessorsIntel Processors
Intel Processors
 
Hyper-BT 072214
Hyper-BT  072214Hyper-BT  072214
Hyper-BT 072214
 
Get To Know Galileo
Get To Know GalileoGet To Know Galileo
Get To Know Galileo
 

Ähnlich wie How to Make an Eight Bit Computer and Save the World!

Tac Presentation October 72014- Raspberry PI
Tac Presentation October 72014- Raspberry PITac Presentation October 72014- Raspberry PI
Tac Presentation October 72014- Raspberry PICliff Samuels Jr.
 
Comptia A+ Exam Notes for Core 1 and . Core 2
Comptia A+ Exam Notes for Core 1 and . Core 2Comptia A+ Exam Notes for Core 1 and . Core 2
Comptia A+ Exam Notes for Core 1 and . Core 2anandsoft0
 
3rd grading-reviewer-pc-assembly-and-networking
3rd grading-reviewer-pc-assembly-and-networking3rd grading-reviewer-pc-assembly-and-networking
3rd grading-reviewer-pc-assembly-and-networkingstarlanter
 
fpga1 - What is.pptx
fpga1 - What is.pptxfpga1 - What is.pptx
fpga1 - What is.pptxssuser0de10a
 
Aplus essentials-exam-cram
Aplus essentials-exam-cramAplus essentials-exam-cram
Aplus essentials-exam-cramPeter Sonko
 
Small Electronics for Your Makerspace (CLC Trendspotting - September 2014)
Small Electronics for Your Makerspace (CLC Trendspotting - September 2014)Small Electronics for Your Makerspace (CLC Trendspotting - September 2014)
Small Electronics for Your Makerspace (CLC Trendspotting - September 2014)ariannaschlegel
 
Build an Open Hardware GNU/Linux PowerPC Notebook
Build an Open Hardware GNU/Linux PowerPC NotebookBuild an Open Hardware GNU/Linux PowerPC Notebook
Build an Open Hardware GNU/Linux PowerPC NotebookRoberto Innocenti
 
Introducing... Arduino
Introducing... ArduinoIntroducing... Arduino
Introducing... Arduinozvikapika
 
Basics of open source embedded development board (
Basics of open source embedded development board (Basics of open source embedded development board (
Basics of open source embedded development board (Dhruwank Vankawala
 
Basics of open source embedded development board (
Basics of open source embedded development board (Basics of open source embedded development board (
Basics of open source embedded development board (Dhruwank Vankawala
 
Internet of Things Devices - Which One Is Right for You to Learn
Internet of Things Devices - Which One Is Right for You to LearnInternet of Things Devices - Which One Is Right for You to Learn
Internet of Things Devices - Which One Is Right for You to LearnAgustaf Ryadi
 

Ähnlich wie How to Make an Eight Bit Computer and Save the World! (20)

Lecture 1
Lecture 1Lecture 1
Lecture 1
 
Tac Presentation October 72014- Raspberry PI
Tac Presentation October 72014- Raspberry PITac Presentation October 72014- Raspberry PI
Tac Presentation October 72014- Raspberry PI
 
Asus Tinker Board
Asus Tinker BoardAsus Tinker Board
Asus Tinker Board
 
Training2 ppt
Training2 pptTraining2 ppt
Training2 ppt
 
Hw notes- aim Technologies
Hw notes- aim TechnologiesHw notes- aim Technologies
Hw notes- aim Technologies
 
Motherboard
MotherboardMotherboard
Motherboard
 
Comptia A+ Exam Notes for Core 1 and . Core 2
Comptia A+ Exam Notes for Core 1 and . Core 2Comptia A+ Exam Notes for Core 1 and . Core 2
Comptia A+ Exam Notes for Core 1 and . Core 2
 
3rd grading-reviewer-pc-assembly-and-networking
3rd grading-reviewer-pc-assembly-and-networking3rd grading-reviewer-pc-assembly-and-networking
3rd grading-reviewer-pc-assembly-and-networking
 
Ardunio
ArdunioArdunio
Ardunio
 
Intro arduino
Intro arduinoIntro arduino
Intro arduino
 
fpga1 - What is.pptx
fpga1 - What is.pptxfpga1 - What is.pptx
fpga1 - What is.pptx
 
Aplus essentials-exam-cram
Aplus essentials-exam-cramAplus essentials-exam-cram
Aplus essentials-exam-cram
 
Beagle board101 esc-boston-2009b
Beagle board101 esc-boston-2009bBeagle board101 esc-boston-2009b
Beagle board101 esc-boston-2009b
 
Small Electronics for Your Makerspace (CLC Trendspotting - September 2014)
Small Electronics for Your Makerspace (CLC Trendspotting - September 2014)Small Electronics for Your Makerspace (CLC Trendspotting - September 2014)
Small Electronics for Your Makerspace (CLC Trendspotting - September 2014)
 
Build an Open Hardware GNU/Linux PowerPC Notebook
Build an Open Hardware GNU/Linux PowerPC NotebookBuild an Open Hardware GNU/Linux PowerPC Notebook
Build an Open Hardware GNU/Linux PowerPC Notebook
 
Introducing... Arduino
Introducing... ArduinoIntroducing... Arduino
Introducing... Arduino
 
motherboard
motherboardmotherboard
motherboard
 
Basics of open source embedded development board (
Basics of open source embedded development board (Basics of open source embedded development board (
Basics of open source embedded development board (
 
Basics of open source embedded development board (
Basics of open source embedded development board (Basics of open source embedded development board (
Basics of open source embedded development board (
 
Internet of Things Devices - Which One Is Right for You to Learn
Internet of Things Devices - Which One Is Right for You to LearnInternet of Things Devices - Which One Is Right for You to Learn
Internet of Things Devices - Which One Is Right for You to Learn
 

Mehr von elliando dias

Clojurescript slides
Clojurescript slidesClojurescript slides
Clojurescript slideselliando dias
 
Why you should be excited about ClojureScript
Why you should be excited about ClojureScriptWhy you should be excited about ClojureScript
Why you should be excited about ClojureScriptelliando dias
 
Functional Programming with Immutable Data Structures
Functional Programming with Immutable Data StructuresFunctional Programming with Immutable Data Structures
Functional Programming with Immutable Data Structureselliando dias
 
Nomenclatura e peças de container
Nomenclatura  e peças de containerNomenclatura  e peças de container
Nomenclatura e peças de containerelliando dias
 
Polyglot and Poly-paradigm Programming for Better Agility
Polyglot and Poly-paradigm Programming for Better AgilityPolyglot and Poly-paradigm Programming for Better Agility
Polyglot and Poly-paradigm Programming for Better Agilityelliando dias
 
Javascript Libraries
Javascript LibrariesJavascript Libraries
Javascript Librarieselliando dias
 
A Practical Guide to Connecting Hardware to the Web
A Practical Guide to Connecting Hardware to the WebA Practical Guide to Connecting Hardware to the Web
A Practical Guide to Connecting Hardware to the Webelliando dias
 
Introdução ao Arduino
Introdução ao ArduinoIntrodução ao Arduino
Introdução ao Arduinoelliando dias
 
Incanter Data Sorcery
Incanter Data SorceryIncanter Data Sorcery
Incanter Data Sorceryelliando dias
 
Fab.in.a.box - Fab Academy: Machine Design
Fab.in.a.box - Fab Academy: Machine DesignFab.in.a.box - Fab Academy: Machine Design
Fab.in.a.box - Fab Academy: Machine Designelliando dias
 
The Digital Revolution: Machines that makes
The Digital Revolution: Machines that makesThe Digital Revolution: Machines that makes
The Digital Revolution: Machines that makeselliando dias
 
Hadoop - Simple. Scalable.
Hadoop - Simple. Scalable.Hadoop - Simple. Scalable.
Hadoop - Simple. Scalable.elliando dias
 
Hadoop and Hive Development at Facebook
Hadoop and Hive Development at FacebookHadoop and Hive Development at Facebook
Hadoop and Hive Development at Facebookelliando dias
 
Multi-core Parallelization in Clojure - a Case Study
Multi-core Parallelization in Clojure - a Case StudyMulti-core Parallelization in Clojure - a Case Study
Multi-core Parallelization in Clojure - a Case Studyelliando dias
 
From Lisp to Clojure/Incanter and RAn Introduction
From Lisp to Clojure/Incanter and RAn IntroductionFrom Lisp to Clojure/Incanter and RAn Introduction
From Lisp to Clojure/Incanter and RAn Introductionelliando dias
 

Mehr von elliando dias (20)

Clojurescript slides
Clojurescript slidesClojurescript slides
Clojurescript slides
 
Why you should be excited about ClojureScript
Why you should be excited about ClojureScriptWhy you should be excited about ClojureScript
Why you should be excited about ClojureScript
 
Functional Programming with Immutable Data Structures
Functional Programming with Immutable Data StructuresFunctional Programming with Immutable Data Structures
Functional Programming with Immutable Data Structures
 
Nomenclatura e peças de container
Nomenclatura  e peças de containerNomenclatura  e peças de container
Nomenclatura e peças de container
 
Geometria Projetiva
Geometria ProjetivaGeometria Projetiva
Geometria Projetiva
 
Polyglot and Poly-paradigm Programming for Better Agility
Polyglot and Poly-paradigm Programming for Better AgilityPolyglot and Poly-paradigm Programming for Better Agility
Polyglot and Poly-paradigm Programming for Better Agility
 
Javascript Libraries
Javascript LibrariesJavascript Libraries
Javascript Libraries
 
Ragel talk
Ragel talkRagel talk
Ragel talk
 
A Practical Guide to Connecting Hardware to the Web
A Practical Guide to Connecting Hardware to the WebA Practical Guide to Connecting Hardware to the Web
A Practical Guide to Connecting Hardware to the Web
 
Introdução ao Arduino
Introdução ao ArduinoIntrodução ao Arduino
Introdução ao Arduino
 
Minicurso arduino
Minicurso arduinoMinicurso arduino
Minicurso arduino
 
Incanter Data Sorcery
Incanter Data SorceryIncanter Data Sorcery
Incanter Data Sorcery
 
Rango
RangoRango
Rango
 
Fab.in.a.box - Fab Academy: Machine Design
Fab.in.a.box - Fab Academy: Machine DesignFab.in.a.box - Fab Academy: Machine Design
Fab.in.a.box - Fab Academy: Machine Design
 
The Digital Revolution: Machines that makes
The Digital Revolution: Machines that makesThe Digital Revolution: Machines that makes
The Digital Revolution: Machines that makes
 
Hadoop + Clojure
Hadoop + ClojureHadoop + Clojure
Hadoop + Clojure
 
Hadoop - Simple. Scalable.
Hadoop - Simple. Scalable.Hadoop - Simple. Scalable.
Hadoop - Simple. Scalable.
 
Hadoop and Hive Development at Facebook
Hadoop and Hive Development at FacebookHadoop and Hive Development at Facebook
Hadoop and Hive Development at Facebook
 
Multi-core Parallelization in Clojure - a Case Study
Multi-core Parallelization in Clojure - a Case StudyMulti-core Parallelization in Clojure - a Case Study
Multi-core Parallelization in Clojure - a Case Study
 
From Lisp to Clojure/Incanter and RAn Introduction
From Lisp to Clojure/Incanter and RAn IntroductionFrom Lisp to Clojure/Incanter and RAn Introduction
From Lisp to Clojure/Incanter and RAn Introduction
 

Kürzlich hochgeladen

Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfSeasiaInfotech2
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embeddingZilliz
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 

Kürzlich hochgeladen (20)

Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdf
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embedding
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 

How to Make an Eight Bit Computer and Save the World!

  • 1. SGVLUG 8 April 2010 How to Make an Eight Bit Computer and Save the World! Braddock Gaskill Humane Informatics braddock@braddock.com
  • 2. SGVLUG 8 April 2010 Overview -Present Device -Overview -Goals -Device Demo -Functional Requirements -AVR Open Ecosystem - Uzebox -AVR Open Ecosystem - Arduino -AVR Open Ecosystem - gcc, avr-libc, avrdude -AVR Open Ecosystem - avrfreaks, uzebox forums, etc -Video Requirement - Tellymate -SD Card Requirement - Wave Shield/Uzebox -FAT Requirement - Petite FatFS -USB Desirement - V-USB -Schematic (Eagle, GEDA, gschem, PCB Artist) -Layout -Bill of Materials -PCB Fabrication -Assembly -Pricing
  • 3. SGVLUG 8 April 2010 Talk Overview Today's Audience Independently Wealthy Philanphrapists Non-Governmental Organizations, UN, etc DoD Civil Affairs, USAID Geeks interested in Playing with Microcontrollers Building & Fabricating things Open Source Tools and Hardware Today's Talk Overview and demo of device Survey of AVR Open Source Hardware Survey of AVR Open Source Tools Walk through of design and design tools Walk through of fabrication and manufacturing
  • 4. SGVLUG 8 April 2010 Bridging TV/Internet Gap
  • 5. SGVLUG 8 April 2010 Bridging TV/Internet Gap Market >700 million
  • 6. SGVLUG 8 April 2010 Pitch 2GB SD Card = ~5,000 books or better part of Wikipedia Humane Reader device turns any TV set into an e-book/wikipedia reader. Production Cost approx $20 (incl SD Card)
  • 7. SGVLUG 8 April 2010 Value Proposition The Humane Reader can provide a virtual library to any developing world school or individual with electrical power for less than the cost of a single textbook.
  • 8. SGVLUG 8 April 2010 Secondary Goals Goal: Create an extendable, hackable, 8-bit general computing platform both for first through third world developers and experimenters. Effect: Join and leverage the existing open source hardware community (Arduino, AVR, etc) to spur further development. Effect: Provide a learning platform as well as simple e-book reader.
  • 9. SGVLUG 8 April 2010 Demo DEMO
  • 10. SGVLUG 8 April 2010 Design Requirements NTSC/PAL Video Output SD Card Interface (w/FAT) Cheap Input Interface (buttons) Power (Micro-USB Adaptor) PS/2 Keyboard Interface (optional) USB interface (optional) Audio (optional) IR (optional)
  • 11. SGVLUG 8 April 2010 AVR Open Ecosystem: Uzebox
  • 12. SGVLUG 8 April 2010 AVR Open Ecosystem: Uzebox 8-bit gaming "console" FEATURES: NTSC/PAL color video output, game controller input, SD Card, custom "kernel", solid community FAILURES: expensive video chip, expensive MCU (Atmega644), overclocked design Too Expensive ($95 sparkfun)
  • 13. SGVLUG 8 April 2010 AVR Open Ecosystem: Arduino HARDWARE: Simple break-out board with pseudo- standard expansion headers Wide variety of extension "shields" - Ethernet, Wifi, Bluetooth, SD Cards, video SOFTWARE: Provides an educationally-oriented "easy" IDE. COMMUNITY: Excellent. Dev tutorials, forums, etc CONCLUSION: Shield, IDE, and software compatible.
  • 14. SGVLUG 8 April 2010 AVR Open Ecosystem: Tools avr-gcc compiler - full C, partial C++, bintools, well supported alternative to Atmel's compiler avr-libc - standard C library for AVR. Includes printf, etc (roll your own IO backend) avrdude - OSS Programmer - many methods simulavr emulator - several OSS emulators - waste of time (?) avarice - JTAG debugging. HW Expensive. Glitchy (-Os). AVR Dragon for <32k MCUs.
  • 15. SGVLUG 8 April 2010 Schematic
  • 16. SGVLUG 8 April 2010 Video Output REQ: NTSC/PAL Video Output PROBLEM: Very fast signal. For B&W, only a few cycles per dot. SOLUTION: Use existing Tellymate project software.
  • 17. SGVLUG 8 April 2010 Video Output SOLUTION: Use existing Tellymate project software. Tellymate uses MCU's SPI device to output 9 dots at a time (~22 cycles per SPI buffer load @16MHz).
  • 18. SGVLUG 8 April 2010 SD Card Requirement Interface: SD Cards have a simple 4-wire SPI hardware interface. 3.3V signal levels SOLUTION: 5V to 3.3V voltage dividers for MCU output, MCU can discern 3.3V input Power: SD Card needs 3.3V power theoretical (but not observed) current requirements are high. SOLUTION: Add 3.3V regulator 3.3V handling "inspired" by Uzebox schematic
  • 19. SGVLUG 8 April 2010 SD Card Schematic
  • 20. SGVLUG 8 April 2010 FAT Filesystem Several Open Source AVR FAT on SPI SD Card implementations WaveHC library for Arduino Uzebox FatFS and Petite FatFS (pFatFS - same author) SOLUTION: Petite FatFS Chosen for tiny size and simplicity AVR SD Card example required hacking - bad timings
  • 21. SGVLUG 8 April 2010 FAT FS Issues Issues with FAT FS on SD Card Minimal RAM for caching (2kbyte MCU) Reading 1 byte requires reading full 512 byte sector from SD Card FAT random seek times LINEAR to seek position (VERY bad for 2 GB database). Solutions Minimal 128 byte cache added Non-fragmented file seek optimization
  • 22. SGVLUG 8 April 2010 USB USB Power Micro-USB 5V power connector Micro-USB new world-wide cell phone charger standard = low cost USB Data Interface Arduino uses a serial bootloader w/FT232 USB serial chip FT232 more expensive, less flexible than adding a third Atmega for USB peripherals Open V-USB project provides firmware
  • 23. SGVLUG 8 April 2010 USB Schematic USB provides regulated 5V power, but needs 3.3V data signaling
  • 24. SGVLUG 8 April 2010 Free or Open EDA Tools Open Source GEDA Suite (as of 2005, when I last used them) gschem - schematic capture - "decent and usable" pcb - layout - "unsophisticated?" Cadsoft Eagle (freeware/commercial) Unixy-feel - scriptable, cmd line, mostly parsable text file formats Free for simpler layouts "Professional grade!" PCB Artist freeware, Advanced Circuits new, simple, but Advanced lock-in
  • 25. SGVLUG 8 April 2010 Layout
  • 26. SGVLUG 8 April 2010 PCB Fabrication Advanced Circuits Leader by far for fast-turn PCB fab Made in USA, great capabilities "What I use for prototypes" BatchPCB.com super low cost batch together low volume panels of individual orders for fab in China long lead time
  • 27. SGVLUG 8 April 2010 Home PCB Assembly Prototypes assembled myself Tools for SMT home assembly Liquid flux w/needle dispenser bottle PCB cleaning alcohol and swabs Fine tip soldering iron desolder braid, etc GOOD tweezers Magnifier (Microscope) Hot air rework station Solder paste (optional) Good PCB vice
  • 28. SGVLUG 8 April 2010 Suppliers
  • 29. SGVLUG 8 April 2010 Enclosure #1 - No Enclosure Hobbiests require no enclosure #2 - Conformal Coating/Paint Conformal Coating - an acrylic gloss used to protect PCBs #3 - Plate/Spacer Sandwich Cost effective <1KU #4 - Plastic Case Tooling Cost Cost effective >1KU
  • 30. SGVLUG 8 April 2010 PCB Assembly Screaming Circuits Leader in USA Asmbly: 100U = $27 per board! EzPCB China Set up for easy small runs Asmbly: 100U = $9 per board 1000U = $6 per board 10kU = $4.50 per board
  • 31. SGVLUG 8 April 2010 The BOM Stops Here Manufacturer should cost optimize your Bill of Materials in quotation.
  • 32. SGVLUG 8 April 2010 Production Cost *Does not include enclosure or SD Card
  • 33. SGVLUG 8 April 2010 TITLE