You are on page 1of 48

Hardware Tinkering

Th nghim phn cng


Now that you have been introduced to the C1 and have become aware of booting it
up with a image, it is time to get acquainted with one its main purposes to be able
to interact with the external world through the age-old activity of tinkering. While
its design and production is a marvel in itself, it really shines in its use to interact
with the external world, through a slew of breakout-boards and sensory devices all
under the control of powerful operating systems like Linux or Android.
By gi bn c gii thiu v C1 v bit cch khi ng tp nh vi n, gi
l thi gian lm quen vi mt mc ch chnh ca n - c th s dng trong
thc t thng qua hot ng th nghim trong 1 khong thi gian. Khi chnh vic
thit k v sn xut ra n l mt k cng, thc s th n rt hu dng trong cc
th nghim, bng cch s dng vi cc bo breakout v cc thit b cm bin - tt c
u nm di quyn iu khin ca h iu hnh mnh m nh Linux hay Android.
Here are the devices covered in this section:
USB / UART Module Kit, Bluetooth Module 2 and Tinkering Kit
Kit USB / UART Module , Bluetooth Module 2 v kit Tinkering
Oduino One and ODROID-SHOW; Weather Board
Oduino One v ODROID-SHOW; Weather Board(m un cm bin thi
tit)
16x2 LCD I/O Shield and 3.2inch TFT+Touchscreen Shield
Cc b m rng 16x2 LCD I/O and 3.2inch TFT+Touchscreen Shield
DC Plug Cable Assembly 2.5mm and USB-DC Plug Cable 2.5mm x 0.8mm
USB-SPDIF and ODROID USB-CAM 720P
UPS2 and USB GPS Module
USB / UART Module Kit
It is beneficial to get a view of the early boot process, especially if you are working
with newly added external devices or creating special purpose boot images.
Typically these activities can be debugged by viewing their corresponding log
entries using the dmesg application. This can be achieved using the USB / UART
module and an microUSB male to USB male cable, which is typically used to charge
smartphones and tablets. Together, they form the kit, shown below:

Tht hu ch khi bit trc cc chi tit ca qu trnh boot, c bit l nu bn ang
lm vic vi cc thit b bn ngoi mi c thm hoc to ra cc tp nh boot
dng cho mc ch c bit. Thng thng nhng cng vic ny c th c sa li
bng cch xem cc bng ghi nht k tng ng ca chng bng cch s dng ng
dng dmesg. Vic ny c th thc hin c bng cch s dng module USB/UART
v mt cp chuyn micro USB sang USB 2 u c, thng dng sc
smartphone v tablet. Kt hp hai th , chng ta c b kit, nh bn di:

USB / UART kit


When using Microsoft Windows 7+ as a host PC system, you will need to install a
terminal application such as PuTTY. This can be used to set up commonly used
configurations in order to access the C1 either via a serial connection or SSH.
Prior to setting up the kit, power off the C1. Attach one end of the USB / UART
module to the C1. Attach the other (micro USB) end of the USB / UART module to
the USB cable. Attach the free end of the cable to an available USB port of the host
PC system, then power on the C1.
Khi dng Microsoft Windows 7+ lm mt h thng PC host, bn s cn phi ci t
mt ng dng u cui nh PuTTY. ng dng ny c th dng thit lp cu hnh
thng dng truy cp vo C1, thng qua mt kt ni ni tip hoc SSH.
Trc khi ci t b kit, tt ngun C1. Gn mt u ca m-un USB / UART vo
C1. Gn u cn li (micro USB) ca m-un USB / UART vi cp USB. Gn u cn
li ca cp vo mt cng USB trng trn h thng PC host, sau cp ngun C1.

Windows Host Setup


The Windows 7+ host PC system will recognize the module as a Silicon Labs
CP210x USB to UART Bridge and install the appropriate device driver. After
installation has completed, you can verify which COM port the module is associated.
Launch the Computer Management utility of Windows 7+, highlight the Device

Manager option, and expand the Ports list. In this particular case, as shown in the
below example screenshot, it can be see that the module is installed on COM8.
H thng host PC Windows 7+ nhn ra m un vi ci tn Silicon Labs CP210x USB
to UART Bridge v ci t trnh iu khin thit b thch hp. Sau khi ci t hon
tt, bn c th kim tra cng COM m module c lin kt. Khi chy tin ch
Computer Management ca Windows 7+, nh du ty chn Device Manager, v
m rng danh sch Ports. Trong trng hp c th ny, nh trong hnh v d bn
di, c th nhn thy rng module c thit lp COM8.

USB / UART module on COM8


M un USB / UART ti COM8
Launch PuTTY and select the Serial option on the left pane.
Bt PuTTY v chn mc Serial trn ca s bn tri
Serial line to connect to: COM8
ng kt ni ni tip: COM8
Speed (baud): 115200
Tc baud
Data bits: 8
Bit d liu: 8
Stop bits: 1

S bit dng:1
Parity: None
Chn l: Khng
Flow Control: XON/XOFF
iu khin
: XON/XOFF

Serial configuration in PuTTY


Cu hnh Serial trong PuTTY
Enter configuration information as shown below. Then select the Session option
on the left pane. You will see a popup window as indicated in the following image.
Nhp thng tin cu hnh nh bn di. Sau , chn phn Session trn ca s bn
tri. Bn s thy mt ca s popup nh hnh di y.
Serial line: COM8
ng ni tip
Speed: 115200
Tc : 115200
Connection Type: Serial
Kiu kt ni: ni tip

Saved serial configuration in PuTTY


Lu cu hnh serial trong PuTTY
Give this configuration a name such as c1-1-usb-serial, then save it. This
saved configuration can be reloaded and used anytime, as long as the COM port on
the host PC system has not changed. Click on the Open button to start a session.
t tn cho cu hnh ny v d nh c1-1-usb-serial, v lu li. Cu hnh lu ny
c th c khi np v s dng bt c khi no, min l cng Com trn h thng
host PC khng i. Nhp vo nt Open bt u phin.
Next, reboot the C1. After a short delay, you will see messages scroll by in the
PuTTY console, as shown in the below image. This is when one would notice
messages relevant to external devices or software modules. These messages can
help with debugging issues you may encounter. Most of these messages will also
be listed through the dmesg command.
K, khi ng li C1. Mt chp sau bn s thy cc message cun dn xung trong
giao din iu khin PuTTY, nh hnh bn di. vic ny l do c thng bo bng
message lin quan ti m un thit b hoc phn mm bn ngoi. Nhng message
ny c th gip debug vn m bn c th gp phi. Hu ht cc message cng
c lit k thng qua lnh dmesg.

