chameleon display on tizen embedded software lab., skku min ji kim, daejun park, sihoon choi

13
Chameleon Display on Tizen Embedded Software Lab., SKKU Min Ji Kim, Daejun Park, Sihoon Choi https://github.com/ TizenChameleon

Upload: peregrine-bryan

Post on 21-Dec-2015

228 views

Category:

Documents


0 download

TRANSCRIPT

Chameleon Display on Tizen

Embedded Software Lab., SKKUMin Ji Kim, Daejun Park, Sihoon

Choihttps://github.com/TizenChameleon

Goal

• Chameleon display using external sensor on ODUINO one – Temperature, Humidity from DHT11– Applying display color change with real-

time sensor value

ODUINO One?

• Arduino UNO– Microcontroller board based on the ATmega328

• ODUINO ONE– Arduino UNO + LCD/keypad shield + DHT11 + USB

Cable– DHT11: Humidity and Temperature sensor module

Arduino Arduino UNOUNO

ODUINO OneODUINO OneDHT11

Architecture

USB Connection

Data Parsing Temperature, Humidity

Periodic Updatesysfs

Tizen UI Framework/sys/class/Vsensor/oduino/oduino_sensorfprintf(fd, temperature, humidity);

File Read

Implementation

• USB connection between Odroid & Arduino(with sensor)

• Parsing to meaningful data– Temperature, Humidity

• Data transferring with sysfs• Input data to UI framework• Rendering with input data

chameleonD

virtualSensor

UI FrameworkEVAS

chameleonD

• main.cpp– Using ecore main loop – Adding timer to update sensor value

ODUINO One default update period = 1 secUpdate new sensor value by 1.5 secs

chameleonD (cont’d)

Update new sensor value with sysfs file

Reading sensor from ODUINO One

chameleonD (cont’d)

• oduinoSerialReader.cpp

Device open &Initialize connection setting

Parsing & Reading sensor value

virtualSensor

• oduino_sensor.c– Create sysfs module• /sys/class/Vsensor/oduino/oduino_sensor

Evas rendering part

• UI framework(evas layer)– /src/lib/canvas/evas_render.c

• Adding new API to draw– evas_temp_humid_apply(Evas* e)

Reading sysfs file to get temperature & humidity

Evas rendering part (Cont’d)• Adding new API to draw– evas_temp_humid_apply(Evas* e)

Calculate color vector with temperature & humidity

Adding new object to top layer

Color setting

Touch disabling

Drawing

Expectation

• Provide weather information with UI• Intuitively providing diverse

information with UI to user

Results(Demo)

• Chameleon Display– http://youtu.be/Flk99dcak5U

– ~0:30 : Booting– 0:30~0:35 : initial temperature & humidity

showing(HUMI: 34%, TEM: 26℃)– 0:35~0:50 : Heating (HUMI: 49%, TEM: 31℃)– 0:50~1:10 : More heating (HUMI: 71%, TEM:

33℃)– 1:15~1:38 : Cooling (HUMI: 45%, TEM: 27℃)