Join IoT Fest Bucharest and awaken the potential of the Internet of Things in Romania!

The IoT Fest Bucharest, which will be on 13 May 2017 in NOD makerspace, is a one-day event organized by the community of IoT creators supported by hub:raum Kraków and Telekom Romania. It brings together IoT companies and startups, universities and students, hardware geeks and every IoT creator to share knowledge, experience and visions about technological and business opportunities of the Internet of Things in Romania.

VISIT EVENT WEBSITE AND REGISTER NOW!

IoT Fest Bucharest consists of 3 streams:

PRESENTATIONS
The main part of the IoT Fest are presentations provided by startups and experts in the field of the Internet of Things. The lectures answer the hard questions that IoT businesses ask every day. The speakers say about difficulties, problems, challenges, successes and failuers in their IoT business and how they dealt with them.

IOT SHOWROOM
It is a great chance for startups, students and hackerspaces to show their IoT projects and prototypes to wider audience.

IOT WORKSHOPS
Workshops give the possibility to gain some practical knowlegde in the field of the Internet of Things. Turn your visions into reality under the watchful eyes of our specialists!

For Whom?

  • For IoT startups on different stages of business and product development.
  • For those who would like to learn more, verify their ideas on their projects, share thoughts and experience, and to meet people who have common interests.
  • For scientific circles and students of technical studies who would like to verify their knowledge and ideas or to show their projects to wider audience on fairs.
  • For IoT companies looking for new business opportunities and contacts.
  • For hardware geeks and everyone who just wants to learn more about the Internet of Things and connectivity.

Clear your calendars, save the date and join IoT Fest in Bucharest. IoT creators and hub:raum Kraków invite all IoT enthusiasts, startups, companies and students to celebrate this important day together!

VISIT EVENT WEBSITE AND REGISTER NOW!

See what happened at the previous IoT Fest in Kraków:

See you soon!

NASA hackathon in Bucuresti, Cluj si Timisoara

un articol de Alin Mechenici

In 2014 cand am luat pentru prima oara contact cu hackathonul NASA nu am stiut ca este cel mai mare din lume. Doi ani mai tarziu am organizat editia din Suedia, iar atunci am ca este si in Romania, organizata de un prieten cu care nu mai tinusem legatura. Anul acesta, 29-30 aprilie, Clujulul este la a doua editie iar Bucuresti si Timisoara au aparut pe harta #SpaceApps, alaturi de alte 175 de locatii in lume.

SPACEAPPS_ROv2
Pe 20 și 21 aprilie vor avea loc pre-evenimente, ale căror scop este de a-i familiariza pe participanți cu noțiunea de hackathon, cu seturile de date și unelte NASA, cu conceptele și abilitățile de rezolvare a problemelor dar și de a le oferi posibilitatea să interacționeze și să se cunoască mai bine.

Invitatul special al pre-evenimentului din București este dl. Dorin Dumitru Prunariu, primul și singurul cosmonaut român care a zburat vreodată în spațiul cosmic.

Competiția se adresează unui public cu nivel de experiență variat și din diverse domenii: elevi, studenți, programatori, oameni de știință, profesori, tehnologi, artiști, designeri, ingineri, storytellers, studenți sau antreprenori.

Iată experiența unuia dintre participanții editiei 2016 din Suedia, într-un scurt video:

Temele competiției din acest an, trasate de NASA, sunt cinci la număr, centrate în jurul planetei noastre: The Earth and Us, Planetary Blues, Warning! Danger Ahead!, Our Ecological Neighborhood, Ideate and Create! Provocările din fiecare categorie, în număr total de 25, se regăsesc pe site-ul competiției.

Participanții își pot alege de aici o problemă pe care doresc să o rezolve în funcție de domeniu, gradul de dificultate și interese. De asemenea, participanții selectează locația unde vor să participe la hackathon iar înscrierea este gratuită.

• București: 2017.spaceappschallenge.org/locations/bucharest

• Cluj-Napoca: 2017.spaceappschallenge.org/locations/space-apps-cluj-napoca/