PuTTY serial console


Giao din iu khin ni tip PuTTY
Close the serial console, then set up the SSH connection option by relaunching the
PuTTY application and selecting the Session option on the left pane. For this SSH
option to work, the host PC system and the C1 need to be visible to each other on
the same local area network (LAN). Refer to the screenshot below for an example
PuTTY configuration.
ng giao din iu khin ni tip, sau thit lp tu chn kt ni SSH bng cch
bt li ng dng PuTTY v chn mc Session trn phn khung bn tri. tu chn
SSH ny lm vic h thng Host PC v C1 cn phi nhn ra nhau trong cng mng
cc b(local area network: LAN). Tham kho v d v cu hnh PuTTY trong hnh bn
di.
Host name: 192.168.7.133
Tn host: 192.168.7.133
Port: 22
Port: 22
Connection type: SSH
Kiu kt ni: SSH

Saved SSH configuration in PuTTY


Cu hnh SSH c lu trong PuTTY

Enter the C1s IP address or hostname (if it can be resolved from the host PC
system) and a numerical value of 22 for the Port number. Select the Connection
Type to be SSH. Enter c1-1-usb-SSH for the configuration name and save it. This
saved configuration can be reloaded and used anytime, as long as the C1s ipaddress and host-name remain the same. Click on the Open button to start a
session.
Nhp a ch ip hoc hostname ca C1 (nu c h thng host PC xc nh)v
gi tr Port l 22. Chn Connection Type l SSH. Nhp tn cu hnh l c1-1-usb-SSH
v lu li. Cu hnh lu ny c th khi np v s dng bt c khi no, min l
a ch ip v hostname ca C1 vn nh c. Nhp chut vo nt Open bt u
mt phin.
Now, reboot the C1, wait approximately 60 seconds, then click on Open in Putty
and you should be prompted for a username and password, which are typically
odroid and odroid. You will see a screen presented as shown in the image below.
Gi khi ng li C1, ch khong 60 giy, v click vo Open trong PuTTy , bn s
c nhc l cn phi nhp tn ngi dng v mt khu, thng l odroid v
odroid. Bn s thy mn hnh nhn ging nh bn di.

PuTTY SSH console


Giao din iu khin PuTTY SSH
You can now access the C1 system as if you had locally opened a terminal Window.
While you cannot view the boot-time log in real-time, you can run a large number of
Linux commands (including dmesg) from this SSH session.
Gi bn c th truy cp vo h thng C1 nh th bn m mt ca s terminal
cc b. Trong khi bn khng th xem bn ghi boot time theo thi gian thc, bn c
th chy mt s lng ln cc lnh Linux (bao gm c dmesg) t phin SSH ny.
So far, weve addressed the case where the host PC system is a Windows 7+
system. Next, we present information on the use of a Ubuntu desktop Linux host
system. Most of the steps apply to a host system running any Linux version,

including a server OS. The steps do not address the use of Linux hosted in a virtual
environment, such as VirtualBox.
Cho n nay, chng ta gii quyt trng hp h thng host PC l mt h thng
Windows 7 tr ln. Tip theo, chng ta s tm hiu v vic s dng mt h thng
desktop Ubuntu Linux. Hu ht cc bc p dng cho h thng host chy mt phin
bn Linux bt k, k c server OS. Cc bc ny khng p dng vi Linux chy
trong mi trng o, chng hn nh VirtualBox.
Linux Host Setup
Ci t Linux Host
Access the Linux desktop of the host system and launch a terminal session. Attach
the USB cable from the USB / UART setup to the host system. The following
commands can be used to verify proper installation:
Vo desktop linux ca h thng host v bt mt phin terminal. Gn cp usb t b
USB/UART vo h thng host. Cc lnh sau c th dng kim tra liu qu trnh
ci t c xy ra li hay khng:
$ lsusb
...
Bus 001 Device 006: ID 10c4:ea60 Cygnal Integrated Products, Inc.
CP210x UART Bridge / myAVR mySmartUSB light
...
Using the output above, you get obtain additional details of the USB / UART module,
using the command:
Dng u ra trn, bn c th ly thm thng tin chi tit v m un USB /UART,
dng lnh:
$ sudo lsusb -D /dev/bus/usb/001/006
Device: ID 10c4:ea60 Cygnal Integrated Products, Inc. CP210x UART
Bridge / myAVR mySmartUSB light
Device Descriptor:
bLength

18

bDescriptorType
bcdUSB

1
2.00

bDeviceClass

0 (Defined at Interface level)

bDeviceSubClass

bDeviceProtocol

bMaxPacketSize0

64

idVendor

0x10c4 Cygnal Integrated Products, Inc.

idProduct

0xea60 CP210x UART Bridge / myAVR mySmartUSB

light
bcdDevice

1.00

iManufacturer

1 Silicon Labs

iProduct
iSerial

2 CP2104 USB to UART Bridge Controller


3 00513B0C

bNumConfigurations

The TTY port on which the module is detected, can be obtained:


Port TTY m m un c xc nh trn , c th c tm ra:
$ sudo ls -lsa /dev/tty* | grep USB
0 crw-rw---- 1 root dialout 188, 0 May 7 16:48 /dev/ttyUSB0
The lockfile location can be checked using the command:
V tr tp kho C th dng lnh sau kim tra
$ sudo ls -lsa /var/lock*
0 lrwxrwxrwx 1 root root 9 Apr 16 2014 /var/lock -> /run/lock
This information is used to setup the communications between the host
system and USB / UART cable attached to the C1. The application used to enable
communication will be minicom:
Thng tin ny c dng thit lp truyn thng gia h thng host v cp
USB/UART gn vo C1. ng dng dng thit lp truyn thng l minicom:
$ minicom -version

minicom version 2.6.1 (compiled May 1 2012)


Copyright (C) Miquel van Smoorenburg.
...
Launch minicom, using the following command:
Bt minicom, dng lnh sau:
$ sudo minicom -o -s
Here are the four screens you would go through to configure and use minicom:
Di y l bn ci mn hnh m bn s ln lt tri qua cu hnh v s dng
minicom:

Port option
Mc cng

Serial port data


d liu cng ni tip

Save setup

Minicom session

Lu thit lp

phin Minicom

The four steps include:


Bn bc bao gm:

Select the Serial port setup option and you will be presented with screen 2.
Chn mc Serial port setup v bn s nhn thy ging nh hnh s 2
In screen 2, type A to select option A. Edit the serial device to that used on your
system. In this case it is: /dev/ttyUSB0. Ensure the lockfile location is what was
obtained earlier. Likewise check option E reflects the information shown in the
figure: 115200 8N1. Ensure Hardware Flow Control is set to YES. Then hit the
ENTER key to go to the next screen.
Trong hnh s 2, g A chn mc A. chnh sa thit b ni tip s dng trong h
thng. y l: /dev/ttyUSB0. m bo rng xc nh v tr tp kho trc .
Tng t kim tra thng tin ti mc E c ging nh trong hnh: 115200 8N1 khng.
m bo rng mc Hardware Flow Control chn YES. Ri nhn phm ENTER
chuyn sang mn hnh k tip.
In screen 3, select the Save setup as option to save this config for future use.
Enter a filename at the new prompt. Hit ENTER to accept the filename. Then select
Exit option to complete the config process.
Trong hnh 3, chn Save setup as lu cu hnh ny cho ln s dng sau.
Nhp tn tp vo v tr du nhc mi. Nhn Enter lu tn tp. Sau chn Exit
hon tt vic cu hnh.
You will now return to the terminal windows, as shown in step 4. Reboot the C1
and you will observe boot-time information scroll through the minicom (terminal)
session.
Gi bn s v li ca s terminal, nh bc 4. Khi ng li C1 v bn s thy
thng tin thi gian khi ng hin ln thng qua phin minicom (terminal).

Bluetooth Module 2(m un bluetooth 2)


Hardkernel offers a bluetooth adapter called the Bluetooth (4.0) Module 2
which is certified to work with the C1. However, quite a few of the plug-andplay adapters compatible with Microsoft Windows 7+, can be expected to
work with C1. The Asus BT400 Bluetooth adapter is one such compatible
device, details of which are described below.
Hardkernel c mt sn phm adapter Bluetooth c tn Bluetooth (4.0)
Module 2, m un ny d qua th nghim v tnh tng thch vi C1. Tuy
nhin, tht s l c mt lng ln cc adapter dng cm nng tng thch
vi Microsoft Windows 7+, c d tnh rng c th lm vic vi C1. Adapter

Asus BT400 Bluetooth l mt thit b tng thch nh vy, c m t chi tit


di y.

. Bluetooth Module 2 adapter and Asus BT400 adapter


adapter Bluetooth Module 2 v adapter Asus BT400
While some of the required software modules may already exist in your C1s
installed image, it is helpful to install the following additional modules and
utilities, using the following commands:
Trong khi vi module phn mm cn thit c th c trong tp nh ci t
C1 ca bn, s l hu ch nu ci t cc m-un v cc tin ch b sung sau
, s dng cc lnh di y:
$ sudo apt-get install bluez-dbg bluez-hcidump bluez-utils blueztools
$ sudo apt-get install bluewho blueman python-bluetooth
Some of them could be used to debug your setup, if you use a nonHardkernel offered bluetooth adapter. Next, check the USB information
related to the adapters:
Mt vi trong nhng module c th c s dng g li thit lp, nu
bn s dng mt b chuyn i Bluetooth khng phi t Hardkernel. Tip
theo, hy kim tra cc thng tin cng USB lin quan n adapter:
$ lsusb

Bus 001 Device 005: ID 0b05:17cb ASUSTek Computer, Inc.

Check the Bluetooth adapters support via Lubuntu for additional features by
examining the dmesg logs:
Kim tra vic h tr b chuyn i Bluetooth qua Lubuntu i vi additional
features ( tnh nng b sung) bng cch kim tra cc bn ghi dmesg:
$ dmesg | grep Blue
[ 0.851848@0] Bluetooth: Core ver 2.16
[ 0.859721@0] Bluetooth: HCI device and connection manager initialized
[ 0.866240@0] Bluetooth: HCI socket layer initialized
[ 0.871245@0] Bluetooth: L2CAP socket layer initialized
[ 0.876447@0] Bluetooth: SCO socket layer initialized
[ 1.429422@2] Bluetooth: HCI UART driver ver 2.2
[ 1.433876@2] Bluetooth: HCI H4 protocol initialized
[ 1.438828@2] Bluetooth: HCI BCSP protocol initialized
[ 1.443919@2] Bluetooth: HCILL protocol initialized
[ 1.448782@2] Bluetooth: HCIATH3K protocol initialized
[ 1.453877@2] Bluetooth: HCI Three-wire UART (H5) protocol initialized
[ 3.236424@2] Bluetooth: btwake_control_init Driver Ver 1.1
[ 3.366366@2] Bluetooth: RFCOMM TTY layer initialized
[ 3.371156@2] Bluetooth: RFCOMM socket layer initialized
[ 3.376392@2] Bluetooth: RFCOMM ver 1.11
[ 3.380308@2] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[ 3.385744@2] Bluetooth: BNEP filters: protocol multicast
[ 3.397895@2] Bluetooth: BNEP socket layer initialized
[ 3.402975@2] Bluetooth: HIDP (Human Interface Emulation) ver

1.2
[ 3.409060@2] Bluetooth: HIDP socket layer initialized
You can then check the list of the installed Bluetooth modules:
Sau bn c th kim tra danh sch cc m un Bluetooth ci:

With the positive signs observed in the output so far, we can check the presence of the
Bluetooth device, which is useful for connection configuration later:
Vi s xut hin cho n by gi trong bng danh sch cc u ra, chng ta c th kim tra s
hin din ca thit b Bluetooth, m s hu ch khi cu hnh kt ni sau ny:
$ hcitool dev
Devices:
hci0

00:02:72:CC:F4:CE

$ hciconfig
hci0:

Type: BR/EDR Bus: USB

BD Address: 00:02:72:CC:F4:CE ACL MTU: 1021:8 SCO MTU: 64:1


UP RUNNING PSCAN
RX bytes:583 acl:0 sco:0 events:33 errors:0
TX bytes:898 acl:0 sco:0 commands:33 errors:0
$ sudo rfkill list all
0: hci0: Bluetooth

Soft blocked: no
To configure the adapter from the Lubuntu desktop, launch the Bluetooth
Manager configuration utility, then select the Preferences menu item to
configure the application, as shown in the screenshots. Update the friendlyname of the Bluetooth adapter using a name like say, c1-1-0. You can make
the device always visible when other Bluetooth devices scan for this adapter.
Save the changes and reboot.
cu hnh b chuyn i t mn hnh Lubuntu, khi chy tin ch cu hnh
Bluetooth Manager, sau chn mc Preferences cu hnh cc ng dng,
nh trong nh chp mn hnh. Cp nht tn t cho adapter Bluetooth s
dng mt tn d nh , chng hn nh c1-1-0. Bn c th nhn ra thit b khi
thc hin qut thit b Bluetooth. Lu thay i v khi ng li.

Launch Bluetooth Manager

