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

Transcript of Chameleon Display on Tizen Embedded Software Lab., SKKU Min Ji Kim, Daejun Park, Sihoon Choi .

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℃)