• Timișoara: 2017.spaceappschallenge.org/locations/timisoara/

După hackathon-ul care va dura 48 de ore (29-30 aprilie), juriile locale vor desemna, pentru fiecare oraș în parte, maxim două proiecte ce vor fi trimise mai departe spre evaluare juriului internațional împreună cu câte un proiect desemnat ca fiind cel mai popular sau People’s Choice Award. Învingătorii vor fi invitați la o lansare NASA.

Space Apps Challenge este incubatorul de inovație al Agenției Aerospațiale Americane iar de la începuturile sale în 2012, International Space Apps Challenge a devenit cel mai mare hackathon (concurs de programare) la nivel mondial. În fiecare an mii de participanți din diverse domenii indiferent de nivelul de experiență, colaborează pentru a dezvolta soluții inovative, open-source, la probleme cu impact global, legate atât de explorarea spațială cât și de nevoile sociale planetare, folosind seturi de date puse la dispoziția publicului de către NASA. Soluțiile rezultate variază de la aplicații mobile la jocuri, hardware și multe altele.

NASA Space Apps Challenge Romania este rezultatul unui efort colaborativ la nivel national a: ClujHUB, Coworking Timișoara, RICAP, SprintPoint Techcelerator, TechFest, Timișoara Startup Hub.

Website-ul local al evenimentului este: 48h.space si 48h.space/ro

Sper că v-am convins să fiți parte din această experiență.

Cu drag, Alin Mechenici

REZISTOARE CU MANER

Orice comanda plasata in perioada vineri 31 martie 2017, ora 00:00 -> duminica, 2 aprilie 2017 ora 0:00 va primi cadou din partea noastra un kit rezistoare cu maner, o tehnologie absolut revolutionara, precum si un alt CADOU SURPRIZA.

Dupa multi ani de eforturi sustinute si sume colosale investite in cercetare si testare, colegii nostri de la divizia R&D au obtinut primele reusite promitatoare intr-un domeniu complet revolutionar, cel al rezistoarelor cu maner.

Avantajele majore ale rezistoarelor cu maner se reflecta atat intr-o productivitate mult sporita, cat si intr-o reducere fantastica a cheltuielilor legate de transport si manipulare, precum si intr-o siguranta mult sporita in timpul montajului.

Care sunt avantajele rezistoarelor cu maner ?

SIMPLU DE DEPOZITAT

REZISTOARELE CLASICE

Mult succes in a gasi rezistorul de 1 K !

REZISTOARELE CU MANER

Manerul atasat fiecarui rezistor permite o depozitare simpla, fara a ocupa spatiu. Alegerea unui rezistor pentru utilizare este de asemenea extrem de simpla, pur si simplu alegi suportul potrivit si iei rezistorul.

20170331_095515

EXTREM DE SIGURE LA MONTAJ

REZISTOARELE CLASICE

REZISTOARELE CU MANER

PRODUC EFECTE ABSOLUT REMARCABILE IN MONTAJELE IN CARE SUNT FOLOSITE

Din testele efectuate de noi pana acum, am observat o serie de efecte absolut remarcabile in functionarea circuitelor electronice realizate folosind rezistoare cu maner.

Mai ales combinatia intre acumulatorii LIPO  si rezistoarele cu maner s-a dovedit a fi absolut spectaculoasa !

In plus, montajele arata in mod evident mult mai bine !

Chiar mai mult, folosind manerele atasate rezistoarelor, acum poti stoca foarte usor si montajele. Pur si simplu le agati intr-un cui !

Proiect Cloud’s Lights

Controlul iluminatului dintr-o locuință sau chiar dintr-o incintă mai mare prin intermediul serviciilor de cloud a devenit o soluție întâlnită din ce în ce mai des în aplicațiile de tip Home Automation sau Building Automation. Problema majoră a dispozitivelor ce permit acest tip de control este prețul foarte mare. Fie că alegem dispozitive conectate direct la Internet (becuri WiFi) fie că alegem soluții bazate pe controlere specializate de tip routere IoT, costul dispozitivelor necesare face ca aceste soluții să nu fie larg accesibile. În cadrul proiectului de față vom încerca să oferim o soluție fiabilă și accesibilă la problema controlului iluminatului într-o locuință prin intermediul rețelei Internet utilizând un serviciu de cloud.