Bluetooth Manager configuration

Bt Bluetooth Manager

cu hnh Bluetooth Manager

Bluetooth Manager config update


Cp nht cu hnh Bluetooth Manager

If there is a need to test/debug issues related to the adapter, you can use the command-line
Bluetooth packet analyzer/sniffer to analyze Bluetooth traffic:
Nu cn phi kim tra / g li cc vn lin quan n b chuyn , bn c th s dng gi lnh
phn tch /theo di phn tch lu lng Bluetooth:

Another useful tool is wireshark. It gives a graphic view of the snooped data, etc. It can
installed using the command:
C mt cng c hu ch khc l Wireshark. N hin th di dng ha cc
d liu b n, vv N c th c ci t bng cch s dng lnh:

After installation, you can launch wireshark following the steps shown in the
following images. The welcome screen should appear, reflecting that the

Bluetooth adapter on the C1 has been detected by wireshark. Click on the


green shark-fin icon to request the start of data capturing.
Sau khi ci t, bn c th khi ng Wireshark theo cc bc nh trong
hnh sau. Mn hnh cho s xut hin, ch ra Wireshark pht hin ra b
chuyn Bluetooth trn C1. Nhn vo biu tng vy c mp mu xanh
bt u qu trnh bt d liu.

Wireshark welcome screen with bluetooth adapter detected


Mn hnh cho Wireshark vi adaper Bluetooth c nhn

Wireshark with snooped bluetooth traffic


Wireshark vi lu lng bluetooth d c
Then, launch the Bluetooth Manager application and click on its Search button. You should
immediately see snooped information present itself in the wireshark application.
Sau , bt ng dng Bluetooth Manager application v click vo nt Search button. Bn
s ngay lp tc thy cc thng tin b bt c trnh by trong ng dng Wireshark mt cch t
ng.

Tinkering Kit(kit Tinkering)


While the power-efficient C1 is a very capable system for software development, it is also
highly suited for prototyping hardware development. Towards that end, Hardkernel has

developed the C1 Tinkering kit with numerous items to get you started, as shown in the
following image
Trong khi bo C1 t hao tn in nng v l mt h thng c kh nng pht trin phn mm, th
n cng rt ph hp pht trin mu phn cng. Nhm mc ch , Hardkernel pht trin
kit C1 Tinkering vi nhiu th kt hp gip bn c th bt u, nh trong hnh di y

The Hardkernel Tinkering Kit includes many useful items


Trong b kit Hardkernel Tinkering c nhiu th th v
Some of the components in the Tinkering Kit include:
Mt vi thnh phn trong b kit Tinkering gm c:
Assembled T-breakout PCB - 40Pin GPIO Breakout board
Bng mch m ni hnh ch T bo m cho 40 chn GPIO
Breadboard - 630 Tie-points with dual power lanes
Bng mch khung(bng mch kim th)-630 im ni vi cc hng
l i dng cp ngun
40pin Ribbon cable - IDC Flat cable 100mm

Cp dp 40 chn-cp bng IDC di 100mm


40pin Male-to-Male Dupont jumper Wire 170mm
B 40 Dy ni kim mch 2 u c di 170mm
Green/Yellow/Red 3mm LEDs 7 each
Led 3 li vng xanh- mi loi 7 ci
2 x Photo Cell (CdS Light sensor), 6 x Tact Switches
2 quang tr(cm bin nh sng CdS), 6 nt nhn
330 / 10 K 1/6W resisters 50 each
in tr 1/6w loi 330 v 10 K - mi loi 50

GPIO layout for the 40-pin header on the ODROID-C1


S b tr v nhim v ca cc chn GPIO ca 2 hng 40 chn trn
ODROID-C1

The T-breakout board breaks-out all the pins from the 40-pin header
onto a solderless breadboard. The pins include, power, GPIO, I2C, and ADC
pins. This simplifies prototyping of data acquisition and control projects.
Mch ni ch T lin kt tt c cc chn ca hai hng 40 chn vi bo kim
tra ni dy loi cm. Cc chn bao gm, chn ngun, GPIO, I2C, v chn
ADC. iu ny lm n gin ho vic to mu cc d n iu khin thu thp
d liu
It is advisable to refer to the Amlogic S805 datasheet, available at
http://bit.ly/1dFEHhX, to fully understand the GPIO designations.
Nn tham kho datasheet ca Amlogic S805, ti a ch
http://bit.ly/1dFEHhX, hiu r v cc chc nng GPIO

40-pin layout with GPIO mappings for the Wiring Pi library


S chc nng 40 chn GPIO dnh cho th vin Wiring Pi
The above image illustrates simplified information on layout and the designation of the 40 pins.
Use the data sheet and this information with caution when applying voltages to the pins, to
ensure compliance and prevent possible device damage.

Trong hnh trn l cch b tr v tn chc nng ca tng chn trong 40 chn. S dng bng d
liu v thng tin ny mt cch thn trng khi ghp ni in p vi tng chn, cn phi tun th
m bo tng thch v nhm ngn chn thit hi c th xy ra cho thit b.
The WiringPi library has been ported to work with C1. The chart above illustrates the GPIO
pin numbering translation scheme used in the WiringPi library.
Th vin WiringPi c vit li lm vic vi C1. Bng trn minh ho lc dch nh s
chn GPIO dng trong th vin WiringPi.

Tinkering project example


V d th nghim vi Tinkering
The image above shows a project example using the C1 and the tinkering kit. Details can be
found in the related wiki at http://bit.ly/1N-srlU9. You can wire up the project to reflect the
example.
Trong nh trn l v d th nghim s dng C1 v b Tinkering. C th c tm thm thng tin
chi tit trong trang wiki lin quan ti http://bit.ly/1N - srlU9. Bn c th th nghim theo v d.
Prior to trying out the example, you will need to build and install the WiringPi library by
running the following commands in a Terminal window:
Trc khi th lm v d ny, bn s cn phi to v ci t phn th vin WiringPi bng cch
chy lnh sau trong ca s Terminal:

Then, download the C-language sample source code example-led.c from the previously
mentioned Wiki, to a working directory such as tkit-example, then build and run it using the
following commands:

Sau , ti file mu example-led.c c m ngun vit bng C t Wiki tng c cp, vo mt


th mc lm vic nh l tkit-example, sau build v chy n bng cch s dng lnh sau:

Note that GPIO access requires root user privilege. Move your finger closer to the light sensor
and you should see the LEDs light up.
Lu rng vic truy cp GPIO yu cu quyn root. Di chuyn ngn tay ca bn n gn hn vi
cm bin quang v bn s thy cc n LED sng ln.

