Je n'ai pas plus modifier le message, alors j'ai oublier de préciser: que la raspberry sera connecter en ethernet avec ma box, et donc mon pc en wifi, je pourrais y acceder en entrant l'IP de la raspberry
-----
Je n'ai pas plus modifier le message, alors j'ai oublier de préciser: que la raspberry sera connecter en ethernet avec ma box, et donc mon pc en wifi, je pourrais y acceder en entrant l'IP de la raspberry
C'est plus clair effectivement (pour moi qui n'ai jamais vu un raspberry en vrai en tout cas )
Et une question pour Jack :
Dans tout ce que j'ai pu trouver sur les CGI, (dont je pense avoir bien assimilé le principe maintenant) il est toujours question de serveur Web.
Je comprends, vu que ce sont ni plus ni moins que des executables ou des scripts, qu'on puisse les utiliser sans serveur Web par un simple appel au fichier mais donc en local ou par l'intermédiaire d'un partage...
Je suis peut-être un peu borné mais pour moi, pas de serveur Web = pas de http ...
Tu aurais un exemple quelque part ?
Oui ça c'est la partie que j'avais fini par comprendre tout seul ! Mais c'est toujours bon de préciser.
Petite précision et comme déjà dit je compte utiliser un serveur web, pour pouvoir accéder à ma page depuis n'importe ou, et n'importe qu'elle appareils possédant une connexion internet.
Attendons quand-même la réponse de Jack à propos des CGI !
Si le serveur Web n'est pas indispensable autant s'en passer...
Moi je peux te conseiller des solution niveau réseau ou si tu veux faire du bon vieux dev Web classique mais la tu fais dans la miniature !
Autant ne pas surcharger la p'tite bête !
Si un CGI qui se ballade tout seul peut répondre à des requêtes sur un port 80 je te fais la partie "j'y accède depuis Internet" sans problème.
Ok, attendons et conseille moi alors, mais à ce que j'ai vue pour la domotique avec cette raspberry, toute les personne l'ayant fait, utilise un serveur, et je pense que ce serveur eest indispensable, car comment accéder à ma page web depuis l'autre bout du monde (j'en rajoute un peut, mais par principe) et allumer ou éteindre une lumière sans serveur?
J'ai besoin de la réponse de Jack pour aller plus loin.
Et la manipulation des librairies de communication vers le bluetooth je lui laisse vonlontiers aussi
Je te ferai la déco et les finitions : les manips à faire sur ta box pour que tu puisses accéder au rasp depuis Internet, l'aspect et l'ergonomie de tes pages web, ce genre de trucs... pour le reste, je suis le fil pour apprendre !
Vraiment sympa de ta par , oui la librairies pour l'uart tu parle.
Avec un serveur http "classique", le cleint fait une requête en donnant l'url de la page html, ce qui va provoquer la fabrication de la page par le serveur et son envoi au clientJe suis peut-être un peu borné mais pour moi, pas de serveur Web = pas de http ...
Avec un cgi, le cleint fait une requête en donnant l'url du programme sur le serveur. Ce programme va fabriquer la page et l'envoyer au client. Peu de différence donc dans le principe.
Merci Jack... mais c'est précisément cette partie la qui me pose question :
Ton url tu la construis comment ?
http://[server]/[share]/[cgi] avec [share] = un partage de fichier classique ?
Y'a un truc qui me turlupine la... Comment fait la machine pour traiter la requête http s'elle n'a pas un serveur quelconque qui écoute le port 80 ?
il faut activer les cgi sur la machine serveur si ce n'est pas le cas. Debian reconnais les cgi. C'est un service qui date un peu, mais pour de petites tâches comme ici, c'est très largement suffisant.
A+
Je n'trouve aucune info sur l'activation des cgi sans serveur web...
Beaucoup proposent des serveurs web light, comme lighttpd par exemple, avec lesquels tu peux utiliser des cgi...
Quand tu cherches CGI sur Wikipedia, l'explication de l'acronyme est "Common Gateway Interface, une technologie utilisable par un serveur HTTP"...
La RFC 3875 qui décrit les CGI dit :
J'avoue que je sèche la..."The Common Gateway Interface (CGI) is a simple interface for running
external programs, software or gateways under an information server
in a platform-independent manner. Currently, the supported
information servers are HTTP servers."
Exact, il faut un serveur http pour traiter les requêtes.
J'ai utilisé les cgi il y a quelques temps déjà, sur une config un peu spéciale. Il faut que je me remette tout ça en tete.
En tout cas, c'est une solution qui permet d'éviter de se lancer dans l'étude d'un nouveau langage comme le php.
A+
Ok tu me rassures la
Je peux aider sur la partie activation des CGI du coup. Par contre j'ai vu à droite à gauche que ça pouvait poser des problèmes de sécurité... j'vais regarder plus précisément parce-que si on fait un trou vers internet... faudrait pas que kevin8z se fasse pirater ses volets roulants (Quoi-que... on pourrait p'tet se marrer !)
Du coup reste la partie sur la com vers l'UART... kevin8z tu touches un peu de ce côté la ?
Le CGI ce sera juste un programme en C qui prends ses paramètres en entrée du stdin, qui cause avec ton UART (la partie mystère pour moi) et qui écrit du html sur le stdout pour faire un retour à l'utilisateur en gros.
Je vous laisse pour aujourd'hui !
Bonne nuit
@+
S'il sont sympas et qu'il me les fermes le soir et ouvre le matin ça me pose pas de problème^^Ok tu me rassures la
Je peux aider sur la partie activation des CGI du coup. Par contre j'ai vu à droite à gauche que ça pouvait poser des problèmes de sécurité... j'vais regarder plus précisément parce-que si on fait un trou vers internet... faudrait pas que kevin8z se fasse pirater ses volets roulants (Quoi-que... on pourrait p'tet se marrer !)
Après pour la partie communication il faut que je trouve comment accéder à cet uart, j'avais vue qu'il faut que j'utilise webiopi: http://www.raspberrypi.org/phpBB3/viewtopic.php?t=23120 , donc c'est a dire la ligne de code à écrire pour dire envoyer un octet ou une chaine de caractère. Après pour la partis HTML je pense pas qu'il y aura de souci, pour la parti programme en C je ne pense pas non plus, le plus dur je pense et d'associer les 2 grâce au CGI.Du coup reste la partie sur la com vers l'UART... kevin8z tu touches un peu de ce côté la ?
Le CGI ce sera juste un programme en C qui prends ses paramètres en entrée du stdin, qui cause avec ton UART (la partie mystère pour moi) et qui écrit du html sur le stdout pour faire un retour à l'utilisateur en gros.
@+
En premier temps bien sur je ne vais pas tout créer d'un bloc, je ferais des tests, déjà pour faire la page web, plus après pour accéder au GPIO et à la fin associer les 2.
PS: je découvre tout comme toi vost cette raspberry pi, que je n'ai jamais utiliser.
La liaison série ne devrait pas être un problème sous linux, toutes les I/O sont vues comme des fichiers. Par exemple, la liaison série sera vue comme "/dev/ttyS0" . Il suffit donc de savoir lire et écrire dans un fichier bas niveau (avec les descripteurs de fichier, par le type FILE).
Une mine de renseignement ici:
http://en.wikibooks.org/wiki/Serial_...plete_Wikibook
Le document existe également en pdf.
.. et ici aussi:
http://www.tldp.org/HOWTO/Serial-Programming-HOWTO/
A+
Salut
Heu... la j'ai envie de dire que t'as tout faux...Après pour la partie communication il faut que je trouve comment accéder à cet uart, j'avais vue qu'il faut que j'utilise webiopi: http://www.raspberrypi.org/phpBB3/viewtopic.php?t=23120 , donc c'est a dire la ligne de code à écrire pour dire envoyer un octet ou une chaine de caractère. Après pour la partis HTML je pense pas qu'il y aura de souci, pour la parti programme en C je ne pense pas non plus, le plus dur je pense et d'associer les 2 grâce au CGI.
Si je comprends bien ce qu'est webiopi, ça remplace entièrement tout ce dont on parle depuis le début !
A supposer que les sources soient dispo, tu peux te baser dessus pour faire ce que tu veux mais dans ce cas c'est un autre langage à apprendre : le Java
Ne te fais pas un monde du CGI, je t'ai expliqué le principe dans mon post précédent : c'est très simple !
Ce qu'on appel CGI, c'est juste le fait de dire que le programme qui va interpréter les données que tu lui envoies par ta page web, déclencher des actions en conséquence, et te montrer le retour dans une page html n'est autre que ton programme en C !!!
@+
Ok merci bien pour toute les infos, Pour la liaison série je vais regarder tout ça, et pour la CGI j'ai bien compris le principe.
Un truc cool pour gerer les I/O de la raspi, c'est wiringPi. Ca permet de programmer ces I/O comme avec une arduino. J'ai essayé et c'est sympa.
https://projects.drogon.net/raspberr...erial-library/
La gestion de la liaison série est grandement simplifiée.
A+
Merci je chercher le nom justement de cette utilitaire mais impossible de m'en rappeler.
Vivement que je la reçoive parce que pour l'instant je ne peut rien tester, donc j'ai rien de concret.
Question à par: ne possédant pas de clavier USB pour faire les premier réglages avec raspbian je voudrais le faire via le logiciel putty, mais pour cela on doit connaitre l'adresse IP, en rentrant l'adresse IP de ma boxe je peut récuperer l'adresse IP de la raspberry?
tu lances un scanner ip et tu trouveras vite ta raspi, surtout si tes adresses sont en 192.168.x.x
Pour ma part, j'utilise ceci:
http://www.advanced-ip-scanner.com/fr/
A+
Ok merci bien, d'ailleurs j'ai trouver sur le site ou l'on télécharge wiring pi, les commandes à mettre dans le programme C: https://github.com/WiringPi/WiringPi...aster/wiringPi , pour contrôler le PWM, l'UART, Les GPIOS, etc...
Wiringpi, sera donc une librairie qui me sera très utile et qui pourra me simplifier les choses.
Encore une petit question dont je ne trouve pas la réponse, Pour developper un programme en C dont il utilisera la librairie wiring pi installer sur la raspberry, il faut donc que j'écrive mon programma a partir de celle ci, mais comment fait? car moi je me voyer écrire le programme sous windows puis le transferrer vers cette carte.
La réponse de Jack foctionne, mais sinon tu peux aussi le faire en prennant la main sur ta box (le plus souvent http://192.168.0.1 ) avec le login/password par défaut (je suppose que tu ne l'as pas changé) et tu vas voir dans la partie DHCP. Tu y trouveras toutes les adresses qui sont actuellement attribuées à des PC ou des (raspi ^^) par ta box.
Le mieux est ensuite de donner une adresse fixe à ton raspi si tu veux t'en servir comme d'un serveur web.
D'accord donc j'irai dans ma box, et faut que je regarde sur le net j'avais vue des tuto qui explique comment mettre un IP statique justement.
En résumant si j'ai bien compris, je créer une page HTML, des que j'appuis sur un bouton (créer précedement) ça appel un fichier en .C et donc lui envoie name=...&value=... et je commande les GPIOs?
Pour donner une IP fixe à ton raspi, tu as deux manières :
Soit tu configures ton raspi directement en lui collant à la main une IP, un masque et une passerelle.
Si tu fais de cette façon, il vaut mieux lui donner une adresse en dehors de la plage DHCP de ta box.
Soit tu dis à ta box de lui attribuer toujours la même IP. C'est ce qu'on appel une réservation DHCP.
Il y a des avantages et des inconvénients des deux côtés... à toi de choisir.
Donnes moi ton FAI et les marques et modèles de ta box si tu veux plus d'infos sur cette partie.
Pour la partie HTML...
Pour faire très basique, ce qui suffira pour commencer, oui il faut que tu crées une première page web très simple contenant un formulaire.
Tu as un exemple assez clair de fonctionnement avec en plus un exemple typé CGI ici : http://www.commentcamarche.net/conte.../htmlform.php3
Dans la balise <FORM> tu as deux attributs :
- action => tu y mets l'url relative de ton CGI ( ton programme C ) par rapport à ta page html contenant le formulaire
- method => je te conseille d'utiliser la méthode POST, de cette façon tu pourras récupérer les paramètres plus facilement (stdin)
Je suis cher orange et j'ai une livebox, je peut pas te dire plus d'information car je ne suis pas cher moi. Au début je vais juste mettre un bouton "ON" et des que l'on appuie dessus deviendra "OFF" et ainsi de suite, plus l'appel du programme en C pour allumer une led du GPIO en premier temps. Tout ça pour tester pas à pas. N'ayant jamais fait tout ça j'arrive en terrain inconnu, mais compte bien apprendre.
D'ailleurs j'ai commencer à lire un cour sur les lignes de commande pour linux (pas compliquer, mais beaucoup de chose à retenir) et en début de semaine prochaine je me met à apprendre le html (qui n'est pas compliquer non plus, mais pareil pas mal de choses à connaitre).