Pentru controlul elementelor de iluminare vom utiliza dispozitive comutator pentru becuri din seria Conrad RSL comercializate în România de German Electronics SRL:

 

2

 

Avantajul acestor dispozitive este faptul că elementul de iluminare este separat, pot fi folosite cu orice tip de bec cu soclu E27 (max. 100W) și în momentul în care becul se arde nu trebuie să schimbăm și elementul de comandă (situație des întâlnită la becurile WiFi). Aceste dispozitive permit comanda radio de la distanță în bandă ISM de 433MHz – distanță de comandă de până la 25m (suficientă pentru majoritatea apartamentelor). Comanda se poate efectua cu orice telecomandă din seria Conrad RSL dar pe lângă telecomandă se pot folosi și comutatoare de perete din seria Conrad RSL:

3

Comutatoarele de perete funcționează pe baza unei baterii de 12V (tip 27A) făcându-le absolut independente de poziționarea rețelei de alimentare cu energie electrică – se pot aplica pe perete oriunde fără a avea nevoie de doză de conectare. Comutatoarele suplinesc telecomenzile permițând comanda a unui sau a două comutatoare de becuri (poziție închis/deschis).

Comutatorul de alimentare a becurilor necesită înregistrarea elementelor de comandă radio (telecomandă, comutator de perete). Butonul prezent la baza soclului poate fi utilizat pentru comanda manuală a becului dar și pentru înregistrarea codurilor de comandă (apăsare prelungă). Pentru operarea corectă a comutatorului este necesară citirea cu atenție a manualului furnizat de producător. Chiar dacă instalarea comutatorului de becuri este asemănătoare cu schimbul unui bec trebuie ca instalarea să se facă cu maximă grijă deoarece există pericol de electrocutare (opriți alimentarea cu energie electrică înainte de instalare!!!).

Pentru a putea reproduce comanda radio a unui astfel de comutator este necesară realizarea unui montaj simplu bazat pe o placă de dezvoltare Arduino Uno sau echivalentă și un receptor radio 433MHz.

 

4

 

Rulând exemplul ReceiveDemo_Simple al bibliotecii software rc-switch vom putea vizualiza tipul de cod și codul emis la fiecare apăsare de buton al comutatorului (sau telecomenzii):

5

https://github.com/sui77/rc-switch/

 

Codurile obținute (emise de comutator) se vor copia pentru a fi utilizate în program. Sistemul de comandă va fi format dintr-o placă de dezvoltare Adafruit Feather HUZZAH și un emițător radio 433MHz:

6

 

Emițătorul radio funcționează la o tensiune de 5V și din acest motiv este alimentat de la pinul USB (tensiunea furnizată de conexiunea USB a plăcii) – sistemul nu va funcționa corect dacă placa de dezvoltare este alimentată de la un acumulator. Pinul de date al emițătorului se va conecta la pinul 0 al plăcii de dezvoltare. Pentru mai multe informații despre instalarea și utilizarea plăcii Adafruit Feather HUZZAH puteți consulta:

Overview | Adafruit Feather HUZZAH ESP8266 | Adafruit Learning System

https://learn.adafruit.com/adafruit-feather-huzzah-esp8266/

Programul sistemului va utiliza mediul de dezvoltare Arduino IDE 1.8.1 și bibliotecile software: rc-switch 2.6.2, PubSubClient 2.6.0 (pentru comunicația MQTT cu serviciul de cloud), ArduinJson 5.8.3 (pentru interpretarea mesajelor provenite de la serviciul de cloud) și ESP8266WiFi 1.0.0.

#include <RCSwitch.h>

RCSwitch mySwitch = RCSwitch();

#include <ESP8266WiFi.h>

#include <PubSubClient.h>