ODUINO ONE
The ODROID-compatible Arduino called the ODUINO ONE includes the following
components, all packaged into one experimentation unit, as shown in the image below.
B Arduino tng thch vi ODROID gi l ODUINO ONE , n gm cc hp phn sau, tt c
c ng gi thnh mt b th nghim, nh trong hnh bn di.

The ODUINO ONE unit


B ODUINO ONE
Arduino Uno R3 + a shield containing
Arduino Uno R3 + mt shield cha
one 16x2 LCD display
mt mn hnh LCD 16x2

one DHT11 one-wire humidity / Temperature sensor


mt cm bin nhit v m tch hp DHT11
one keypad (four directional keys)
mt b phm ( c bn phm dn hng)
The ONE package can be powered by the C1 using the USB Std A/Std B cable. Connect the
cable to the ODUINO ONE and the C1. The ONE goes through the power-up process and
displays the ambient humidity and temperature. It can also display the key that gets clicked on
the keypad. Some additional information on the ONE package can be obtained using the
following commands:
B ONE c th c C1 cp ngun bng cch s dng cp chuyn USB A sang B. Cm u cp
vo ODUINO ONE v C1. ONE c bt v hin th nhit v m mi trng xung quanh.
N cng c th hin th phm c nhp vo trn bn phm. Mt s thng tin thm v b ONE c
th c tm thy bng cch s dng lnh sau:

The activity on the ONE package also gets transmitted to the ODROID-C1. Hardkernel has
provided C sample source code to display this information. You will need to install some prerequisite software components first:
Cc hot ng ca b ONE cng c truyn ti C1. Hardkernel cung cp m ngun C mu
hin th thng tin ny. Trc tin, bn s cn ci t mt vi thnh phn phn mm tin quyt:

You can then download the sample (Qt based) source code to the C1:
Sau bn c th ti v m ngun mu (da trn Qt ) cho C1:

ODUINO ONE data captured by application on C1


Thu thp d liu t ODUINO ONE bng ng dng trn C1
You can launch the freshly built application using the following commands:
Bn c th bt ng dng c dng li bng cch dng cc lnh sau:

The application user-interface should look like the above image.


Giao din ngi dng ng dng s ging nh nh trn.
ODROID-SHOW2
Hardkernel offers an Arduino compatible 2.2 240320 TFT-LCD display, called ODROIDSHOW2, that can be used with the C1, a PC or other Hardkernel boards. The LCD display can
be used to display simple messages and hardware status, and the user switches mounted at the
bottom of the board allow simple user interaction and input.
Hardkernel c mt sn phm mn hnh TFT-LCD 2.2 " tng thch vi Arduino c phn gii
240 320, tn l ODROID-Show 2, c th dng vi C1, mt my tnh hoc cc bo khc ca
Hardkernel. Mn hnh LCD c th c s dng hin th thng tin n gin v tnh trng
phn cng, v cc nt nhn di cng ca bo mch cho php tng tc v nhp n gin.

ODROID-SHOW2 annotated image


Chi tit ODROID-SHOW2
After attaching the SHOW to the C1, use the following commands to get details on it:
Sau khi kt ni SHOW vi C1, dng cc lnh sau nhn cc thng tin chi tit v n:

ODROID-SHOW example project output


Xut v d th nghim trn ODROID-SHOW
Obtain the SHOW sample source code and build a sample using the commands:

Ly m ngun mu ca SHOW v dng mt v d bng cch s dng cc lnh:

You should see the LCD display similar to the following image:
Bn s thy lcd ging nh hnh sau:

ODROID-SHOW showing the sample project startup screen


ODROID-SHOW hin th mn hnh khi ng th nghim mu
Additional details, such as, burning new firmware for the SHOW2 (or SHOW1) and sample
applications can be found at http://bit.ly/1toe7Pl.
Cc thng tin chi tit khc, chng hn nh, np firmware mi cho SHOW2 (hoc SHOW1) v
cc ng dng mu c th c tm thy ti http://bit.ly/1toe7Pl.
One important aspect of the SHOW2 (or SHOW1) board, is the presence of a Data Terminal
Ready (DTR) reset jumper/switch. Its role is important during burning of new firmware. The
following precautions need to to be followed, regarding the DTR jumper:
Mt c im quan trng ca bo SHOW 2 (hoc SHOW 1), l n c mt u ni / im chp
reset Data Terminal Ready(u cui d liu sn sng) (DTR) .
N rt quan trng trong qu trnh np firmware mi. Cc bin php phng nga sau y cn
phi c tun theo, lin quan n jumper DTR:
It must be installed when you upload the firmware.
Khi np firmware th phi chp hai u vi nhau.
It must NOT be installed during normalusage mode.

Khi ch s dng bnh thng th khng c php chp hai u vi nhau.


16x2 LCD I/O Shield
B m rng LCD hin th I/O
Hardkernel offers an I/O shield with a, 16 chars by 2 lines, white on blue, LCD display, tactile
switches and I/O pins. Its use requires the WiringPi library, whose installation was discussed
earlier. After installing the shield on the C1, the sample source can be obtained from
http://bit.ly/1fbtFlE.
Hardkernel cung cp mt b m rng I / O vi mn hnh LCD 16x2( 16 k t x 2 dng trng
trn nn xanh) , cc nt nhn v cc chn I / O. s dng n cn phi c th vin WiringPi,
vic ci t th vin ny c tho lun phn trc. sau khi lp b m rng ln trn C1, m
ngun mu c th ly ti http://bit.ly/1fbtFlE.
Copy the sample code using the following commands:
Copy on code mu s dng cc lnh sau y:

Fix an issue with the sample code, where the temperature is displayed wrongly. Open the
C source file in an editor and modify the following line, then save the changes:
Sa mt li xy ra vi m ngun mu, l hin th sai nhit . M tp tin ngun vit bng C
bng mt trnh bin tp v sa dng lnh sau, sau lu thay i:

Then, build and launch the application using the following commands, which should show a
display similar to the image below:
Sau , bin dch v chy ng dng dng cc lnh sau, hin th ging nh trong hnh bn di:

16x2 LCD I/O shield showing some CPU data


B m rng 16x2 LCD- I/O ang hin th vo thng tin v CPU
Weather Board(m un kh tng)
The Weather-board shown below is an add-on developed by Hardkernel, to be used with
either the SHOW or 16x2 LCD device. Below are the steps needed to get it to work with the C1
and ODROID-SHOW.
M un kh tng trong hnh bn di l mt m un ph tr c Hardkernel pht trin s
dng vi c hai thit b l SHOW v LCD 16x2. Di y l cc bc cn thit n c th lm
vic vi C1 v ODROID-SHOW.

