Archives par étiquette : debian

Raspberry Pi caméra + timelapse : retour sur l’expérience

Depuis 2015, 3 ans donc, nous avons mis en place un système de timelapse sur Raspberry Pi modèle A, oui oui, la toute première version, avec une grosse carte SD, le truc dépassé depuis, largement dépassé avec des platines WiFi, Bluetooth !

Depuis, le système tourne, tourne et tourne, positionné en extérieur, capturant au fil du temps météo, pression, et une image toutes les minutes, comme cela réalisée ce matin :

Parfois on enregistre, parfois on ne fait rien, car sur 3 années, imaginez le volume à traiter !

Pourquoi vous re-parler de ce montage ? Eh bien parce qu’il résiste incroyablement bien au agressions du temps, parce qu’il est stable, performant, son capteur de température « maison » résiste lui aussi, et que dire de cette vieille platine modèle A qui n’a aucune, mais alors aucune défaillance ?

Souvenez-vous, voici la bestiole :

Ah oui, par contre l’élastique lui… il a du mal avec la chaleur, il craque mais on le remplace, c’est le seul talon d’achille du montage en fait.

Oui, on adore jouer avec le Raspberry Pi, ça vous l’avez compris depuis longtemps. On travaille même sur une évolution en Raspberry Pi Zero W, plus petit, plus compact, peut-être avec d’autres modèles de caméras, bref les projets ne manquent pas.

Raspberry Pi, solide ? OUI, OUI, et OUI, sans hésiter, c’est LA solution durable pour vos bricolages, un peu à l’instar d’un Arduino ! Et pour rester au courant des actualités sur la p’tite Framboise, rien ne vaut Framboise314.fr si vous ne connaissiez pas déjà.

Raspberry Pi 3 et PoE

Framboise314 a récemment publié un billet concernant une carte PoE sur Raspberry Pi.

A l’intérieur, la mention du LM2596HV, un petit régulateur de tension fournissant une sortie en +5Vcc, parfait pour notre framboise miniature. Voici venu le temps de le brancher, non sans avoir au préalable ajusté la tension de sortie à 5.5V, en vous aidant d’un multimètre et d’un petit tournevis, en agissant sur le potentiomètre ajustable bleu de la platine de régulation :

La sortie OUT + (5V) va sur la broche + du connecteur d’extension, la sortie OUT – (GND) sur la broche GND du même connecteur.

Le petit connecteur d’alimentation va fournir le + PoE (broche la plus proche du connecteur USB, en Orange sur la photo) et le – PoE (fil blanc sur la photo), à relier respectivement à IN + et IN – :

Nous avons opté très rapidement pour la soudure des fils, les cosses enfichables occupant beaucoup trop de place une fois le boîtier fermé :

Certes, c’est compact, TRES compact, mais il y a un peu plus dérangeant :

Oui, la régulation chauffe, logique, mais ajoutez à cela la température du CPU du Raspberry, 44° environ, et en fermant votre boîtier plastique vous allez obtenir une étuve parfaite ! A oublier donc pour un montage durable, sauf si vous optez pour un boitier de grande taille, avec un p’tit ventilateur d’aération par exemple.

En conclusion, le principe du PoE est donc validé, de 24 à 48 V sans soucis, mais surtout ne venez pas enfermer l’ensemble dans un tout petit boîtier, surtout pas !

 

OpenMPTCProuter Vs OverTheBox

OverTheBox, nous vous en avons parlé et re-parlé à satiété, cette solution développée par Ovh pour réunir le débit de xx lignes internet, qu’elles soient fibrées, ADSL, câble, ou même 4G. OTB fonctionne avec le protocole MPTCP, Multipath TCP, qui permet de gérer plusieurs flux IP.

Depuis quelques temps, OpenMPTCProuter a pour objectif de proposer une solution identique, mais forcément sans le support Ovh, sans leur matériel, sans la redondance des serveurs, etc. C’est une super idée réservée aux Geeks qui vont alors pouvoir investir dans un simple serveur VPS Ovh et un p’tit Raspberry Pi 3 coté client.

