L’Internet des Objets
Contents
Home
I Généralités sur les objets connectés
1 Introduction à l’Internet des Objets
1.1 Introduction de l’IoT
1.2 Définitions
1.3 Architecture IoT
1.3.1 Création de l’objet
1.3.2 Communication de l’objet
1.3.3 Passerelle vers Internet
1.3.4 Serveur réseau
1.3.5 Serveur applicatif
1.3.6 Interfaces
1.3.7 Bases de données
1.3.8 Applications
1.4 Les challenges de l’IoT
1.4.1 La sécurité de l’IoT
1.4.2 Plusieurs disciplines
1.4.3 Coût d’acquisition
1.4.4 Démocratisation
1.4.5 Développement durable
1.5 Applications cibles
1.5.1 Portail connecté
1.5.2 chasse aux trésors
1.5.3 Vidéo projecteur
1.5.4 bâtiment supervisé
1.5.5 Supervision de l’énergie
1.5.6 Vers une maintenance préventive
1.5.7 Autres projets
II Composants
2 Microcontrôleurs
2.1 Le matériel STM
2.1.1 Nucleo WB55
2.1.2 La pitchoune WB55
2.1.3 La carte STM32H723G
2.1.4 Jouez avec les UART
2.2 STM Discovery
2.2.1 La carte STM32 Discovery
2.3 Programmer la STM32 discovery
2.4 Les éléments de la carte Discovery
2.4.1 Identifier la carte
2.5 Les Leds
2.6 Le capteur HTS221
2.7 Le Bluetooth
3 Les outils intégrés à base de Microcontrôleur
3.1 Le Flipper Zero
3.1.1 Prise en main du FP0
4 STM32MP1
4.1 Introduction stm
4.2 Installation du système
4.3 Analyse forensic du STMmcu
4.3.1 Les interfaces du stm32mp1
5 Gérez les Capteurs, actionneurs et afficheurs
5.1 Capteurs géographiques
5.1.1 La carte fille GNSS1A1
III Techniques de programmation
6 Micropython sur microcontrôleur
6.1 Programmer avec Micropython
6.1.1 Installer le firmware Micropython
6.1.2 Programmer une carte micropython
6.2 Communication série en Micropython
6.2.1 Connexion entre µC et l’ordinateur
6.2.2 Maîtrisez le temps
6.2.3 Programmer une carte micropython
6.3 Interaction avec la carte environnementale
6.4 Communication bluetooth
6.4.1 Les caractéristiques
6.4.2 STM32Gitlab
6.4.3 Interaction Avec GNU/Linux
6.4.4 Gestion du temps
6.4.5 Connexion vers un microcontroleur distant
6.5 reste à intégrer
6.5.1 Les phares BLE
6.6 Quelques notions de python
IV cadriciels
V Réseaux
7 Les protocoles réseaux pour l’IoT
7.1 Le Bluetooth basse consommation
7.1.1 Les outils Debian pour le BLE
7.1.2 Utilisation du BLE
7.1.3 Les annonces BLE
7.1.4 Les balises BLE
7.1.5 Scannez les annonces BLE
7.1.6 Le BLE audio
7.1.7 Bleak : interagissez entre un Linux et un objet BLE
7.2 Localisation NMEA
8 Le support matériel des réseaux
8.1 Les câbles et connecteurs
8.1.1 Les câbles coaxiaux
VI Sécurité de l’IoT
9 Sécurité des objets
9.1 Sécuriser le code embarqué
9.2 Sécuriser le matériel
9.3 Sécuriser les communications
10 Chiffrement et Cryptographie
10.1 Chiffrement symétrique ou asymétrique
VII Applications visées
11 Mise en place des réseaux pour l’IoT
11.1 L’objet connecté
11.1.1 Les capteurs de la carte environnementale
11.1.2 La carte microcontrôleur
11.2 La gateway BLE
11.3 Le serveur MQTT
11.4 Les serveurs applicatifs
11.4.1 Enregistrement dans un fichier texte
11.4.2 Enregistrement dans une base de données MariaDB
11.5 Production d’une courbe à partir des données
VIII Les anciens écrits
IX Les objets
12 Les BabyLinux
13 Les Raspberry Pi
13.1 Introduction pi
13.1.1 Description du RPi
13.2 Installation officielle
13.2.1 Préparer la carte mémoire
13.2.2 Premier lancement
13.3 Le matériel PI
13.3.1 Le PI4
13.4 Installation alternative
13.4.1 pi-gen
13.4.2 Fichiers et explications
13.4.3 La création
13.5 Les GPIO du pi
13.6 Les caméras du Pi
13.7 Les écrans des pi
13.8 Installer sa Debian
13.9 Installer sa Raspbian
14 Le NanoPi
14.1 Introduction nanopi
14.2 Spécifications
14.3 Armbian
14.3.1 Installation
14.4 Le réseau
14.4.1 Interface WAN
14.4.2 Interface Ethernet LAN
14.4.3 Interface WiFi
14.5 Point d’accès
14.6 évaluation rapide de la sécurité
15 Les microcontrôleurs
15.1 Programmer les microcontrôleurs
15.1.1 cross compilateur
15.1.2 langage interprété
15.1.3 l’IDE Arduino
15.1.4 l’IDE Eclipse
15.1.5 IDE privée
15.1.6 application web
16 Arduino
16.1 L’IDE Arduino
16.2 Grove
16.2.1 Le starter kit
16.2.2 Démonstration
17 Les Nucleo de ST
17.1 Introduction nucleo
17.1.1 l
18 IKS01A3
19 GNSS1A1
19.0.1 GNSS et micropython
20 ESP8266
20.1 IDE Arduino
21 M5stack
21.1 Support Arduino
21.2 M5 Gray
21.2.1 Micropython pour les M5stack
21.3 M5 Core2
21.4 M5 Go
X Les capteurs, actionneurs et écrans
XI Les outils logiciels
22 Les logiciels
22.1 Programmation par blocs
22.2 LoRa et LoRaWAN
22.2.1 Protocole longue distance
22.2.2 Les cartes LoRa
23 Mosquitto
23.1 Installation du serveur mosquitto
23.1.1 Ressources MQTT
23.1.2 Installation du serveur
23.1.3 Utilisez des clients
23.1.4 Le python et le Moustique
23.1.5 Le moustique codé C
23.2 Protégez vous des moustiques
24 Oscilloscopes et GBF
24.1 Programmer un oscilloscope Instek
24.1.1 minicom
24.2 Python
24.3 Siglent
24.3.1 Le support python3
24.3.2 L’oscilloscope Siglent
24.3.3 Le GBF Siglent
25 Gnuradio
25.1 Installation à partir des sources gnuradio
25.1.1 Dépendances
25.1.2 Volk
25.1.3 Installation de Gnuradion depuis les sources
25.2 Initiation à GnuRadio
26 HackRF
26.1 Analyse d’un Velux
27 Adalm Plulto
27.1 Initialisation de l’Adalm Pluto
27.1.1 Pluto Linux
27.1.2 IIO oscillo
27.1.3 Adalm et Gnuradio
XII La radio
28 Le matériel classique Linux
28.0.1 Identifier les composants
29 L’infrarouge
29.1 IR-Keytable
30 La carte STM-Lora STEVAL-STRKT01
30.1 Introduction lora st
30.2 Les premières commandes
30.2.1 Aide
30.2.2 mcuid
30.2.3 Status
30.3 Tuer les Troubles
31 Le kit STM P-NUCLEO
32 Dragino : une gateway pour TTN
32.1 Introduction dragino
32.2 Interface Dragino
32.3 Activation d’une gateway dans TTN
XIII Télécommunications
33 Mise en place d’Ethernet
33.1 Ethernet, pour l’UNO
34 BLuetooth Low Energy
34.0.1 Generic Access Profile
34.0.2 Generic Attribute Profile
34.1 Débugger le BLE
XIV l’électronique, électrotechnique
XV L’énergie
35 enOcean
35.1 FHEM
35.2 Le protocole enOcean
35.2.1 Les passerelles enOcean
35.2.2 Dissection d’un télégramme
35.3 Moissoner l’énergie
35.4 Notes
36 Les capteurs d’énergie du commerce
XVI Les (gros) projets
37 Pinède
37.1 L’origine du projet
37.2 Todo
38 Glossaire
39 Liste des figures et tables
40 Bibliographie
41 Index
Page précédente Page suivante
Sous GNU/Linux, les récepteurs infrarouges sont gérés par LIRC (https://lirc.org/