devpops.ch

Mon projet personnel basé sur la technologie Omega2 de Onion, m’a permis de créer un tchat vraiment sécurisé.

Technologie Omega2 by Onion

La techno omega2 par Onion:

Onion c'est quoi?

Onion est l’entreprise qui commercialise le Omega2 et ses différents composants, nous reviendrons là dessus en temps voulu. De base, le projet voit le jour sur la plateforme Crowd Supply, sorte de kick starter pour du hardware et des projets open-sources uniquement. Déjà, l’aventure sent bon! 
Une bande de gais lurons voient rapidement leur cagnotte atteinte (ils obtiennent 850’000$ alors que le montant demandé était de 440’000$) et se lance dans la production.

Actuellement, ils se définissent eux même comme suit:

L'Onion Corporation construit des dispositifs informatiques et de connectivité pour l'Internet des objets. Les produits d'Onion sont des solutions de remplacement qui aident les clients à construire leurs produits connectés et à réduire leur temps de développement.

onion.io

Mon projet personnel basé sur la technologie Omega2 de Onion, m’a permis de créer un tchat vraiment sécurisé.

Omega c'est quoi?

Omega est le produit phare de l’entreprise Onion Croporation. Micro-serveur ou micro-processeur pour certains, ordinateur monocarte pour d’autres, je n’ai toujours pas pu trouver de consensus concernant le nom a donner à l’Omega tant il est autre chose.
Ce qui est sûr : il est orienté IoT, c’est à dire internet des objets. Pour faire un rapide tour d’horizon l’Omega2 existe en deux versions, l’Omega2 de base et l’Omega2 Plus.

Le processeur Omega2 est basé sur une architecture MIPS fonctionnant à une vitesse d’horloge de 580 MHz, équipée de 64 Mo de RAM et de 16 Mo de mémoire flash.

La techno omega2 par Onion:

L’Omega2 Plus dispose de 128 Mo de RAM et de 32 Mo de mémoire et d’un emplacement MicroSD. Le système se présente sous la forme d’un petit circuit imprimé avec deux broches de 16×2 mm en ligne. La carte fonctionne à 3,3 volts avec une consommation moyenne de 0,6W.

Parmi les petites merveilles de Omega, il y en a certaines sur lesquelles j’aimerais insister:

La techno omega2 par Onion:

Omega2 en 4 point.

  • Le WiFi bi-mode 2,4 GHz 802.11 b/g/n permet d’accueillir simultanément un point d’accès WiFi et de se connecter aux réseaux WiFi existants.

  • Le processeur, la mémoire et le stockage flash sont intégrés.

  • Il exécute le système d’exploitation OpenWRT – Linux.

  • La connexion à la machine s’effectue via un port serial ou en SSH.

Là on ne parle que de la puce là, on l’a même pas encore mise sur une carte qui permette de communiquer avec, ou de l’alimenter, comme par exemple l’expansion Dock, qui est la base nécessaire pour faire fonctionner l’Omega.

Mon projet personnel basé sur la technologie Omega2 de Onion, m’a permis de créer un tchat vraiment sécurisé.

Omega/Raspberry/Arduino quelle différence?

Très rapidement, l’Omega est un peu l’intermédiaire entre Arduino et RaspberryPi. Ce dernier est réellement définit comme un ordinateur de poche et est une machine de guerre en rapport avec l’Omega alors que Arduino ce sont des cartes matérielles et ont donc une capacité beaucoup plus limitées. De plus, Arduino est codé en C++ et est donc moins adapté au tout public.

Afin de vous donner une idée de la similarité des choses, Omega propose un kit nommé Arduino Starter qui permet aux débutant d’apprendre le C++ mais comprend aussi des exercices en python ou encore de programmation de jeux.

Utilisation

La toute première fois que j’ai vu un omega, c’était lors de ma formation chez Réalise. Le big boss était venu avec son Omega2+ plugué à l’expansion dock pro (6G de mémoire interne) sur lequel il avait mit à disposition une API et un script nous permettant de faire s’allumer et s’éteindre des ampoules, le tout via le réseau wifi afin de nous apprendre ReactJS, trop bien la formation! En plus, il avait imprimé en 3D un boîtier sur mesure, la classe! Du coup, j’ai voulu faire pareil, j’ai tapé “onion omega2” sur stratpage, et BIM, un starter kit pour Noël, c’est Bibi qui fait plaisir à Bibi!!

La techno omega2 par Onion:
La techno omega2 par Onion:

Mon premier projet en solo avec la techno de Onion n’avait absolument rien à voir avec de l’IoT, je vous parlerai plus tard. Pour l’instant, voyons ce que nous propose ce kit de démarrage :

  • Apprentissage des circuits électroniques: on sait comment fonctionne en gros un ordi, mais toute cette magie de l’électricité qui parcours des fils c’est rien d’autre que de l’allumer et de l’éteint, du 1 et du 0, alors mettons un peu les mains dedans!

  • Programmation: le kit vient avec un manuel extrêmement complet. Vous pourriez vous contenter de reproduire les schémas de construction via les images et copier-coller le script mais ça ne vous permet pas d’apprendre à faire communiquer le logiciel et le matériel, donc autant tout refaire à la main en tentant de comprendre les choses!

  • Les trucs un peu plus sexy: on joue avec des ampoules, des écrans à segments et LCD, un beau micro-contrôleur et un capteur de température. A la fin des expériences, vous devez être capable de faire une petite station météo dont une ampoule s’allume quand la température dépasse X degrés.

Le dernier bijoux en date chez Onion, c’est le Omega 2 Dash. Suite à pas mal de demandes utilisateurs, l’équipe a intégrer un écran tactile à la bête, plus simple d’utilisation pour les débutants!

Mon projet personnel basé sur la technologie Omega2 de Onion, m’a permis de créer un tchat vraiment sécurisé.

Projet ricoGE.

La techno omega2 par Onion:

Mon projet perso a été inspiré par ricochetIM couplé à l’idée d’SAAS (Software As A Service). Je voulais mettre à disposition des gens un tchat facile d’accès, très simple à utiliser mais ne générant aucune métadonnée et accessible sur un réseau wifi coupé d’internet (à vous de voir quelle utilité ça pourrait avoir dans différentes circonstances). En branchant l’omega sur une petite batterie externe, il suffit de l’allumer pour que le service se mette en route et soit accessible via le Wifi émit par la machine, sans forcément que ce dernier ne soit connecté à internet. 

Un Tchat mobile.

Dans ce cas de figure, dans votre sac à dos, de manière totalement mobile et avec une portée augmentée par la version LTE et son antenne, vous pourriez mettre à disposition un tchat sans aucun restriction et ne renseignant aucunes données personnelles!

Pour tout cela j’ai utilisé:

  • nodeJS côté serveur.

  • websocket pour le protocole réseau permettant l’échange des messages.

  • un script en SH pour le service.

En tant qu’utilisateur, vous pouviez simplement rejoindre le réseau wifi de l’Omega, grâce au mot de passe fourni de vive voix.
A partir de là, une adresse IP vous permet de rejoindre le tchat, de renseigner un pseudo et d’envoyer des messages textes aux autres personnes connectées sur le même réseau.

Un tchat en circuit fermé.

Bien sur si la machine ne reçoit, elle même, pas de wifi externe, elle sera comme en circuit fermé, et donc toutes les personnes communicant sur le tchat sont déconnectées du reste d’internet.
De plus, il n’est pas possible d’envoyer autre chose que du texte car cela demande trop de renseignements donc n’est pas souhaitable dans notre projet.

Des données personnelles vraiment personnelles!

L’idée m’est venue de faire apparaître un message à chaque fois que quelqu’un arrivait ou partait du tchat. Pour la première config pas très compliqué puisque vous renseignez un pseudo, qui va être récupéré ensuite pour faire dire au tchat: “Bienvenue dans le tchat”.
Mais comment faire lors du départ? On peut pas récupérer le pseudo, puisque aucune donnée n’est conservée, tout s’efface directement après la déconnexion d’un utilisateur, donc on ne peut pas récupérer le pseudo puisqu’il a été oublié….
En vrai il y a quelques petits tricks si on veut vraiment faire ça, mais c’est pas le but du truc donc tant pis.
Le tchat nous dit déjà bonjour et combien il y a de personnes connectées, c’est pas mal.
Une fois la machine éteinte, plus rien ne subsiste, tout est perdu pour toujours et n’est absolument pas récupérable, par personne, jamais!

Au final.

Je n’ai jamais eu l’occasion de bosser avec Arduino ou RaspberryPi, et donc qu’un seul son de cloche, mais qu’est-ce qu’elle chante bien cette cloche!
De plus, comme vous le savez, tout cela est nouveau pour moi, je débute en développement web, je débute en programmation ainsi qu’en électronique. C’est le début de tout qui, peut-être, ne mènera à rien, et on aime ça aussi!

Mon projet personnel basé sur la technologie Omega2 de Onion, m’a permis de créer un tchat vraiment sécurisé.

Adopte un devpops.ch

Notre devis en ligne pour vous faire une idée

Vous êtes déjà sur la toile et vous avec besoin d'un coup de main pour la gestion de votre site.... nous sommes là avec des solutions pour vous.....
Choisissez votre forfait de maintenance

Laisser un commentaire

%d blogueurs aiment cette page :