Programmez votre Raspberry Pi depuis le confort de votre navigateur Web - et en JavaScript!

Posté par  . Édité par Pierre Jarillon, claudex, Benoît Sibaud et Bruno Michel. Modéré par Pierre Jarillon. Licence CC By‑SA.
16
4
mai
2013
Raspberry Pi

Nous sommes de plus en plus nombreux à avoir envie d'expérimenter avec des projets hardware. Le Raspberry Pi s'est imposé en un an comme une excellente plateforme, très peu chére et facile d'accès. Il est très bien adapté aux projets « connectés » puisque le modèle B intègre en standard un port Ethernet et qu'un dongle Wifi coûte moins de 10 euros.

Pourtant, développer sur Raspberry Pi est plus compliqué que de développer pour le Web ou pour Arduino : on développe en général sur sa propre machine, on transfère les sources sur le Raspberry Pi, on teste avant de revenir sur sa machine pour corriger et re-pousser le code. De plus, il faut trouver un moyen sûr de relancer son programme à chaque re-démarrage du Raspberry Pi.

Partant du constat que beaucoup d'utilisateurs du Raspberry Pi finissent par ne pas en faire grand chose, par manque d'outils adaptés, @sarfata a développé pijs.io, un service Web pour piloter et programmer son Raspberry Pi en ligne. Le seul langage supporté pour l'instant est JavaScript mais d'autres pourront être ajoutés plus tard.

Installation

Pour fonctionner, pijs nécessite l'installation d'un client (pi-steroid) sur le Raspberry Pi. L'installation est très simple, il suffit d'exécuter la commande :

curl http://pijs.io/install-pijs.sh |bash

Installation de pijs sur le Raspberry Pi

Puis de se connecter sur l'interface Web pour enregistrer ce Raspberry Pi.

Ajout d'un Raspberry Pi dans l'interface Web

Utilisation

Un éditeur en ligne permet d'écrire du code qui est immédiatement transféré et exécuté sur le Raspberry Pi. Bien sûr, une console permet de débugger son programme et de suivre en temps réel le déroulement du script.

Titre de l'image

La première version est pleinement fonctionnelle et peut être utilisée par exemple pour récolter des données via USB et les transmettre vers le Web, pour réagir (son, lumière, servos) à des évènements dans votre « vie en ligne » ou encore pour faire le lien entre le monde réel et Internet! La documentation fournit déjà de nombreux examples et d'autres sont ajoutés fréquemment.

Sources et Evolutions

pijs.io est lui-même développé en JavaScript avec le framework Meteor et est entièrement disponible en open-source. L'auteur est à la recherche de nouveaux utilisateurs, et à l'écoute de leurs idées et envies !

Aller plus loin

  • # 2 alternatives plus souples

    Posté par  (site web personnel) . Évalué à 10. Dernière modification le 04 mai 2013 à 21:23.

    Une solution que je trouve bien plus souple est de tout simplement travailler par SSH.

    1/ Avec un screen de lancé dessus + VIM (ou emacs pour les fans d'rms) on peut coder avec n'importe quel langage ! Si on perd la connexion, on se reconnecte et rappel le screen.

    2/ On se connecte avec l'option -X et on lance les application Xorg (X11?) direct sur son desktop distant.

    Mais en bon vieux fan de Vim je préfère la première solution :).

    • [^] # Re: 2 alternatives plus souples

      Posté par  . Évalué à 3.

      je pense que l'intérêt de celui-ci est de pouvoir programmer directement les modules I/O en js

      « I approve of any development that makes it more difficult for governments and criminals to monopolize the use of force. » Eric Raymond

    • [^] # Re: 2 alternatives plus souples

      Posté par  . Évalué à 1.

      C'est aussi comme ça que je fais et ça me convient bien pour coder de n'importe où.

      Ceux qui n'ont pas un accès SSH régulier (proxy bloquant) peuvent tester ajaxterm mais je crains que ça rame un peu.

  • # excellente plateforme, très peu chére et facile d'accès, LOL WUT

    Posté par  . Évalué à 5. Dernière modification le 05 mai 2013 à 02:29.

    Il faut arrêter de faire de la pub au RPI, c'est de la merde.

    • le SoC broadcom n'est pas documenté, ni supporté (le seul doc releasé, uniquement composé de tableaux de registres, sans rien d'autre au tour, c'est de la grosse blague)
    • le bootloader et les blobs qui permettent d'utiliser pleinement le SoC sont distribués sous des liences plus que restrictives
    • même pour le PCB, les infos sont spartiates et pas vraiment mises en avant

    Alors, oui, c'est la solution la moins chère pour décoder du 1080p dans un xbmc sur du linux, mais passé le côté purement pragmatique, je me demande comment ont fait les gens pour en acheter sans vomir partout en pensant à leurs libertés bafouées.

    Enfin, c'est un peu triste, j'ai l'impression qu'il ont vraiment réussi à surfer sur les circuits open hardware (au moins pour la pub) sans ne jamais en accepter les règles.

  • # j'ai du passer à côté

    Posté par  . Évalué à 3.

    c'est quoi l'intérêt de passer par un serveur externe pour programmer son rpi ?
    je trouve très simple de programmer en python avec les outils intégrés dans la raspian.

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.