#include <ArduinoJson.h>

Atenție!!! În cadrul bibliotecii PubSubClient este necesară modificarea fișierului PubSubClient.h: constanta MQTT_MAX_PACKET_SIZE trebuie schimbată din 128 în 256.

Pentru a permite conectarea la Internet este necesară personalizarea datelor de conectare la rețeaua WiFi locală (care să permită accesul la Internet):

const char* ssid     = “…”;

const char* password = “…”;

Constantele API_KEY, PROJECT_ID și DEVICE_UUID vor fi modificate conform proiectului înregistrat în serviciul de cloud (etapă explicată în secțiunea următoare).

#define API_KEY         “…”

#define PROJECT_ID      “…”

#define ACTUATOR_NAME1   “LightSocket1”

#define ACTUATOR_NAME2   “LightSocket2”

#define ACTUATOR_NAME3   “LightSocket3”

#define ACTUATOR_NAME4   “AllLightSockets”

#define DEVICE_UUID     “…”

#define sec 1000

char clientId[]          = “Feather_HUZZAH”;

char actuatorTopic1[]     = “/a/”API_KEY”/p/”PROJECT_ID”/d/”DEVICE_UUID”/actuator/”ACTUATOR_NAME1″/state”;

char actuatorTopic2[]     = “/a/”API_KEY”/p/”PROJECT_ID”/d/”DEVICE_UUID”/actuator/”ACTUATOR_NAME2″/state”;

char actuatorTopic3[]     = “/a/”API_KEY”/p/”PROJECT_ID”/d/”DEVICE_UUID”/actuator

/”ACTUATOR_NAME3″/state”;

char actuatorTopic4[]     = “/a/”API_KEY”/p/”PROJECT_ID”/d/”DEVICE_UUID”/actuator

/”ACTUATOR_NAME4″/state”;

char server[]            = “mqtt.devicehub.net”;

char message_buffer[150];

WiFiClient apiClient;

 

Procedura callback este necesară în cadrul comunicației MQTT – ea preia mesajele venite de la serviciul de cloud și le transpune în comenzi radio destinate comutatoarelor de becuri.

 

void callback(char* topic, byte* payload,

unsigned int length)

{

  StaticJsonBuffer<200> jsonBuffer;

  for(int i=0; i<length; i++)

  { message_buffer[i] = payload[i]; }

  JsonObject& root =

                 jsonBuffer.parseObject(message_buffer);

  if (!root.success()) {

    Serial.println(“parseObject() failed”);

    return;

  }

  boolean onoff = root[“state”];

  if(String(topic) == String(actuatorTopic1)){

      Serial.println(“message arrived: ” + String(onoff) + ” from Light Switch 1″);

      if (onoff) mySwitch.send(2189781504,32);

      else if (!onoff) mySwitch.send(2323999232,32);

  }else if ((String(topic) == String(actuatorTopic2))){

      Serial.println(“message arrived: ” + String(onoff) + ” from Light Switch 2″);

      if (onoff) mySwitch.send(2424662528,32);

      else if (!onoff) mySwitch.send(2558880256,32);

  }else if ((String(topic) == String(actuatorTopic3))){

      Serial.println(“message arrived: ” + String(onoff) + ” from Light Switch 3″);

      if (onoff) mySwitch.send(2625989120,32);

      else if (!onoff) mySwitch.send(2458216960,32);

  }else if ((String(topic) == String(actuatorTopic4))){

      Serial.println(“message arrived: ” + String(onoff) + ” from All Light Switch”);

      if (onoff) mySwitch.send(2474994176,32);

      else if (!onoff) mySwitch.send(2743429632,32);

  }

}

PubSubClient client(server, 1883, callback, apiClient);

 

În cadrul secțiunii setup() se va inițializa conexiunea WiFi și conexiunea MQTT cu serverul de cloud.

 

