+++ /dev/null
------BEGIN CERTIFICATE-----\r
-MIICyjCCAnCgAwIBAgIUREVWM1AwMTE1MzM2ODUwODUwNzkwCgYIKoZIzj0EAwIw\r
-fTE4MDYGA1UEAwwvU2Ftc3VuZyBFbGVjdHJvbmljcyBPQ0YgRGV2ZWxvcGVyIFN1\r
-YkNBIHYzIFRFU1QxFjAUBgNVBAsMDU9DRiBEZXYgU3ViQ0ExHDAaBgNVBAoME1Nh\r
-bXN1bmcgRWxlY3Ryb25pY3MxCzAJBgNVBAYTAktSMB4XDTE4MDgwNzIzMzgwNVoX\r
-DTE4MTAwNjIzMzgwNVowgbMxZzBlBgNVBAMMXkRldmVsb3BlciBEZXZpY2UgVEVT\r
-VDogU21hcnRCbGluZCAoYjg4MzdhNWYtMjNiNS00Y2RhLWE0ZmEtNGE5NDU5YzRl\r
-MTBhKS9qYXkudHQudGVzdEBnbWFpbC5jb20xHTAbBgNVBAsMFE9DRiBEZXYgRGV2\r
-aWNlKGZBYnIpMRwwGgYDVQQKDBNTYW1zdW5nIEVsZWN0cm9uaWNzMQswCQYDVQQG\r
-EwJLUjBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABJMDmIztgUXrbfrPaBibwShB\r
-oFnYd4vhWLA9II3SkaPzET23uGemCH7jtEd8YmCPezz7yGJTXxg3s4PYJs91GXOj\r
-gZYwgZMwCwYDVR0PBAQDAgPIMDwGCCsGAQUFBwEBBDAwLjAsBggrBgEFBQcwAYYg\r
-aHR0cDovL29jc3AtdGVzdC5zYW1zdW5naW90cy5jb20wOwYDVR0fBDQwMjAwoC6g\r
-LIYqaHR0cDovL2NybC10ZXN0LnNhbXN1bmdpb3RzLmNvbS9kZXYzY2EuY3JsMAkG\r
-A1UdEwQCMAAwCgYIKoZIzj0EAwIDSAAwRQIgJ4Vak8GiWRmMq6pgNwddzBmCRz/b\r
-Px6CO+svAUIgmS8CIQD8f7L6pB+dT8xRa6tC7xcFXccIDnS7z2ST3B1PUIvjLw==\r
------END CERTIFICATE-----\r
------BEGIN CERTIFICATE-----
-MIIClDCCAjmgAwIBAgITCBdmNie8mlu4WgGqOB3KClKsjzAMBggqhkjOPQQDAgUA
-MHAxLTArBgNVBAMTJFNhbXN1bmcgRWxlY3Ryb25pY3MgT0NGIFJvb3QgQ0EgVEVT
-VDEUMBIGA1UECxMLT0NGIFJvb3QgQ0ExHDAaBgNVBAoTE1NhbXN1bmcgRWxlY3Ry
-b25pY3MxCzAJBgNVBAYTAktSMCAXDTE3MTAxMDEwMjY0NloYDzIwNjkxMjMxMTQ1
-OTU5WjB9MTgwNgYDVQQDEy9TYW1zdW5nIEVsZWN0cm9uaWNzIE9DRiBEZXZlbG9w
-ZXIgU3ViQ0EgdjMgVEVTVDEWMBQGA1UECxMNT0NGIERldiBTdWJDQTEcMBoGA1UE
-ChMTU2Ftc3VuZyBFbGVjdHJvbmljczELMAkGA1UEBhMCS1IwWTATBgcqhkjOPQIB
-BggqhkjOPQMBBwNCAASaLdjStXbZ6UcF7TFXDqratJxficMlBt8ec46MYQEocqZw
-cIAh6UP8mpDMlOs1cUxatCoEDrGUNOZyFuNpztqfo4GgMIGdMA4GA1UdDwEB/wQE
-AwIBBjA5BgNVHR8EMjAwMC6gLKAqhihodHRwOi8vY3JsLXRlc3Quc2Ftc3VuZ2lv
-dHMuY29tL3Jvb3QuY3JsMBIGA1UdEwEB/wQIMAYBAf8CAQAwPAYIKwYBBQUHAQEE
-MDAuMCwGCCsGAQUFBzABhiBodHRwOi8vb2NzcC10ZXN0LnNhbXN1bmdpb3RzLmNv
-bTAMBggqhkjOPQQDAgUAA0cAMEQCIDAcuxI2o3RATk1JOGCmNmAqwPNLJxXzq1LA
-GPqAP+fnAiBbrlkNBbmWk3q3nLO+0yJP1jd+uh5a7gd8/WF6t5osGA==
------END CERTIFICATE-----
"manufacturerName": "fAbr",
"manufacturerUrl": "http://www.samsung.com/sec/",
"manufacturingDate": "2017-08-31",
- "modelNumber": "NWSP-01",
+ "modelNumber": "BLIND-01",
"platformVersion": "1.0",
"osVersion": "1.0",
"hardwareVersion": "1.0",
return -1;
}
resource_sensor_s.opened = 1;
+ write = 0;
}
buf[0] = 0x10;
#include <peripheral_io.h>
#include "log.h"
-#define SERVO_MOTOR_CHANNER (0)
+#define SERVO_MOTOR_CHANNEL (0)
+#define SERVO_MOTOR_DEFAULT_PERIOD 20.0
static peripheral_pwm_h g_pwm_h;
{
int ret = 0;
+ if (duty_cycle_ms >= SERVO_MOTOR_DEFAULT_PERIOD) {
+ _E("Too large duty cycle");
+ return -1;
+ }
+
if (!g_pwm_h) {
- ret = peripheral_pwm_open(0, SERVO_MOTOR_CHANNER, &g_pwm_h);
+ ret = peripheral_pwm_open(0, SERVO_MOTOR_CHANNEL, &g_pwm_h);
if (ret != PERIPHERAL_ERROR_NONE) {
_E("failed to open servo motor with ch : %s", get_error_message(ret));
return -1;
}
}
- ret = peripheral_pwm_set_period(g_pwm_h, 20 * 1000 * 1000);
+ ret = peripheral_pwm_set_period(g_pwm_h, SERVO_MOTOR_DEFAULT_PERIOD * 1000 * 1000);
if (ret != PERIPHERAL_ERROR_NONE) {
_E("failed to set period : %s", get_error_message(ret));
return -1;
#define I2C_BUS_NUMBER (1)
// QUIZ
-#define SENSOR_GATHER_INTERVAL (100.0f)
+#define SENSOR_GATHER_INTERVAL (1.0f)
// QUIZ
//#define USE_ST_SDK
retv_if(!ad->illuminance_data, -1);
// QUIZ
- //ret = resource_read_illuminance_sensor(/* ? */, illuminance_value);
+ ret = resource_read_illuminance_sensor(1, illuminance_value);
retv_if(ret != 0, -1);
sensor_data_set_uint(ad->illuminance_data, *illuminance_value);
power_value = BLIND_DOWN;
}
- ret = resource_set_servo_motor_value(duty_cycle);
+#if 0 // QUIZ
+ ret = resource_set_servo_motor_value(/* duty_cycle */);
retv_if(ret != 0, -1);
+#endif
sensor_data_set_string(ad->power_data, power_value, strlen(power_value));
-#ifdef USE_ST_SDK
- st_things_notify_observers(SENSOR_URI_POWER);
-#endif
-
return 0;
}
ret = __get_illuminance(ad, &illuminance_value);
retv_if(ret != 0, ECORE_CALLBACK_RENEW);
-#if 0 // # Senario : Illuminance sensor
+#if 1 // # Senario : Illuminance sensor
+ int on = 0;
+
if (illuminance_value < ILLUMINATION_CRITERIA) {
on = 0;
} else {
} else {
ret = __set_servo_motor(g_ad, 0);
}
-
+ free(str);
retv_if(ret != 0, false);
} else {
_E("cannot get a string value");
{
app_data *ad = (app_data *)user_data;
- if (ad->getter_illuminance)
- ecore_timer_del(ad->getter_illuminance);
-
resource_close_illuminance_sensor();
resource_close_servo_motor();