pcduino tech talk at carnegie mellon university 10/14/2014
Post on 04-Jul-2015
554 Views
Preview:
DESCRIPTION
TRANSCRIPT
Innovate with pcDuino
www.pcduino.comlearn.linksprite.com
Traditional Mass Production/Distribution
Mass production encourages the culture of celebrity.
Focus to predict what kinds of product will be popular.
We, as human, are each different, of different needs.
C. Anderson, The long tail
Tools in Digital world
• Consumers of bits -> Makers of bits
Sales of Bits
C. Anderson, The long tail
How tails emerge
C. Anderson, The long tail
Tools in Atom world
3D printerCNC
3D Scanner
Makerspace
pcDuino
pcDuino is a $39 single board computer that has 1G RAM, 4G Flash, Gbit ethernet, and is compatible with Arduino ecosystem
pcDuino FamilypcDuino Lite WiFi pcDuino v1 pcDuino v2 pcDuino v3 pcDuino 8
CPU
Allwinner A10
1GHz ARM Cortex
A8
Allwinner A10
1GHz ARM Cortex
A8
Allwinner A101
GHz ARM Cortex
A8
Allwinner A20,
1GHz, ARM Cortex
A7 Dual Core
UltraOctaA80
GPU
OpenGL
ES2.0OpenVG 1.1
Mali 400 core
OpenGL
ES2.0OpenVG 1.1
Mali 400 core
OpenGL
ES2.0OpenVG 1.1
Mali 400 core
OpenGL
ES2.0OpenVG 1.1
Mali 400 core
PowerVR 64-core
G6230 GPU
DRAM 256MB 1GB 1GB 1GB 4GB
Storage
2GB FlashmicroSD
card (TF) slot for up
to 32GB
2GB Flash (4GB
after
2/1/2014)microSD
card (TF) slot for up
to 32GB
2GB Flash (4GB
after 2/1/2014)
microSD card (TF)
slot for up to 32GB
4GB Flash
microSD card (TF)
slot for up to 32GB8GB
Video HDMI HDMI HDMI HDMI HDMI
OS Support
•Lbuntu 12.04
•Doesn’t support
Android
•Lbuntu 12.04
•Android
•Lbuntu 12.04
•Android
•Lbuntu 12.04
•AndroidLinux (on-going)
Android
ExtensionInterfaceArduino (TM)
Headers2.54mm headers
Arduino (TM)
Headers
Arduino (TM)
Headers
NetworkInterface WiFi, No Ethernet
•10/100Mbps RJ45
•USB WiFi
extension (not
included)
•10/100Mbps RJ45
•WiFi
•10/100Mbps RJ45
•WiFi
•Gbits RJ45
•WiFi
•Bluetooth
Power 5V, 2000mA 5V, 2000mA 5V, 2000mA 5V, 2000mA 5V, 2000nA
pcDuino3 hardware interfaces
pcDuino boot modes Default to boot from SD
If there is no bootable image in SD, it will try to boot from NAND.
For Ubuntu OS, the system and data in NAND can be copied to SD seamlessly.
VNC to pcDuino through its USB-OTG
Scratch for pcDuino
Scratch
$sudo apt-get install pcduino-scratch
Blink LED (Scratch for pcDuino)
Press Button to Turn on LED (Scratch for pcDuino)
Touch the Finish Line (Scratch for pcDuino)
Play Pong with Scratch for pcDuino
pcDuino as banana piano using Scratch for pcDuino
Showcase
pcDuino as Networked Device to feed data to Xively (Internet of Things)
Smart Garage powered by pcDuino
Home Automation by Z-wave
Time Lapse Video
pcDuino as 3D printer control console
Gavon: Chess Programming with pcDuino
Rotary Vending
pcDuino Displaying Car Diagnostic (OBD-II) Data
Home Automation System
First High School Classroom powered by pcDuino in China
Two pcDuinos communicating to each other through audio jack
Grass GIS
Laser Show
UV index meter
SDR on pcDuino
Gesture Control
NFC Shield
Cottonwood:UHF ultra-distance RFID Reader
Astroprint
Slice, Store, and Print from the browser of any web enabled device. In addition, you can monitor your prints, organize designs in the cloud, and even print straight from Sketchupor Blender. Astropintsoftware runs on pcDuino.
uniDap Thin Cloud
Programming under Ubuntu (linux)
Two flavors
Command line
IDE
Arduino style programming ( C )
Arduino IDE
Arduino IDE
Arduino IDE
Arduino IDE
Arduino IDE
Creating Your Own SketchRun Your Sketch
To run it, once you have wired up a switch and led to the right pins, type:
ubuntu@ubuntu:~/c_enviroment/output/test$ ./button_led
To stop the program, <Ctrl>C
A Quick Re-Cap
Add #include <core.h> to the top of your sketch.
Create your sketch in the samples folder (if your familiar with linux, makefiles, and compiling code, you could set up your own)
Add the filename to the Makefile in the samples folder in the OBJS section without the .c
Run make
Run the executable from the output/test folder.
You can introduce command line arguments into your sketch to make it more transportable.
pcDuino
Hardware Experiments
Potentiometer and Dimmer
7-seg LED
16x02 Character LCD
Analog Temperature Sensor
Digital Humidity and Temperature Sensor
Serial Port of pcDuino
Extends to 4 UARTS
http://jbvsblog.blogspot.com/2013/09/pcduino-extends-to-4-uarts.html
Ultrasonic Sensor
Stepper
RF Servo
Relay
GPS Shield
Cellular Shield
Powerline Communication
Python
ubuntu@ubuntu:~/python-pcduino/Samples/blink_led$ more blink_led.py #!/usr/bin/env python# blink_led.py# gpio test code for pcduino ( http://www.pcduino.com )#import gpioimport timeled_pin = "gpio2"def delay(ms):
time.sleep(1.0*ms/1000)def setup():
gpio.pinMode(led_pin, gpio.OUTPUT)def loop():
while(1):gpio.digitalWrite(led_pin, gpio.HIGH)delay(200)
OpenCV
Go Langpackage main
import ("fmt""./gpio""time")
func main() {
g, err := gpio.NewGPIOLine(7,gpio.OUT)if err != nil {fmt.Printf("Error setting up GPIO %v: %v", 18, err)return}
blink(g, 100)g.Close()}
func blink(g *gpio.GPIOLine, n uint) {fmt.Printf("blinking %v time(s)\n", n)for i := uint(0); i < n; i++ {g.SetState(true)time.Sleep(time.Duration(1000) * time.Millisecond)g.SetState(false)time.Sleep(time.Duration(1000) * time.Millisecond)}}
Cloud 9 IDE
Programming under Android ICS
Two flavors to program under Android
There are two flavors to program under Android:
Command line
QT5 GUI
Command line
QT5 GUI
We can copy the apk though pcDuino OTG or SD card to pcDunio and install it there.
Produce together with pcDuino
Connect with pcDuino
Facebook.com/linksprite
top related