Le schéma de connexion est celui illustré par l’image sur le site d’OpenMPTCProuter, reprise  ici :

L’illustration montre 2 modems, 2 connexion internet donc, mais on peut aller au delà sans soucis, comme ici sur notre équipement de test :

Coté coût, une cinquantaine d’Euro pour un Raspberry Pi avec son boitier, une alim, et une carte SD convenable, et pour le serveur VPS, voyez vous même, 3.59 € TTC/mois, soit forcément une belle économie par rapport à la solution packagée d’Ovh :

Avec nos 5 lignes ADSL/4G, voici un test de débit :

Réalisé via notre OverTheBox « officielle », le débit est identique, pas de différences donc, c’est vraiment génial !

 

 

CONFIGURATION SERVEUR

Pour l’installation du serveur, rendez-vous sur https://github.com/Ysurac/openmptcprouter/wiki/Install-the-VPS et vérifiez à la fin que le mptcp est bien implémenté avec une commande uname -a :

Linux ns123456 4.14.24.mptcp #9 SMP Fri Mar 9 19:13:05 UTC 2018 x86_64 GNU/Linux

Dans notre cas, sur un Kimsufi et non un VPS, nous avons été obligés de modifier le kernel de la Debian installée automatiquement par Ovh pour basculer sur un vrai kernel Debian. La procédure est détaillée sur https://www.shaftinc.fr/changement-noyau-kimsufi.html, inutile de la ré-écrire, elle fonctionne à merveille.

Si le MPTCP n’est pas installé, installez les paquets de ce guide : http://mptcp.zugaina.com/index.fr.php

sudo apt-key adv --keyserver hkp://keys.gnupg.net --recv-keys 379CE192D401AB61 
echo "deb https://dl.bintray.com/cpaasch/deb jessie main" >> /etc/apt/sources.list 
sudo apt-get update sudo apt-get install linux-mptcp

Attention à la fin il faut rebooter le serveur, le port SSH du serveur est alors modifié, il bascule sur 65222 et non 22 !!

Pensez maintenant à mettre de coté deux clés d’authentification, depuis la connexion ssh du serveur entrez :

cat /etc/glorytun-tcp/tun0.key 

047D0C201234567889902348989AEC020F9287AAB930D7393E99

La clé glorytun est en gras, soulignée, une fausse clé bien entendu, elle sera différente sur VOTRE serveur.

Entrez pour finir :

cat /etc/shadowsocks-libev/config.json 

pour récupérer la clé Shadowsocks sur la ligne :

 "key":"5vZETEi1ArmpPL7-xY12DfGsigb6VaB1A-IKwCzXwSI=",

Ici seule la clé soulignée est en gras nous intéresse, entre les guillemets : il s’agit là encore d’une fausse, VOTRE serveur vous en donnera une toute neuve.

 

CONFIGURATION ROUTEUR

Pour l’installation du routeur, allez sur https://github.com/Ysurac/openmptcprouter/wiki/Router-install pour charger et décompresser l’image de votre Raspberry Pi 3. A la fin, il prendra l’IP 192.168.100.1 et aura un DHCP activé.

Rendez-vous sur System, OpenMptcpRouter : http://192.168.100.1/cgi-bin/luci//admin/system/openmptcprouter
Entrez les différentes clés récupérées sur le serveur, puis l’IP du serveur :

Ajoutez alors sur WAN1 et WAN2 les IP de vos connexions internet, que ce soit une box adsl ou un routeur 4G.
Voici un exemple de notre configuration, avec plusieurs WAN :

Les passerelles IPv4 sont les adresses IP de vos boxes adsl ou 4G, TOUJOURS AVEC LEUR DHCP COUPE, c’est important. Ici nous avons donc du 0.2 (freebox), 2.3 (freebox), 5.1 (routeur 4G).