Hardkernels Weather Board peripheral


M un kh tng ngoi vi t Hardkernel
Install the Device Tree Compiler (DTC) using the command:

Ci Device Tree Compiler (DTC)(trnh bin dch cy thit b) s dng lnh:

Then, enable the sensors on the device tree using the commands:
Sau , bt cm bin trn cy thit b dng cc lnh:

Enable the i2c module to auto-load on boot-up:


Bt m un I2C sang ch t np khi khi ng:

Ensure the WiringPi is installed as described earlier. Power down the system. Attach the
weather-board to 16x2 display, then power up the whole system. Next, download the
wb_si702x.c sample source file from http://bit.ly/1HIes6U, then build and launch it:
m bo rng WiringPi c ci theo nh m t trc . Tt ngun. Gn m un kh tng
vo mn hnh 16x2, ri cp ngun cho ton b h thng. K tip l ti xung tp ngun mu
wb_si702x.c t http://bit.ly/1HIes6U, bin dch v chy n:

You should see the LCD module display the current ambient temperature and humidity, as
shown in the following image.
Bn s thy m un LCD hin th nhit v m hin ti ca mi trng xung quanh, nh
hnh di y.

LCD displaying weather information


LCD ang hin th thng tin kh tng
3.2inch TFT+Touchscreen Shield
B m rng mn hnh cm ng TFT 3.2 inch
Considering the size and form-factor of the C1, which is ideal for portable applications, it is
only natural to expect the support for a small touchscreen. Hardkernel offers one such 3.2
320x240 pixel TFT LCD screen with a resistive touch display, as shown here:
V mt kch thc v hnh dng th C1 c 1 s nh gn l tng vn dng vo thc t, d
on c rng s c mt ca mt mn hnh cm ng c nh l cn thit. Hardkernel c cung
cp 1 th nh vy l mn hnh LCD cm ng in tr TFT 3.2 inch 320x240 im, nh hnh
di:

TFT touchscreen setup


Lp t mn hnh cm ng TFT
This display is in the form of a shield that fits on to some of the the GPIO pins of the C1. To
activate the display, start with the upgrade commands below:
Mn hnh ny c dng mt b m rng c th gn vo mt vi chn GPIO ca C1. khi ng
mn hnh, bt u vi cc lnh nng cp di y:

Then insert the modules using, with one command per line:
Sau chn thm m un dng mt lnh mi dng:

You can achieve the same, by updating the /etc/modules file to include the following
configuration, which should be placed on two lines:
Bn c th dt c kt qu tng t, bng cch cp nht tp tin m un thm vo cu hnh
sau, cu hnh c t trn 2 dng:

To run X windows while using the display, update the X11 related configuration:
chy X ca s trong khi s dng mn hnh , cp nht cu hnh X11 lin quan:

Add the following contents to this new file, then save the changes:
Thm cc ni dung sau vo tp tin mi ny, sau lu cc thay i:

Then disable the Xorg option on your C1, using the ODROID Utility:
Sau tt ty chn Xorg trn C1, dng ODROID Utility:

Then, use the up / down cursor keys to select the Xorg On/Off menu option and hit <ENTER>,
then select Disable Xorg. Update the kernel launch statement using the command:
Sau dng cc phm con tr ln/xung chn On/Off trong trnh n Xorg v nhn
<ENTER>, ri chn Disable Xorg. Cp nht khai bo khi chy kernel bng lnh sau:

Alternatively, add the following kernel argument to file /media/boot/boot.ini and save the
changes:
Ngoi ra, thm i s kernel sau vo tp /media/boot/boot.ini v lu li cc thay i:

Enable booting to the desktop using the following change to /etc/rc.local file and save the
changes:
Kch hot tnh nng khi ng desktop s dng s thay i nh sau i vi tp /etc/rc.local v
lu li cc thay i:

Shutdown the system, remove any attached HDMI monitor, then reboot the system to see the
desktop on the new display. The display needs to be calibrated. To do so, run the following
command (one line):

Tt ton b h thng,tho gic cm mn hnh HDMI sau khi ng li h thng xem giao
din desktop trn mn hnh mi. Mn hnh cn c hiu chnh. lm iu , chy lnh
( vit trn mt dng) sau:

You will be presented with directions on the display. Touch each of the points to be calibrated.
Then run the following command on a single line, then reboot the system:
Bn s nhn thy cc iu hng trn mn hnh. Chm vo tng im hiu chnh. Sau chy
lnh sau trn mt dng duy nht, v khi ng li h thng:

Note that only a limited number of desktop icon shortcuts can be displayed on the small 3.2
display. Some applications may not be designed to optimize their user interface to fit the small
screen. As a result, some parts of the user interface may be hidden from full view.
Lu rng ch c mt s lng hn ch biu tng shortcut trn Desktop c th hin th trn mt
mn hnh 3.2 inch. Vi ng dng c l khng c thit k ti u ha giao din ngi dng
ph hp vi mn hnh nh. Kt qu l, mt s phn ca giao din ngi dng c th b n so vi
khi hin th y .
The AmeriDroid team has also developed a software utility to install and use the TFT display.
To use their utility, follow the steps below:
- Disconnect your C1 from power and HDMI and connect the screen to C1s GPIO header.
- Boot the C1 and expand the root partition (if not already done) using ODROID-Utility.
- Connect your C1 to the Internet.
- Open a console window (uxterm, xterm, or similar) and type:
Nhm AmeriDroid cng pht trin mt phn mm tin ch ci t v s dng mn hnh
TFT. s dng tin ch ny, hy lm theo cc bc di y:
- Rt gic cm ngun v HDMI ra khi C1 v ghim mn hnh vo header GPIO ca C1.
- Khi ng C1 v m rng phn vng gc (nu cha lm) s dng ODROID-Utility.
- Kt ni C1 vi Internet.
- M mt ca s giao din iu khin (uxterm, xterm, hoc tng t) v g:

- Enter your superuser password (default password is odroid) and type:


- Nhp mt khu siu ngi dng (mc nh l odroid) v g:

Type a and hit <ENTER> to run all steps automatically, then reboot.
G "a" v nhn <Enter> chy tt c cc bc t ng, sau khi ng li.

DC plug cable assembly 2.5mm

DC plug with SmartPower

Dy ni c gic ngun DC 2.5mm

SmartPower cng vi gic ngun dc