void setup() {

  Serial.begin(9600);

  delay(10);

  Serial.println();

  Serial.println();

  Serial.print(“Connecting to “);

  Serial.println(ssid);

  WiFi.begin(ssid, password);

    while (WiFi.status() != WL_CONNECTED) {

    delay(500);

    Serial.print(“.”);

  }

  Serial.println(“”);

  Serial.println(“WiFi connected”); 

  Serial.println(“IP address: “);

  Serial.println(WiFi.localIP());

  Serial.println(“\nStarting connection to server…”);

  if(client.connect(clientId)) 

  {

    client.subscribe(actuatorTopic1);

    client.subscribe(actuatorTopic2);

    client.subscribe(actuatorTopic3);

    client.subscribe(actuatorTopic4);

    Serial.println(“Successfuly connected and running!”);

  }

  else 

  {

    Serial.println(“Connection problem”);

  }

  mySwitch.enableTransmit(0);

  mySwitch.setProtocol(2);

  mySwitch.setRepeatTransmit(3);

  delay(500);

}

 

Secțiunea loop() are sarcina de a supraveghea conexiunea MQTT și de a o reface în cazul unei deconectări – prelucrarea mesajelor de comandă se face în procedura callback.

 

void loop() {

  if (!client.connected())

  { Serial.println(“reconnecting …”);

    client.connect(clientId);

    delay(3*sec);

    client.subscribe(actuatorTopic1);

    client.subscribe(actuatorTopic2);

    client.subscribe(actuatorTopic3);

    client.subscribe(actuatorTopic4);

  }

    client.loop();

}

Ca și serviciu de comandă cloud vom utiliza Devicehub.net – un serviciu de cloud specializat IoT care permite înregistrare gratuită a unui cont de dezvoltator (cont cu facilități suficiente pentru proiectul de față: 100 de dispozitive IoT, 100 de senzori . elemente de acționare, 10 mesaje/secundă, 30 milioane de mesaje/lună).

7

 

După înregistrarea contului se va genera un nou proiect denumit CloudLights (numele se poate modifica). În cadrul acestui proiect se vor adăuga 4 elemente de acționare digitale (Actuator / Digital) pe care le vom numi: LightSocket1, LightSocket2, LightSocket3, AllLightSockets (modificarea acestor denumiri necesită modificarea valorii constantelor ACTUATOR_NAME din program).  Acum se pot personaliza datele de conectare din program preluând cele necesare din secțiunea Development Information.

8

La execuție programul va avea următoarea raportare pe portul serial (fiecare comandă de închidere / deschidere se va materializa într-un mesaj provenit de la serverul de cloud):

9

La fiecare nouă conectare serviciul de cloud va realiza o inițializare cu starea memorată a comenzilor dar, având în vedere caracterul unidirecțional al comunicației radio, starea comenzilor din serviciul cloud nu oferă certitudinea unei anumite stări pentru comutatoare (starea acestora poate să fie modificată manual sau cu ajutorul unei telecomenzi).

Având în vedere diversitatea de dispozitive telecomandate din familia Conrad RSL aplicația de comandă se poate extinde incluzând și alte dispozitive: prize telecomandate, întrerupătoarea de perete sau comutatoare încastrabile:

10

Comutatoarele încastrabile pot fi instalate în doze de derivație și pot servi pentru a controla alimentarea cu energie a unor secțiuni din rețeaua electrică (o anexă din gospodărie de exemplu) dar instalarea lor necesită pregătire de specialitate – nu efectuați modificări ale instalației electrice singuri, apelați la un electrician!!!

 

În cazul în care doriți să dezvoltați sistemul propus puteți parcurge și următoarele proiecte asemănătoare:

 

ESP8266 Remote Controlled Sockets

http://randomnerdtutorials.com/esp8266-remote-controlled-sockets/

 

Switch a cheep 433Mhz RC-Socket  by an Adfafruit HUZZAH ESP8266 WebServer

http://fritzing.org/projects/esp8266-433mhz-rc-socket-switch

 

Using an ESP8266 to Control Mains Sockets Using 433mhz Transmitter and Receiver

http://www.instructables.com/id/Using-an-ESP8266-to-Control-Mains-Sockets-Using-43