Validez puis allez sur l’onglet ETAT pour vérifier que tout fonctionne bien. Si tout est vert, connectez vous au routeur, vous obtiendrez une IP 192.168.100.xxx. Rendez-vous sur http://monip.org : c’est l’IP de votre serveur Mptcp qui va apparaitre, vous avez réussi !!

 

Raspberry Pi 3 : plus rapide, WiFi, Bluetooth

La nouvelle mouture du célèbre Raspberry Pi est arrivée, pile le jour anniversaire de la petite Framboise mondialement connue. La version 3 apporte son lot de nouveautés :

[checklist]

  • CPU Quad Core Broadcom BCM2837 64bit ARMv8 à 1.2 GHz (900 MHz sur la v2)
  • alimentation plus puissante
  • GPU 400 MHz
  • Mémoire 1 Go LPDDR2-900 SDRAM
  • USB : 4 ports usb2
  • Sorties vidéo : HDMI et composite PAL/NTSC sur jack 3.5 mm
  • Réseau : 10/100 Mbps + WiFi 802.11n
  • E/S : 17 GPIO
  • Bluetooth 4.1
  • Dimensions : 85.6 x 56.5 mm
  • Poids : 45 g

[/checklist]

Certes, avec le lot de nouveautés arrive aussi le lot de déceptions :

[checklist]

  • toujours pas d’USB 3
  • toujours pas de réseau gigabit ethernet
  • 802.11n en WiFi et non 802.11ac

[/checklist]

Au final, il va tourner plus vite, apporter un peu plus de possibilités avec le WiFi et le Bluetooth intégré, et surtout conserver un prix identique, ou presque. Mieux, pour le même prix, on peut difficilement râler, même si on espère que le Raspberry Pi 4 disposera enfin d’un réseau ethernet gigabit, voir d’un WiFi moderne.

raspberry pi3

Raspberry Pi + H801 : défilement aléatoire en Python

Un petit script en python pour votre Raspberry Pi, suite au premier billet sur le H801 :

# -*- coding: utf-8 -*-
import time
import os
import random
while True:
  color = "%06x" % random.randint(0, 0xFFFFFF)
  somme = "sendip -p ipv4 -p udp -us 30978 -ud 30977 -d 0xfbeb" + color + "00005c59d6000 -v 192.168.1.127 > /dev/null"
  os.system(somme)
  time.sleep(0.3)

Sauvegardez le sous le nom led.py et exécutez le avec python3 led.py : vos leds font alors s’allumer de façon totalement aléatoire.

Pensez à modifier l’IP 192.168.1.127 par l’ip de VOTRE module et réglez la pause en modifiant time.sleep(xxx) par xxx secondes, selon vos goûts.

Unifi : le contrôleur RaspiUnifi est disponible

C’est une idée qui faisait son chemin depuis un bout de temps : vous proposer un contrôleur Unifi le plus compact possible, simple, sans fonctionnalités inutiles, juste un contrôleur capable de gérer une dizaine de bornes, simplement.

L’arrivée sur le marché du Raspberry Pi 2, avec plus de mémoire et un CPU gonflé, semblait être l’occasion que nous attendions. Ni une, ni deux, un prototype a été réalisé et est opérationnel depuis quelques mois :

raspi_unifi_proto

Prototype de RaspiUnifi

La sortie du tout dernier Debian Jessie et une récente mise à jour du gestionnaire Unifi nous ont poussé à continuer nos essais, basculant notre RaspberryPi 2 sous ces nouvelles versions avec succès.

Aujourd’hui, nous considérons le contrôleur comme étant pleinement opérationnel, parfaitement adapté à de petits déploiements WiFi, c’est à dire jusqu’à une dizaine de bornes, sans utiliser de fonctionnalités trop gourmandes en mémoire.

 

unifi raspberrypi

RaspiUnifi : statistiques