This accessory, shown in the image below, is typically used to provide power to the C1 using a
special purpose power supply. These power supplies could include bench-top models or
Hardkernels own SmartPower. Ensure that the power supply provides clean power, rated at 5V,
2.0+ Amps. Use the cable colors to ensure polarities match at either end.
Ph kin ny, nh trong hnh di thng c dng cp ngun cho C1 s dng 1 b cp
ngun c bit (ngoi). Cc b cp ngun ny c th l cc b ngun tinh chnh hoc
SmartPower ca HardKernel. m bo rng b ngun ny cp in n nh, 5v in p danh
nh, dng 2.0+ Amps. S dng cp mu m bo u dy ng cc.

DC plug cable assembly

DC plug cable usage

Dy cp ngun DC USB

Cch dng dy cp ngun DC USB

USB-DC Plug Cable 2.5x0.8mm

Dy cp ngun DC USB 2.5x0.8mm


This accessory is typically used to provide power to the C1 using a power supply that has an
USB port. These power supplies could include units that convert AC power to DC power
transformers or battery packs. The image below shows both the USB-DC plug cable and a
typical LiPo battery pack. Ensure that the power supply provides clean power, rated at: 5V, 2.0+
Amps.
Ph kin ny thng c dng cung cp ngun cho C1 s dng b ngun c cng USB. Cc
b ngun ny c th l cc b i in AC-DC hoc pin. Trong hnh nh di y cho thy c
cp ngun USB-DC v mt b pin LiPo in hnh. m bo rng b ngun ny cp in n
nh, 5v in p danh nh, dng 2.0+ Amps.
USB-SPDIF
Hardkernel offers a C1-compatible S/PDIF (Sony/Philips Digital Interface Format) kit
with a USB interface. This allows you to hook up the audio from the C1 via USB to
an amplifier (A/V receiver), when the HDMI audio out option is not used. The
images below show the kit and device internals.
Hardkernel c bn 1 b kit S/PDIF (Sony/Philips Digital Interface Format: Chun giao
tip k thut s ca Sony v Phillip) tng thch vi C1 vi 1 giao din USB. iu
ny cho php bn pht m thanh t C1 qua USB ti mt b khuch i (b nhn
A/V), khi khng s dng ty chn xut m thanh trn cng HDMI. Bn di l nhng
hnh nh ca b kit v chi tit bn trong thit b.

USB-SPDIF kit
B kit USB-SPDIF

USB-SPDIF device internals


Chi tit bn trong USB-SPDIF

If you use the latest Lubuntu image, you should have XBMC 13 Gotham (or newer)
version of the open-source media player pre-installed. Note that the pass-through
audio function does not work in older versions of XBMC. Attach the cable provided

in the kit to the device on one end and the C1s USB port on the other end. Reboot
the system. You can check to see if the device is detected using the commands:
Nu bn dng tp nh Lubuntu mi nht, bn s c phin bn XBMC 13 Gotham
(hoc mi hn) ca trnh chi media m ngun m sn trong h iu hnh. Lu
rng chc nng truyn m thanh khng lm vic trong phin bn XBMC c hn.
Khi ng li h thng bn c th kim tra xem liu thit b c c nhn khng
dng cc lnh:

Now that the device is verified to be recognized by the system,configure it by first


launching the PulseAudio Volume Control config option from the desktop. Then, in
the Configuration tab, select the Digital Stereo Output profile, and select the Output
Devices tab and update the configuration for the CM108 device as shown in the
images below. Note that TrueHD or DTS-MA pass-through is unsupported.
Gi th thit b c h thng nhn ra, cu hnh n bng cch l u tin bt ty
chn cu hnh PulseAudio Volume Control t desktop. Sau , trong tab
Configuration, chn profile (cu hnh) Digital Stereo Output, v chn tab Output
Devices v cp nht cu hnh cho thit b CM108 nh trong hnh bn di. Lu
rng kiu truyn TrueHD hoc DTS-MA khng c h tr.

Launch the Kodi Media Center application from the desktop. You should see the
welcome screen. Select the main System option, then select the System menu
under the Confluence tab. Select the Audio Output menu item, and click on the
Audio Output device selection on the top. You will be presented with all possible
options. Select the option corresponding to the CM108 device, as shown in the
screenshot below. Next, unmute the system using your C1-compatible remote or
the keyboard.
Bt ng dng Kodi Media Center trn desktop. Bn s thy mn hnh cho. Chn
main System option, sau chn System menu nm di tab Confluence. Chn
mc menu Audio Output, v nhp chn phn Audio Output device trn cng. Bn
s thy tt c cc tu chn c th. Chn mc tng ng vi thit b CM108, nh
trong hnh di y. Tip theo, bt ting h thng bng cch dng iu khin tng
thch vi C1 hoc bn phm.
Download an mp3 file to a directory accessible by your account. Go back to the
Home screen of the Kodi application. Select the Music option and click on the Music
sub-option. Browse the directory that has the mp3 file, select the mp3 file and play
it.
Ti mt tp mp3 bng ti khon ca bn. Tr li mn hnh Home ca ng dng Kodi.
Chn mc Music v click vo Music sub-option. Duyt th mc c tp mp3, chn tp
v chi n.

PulseAudio Volume Control


PulseAudio Volume Control

PulseAudio profile
cu hnh PulseAudio

PulseAudio output device config


Cu hnh thit b xut m trong PulseAudio

Kodi audio output device configuration


Cu hnh thit b m thanh u ra trn Kodi
USB-CAM 720P
Hardkernel offers a USB-CAM rated @720p up to 30 fps (figure 4.43), which is
certified to work with the C1. However, quite a few of the plug-and-plug USB
webcams compatible with Microsoft Windows 7+, can also be expected to work with
C1. The VF0610 Live! Cam Socialize HD (figure 4.44) is one such compatible model,
details of which are shown below:

Hardkernel cung cp mt USB-CAM loi @ 720p tc ghi hnh 30 fps (hnh 4.43),
c kim chng kh nng lm vic vi C1. Tuy nhin, kh nhiu USB webcam
cm nng tng thch vi Microsoft Windows 7+, cng c th lm vic vi C1.
VF0610 Live! Cam Socialize HD (hnh 4.44) l mt trong nhng mu tng thch nh
vy, vi cc chi tit c trnh by bn di:

Additional details can be found using the following command:


C th tm cc chi tit b sung dng lnh sau:

USB-CAM 720p

VF0610 USB-CAM 720p

Attach the USB-CAM to an available USB port on the C1, and wait for a few
moments. Then, run the above commands to ensure that the device and its
capabilities are detected accurately. Start Camorama with the camera pointed to
any well-lit object. An image of that object should be visible in the display. The
image below shows such a screen displaying the view seen through the attached
camera:
Gn USB-CAM vo cng USB trn C1, v i trong chc lt. Sau , chy lnh trn
m bonhn dng c thit b v tnh nng ca n mt cch chnh xc. Bt
u Camorama vi camera quay v pha bt c i tng no sng. Hnh nh
ca i tng s xut hin trn mn hnh. Trong hnh di y l mn hnh ang
hin th nhng g thu c qua camera m ta gn vo:

USB-CAM 720p usage via Camorama application


Dng USB-CAM 720p qua ng dng Camorama
UPS2
There are many situations when an Uninterrupted Power Supply (UPS) is essential
to ensure that the C1 is functioning well, even with loss of main power. Hardkernel
has developed a 3000mAh UPS kit as shown below. This LiPo battery kit, when used
in conjunction with the C1 charges the battery pack. The second image shows the
fully assembled kit mounted on a C1.
C nhiu tnh hung cn ti mt l b lu tr in d phng (Uninterruptible
Power Supply(UPS): h thng ngun cung cp lin tc) m bo rng C1 hot
ng bnh thng, ngay c khi mt ngun in chnh. Hardkernel pht trin mt
b UPS 3000mAh nh hnh di y. B ups ny, s dng chung ngun vi C1
sc pin ca n. Trong hnh th hai l b kit c lp rp hon chnh gn trn mt
C1.

UPS2 kit

UPS2 assembled

B UPS2

Cch lp rp UPS2

The UPS is designed that during its use, if the main power source fails, it
takes over, presuming it is fully charged. After the battery has drained to a low
level, it signals the C1 through a digital output pin, triggering a graceful shutdown.
Since the cache/file operations are likely to be flushed out before the power is
turned off, the risk of data loss is low.
UPS c thit k nhm m nhn vai tr b ngun thay th nu nh b ngun chnh
b hng nu UPS ang c s dng v sc y in. Sau khi pin cn xung 1 mc
nht nh, n s pht tn hiu cho C1 thng qua 1 chn u ra nhm khi ng quy
trnh tt my. Bi v cc hot ng c thc hin trn file/b nh m gn nh b
xo trc khi tt ngun, nguy c mt d liu kh thp.
USB GPS Module
M un GPS USB
Hardkernel produces a 5V 0.1A GPS receiver with an USB interface that supports
the standard National Marine Electronics Association (NMEA) GPS protocol, as shown
below.
Mt sn phm ca Hardkernel l b thu GPS 5V 0.1A vi giao din USB h tr giao
thc GPS theo tiu chun Hip hi in t Hng hi Quc gia (NMEA: National
Marine Electronics Association ), nh hnh di .

USB GPS module


M un GPS USB
The device uses a Ublox 6010 chipset, with support already built into the official
Hardkernel Lubuntu image. One should be able to attach the device to an available
USB port on the C1 and start using it right away:

Thit b s dng chipset Ublox 6010, vi s h tr c tch hp sn trong tp


nh Hardkernel Lubuntu chnh thc. Ch cn gn thit b vo cng USB trn C1 v s
dng :

Now that the relevant TTY port is obtained, you can check to see if the GPS receiver
is doing its job, using the following command:
Gi th nhn cng TTY lin quan, bn c th kim tra xem liu b thu GPS ang
chy ng, bng cch s dng lnh sau :

The RMC - NMEA has its own version of essential GPS pvt (position, velocity, time)
data, which represents the following information:
RMC - NMEA c phin bn ring v d liu GPS pvt (position: v tr, velocity: vn tc,
time: thi gian) thit yu, biu din thng tin nh sau:

To test the higher level functionality of the GPS dongle, we can use the services of
gpsd, a service daemon, that monitors one or more GPS modules and makes the

pcv (position,course,velocity) data available via the TCP port 2947 of the host
system.
kim tra chc nng mc cao hn ca b thu GPS, chng ta c th s dng cc
service()GPSD, mt daemon(), theo di mt hay nhiu module GPS v to d liu
PCV(position: v tr, course: hnh trnh, velocity: vn tc) sn c thng qua cng TCP
2947 ca h thng host.
Install gpsd and relevant utilities using the following command:
Ci gpsd v cc tin ch lin quan dng lnh sau

Then, configure gpsd using the following command and options, then reboot:
Sau , cu hnh gpsd dng cc lnh v tu chn sau, v khi ng li

Run the gpsmon command:


Chy lnh gpsmon:

You should see a screen like that shown in the screenshot below. The $GPRMC lines
will scroll at the bottom of the screen, which indicates that the application is
actually receiving the GPS information from the gpsd daemon.
Bn s thy mt mn hnh nh bn di. Dng $ GPRMC s chy ra di cng ca
mn hnh, m ch ra rng ng dng ang thc s nhn c thng tin GPS t
daemon GPSD.

Gpsmon display
Mn hnh Gpsmon
From a terminal window, launch the foxtrotgps application using the following
command:
T ca s terminal, bt ng dng foxtrotgps bng lnh sau:

Note that the display of a live map requires the presence of a working internet
connection. If you wish to see a real-time map while you are driving in a vehicle
with this setup, you will need to use your smartphone as a hot-spot and have the
setup talk to it via WiFi.
Lu rng vic hin th bn theo thi gian thc yu cu cn phi c kt ni
internet. Nu bn mun xem bn khi ang li mt chic xe cng vi thit lp
ny, bn cn s dng smartphone lm mt im pht sng v thit lp s trao
i thng tin bng WiFi.

Foxtrotgps display

Mn hnh Foxtrotgps

Conclusion
Tng kt
The ODROID-C1 is compatible with many types of hardware gadgets, and
nearly any USB sensor may be used as long as it has a Linux driver available.
ODROID-C1 tng thch vi nhiu thit b phn cng khc nhau, gn nh bt k cm
bin c u ra USB u c th dng c min l c driver linux ca n.
The ones sold by Hardkernel at http://bit.ly/1fbE9ld have the advantage of having
pre-configured drivers included with the official Hardkernel disk images.
Nhng th c bn ti Hardkernel http://bit.ly/1fbE9ld c li th l c trnh iu
khin c cu hnh sn nm trong tp nh a Hardkernel chnh thc.
We hope you enjoy tinkering and building your own projects using some of the
techniques described here.
Chng ti hy vng bn s vc v thc hin cc d nh ring ca bn c s dng
mt s k thut c m t y.
Additional Resources
Ti nguyn b sung
ODROID Forums: http://forum.odroid.com
ODROID-C1 Wiki: http://bit.ly/1KRKoGV
Android images: http://bit.ly/1FRHJKl
Linux images: http://bit.ly/1dFLsQQ
Improved Win32 DiskImager: http://bit.ly/1lYQ7MF
Hardkernel store: http://bit.ly/1fbE9ld

You might also like