Oui, RaspiUnifi n’est pas le contrôleur le plus puissant, ce n’est pas du tout son objectif. Son but est d’éviter de mobiliser un ordinateur complet pour des tâches qui peuvent tout à fait être traitées par le RaspberryPi 2 de façon tout aussi efficace.

Comme toujours, vous aurez un accès complet à RaspiUnifi, en SSH, avec même un accès ftp pour pouvoir sauvegarder vos configurations très rapidement. Et si besoin, nous pouvons nous charger d’associer toutes vos bornes Unifi sur votre contrôleur, moyennant un devis préalable.

A notre connaissance, il existe un seul contrôleur concurrent de ce type, mais avec moins de mémoire, une carte SD plus lente, pas d’accès ftp, et à un tarif plus élevé, autrement dit, une offre bien moins intéressante et bien moins complète.

RaspiUnifi est dès à présent disponible sur la boutique de Monwifi.fr.

Des Times Capsules de 2 à 6 To

Devant la pauvreté de l’offre d’Apple (2 ou 3 To), et après avoir réalisé pas mal d’essais, nous sommes arrivés à sortir un produit répondant parfaitement aux besoin de sauvegarde des ordinateurs sous OS/X :

[checklist]

  • Rapidité : un port ethernet gigabit, un CPU réactif, et 1 Go de mémoire vive
  • Efficacité : un disque dur relié en eSata (5 Gb/s) au gestionnaire
  • Simplicité : reconnaissance immédiate avec Time Machine
  • Puissance : de 2 à 6 To, très utile pour sauvegarder par exemple plusieurs ordinateurs via le réseau local
  • Coût : nos modules sont à des tarifs inférieurs aux Time Capsules Apple

[/checklist]

L’offre qui vous est proposée sur Monwifi.fr est donc très intéressante pour les utilisateurs d’OS/X, que ce soit sur iMac, Macbook, MacMini, MacPro, ou même sur Hackintosh, ces copies utilisant des matériels très proches :

 

time machine_Apple_capsules

Nous ne pouvions bien entendu pas les nommer Time Capsule, ce produit d’origine 100 % Apple étant bien différent : plus compact, difficile à réparer en cas de crash du disque dur, WiFi intégré.

La Sauvegarde Apple se compose dans notre cas d’un boitier disque dur (facile à faire évoluer ou à changer) relié en eSata avec son contrôleur (Linux inside, bien entendu, question de stabilité), et de deux alimentations 220 V.

Notre propos est donc exclusivement de proposer une sauvegarde, juste une sauvegarde, simple, performante (adieu les disques USB ou les solutions à base de Raspberry Pi, trop lents).

A découvrir sur Monwifi.fr, rubrique Apple, what else 😉

TimeCapsule 3 To pour 200 € : la BananaCapsule !

Ce n’est pas nouveau, j’ai souvent le sentiment que la Pomme nous prend un peu pour des poires :

apple_pomme_poires

Tenez, prenez la Time Capsule, ce module tellement amaaaaaaazing permettant de sauvegarder votre lui aussi tellement amaaaaaazing iMac ou Macbook Pro(létaire) :

time capsule

Oui, 500 € pour 3 To… euh… mal au fessier à un tel tarif, même si, effectivement, c’est un bijou de technologie, même s’il a plein de choses que la description qui va suivre n’aura pas, certes…

Alors j’ai creusé, car avec plusieurs iBidules, il fallait bien envisager de sauvegarder. Oh je ne suis pas en manque, mais étant un geek-parano de nature, j’aime bien diversifier mes sauvegardes :

  • un gros disque USB de 2 To pour l’iMac
  • un Synology de 1 To pour une sauvegarde réseau
  • la BananaCapsule de 3 To que je vais vous décrire dans ce billet

Oui, si une sauvegarde tombe en rade, j’aurai immédiatement accès à une autre, et ainsi de suite. De plus, via le réseau gigabit, je peux me permettre de sauvegarder encore plus facilement, pratique.

Donc, après avoir creusé longuement, taillé ma pierre encore plus longuement, j’ai rapidement écarté la Raspberry Pi que j’affectionne pourtant beaucoup : ses ports USB 2.0 sont tout simplement nuls pour pouvoir assurer une sauvegarde en réseau hyper rapide, et je ne parle pas du port ethernet 100 Mbps maximum : on oublie d’office pour traiter efficacement des To de données!

Restait donc le concurrent, le BananaPi et son port Sata 2.0:

banana_pi

Allez, avec une jolie boite, comptez 50 € sur Amazon, à vue de nez. Rajoutez une alim micro-usb 2A à 6 €, un cable Sata/eSata (13 €), un boîtier eSata (34 €) et un disque de 3 To (107 €) et vous obtenez une solution complète pour à peine plus de 200 €, soit une économie de 299 € par rapport à la solution Pommée… Rajoutez une trentaine d’euros si vous optez pour un BananaPi Pro, solution gonflée que j’utilise ici.

Ce billet ne va toutefois pas vous apporter toute l’installation, par manque de temps, mais vous pouvez déjà commencer par vous occuper du disque dur, une fois branché et alimenté, avec ces commandes :

sudo su
apt-get install nano hdparm netatalk
fdisk /dev/sda

puis frappez à la suite :

n
p
1
w

passons au formatage en ext4 :

mkfs.ext4 /dev/sda -L capsule

et créons le répertoire du disque dur :

mkdir /mnt/capsule
mount /dev/sda /mnt/capsule
chmod 777 /mnt/capsule

supprimons le cache d’écriture du disque :

hdparm -W0 /dev/sda

Le disque étant monté, rendons ce montage permanent (au boot) :

nano /etc/fstab

et ajouter à la fin :

/dev/sda /mnt/capsule ext4 defaults 0 0

Voilà, votre disque dur est désormais lisible sur /mnt/capsule, prêt à recevoir les trames de sauvegarde de vos ordinateurs Apple.

Pour la suite, il faut :

[checklist]

  • créer un utilisateur timecapsule :useradd -d /mnt/capsule -s /bin/bash -m timecapsule
  • lui affecter un password :
passwd timecapsule
password (à modifier par VOTRE mot de passe, et à répéter deux fois)
  • installer les services pour recevoir les trames TimeCapsule avec Netatalk :
sudo echo "/mnt/TimeMachine \"Time Machine\" options:tm" >> /etc/netatalk/AppleVolumes.default
  • installer avahi et ses services (cf plus bas)

[/checklist]

Configurons Avahi donc, en éditant ce qui suit :

nano /etc/avahi/services/afpd.service

et en introduisant ce contenu :

<?xml version="1.0" standalone='no'?><!--*-nxml-*-->
<!DOCTYPE service-group SYSTEM "avahi-service.dtd">
<service-group>
    <name replace-wildcards="yes">%h</name>
    <service>
        <type>_afpovertcp._tcp</type>
        <port>548</port>
    </service>
    <service>
        <type>_device-info._tcp</type>
        <port>0</port>
        <txt-record>model=TimeCapsule</txt-record>
    </service>

</service-group>

Avahi va aller signaler à tout le monde sur le réseau local que vous avez une TimeCapsule, facile ensuite à trouver pour vos différents ordinateurs.

Autre fichier à éditer ensuite :

nano /etc/netatalk/AppleVolumes.default

avec ce qui suit à la fin :

/mnt/capsule "Time Machine" options:tm

et pour terminer on relance Avahi et Netatalk :

sudo service avahi-daemon start
sudo service netatalk restart

Et voilà, OS/X doit désormais pouvoir trouver votre BananaCapsule sur le réseau, vous trouverez « Time Machine on lemaker » si tout va bien.

Je me suis aidé pour l’installation de Netatalk sur cette page, après avoir pas mal galéré car le service n’était pas diffusé sur le réseau… Désormais, le disque est en place, la sauvegarde avec le port gigabit ethernet et le port Sata est TRES performante.

J’imagine qu’on peut sans doute faire mieux, encore mieux, par exemple en utilisant des disques SATA de très forte capacité (6 Go, environ 240 € à l’heure où je rédige ce billet). Vous avez les clés en main, à vous de jouer désormais 😉

 

Raspberry Pi 2 domotique : le capteur de température (9)

 

 

Depuis hier, notre Framboise V2 est équipée d’un capteur de température, en la présence d’un BMP180, un capteur miniature de pression, altitude, et température.

 

bmp180

BMM180

A peine plus gros qu’un ongle, le BMP180 se relie via le bus I2C au Raspberry Pi 2. 4 fils suffisent : +, GND, et les signaux de commande I2C.

Sur internet, on lit tout et son contraire sur la longueur maximale du câble utilisable en I2C : 50 cm, 1 m, 12 m, bref, on a le choix des réponses à côté de la plaque. Ici, j’ai cannibalisé un bout de câble ethernet CAT5, non blindé, d’une longueur de 2 m. Figurez vous que cela fonctionne, et du premier coup : la sonde délivre ses données sans coup faillir, c’est précis, régulier !

Je passe sous silence l’installation physique du capteur, largement décrite sur Adafruit par exemple. Pensez bien à activer l’I2C (un raspi-config depuis le terminal, options avancées), et à valider le chargement des drivers. Là encore, tout se trouve sur Adafruit ou d’autres sites, je ne vais pas y revenir.

Le script python utilisé est le suivant, tempe.py :

#!/usr/bin/python
#
# decommentez pour activer la sortie de debuggage
#import logging
#logging.basicConfig(level=logging.DEBUG)
#
import Adafruit_BMP.BMP085 as BMP085
import time
sensor = BMP085.BMP085()
bmp = BMP085.BMP085()
temp = bmp.read_temperature()
pressure = bmp.read_pressure() / 100
altitude = bmp.read_altitude()
print 'Temperature : {0:0.1f} C'.format(temp)
print 'Pression     : {0:0.0f} hPa'.format(pressure)
# print 'Altitude:    {0:0.1f} m'.format(altitude)
print time.strftime('%X %x %Z')

Si vous avez bien câblé le module, vous devriez vous s’afficher les informations en un instant en lançant python tempe.py
J’ai décommenté l’affichage de l’altitude, plutôt pas précis à mon goût, et j’affiche la pression en hPa, plus lisible. Retenez à ce sujet qu’un pression inférieure à 1013 hPa annonce un mauvais temps. Au dessus, plus elle va monter, plus il fera beau. Mon grand-père tapotait son baromètre tous les matins, moi j’ai désormais une sonde informatique 😉

Une petite vue du montage avant d’avancer dans les explications :

raspberry temperature

Raspberry Pi 2 + BMP180

La sonde est au bout du câble CAT5, toute petite. Il va maintenant falloir la protéger, l’idée étant de venir la positionner en extérieur, mais comment ? Enfermée dans un tube plastique, j’ai peur qu’elle ne mesure que le réchauffement de l’air intérieur une fois exposée au soleil : il va falloir l’aérer, tout en la gardant protégée de la pluie, sacré dilemme là !

Et soudain, au détour d’un café matinal, THE solution: une crépine !!

raspberry temperature crepine

Crépine pour pompe

Oui je sais, c’est un peu bizarre, mais si vous réfléchissez bien, une crépine offre une aération sur une extrémité, et une partie protégée sur l’autre extrémité : c’est le candidat idéal pour notre projet ! Je me propose donc de venir y insérer le capteur, de boucher l’extrémité protégée par une produit du genre « ni clou ni vis », et de rajouter une grille fine (type moustiquaire) sur la partie aérée, évitant de voir des bestioles s’inviter à l’intérieur. Ainsi, notre BMP180 sera protégé de la pluie, mais ouvert aux quatre vents, impeccable pour une mesure fiable.