<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="fr">
	<id>https://wikifab.org/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Madnerd</id>
	<title>Wikifab - Contributions de l’utilisateur [fr]</title>
	<link rel="self" type="application/atom+xml" href="https://wikifab.org/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Madnerd"/>
	<link rel="alternate" type="text/html" href="https://wikifab.org/wiki/Sp%C3%A9cial:Contributions/Madnerd"/>
	<updated>2026-04-29T08:25:49Z</updated>
	<subtitle>Contributions de l’utilisateur</subtitle>
	<generator>MediaWiki 1.31.3</generator>
	<entry>
		<id>https://wikifab.org/w/index.php?title=Contr%C3%B4leur_Midi_avec_des_boutons_d%27arcade_et_un_RPi_Pico&amp;diff=131404</id>
		<title>Contrôleur Midi avec des boutons d'arcade et un RPi Pico</title>
		<link rel="alternate" type="text/html" href="https://wikifab.org/w/index.php?title=Contr%C3%B4leur_Midi_avec_des_boutons_d%27arcade_et_un_RPi_Pico&amp;diff=131404"/>
		<updated>2021-10-04T11:52:26Z</updated>

		<summary type="html">&lt;p&gt;Madnerd : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Tuto Details&lt;br /&gt;
|Main_Picture=Contr_leur_Midi_avec_des_boutons_d_arcade_et_un_RPi_Pico_photo7622a97a.jpg&lt;br /&gt;
|Main_Picture_annotation={&amp;quot;version&amp;quot;:&amp;quot;2.4.6&amp;quot;,&amp;quot;objects&amp;quot;:[{&amp;quot;type&amp;quot;:&amp;quot;image&amp;quot;,&amp;quot;version&amp;quot;:&amp;quot;2.4.6&amp;quot;,&amp;quot;originX&amp;quot;:&amp;quot;left&amp;quot;,&amp;quot;originY&amp;quot;:&amp;quot;top&amp;quot;,&amp;quot;left&amp;quot;:-83,&amp;quot;top&amp;quot;:1,&amp;quot;width&amp;quot;:960,&amp;quot;height&amp;quot;:540,&amp;quot;fill&amp;quot;:&amp;quot;rgb(0,0,0)&amp;quot;,&amp;quot;stroke&amp;quot;:null,&amp;quot;strokeWidth&amp;quot;:0,&amp;quot;strokeDashArray&amp;quot;:null,&amp;quot;strokeLineCap&amp;quot;:&amp;quot;butt&amp;quot;,&amp;quot;strokeDashOffset&amp;quot;:0,&amp;quot;strokeLineJoin&amp;quot;:&amp;quot;miter&amp;quot;,&amp;quot;strokeMiterLimit&amp;quot;:4,&amp;quot;scaleX&amp;quot;:0.84,&amp;quot;scaleY&amp;quot;:0.84,&amp;quot;angle&amp;quot;:0,&amp;quot;flipX&amp;quot;:false,&amp;quot;flipY&amp;quot;:false,&amp;quot;opacity&amp;quot;:1,&amp;quot;shadow&amp;quot;:null,&amp;quot;visible&amp;quot;:true,&amp;quot;clipTo&amp;quot;:null,&amp;quot;backgroundColor&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;fillRule&amp;quot;:&amp;quot;nonzero&amp;quot;,&amp;quot;paintFirst&amp;quot;:&amp;quot;fill&amp;quot;,&amp;quot;globalCompositeOperation&amp;quot;:&amp;quot;source-over&amp;quot;,&amp;quot;transformMatrix&amp;quot;:null,&amp;quot;skewX&amp;quot;:0,&amp;quot;skewY&amp;quot;:0,&amp;quot;crossOrigin&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;cropX&amp;quot;:0,&amp;quot;cropY&amp;quot;:0,&amp;quot;src&amp;quot;:&amp;quot;https://wikifab.org/images/e/e1/Contr_leur_Midi_avec_des_boutons_d_arcade_et_un_RPi_Pico_photo7622a97a.jpg&amp;quot;,&amp;quot;filters&amp;quot;:[]}],&amp;quot;height&amp;quot;:449.5774647887324,&amp;quot;width&amp;quot;:600}&lt;br /&gt;
|Description=&amp;lt;translate&amp;gt;Utiliser des boutons de borne d'arcade pour faire un contrôleur Midi&lt;br /&gt;
(Traduction du tutoriel d'Adafruit : Raspberry Pi Pico and Led Arcade Button Midi Controller des Ruiz Brothers)&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Area=Art, Electronics, Music and Sound&lt;br /&gt;
|Type=Création&lt;br /&gt;
|Difficulty=Hard&lt;br /&gt;
|Duration=3&lt;br /&gt;
|Duration-type=day(s)&lt;br /&gt;
|Cost=85&lt;br /&gt;
|Currency=EUR (€)&lt;br /&gt;
|Tags=MIDI, Midi Fighter, Raspberry Pi, Circuit Python, Pico, Adafruit&lt;br /&gt;
}}&lt;br /&gt;
{{Introduction&lt;br /&gt;
|Introduction=&amp;lt;translate&amp;gt;''Dans ce tutoriel, nous allons principalement traduire en français, les instructions des Ruiz Brothers du site Adafruit.''&lt;br /&gt;
&lt;br /&gt;
''Nous y apporterons des notes sur'' &lt;br /&gt;
&lt;br /&gt;
*''⚠️les difficultés rencontrés''&lt;br /&gt;
*''🛒🇫🇷 les liens pour acheter les composants en France.''&lt;br /&gt;
*''🔧ainsi que les modifications apportés au 🐍code et au design.''&lt;br /&gt;
&lt;br /&gt;
L'intégralité des ressources viennent du site d'Adafruit : https://learn.adafruit.com/raspberry-pi-pico-led-arcade-button-midi-controller-fighter et sont sous Licence [https://learn.adafruit.com/assets/100403 Creative Commons Attribution-ShareAlike] &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;/translate&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{TutoVideo&lt;br /&gt;
|VideoType=Youtube&lt;br /&gt;
|VideoURLYoutube=https://www.youtube.com/watch?v=WMKVC1su4Bw&lt;br /&gt;
}}&lt;br /&gt;
{{Materials&lt;br /&gt;
|ExternalAttachmentsLinks={{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://learn.adafruit.com/raspberry-pi-pico-led-arcade-button-midi-controller-fighter&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;Présentation&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;= Un contrôleur MIDI DIY =&lt;br /&gt;
Fabriquer votre propre contrôleur midi avec Circuit Python!&lt;br /&gt;
&lt;br /&gt;
Cet instrument Midi à la &amp;quot;Midi Fighter&amp;quot; a 16 boutons équipés de LED, un écran OLED (de 128x128 pixels) et un joystick.&lt;br /&gt;
&lt;br /&gt;
Jouer de la batterie, du synthé ou n'importe quoi en utilisant la norme MIDI!&lt;br /&gt;
&lt;br /&gt;
Toute l'électronique est logé dans un boitier enclipsable.&lt;br /&gt;
&lt;br /&gt;
= Boutons et Leds =&lt;br /&gt;
Le Raspberry PI Pico a bien assez de GPIO pour connecter des boutons sur une grille de 4x4.&lt;br /&gt;
&lt;br /&gt;
L'expandeur de GPIO / Driver de LED AW9525 permet de rajouter les 16 LED et les connectent au Raspberry Pi Pico à travers le protocole I2C.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les LED s'allument quand les boutons sont appuyés, mais elles sont toutes contrôlable individuellement.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Modifier les notes à la volée =&lt;br /&gt;
La spécificité de ce contrôleur Midi est de pouvoir changer les notes grâce à l'écran et au joystick.&lt;br /&gt;
&lt;br /&gt;
Parfait pour créer ses propres kits et faire ses propres mélodies.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Interface Intuitive =&lt;br /&gt;
L'écran OLDED affiche les 16 boutons, comme des cercles avec des nombres.&lt;br /&gt;
&lt;br /&gt;
Ces nombres corresponds au notes MIDI assigné à chaque bouto.&lt;br /&gt;
&lt;br /&gt;
Utiliser le joystick pour sélectionner un bouton et éditer la note midi.&lt;br /&gt;
&lt;br /&gt;
Dans le mode édition, le bouton se met à clignoter, afin de savoir qu'il est actif.&lt;br /&gt;
&lt;br /&gt;
Les autres boutons restent actif afin de comparer les notes.&lt;br /&gt;
&lt;br /&gt;
= Une poignée pivotable =&lt;br /&gt;
La poignée est imprimé en une fois avec aucun support, elle marche aussi très bien comme support pour incliner légèrement l'instrument.&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Contr_leur_Midi_avec_des_boutons_d_arcade_et_un_RPi_Pico_3d_printing_loop-thumb-hq.mp4&lt;br /&gt;
|Step_Picture_01=Contr_leur_Midi_avec_des_boutons_d_arcade_et_un_RPi_Pico_3d_printing_hero-1.jpg&lt;br /&gt;
|Step_Picture_02=Contr_leur_Midi_avec_des_boutons_d_arcade_et_un_RPi_Pico_3d_printing_oled-demo-loop.mp4&lt;br /&gt;
|Step_Picture_03=Contr_leur_Midi_avec_des_boutons_d_arcade_et_un_RPi_Pico_3d_printing_hero-oled-joystick.jpg&lt;br /&gt;
|Step_Picture_04=Contr_leur_Midi_avec_des_boutons_d_arcade_et_un_RPi_Pico_3d_printing_hero-3.jpg&lt;br /&gt;
}}&lt;br /&gt;
{{Notes&lt;br /&gt;
|Notes=&amp;lt;translate&amp;gt;Tutoriel en anglais: https://learn.adafruit.com/raspberry-pi-pico-led-arcade-button-midi-controller-fighter/overview&lt;br /&gt;
&lt;br /&gt;
Vidéo de présentation du projet détaillé par Blitz City DIY : https://www.youtube.com/watch?v=zm90guAoNeI&lt;br /&gt;
&lt;br /&gt;
Vidéo de présentation du projet d'Adafruit: https://www.youtube.com/watch?v=WMKVC1su4Bw&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;/translate&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{PageLang&lt;br /&gt;
|Language=fr&lt;br /&gt;
|SourceLanguage=none&lt;br /&gt;
|IsTranslation=0&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Status&lt;br /&gt;
|Complete=Draft&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Madnerd</name></author>
		
	</entry>
	<entry>
		<id>https://wikifab.org/w/index.php?title=Fichier:Contr_leur_Midi_avec_des_boutons_d_arcade_et_un_RPi_Pico_3d_printing_hero-3.jpg&amp;diff=131402</id>
		<title>Fichier:Contr leur Midi avec des boutons d arcade et un RPi Pico 3d printing hero-3.jpg</title>
		<link rel="alternate" type="text/html" href="https://wikifab.org/w/index.php?title=Fichier:Contr_leur_Midi_avec_des_boutons_d_arcade_et_un_RPi_Pico_3d_printing_hero-3.jpg&amp;diff=131402"/>
		<updated>2021-10-04T11:47:33Z</updated>

		<summary type="html">&lt;p&gt;Madnerd : Contr_leur_Midi_avec_des_boutons_d_arcade_et_un_RPi_Pico_3d_printing_hero-3&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Contr_leur_Midi_avec_des_boutons_d_arcade_et_un_RPi_Pico_3d_printing_hero-3&lt;/div&gt;</summary>
		<author><name>Madnerd</name></author>
		
	</entry>
	<entry>
		<id>https://wikifab.org/w/index.php?title=Fichier:Contr_leur_Midi_avec_des_boutons_d_arcade_et_un_RPi_Pico_3d_printing_hero-oled-joystick.jpg&amp;diff=131399</id>
		<title>Fichier:Contr leur Midi avec des boutons d arcade et un RPi Pico 3d printing hero-oled-joystick.jpg</title>
		<link rel="alternate" type="text/html" href="https://wikifab.org/w/index.php?title=Fichier:Contr_leur_Midi_avec_des_boutons_d_arcade_et_un_RPi_Pico_3d_printing_hero-oled-joystick.jpg&amp;diff=131399"/>
		<updated>2021-10-04T11:25:27Z</updated>

		<summary type="html">&lt;p&gt;Madnerd : Contr_leur_Midi_avec_des_boutons_d_arcade_et_un_RPi_Pico_3d_printing_hero-oled-joystick&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Contr_leur_Midi_avec_des_boutons_d_arcade_et_un_RPi_Pico_3d_printing_hero-oled-joystick&lt;/div&gt;</summary>
		<author><name>Madnerd</name></author>
		
	</entry>
	<entry>
		<id>https://wikifab.org/w/index.php?title=Fichier:Contr_leur_Midi_avec_des_boutons_d_arcade_et_un_RPi_Pico_3d_printing_oled-demo-loop.mp4&amp;diff=131398</id>
		<title>Fichier:Contr leur Midi avec des boutons d arcade et un RPi Pico 3d printing oled-demo-loop.mp4</title>
		<link rel="alternate" type="text/html" href="https://wikifab.org/w/index.php?title=Fichier:Contr_leur_Midi_avec_des_boutons_d_arcade_et_un_RPi_Pico_3d_printing_oled-demo-loop.mp4&amp;diff=131398"/>
		<updated>2021-10-04T11:25:26Z</updated>

		<summary type="html">&lt;p&gt;Madnerd : Contr_leur_Midi_avec_des_boutons_d_arcade_et_un_RPi_Pico_3d_printing_oled-demo-loop&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Contr_leur_Midi_avec_des_boutons_d_arcade_et_un_RPi_Pico_3d_printing_oled-demo-loop&lt;/div&gt;</summary>
		<author><name>Madnerd</name></author>
		
	</entry>
	<entry>
		<id>https://wikifab.org/w/index.php?title=Contr%C3%B4leur_Midi_avec_des_boutons_d%27arcade_et_un_RPi_Pico&amp;diff=131397</id>
		<title>Contrôleur Midi avec des boutons d'arcade et un RPi Pico</title>
		<link rel="alternate" type="text/html" href="https://wikifab.org/w/index.php?title=Contr%C3%B4leur_Midi_avec_des_boutons_d%27arcade_et_un_RPi_Pico&amp;diff=131397"/>
		<updated>2021-10-04T11:23:48Z</updated>

		<summary type="html">&lt;p&gt;Madnerd : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Tuto Details&lt;br /&gt;
|Main_Picture=Contr_leur_Midi_avec_des_boutons_d_arcade_et_un_RPi_Pico_photo7622a97a.jpg&lt;br /&gt;
|Main_Picture_annotation={&amp;quot;version&amp;quot;:&amp;quot;2.4.6&amp;quot;,&amp;quot;objects&amp;quot;:[{&amp;quot;type&amp;quot;:&amp;quot;image&amp;quot;,&amp;quot;version&amp;quot;:&amp;quot;2.4.6&amp;quot;,&amp;quot;originX&amp;quot;:&amp;quot;left&amp;quot;,&amp;quot;originY&amp;quot;:&amp;quot;top&amp;quot;,&amp;quot;left&amp;quot;:-83,&amp;quot;top&amp;quot;:1,&amp;quot;width&amp;quot;:960,&amp;quot;height&amp;quot;:540,&amp;quot;fill&amp;quot;:&amp;quot;rgb(0,0,0)&amp;quot;,&amp;quot;stroke&amp;quot;:null,&amp;quot;strokeWidth&amp;quot;:0,&amp;quot;strokeDashArray&amp;quot;:null,&amp;quot;strokeLineCap&amp;quot;:&amp;quot;butt&amp;quot;,&amp;quot;strokeDashOffset&amp;quot;:0,&amp;quot;strokeLineJoin&amp;quot;:&amp;quot;miter&amp;quot;,&amp;quot;strokeMiterLimit&amp;quot;:4,&amp;quot;scaleX&amp;quot;:0.84,&amp;quot;scaleY&amp;quot;:0.84,&amp;quot;angle&amp;quot;:0,&amp;quot;flipX&amp;quot;:false,&amp;quot;flipY&amp;quot;:false,&amp;quot;opacity&amp;quot;:1,&amp;quot;shadow&amp;quot;:null,&amp;quot;visible&amp;quot;:true,&amp;quot;clipTo&amp;quot;:null,&amp;quot;backgroundColor&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;fillRule&amp;quot;:&amp;quot;nonzero&amp;quot;,&amp;quot;paintFirst&amp;quot;:&amp;quot;fill&amp;quot;,&amp;quot;globalCompositeOperation&amp;quot;:&amp;quot;source-over&amp;quot;,&amp;quot;transformMatrix&amp;quot;:null,&amp;quot;skewX&amp;quot;:0,&amp;quot;skewY&amp;quot;:0,&amp;quot;crossOrigin&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;cropX&amp;quot;:0,&amp;quot;cropY&amp;quot;:0,&amp;quot;src&amp;quot;:&amp;quot;https://wikifab.org/images/e/e1/Contr_leur_Midi_avec_des_boutons_d_arcade_et_un_RPi_Pico_photo7622a97a.jpg&amp;quot;,&amp;quot;filters&amp;quot;:[]}],&amp;quot;height&amp;quot;:449.5774647887324,&amp;quot;width&amp;quot;:600}&lt;br /&gt;
|Description=&amp;lt;translate&amp;gt;Utiliser des boutons de borne d'arcade pour faire un contrôleur Midi&lt;br /&gt;
(Traduction du tutoriel d'Adafruit : Raspberry Pi Pico and Led Arcade Button Midi Controller des Ruiz Brothers)&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Area=Art, Electronics, Music and Sound&lt;br /&gt;
|Type=Création&lt;br /&gt;
|Difficulty=Hard&lt;br /&gt;
|Duration=3&lt;br /&gt;
|Duration-type=day(s)&lt;br /&gt;
|Cost=85&lt;br /&gt;
|Currency=EUR (€)&lt;br /&gt;
|Tags=MIDI, Midi Fighter, Raspberry Pi, Circuit Python, Pico, Adafruit&lt;br /&gt;
}}&lt;br /&gt;
{{Introduction&lt;br /&gt;
|Introduction=&amp;lt;translate&amp;gt;''Dans ce tutoriel, nous allons principalement traduire en français, les instructions des Ruiz Brothers du site Adafruit.''&lt;br /&gt;
&lt;br /&gt;
''Nous y apporterons des notes sur'' &lt;br /&gt;
&lt;br /&gt;
* ''⚠️les difficultés rencontrés'' &lt;br /&gt;
* ''🛒🇫🇷 les liens pour acheter les composants en France.''&lt;br /&gt;
* ''🔧ainsi que les modifications apportés au 🐍code et au design.''&amp;lt;/translate&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{TutoVideo&lt;br /&gt;
|VideoType=Youtube&lt;br /&gt;
|VideoURLYoutube=https://www.youtube.com/watch?v=WMKVC1su4Bw&lt;br /&gt;
}}&lt;br /&gt;
{{Materials&lt;br /&gt;
|ExternalAttachmentsLinks={{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://learn.adafruit.com/raspberry-pi-pico-led-arcade-button-midi-controller-fighter&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;Présentation&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Contr_leur_Midi_avec_des_boutons_d_arcade_et_un_RPi_Pico_3d_printing_loop-thumb-hq.mp4&lt;br /&gt;
|Step_Picture_01=Contr_leur_Midi_avec_des_boutons_d_arcade_et_un_RPi_Pico_3d_printing_hero-1.jpg&lt;br /&gt;
}}&lt;br /&gt;
{{Notes&lt;br /&gt;
|Notes=&amp;lt;translate&amp;gt;Tutoriel en anglais: https://learn.adafruit.com/raspberry-pi-pico-led-arcade-button-midi-controller-fighter/overview&lt;br /&gt;
&lt;br /&gt;
Vidéo de présentation du projet détaillé par Blitz City DIY : https://www.youtube.com/watch?v=zm90guAoNeI&lt;br /&gt;
&lt;br /&gt;
Vidéo de présentation du projet d'Adafruit: https://www.youtube.com/watch?v=WMKVC1su4Bw&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;/translate&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{PageLang&lt;br /&gt;
|Language=fr&lt;br /&gt;
|SourceLanguage=none&lt;br /&gt;
|IsTranslation=0&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Status&lt;br /&gt;
|Complete=Draft&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Madnerd</name></author>
		
	</entry>
	<entry>
		<id>https://wikifab.org/w/index.php?title=Contr%C3%B4leur_Midi_avec_des_boutons_d%27arcade_et_un_RPi_Pico&amp;diff=131396</id>
		<title>Contrôleur Midi avec des boutons d'arcade et un RPi Pico</title>
		<link rel="alternate" type="text/html" href="https://wikifab.org/w/index.php?title=Contr%C3%B4leur_Midi_avec_des_boutons_d%27arcade_et_un_RPi_Pico&amp;diff=131396"/>
		<updated>2021-10-04T11:22:30Z</updated>

		<summary type="html">&lt;p&gt;Madnerd : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Tuto Details&lt;br /&gt;
|Main_Picture=Contr_leur_Midi_avec_des_boutons_d_arcade_et_un_RPi_Pico_photo7622a97a.jpg&lt;br /&gt;
|Main_Picture_annotation={&amp;quot;version&amp;quot;:&amp;quot;2.4.6&amp;quot;,&amp;quot;objects&amp;quot;:[{&amp;quot;type&amp;quot;:&amp;quot;image&amp;quot;,&amp;quot;version&amp;quot;:&amp;quot;2.4.6&amp;quot;,&amp;quot;originX&amp;quot;:&amp;quot;left&amp;quot;,&amp;quot;originY&amp;quot;:&amp;quot;top&amp;quot;,&amp;quot;left&amp;quot;:-83,&amp;quot;top&amp;quot;:1,&amp;quot;width&amp;quot;:960,&amp;quot;height&amp;quot;:540,&amp;quot;fill&amp;quot;:&amp;quot;rgb(0,0,0)&amp;quot;,&amp;quot;stroke&amp;quot;:null,&amp;quot;strokeWidth&amp;quot;:0,&amp;quot;strokeDashArray&amp;quot;:null,&amp;quot;strokeLineCap&amp;quot;:&amp;quot;butt&amp;quot;,&amp;quot;strokeDashOffset&amp;quot;:0,&amp;quot;strokeLineJoin&amp;quot;:&amp;quot;miter&amp;quot;,&amp;quot;strokeMiterLimit&amp;quot;:4,&amp;quot;scaleX&amp;quot;:0.84,&amp;quot;scaleY&amp;quot;:0.84,&amp;quot;angle&amp;quot;:0,&amp;quot;flipX&amp;quot;:false,&amp;quot;flipY&amp;quot;:false,&amp;quot;opacity&amp;quot;:1,&amp;quot;shadow&amp;quot;:null,&amp;quot;visible&amp;quot;:true,&amp;quot;clipTo&amp;quot;:null,&amp;quot;backgroundColor&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;fillRule&amp;quot;:&amp;quot;nonzero&amp;quot;,&amp;quot;paintFirst&amp;quot;:&amp;quot;fill&amp;quot;,&amp;quot;globalCompositeOperation&amp;quot;:&amp;quot;source-over&amp;quot;,&amp;quot;transformMatrix&amp;quot;:null,&amp;quot;skewX&amp;quot;:0,&amp;quot;skewY&amp;quot;:0,&amp;quot;crossOrigin&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;cropX&amp;quot;:0,&amp;quot;cropY&amp;quot;:0,&amp;quot;src&amp;quot;:&amp;quot;https://wikifab.org/images/e/e1/Contr_leur_Midi_avec_des_boutons_d_arcade_et_un_RPi_Pico_photo7622a97a.jpg&amp;quot;,&amp;quot;filters&amp;quot;:[]}],&amp;quot;height&amp;quot;:449.5774647887324,&amp;quot;width&amp;quot;:600}&lt;br /&gt;
|Description=&amp;lt;translate&amp;gt;Utiliser des boutons de borne d'arcade pour faire un contrôleur Midi&lt;br /&gt;
(Traduction du tutoriel d'Adafruit : Raspberry Pi Pico and Led Arcade Button Midi Controller des Ruiz Brothers)&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Area=Art, Electronics, Music and Sound&lt;br /&gt;
|Type=Création&lt;br /&gt;
|Difficulty=Hard&lt;br /&gt;
|Duration=3&lt;br /&gt;
|Duration-type=day(s)&lt;br /&gt;
|Cost=85&lt;br /&gt;
|Currency=EUR (€)&lt;br /&gt;
|Tags=MIDI, Midi Fighter, Raspberry Pi, Circuit Python, Pico, Adafruit&lt;br /&gt;
}}&lt;br /&gt;
{{Introduction&lt;br /&gt;
|Introduction=&amp;lt;translate&amp;gt;''Dans ce tutoriel, nous allons principalement traduire en français, les instructions des Ruiz Brothers du site Adafruit.''&lt;br /&gt;
&lt;br /&gt;
''Nous y apporterons des notes sur'' &lt;br /&gt;
&lt;br /&gt;
* ''⚠️les difficultés rencontrés'' &lt;br /&gt;
* ''🛒🇫🇷 les liens pour acheter les composants en France.''&lt;br /&gt;
* ''🔧ainsi que les modifications apportés au 🐍code et au design.''&amp;lt;/translate&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{TutoVideo&lt;br /&gt;
|VideoType=Youtube&lt;br /&gt;
|VideoURLYoutube=https://www.youtube.com/watch?v=WMKVC1su4Bw&lt;br /&gt;
}}&lt;br /&gt;
{{Materials&lt;br /&gt;
|ExternalAttachmentsLinks={{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://learn.adafruit.com/raspberry-pi-pico-led-arcade-button-midi-controller-fighter&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;Présentation&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Contr_leur_Midi_avec_des_boutons_d_arcade_et_un_RPi_Pico_3d_printing_loop-thumb-hq.mp4&lt;br /&gt;
}}&lt;br /&gt;
{{Notes&lt;br /&gt;
|Notes=&amp;lt;translate&amp;gt;Tutoriel en anglais: https://learn.adafruit.com/raspberry-pi-pico-led-arcade-button-midi-controller-fighter/overview&lt;br /&gt;
&lt;br /&gt;
Vidéo de présentation du projet détaillé par Blitz City DIY : https://www.youtube.com/watch?v=zm90guAoNeI&lt;br /&gt;
&lt;br /&gt;
Vidéo de présentation du projet d'Adafruit: https://www.youtube.com/watch?v=WMKVC1su4Bw&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;/translate&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{PageLang&lt;br /&gt;
|Language=fr&lt;br /&gt;
|SourceLanguage=none&lt;br /&gt;
|IsTranslation=0&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Status&lt;br /&gt;
|Complete=Draft&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Madnerd</name></author>
		
	</entry>
	<entry>
		<id>https://wikifab.org/w/index.php?title=Fichier:Contr_leur_Midi_avec_des_boutons_d_arcade_et_un_RPi_Pico_3d_printing_hero-1.jpg&amp;diff=131395</id>
		<title>Fichier:Contr leur Midi avec des boutons d arcade et un RPi Pico 3d printing hero-1.jpg</title>
		<link rel="alternate" type="text/html" href="https://wikifab.org/w/index.php?title=Fichier:Contr_leur_Midi_avec_des_boutons_d_arcade_et_un_RPi_Pico_3d_printing_hero-1.jpg&amp;diff=131395"/>
		<updated>2021-10-04T11:22:25Z</updated>

		<summary type="html">&lt;p&gt;Madnerd : Contr_leur_Midi_avec_des_boutons_d_arcade_et_un_RPi_Pico_3d_printing_hero-1&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Contr_leur_Midi_avec_des_boutons_d_arcade_et_un_RPi_Pico_3d_printing_hero-1&lt;/div&gt;</summary>
		<author><name>Madnerd</name></author>
		
	</entry>
	<entry>
		<id>https://wikifab.org/w/index.php?title=Fichier:Contr_leur_Midi_avec_des_boutons_d_arcade_et_un_RPi_Pico_3d_printing_loop-thumb-hq.mp4&amp;diff=131394</id>
		<title>Fichier:Contr leur Midi avec des boutons d arcade et un RPi Pico 3d printing loop-thumb-hq.mp4</title>
		<link rel="alternate" type="text/html" href="https://wikifab.org/w/index.php?title=Fichier:Contr_leur_Midi_avec_des_boutons_d_arcade_et_un_RPi_Pico_3d_printing_loop-thumb-hq.mp4&amp;diff=131394"/>
		<updated>2021-10-04T11:21:48Z</updated>

		<summary type="html">&lt;p&gt;Madnerd : Contr_leur_Midi_avec_des_boutons_d_arcade_et_un_RPi_Pico_3d_printing_loop-thumb-hq&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Contr_leur_Midi_avec_des_boutons_d_arcade_et_un_RPi_Pico_3d_printing_loop-thumb-hq&lt;/div&gt;</summary>
		<author><name>Madnerd</name></author>
		
	</entry>
	<entry>
		<id>https://wikifab.org/w/index.php?title=Contr%C3%B4leur_Midi_avec_des_boutons_d%27arcade_et_un_RPi_Pico&amp;diff=131393</id>
		<title>Contrôleur Midi avec des boutons d'arcade et un RPi Pico</title>
		<link rel="alternate" type="text/html" href="https://wikifab.org/w/index.php?title=Contr%C3%B4leur_Midi_avec_des_boutons_d%27arcade_et_un_RPi_Pico&amp;diff=131393"/>
		<updated>2021-10-04T11:20:15Z</updated>

		<summary type="html">&lt;p&gt;Madnerd : Page créée avec « {{Tuto Details |Main_Picture=Contr_leur_Midi_avec_des_boutons_d_arcade_et_un_RPi_Pico_photo7622a97a.jpg |Main_Picture_annotation={&amp;quot;version&amp;quot;:&amp;quot;2.4.6&amp;quot;,&amp;quot;objects&amp;quot;:[{&amp;quot;type&amp;quot;:&amp;quot;ima... »&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Tuto Details&lt;br /&gt;
|Main_Picture=Contr_leur_Midi_avec_des_boutons_d_arcade_et_un_RPi_Pico_photo7622a97a.jpg&lt;br /&gt;
|Main_Picture_annotation={&amp;quot;version&amp;quot;:&amp;quot;2.4.6&amp;quot;,&amp;quot;objects&amp;quot;:[{&amp;quot;type&amp;quot;:&amp;quot;image&amp;quot;,&amp;quot;version&amp;quot;:&amp;quot;2.4.6&amp;quot;,&amp;quot;originX&amp;quot;:&amp;quot;left&amp;quot;,&amp;quot;originY&amp;quot;:&amp;quot;top&amp;quot;,&amp;quot;left&amp;quot;:-83,&amp;quot;top&amp;quot;:1,&amp;quot;width&amp;quot;:960,&amp;quot;height&amp;quot;:540,&amp;quot;fill&amp;quot;:&amp;quot;rgb(0,0,0)&amp;quot;,&amp;quot;stroke&amp;quot;:null,&amp;quot;strokeWidth&amp;quot;:0,&amp;quot;strokeDashArray&amp;quot;:null,&amp;quot;strokeLineCap&amp;quot;:&amp;quot;butt&amp;quot;,&amp;quot;strokeDashOffset&amp;quot;:0,&amp;quot;strokeLineJoin&amp;quot;:&amp;quot;miter&amp;quot;,&amp;quot;strokeMiterLimit&amp;quot;:4,&amp;quot;scaleX&amp;quot;:0.84,&amp;quot;scaleY&amp;quot;:0.84,&amp;quot;angle&amp;quot;:0,&amp;quot;flipX&amp;quot;:false,&amp;quot;flipY&amp;quot;:false,&amp;quot;opacity&amp;quot;:1,&amp;quot;shadow&amp;quot;:null,&amp;quot;visible&amp;quot;:true,&amp;quot;clipTo&amp;quot;:null,&amp;quot;backgroundColor&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;fillRule&amp;quot;:&amp;quot;nonzero&amp;quot;,&amp;quot;paintFirst&amp;quot;:&amp;quot;fill&amp;quot;,&amp;quot;globalCompositeOperation&amp;quot;:&amp;quot;source-over&amp;quot;,&amp;quot;transformMatrix&amp;quot;:null,&amp;quot;skewX&amp;quot;:0,&amp;quot;skewY&amp;quot;:0,&amp;quot;crossOrigin&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;cropX&amp;quot;:0,&amp;quot;cropY&amp;quot;:0,&amp;quot;src&amp;quot;:&amp;quot;https://wikifab.org/images/e/e1/Contr_leur_Midi_avec_des_boutons_d_arcade_et_un_RPi_Pico_photo7622a97a.jpg&amp;quot;,&amp;quot;filters&amp;quot;:[]}],&amp;quot;height&amp;quot;:449.5774647887324,&amp;quot;width&amp;quot;:600}&lt;br /&gt;
|Description=&amp;lt;translate&amp;gt;Utiliser des boutons de borne d'arcade pour faire un contrôleur Midi&lt;br /&gt;
(Traduction du tutoriel d'Adafruit : Raspberry Pi Pico and Led Arcade Button Midi Controller des Ruiz Brothers)&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Area=Art, Electronics, Music and Sound&lt;br /&gt;
|Type=Création&lt;br /&gt;
|Difficulty=Hard&lt;br /&gt;
|Duration=3&lt;br /&gt;
|Duration-type=day(s)&lt;br /&gt;
|Cost=85&lt;br /&gt;
|Currency=EUR (€)&lt;br /&gt;
|Tags=MIDI, Midi Fighter, Raspberry Pi, Circuit Python, Pico, Adafruit&lt;br /&gt;
}}&lt;br /&gt;
{{Introduction&lt;br /&gt;
|Introduction=&amp;lt;translate&amp;gt;''Dans ce tutoriel, nous allons principalement traduire en français, les instructions des Ruiz Brothers du site Adafruit.''&lt;br /&gt;
&lt;br /&gt;
''Nous y apporterons des notes sur'' &lt;br /&gt;
&lt;br /&gt;
* ''⚠️les difficultés rencontrés'' &lt;br /&gt;
* ''🛒🇫🇷 les liens pour acheter les composants en France.''&lt;br /&gt;
* ''🔧ainsi que les modifications apportés au 🐍code et au design.''&amp;lt;/translate&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{TutoVideo&lt;br /&gt;
|VideoType=Youtube&lt;br /&gt;
|VideoURLYoutube=https://www.youtube.com/watch?v=WMKVC1su4Bw&lt;br /&gt;
}}&lt;br /&gt;
{{Materials&lt;br /&gt;
|ExternalAttachmentsLinks={{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://learn.adafruit.com/raspberry-pi-pico-led-arcade-button-midi-controller-fighter&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;/translate&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{Notes&lt;br /&gt;
|Notes=&amp;lt;translate&amp;gt;Tutoriel en anglais: https://learn.adafruit.com/raspberry-pi-pico-led-arcade-button-midi-controller-fighter/overview&lt;br /&gt;
&lt;br /&gt;
Vidéo de présentation du projet détaillé par Blitz City DIY : https://www.youtube.com/watch?v=zm90guAoNeI&lt;br /&gt;
&lt;br /&gt;
Vidéo de présentation du projet d'Adafruit: https://www.youtube.com/watch?v=WMKVC1su4Bw&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;/translate&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{PageLang&lt;br /&gt;
|SourceLanguage=none&lt;br /&gt;
|IsTranslation=0&lt;br /&gt;
|Language=fr&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Status&lt;br /&gt;
|Complete=Draft&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Madnerd</name></author>
		
	</entry>
	<entry>
		<id>https://wikifab.org/w/index.php?title=Fichier:Contr_leur_Midi_avec_des_boutons_d_arcade_et_un_RPi_Pico_photo7622a97a.jpg&amp;diff=131391</id>
		<title>Fichier:Contr leur Midi avec des boutons d arcade et un RPi Pico photo7622a97a.jpg</title>
		<link rel="alternate" type="text/html" href="https://wikifab.org/w/index.php?title=Fichier:Contr_leur_Midi_avec_des_boutons_d_arcade_et_un_RPi_Pico_photo7622a97a.jpg&amp;diff=131391"/>
		<updated>2021-10-04T11:02:00Z</updated>

		<summary type="html">&lt;p&gt;Madnerd : Contr_leur_Midi_avec_des_boutons_d_arcade_et_un_RPi_Pico_photo7622a97a&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Contr_leur_Midi_avec_des_boutons_d_arcade_et_un_RPi_Pico_photo7622a97a&lt;/div&gt;</summary>
		<author><name>Madnerd</name></author>
		
	</entry>
	<entry>
		<id>https://wikifab.org/w/index.php?title=Brancher_des_p%C3%A9riph%C3%A9riques_USB_sur_un_ESP8266&amp;diff=103910</id>
		<title>Brancher des périphériques USB sur un ESP8266</title>
		<link rel="alternate" type="text/html" href="https://wikifab.org/w/index.php?title=Brancher_des_p%C3%A9riph%C3%A9riques_USB_sur_un_ESP8266&amp;diff=103910"/>
		<updated>2020-11-09T12:28:34Z</updated>

		<summary type="html">&lt;p&gt;Madnerd : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Tuto Details&lt;br /&gt;
|Main_Picture=Brancher_des_périphériques_USB_sur_un_ESP8266_usbhost_wiki.jpg&lt;br /&gt;
|Description=&amp;lt;translate&amp;gt;&amp;lt;!--T:64--&amp;gt;&lt;br /&gt;
Saviez vous que vous pouvez brancher des périphériques USB sur un Arduino ou un ESP ?&lt;br /&gt;
Que ce soit un clavier, une souris, un manette de jeu ou un contrôleur MIDI, c'est possible !&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Area=Electronics, Music and Sound, Play and Hobbies&lt;br /&gt;
|Type=Technique&lt;br /&gt;
|Difficulty=Medium&lt;br /&gt;
|Duration=2&lt;br /&gt;
|Duration-type=hour(s)&lt;br /&gt;
|Cost=6&lt;br /&gt;
|Currency=EUR (€)&lt;br /&gt;
|Tags=arduino, esp8266, esp32, usb host, clavier, souris, manette, xbox, MIDI&lt;br /&gt;
|SourceLanguage=none&lt;br /&gt;
|Language=fr&lt;br /&gt;
|IsTranslation=0&lt;br /&gt;
}}&lt;br /&gt;
{{Introduction&lt;br /&gt;
|Introduction=&amp;lt;translate&amp;gt;&amp;lt;!--T:65--&amp;gt;&lt;br /&gt;
Je jouais avec '''Mozzi''', une '''bibliothèque de synthèse audio''' (https://sensorium.github.io/Mozzi/), quand je me suis rendu compte que si je voulais vraiment pouvoir exploiter tout le potentiel de cette bibliothèque, j'allais devoir faire un contrôleur.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:66--&amp;gt;&lt;br /&gt;
Si seulement, je pouvais brancher un '''clavier''' ou un '''contrôleur midi''', ça serait carrément plus simple !&amp;lt;/translate&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{TutoVideo&lt;br /&gt;
|VideoType=Youtube&lt;br /&gt;
|VideoURLYoutube=https://www.youtube.com/watch?v=CeLYOu-UGXA&lt;br /&gt;
}}&lt;br /&gt;
{{Materials&lt;br /&gt;
|Step_Picture_00=Contrôler_des_neopixels_comme_un_DJ_Envoyer_un_message_sur_discord_wemos.png&lt;br /&gt;
|Step_Picture_01=Brancher_des_périphériques_USB_sur_un_ESP8266_usbhost_mini_def.png&lt;br /&gt;
|Material=&amp;lt;translate&amp;gt;&amp;lt;!--T:67--&amp;gt;&lt;br /&gt;
* Un microcontrôleur 3.3v (par ex: Wemos Mini)&lt;br /&gt;
* Un USB Host Mini&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Tools=&amp;lt;translate&amp;gt;&amp;lt;!--T:68--&amp;gt; Un petit tournevis plat / Un cutter fin&amp;lt;/translate&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;&amp;lt;!--T:69--&amp;gt;&lt;br /&gt;
Choisir l'USB Host&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;!--T:70--&amp;gt;&lt;br /&gt;
Merci à CircuitatHome pour la création de l'USB Host&lt;br /&gt;
https://www.circuitsathome.com/usb-host-shield-hardware-manual/&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:71--&amp;gt;&lt;br /&gt;
Dans ce tutoriel nous allons utilisé un clone de l''''USB Host Mini'''.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:72--&amp;gt;&lt;br /&gt;
La puce sur celle-ci est un MAX3421E qui ne fonctionne quand 3.3v&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:73--&amp;gt;&lt;br /&gt;
{{Idea|Si vous voulez utiliser un microcontrôleur en 5v (comme l'Arduino Uno / Nano) utiliser plutôt le Shield USB Host.}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:74--&amp;gt;&lt;br /&gt;
Malheureusement avant de pouvoir brancher notre USB Host, il va nous falloir '''régler plusieurs problèmes''' sinon '''cela ne marchera pas.'''&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Brancher_des_périphériques_USB_sur_un_ESP8266_3V3_only.png&lt;br /&gt;
|Step_Picture_01=Brancher_des_périphériques_USB_sur_un_ESP8266_usbhost_mini.jpg&lt;br /&gt;
|Step_Picture_02=Brancher_des_périphériques_USB_sur_un_ESP8266_usbhost_shield.jpg&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;&amp;lt;!--T:75--&amp;gt;&lt;br /&gt;
Régler le problème d'alimentation&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;!--T:76--&amp;gt;&lt;br /&gt;
Si vous avez acheté '''un clone de l'USB Host Mini''', il n'y a pas de '''jumper pour le VBUS'''.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:77--&amp;gt;&lt;br /&gt;
Cela veut dire que les périphériques USB '''seront alimentés en 3.3v'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:78--&amp;gt;&lt;br /&gt;
Malheureusement, '''aucun de mes périphériques ne marche,''' car ils '''nécessitent tous du 5v.'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:79--&amp;gt;&lt;br /&gt;
Vous pouvez en apprendre plus sur ce lien (en japonais)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:80--&amp;gt;&lt;br /&gt;
https://ht-deko.com/arduino/shield_usbhost_mini.html&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:81--&amp;gt;&lt;br /&gt;
Il va falloir couper une trace sur le circuit pour régler ce problème.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:82--&amp;gt;&lt;br /&gt;
J'ai utilisé un '''petit tournevis plat''', mais si vous avez un '''cutter fin c'est surement mieux.'''&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Brancher_des_périphériques_USB_sur_un_ESP8266_usbhost_mini_fix.jpg&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;&amp;lt;!--T:83--&amp;gt;&lt;br /&gt;
Brancher l'USB Host&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;!--T:84--&amp;gt;&lt;br /&gt;
OK, j'espère que vous n'avez pas cassé votre carte! Maintenant il est temps de la brancher !&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:85--&amp;gt;&lt;br /&gt;
J'ai utilisé un Wemos Mini D1 avec mon USB Host Mini, voici comment le brancher.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:86--&amp;gt;&lt;br /&gt;
{{Info|Je n'ai pas relié la broche INT, car celle-ci ne semble pas nécessaire au fonctionnement}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:87--&amp;gt;&lt;br /&gt;
*D3 -- SS&lt;br /&gt;
*D7 -- MOSI&lt;br /&gt;
*D6 -- MISO&lt;br /&gt;
*D5 -- SCK&lt;br /&gt;
*RST -- RST&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:88--&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Brancher_des_périphériques_USB_sur_un_ESP8266_usbhost_esp.jpg&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;&amp;lt;!--T:89--&amp;gt;&lt;br /&gt;
Régler le problème avec la bibliothèque USB Host&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;!--T:90--&amp;gt;&lt;br /&gt;
Vous avez peut-être remarqué que pour la broche SS (Chip Select / CS) j'ai utilisé la '''broche D3''' au lieu de la '''broche par défaut D8.'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:91--&amp;gt;&lt;br /&gt;
J'ai eu un problème avec l'USB Host qui mettait mon Wemos Mini en mode programmation et bloqué l'exécution du sketch.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:92--&amp;gt;&lt;br /&gt;
https://github.com/felis/USB_Host_Shield_2.0/issues/457&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:93--&amp;gt;&lt;br /&gt;
Afin de '''changer la broche SS''', il va falloir changer une ligne dans la bibliothèque.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:94--&amp;gt;&lt;br /&gt;
Télécharger '''USB Host Shield Library 2.0'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:95--&amp;gt;&lt;br /&gt;
Ouvrez le fichier '''UsbCore.h''' dans '''libraries/USB_Host_Shield_Library_2.0''' et changer cette ligne&lt;br /&gt;
 &lt;br /&gt;
&amp;lt;code&amp;gt;#elif defined(ESP8266)typedef MAX3421e&amp;lt;P15, P5&amp;gt; MAX3421E; // ESP8266 boards &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:96--&amp;gt;&lt;br /&gt;
Avec cette ligne&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:97--&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;#elif defined(ESP8266)typedef MAX3421e&amp;lt;P0, P5&amp;gt; MAX3421E; // ESP8266 boards&amp;lt;/code&amp;gt;&lt;br /&gt;
{{Info|Pourquoi P0 au lieu de D3 ? c'est parce que le GPIO0 est le D3 sur le Wemos Mini.}}&lt;br /&gt;
https://escapequotes.net/esp8266-wemos-d1-mini-pins-and-diagram/&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Brancher_des_périphériques_USB_sur_un_ESP8266_image_Ky517r0vQa.jpg&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;&amp;lt;!--T:98--&amp;gt;&lt;br /&gt;
Downgrader ESP8266&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;!--T:99--&amp;gt;&lt;br /&gt;
On y est presque, si vous essayez de compiler un exemple dans la bibliothèque, '''il ne marchera pas!'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:100--&amp;gt;&lt;br /&gt;
{{Info|Ce problème a été réglé récemment, cette étape n'est nécessaire que si vous utilisez la version 1.3.2 de cette bibliothèque}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:101--&amp;gt;&lt;br /&gt;
Il y a une incompatibilité entre la bibliothèque et la version 2.5 d'ESP8266 sur le logiciel Arduino.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:102--&amp;gt;&lt;br /&gt;
'''Il va falloir downgrader celle-ci à 2.4.2'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:103--&amp;gt;&lt;br /&gt;
https://github.com/felis/USB_Host_Shield_2.0/issues/449&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:104--&amp;gt;&lt;br /&gt;
Aller dans '''Outils''' / '''Type de carte''' / '''Gestionnaire de carte''' et changer la version à '''2.4.2'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:105--&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Brancher_des_périphériques_USB_sur_un_ESP8266_esp8266_lib.jpg&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;&amp;lt;!--T:106--&amp;gt;&lt;br /&gt;
Test l'USB Host&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;!--T:107--&amp;gt;&lt;br /&gt;
Il y a beaucoup d'exemples dans l''''USB Host Shield Library 2.0.'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:108--&amp;gt;&lt;br /&gt;
Afin de tester si tout marche correctement, je vous conseille de commencer par '''USB_desc'''.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:109--&amp;gt;&lt;br /&gt;
*'''Téléverser''' USB_desc&lt;br /&gt;
*Ouvrez le  '''Moniteur Série''' (115200)&lt;br /&gt;
*'''Brancher votre périphérique USB'''&lt;br /&gt;
*'''Redémarrer la carte''' (ESP8266)&lt;br /&gt;
{{Info|Il n'est pas possible de brancher &amp;quot;à chaud&amp;quot; le périphérique USB (du moins dans les exemples)&lt;br /&gt;
Vous devez redémarrer votre carte à chaque fois que vous débrancher et rebrancher un périphérique.}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:110--&amp;gt;&lt;br /&gt;
Vous devriez voir un long message décrivant votre périphérique.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:111--&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Brancher_des_périphériques_USB_sur_un_ESP8266_usbhost_ex.jpg&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;&amp;lt;!--T:112--&amp;gt;&lt;br /&gt;
Exemple : Manette XBOX360&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;!--T:113--&amp;gt;&lt;br /&gt;
Si vous avez une manette de '''XBOX360 pour PC''', vous pouvez tester l'exemple : X'''BOX/XBOXUSB'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:114--&amp;gt;&lt;br /&gt;
*'''L2/R2''' vibre quand vous appuyez dessus.&lt;br /&gt;
*L2/R2 : 0/255&lt;br /&gt;
*Stick (Hat) X/Y : -32768 / 32768&lt;br /&gt;
*Les LED peuvent aussi être contrôlées ! (appuyer sur '''pad''' / '''back''' / '''start''' / '''xbox''' pour essayer)&amp;lt;/translate&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;&amp;lt;!--T:115--&amp;gt;&lt;br /&gt;
Exemple : Souris&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;!--T:116--&amp;gt;&lt;br /&gt;
Je n'ai pas réussi à utiliser ma souris. L'exemple se trouve ici : '''HID/USBHIDBootMouse'''&amp;lt;/translate&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;&amp;lt;!--T:117--&amp;gt;&lt;br /&gt;
Exemple : Contrôleur Midi&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;!--T:118--&amp;gt;&lt;br /&gt;
Ouvrez l'exemple '''USBH_MIDI/USBH_MIDI_dump'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:119--&amp;gt;&lt;br /&gt;
La plupart des périphériques MIDI n'utilisent qu'une petite partie du buffer ('''bufMidi''')&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:120--&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;00001679: 64: 09 90 2F 13 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:121--&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;0000174A: 64: 08 80 2F 7F 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:122--&amp;gt;&lt;br /&gt;
*bufMidi[0] : Note ON (9) / Note OFF (8)&lt;br /&gt;
*bufMidi[2] : Note&lt;br /&gt;
*bufMidi[3] : Velocity&amp;lt;/translate&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;&amp;lt;!--T:123--&amp;gt;&lt;br /&gt;
Conclusion&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;!--T:124--&amp;gt;&lt;br /&gt;
Utiliser des périphériques USB ouvre la porte à énormément de possibilités avec nos microcontrôleurs&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:125--&amp;gt;&lt;br /&gt;
Nous n'avons vu qu'une infime partie de ce qu'il est possible de faire.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:126--&amp;gt;&lt;br /&gt;
*Vous pouvez utiliser un '''Hub USB''' pour contrôler plusieurs périphériques USB.&lt;br /&gt;
*Il y a plein de broches sur l'USB Host, c'est parce qu’elle sont utilisables comme des GPIO ! Il est possible de brancher des boutons / LED même un écran LCD dessus.&lt;br /&gt;
*Il est même possible d'utiliser des '''clés''' '''USB.'''&amp;lt;/translate&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;&amp;lt;!--T:127--&amp;gt;&lt;br /&gt;
Adaptation ESP32&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;!--T:128--&amp;gt;&lt;br /&gt;
Le branchement sur ESP32 (testé sur DOIT ESP32 DEVKIT V1):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:129--&amp;gt;&lt;br /&gt;
SS : GPIO5&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:130--&amp;gt;&lt;br /&gt;
INT : GPIO17&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:131--&amp;gt;&lt;br /&gt;
SCK : GPIO18&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:132--&amp;gt;&lt;br /&gt;
MISO: GPIO19&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:133--&amp;gt;&lt;br /&gt;
MOSI:  GPIO23&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:134--&amp;gt;&lt;br /&gt;
RST : 3.3V&amp;lt;/translate&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{Notes&lt;br /&gt;
|Notes=&amp;lt;translate&amp;gt;&amp;lt;/translate&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{PageLang&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Status&lt;br /&gt;
|Complete=Published&lt;br /&gt;
}}&lt;br /&gt;
{{Separator}}&lt;/div&gt;</summary>
		<author><name>Madnerd</name></author>
		
	</entry>
	<entry>
		<id>https://wikifab.org/w/index.php?title=Contr%C3%B4ler_des_neopixels_comme_un_DJ&amp;diff=65370</id>
		<title>Contrôler des neopixels comme un DJ</title>
		<link rel="alternate" type="text/html" href="https://wikifab.org/w/index.php?title=Contr%C3%B4ler_des_neopixels_comme_un_DJ&amp;diff=65370"/>
		<updated>2019-05-31T22:28:15Z</updated>

		<summary type="html">&lt;p&gt;Madnerd : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ {{tntn|Tuto Details}}&lt;br /&gt;
|Main_Picture=Contrôler_des_neopixels_comme_un_DJ_jinx.gif&lt;br /&gt;
|Licences=Attribution (CC BY)&lt;br /&gt;
|Description=&amp;lt;translate&amp;gt;&amp;lt;!--T:1--&amp;gt; Utilisez un ESP8266 pour contrôler des neopixels (ws2812) comme un technicien lumière depuis le Wi-Fi avec uniquement des logiciels gratuits.&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Area=Art, Electronics, Music and Sound&lt;br /&gt;
|Type=Creation&lt;br /&gt;
|Difficulty=Very easy&lt;br /&gt;
|Duration=1&lt;br /&gt;
|Duration-type=hour(s)&lt;br /&gt;
|Cost=5&lt;br /&gt;
|Currency=EUR (€)&lt;br /&gt;
|Tags=neopixels, leds, esp8266, wifi, sacn, DMX, ARTNET, ws2812&lt;br /&gt;
|SourceLanguage=none&lt;br /&gt;
|Language=fr&lt;br /&gt;
|IsTranslation=0&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Introduction}}&lt;br /&gt;
|Introduction=&amp;lt;translate&amp;gt;&amp;lt;!--T:2--&amp;gt;&lt;br /&gt;
Pour contrôler nos LED, nous allons utiliser le protocole Art-Net : https://fr.wikipedia.org/wiki/Art-Net&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:3--&amp;gt;&lt;br /&gt;
Ce protocole permet de transmettre des instructions DMX à travers le réseau en utilisant l'UDP.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:4--&amp;gt;&lt;br /&gt;
Cette méthode est très rapide , fiable et compatible avec la plupart des systèmes d'éclairage professionnels.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:5--&amp;gt;&lt;br /&gt;
Une fois que nous aurons créer notre appareil avec l'ESP8266 nous allons utiliser Jinx, un logiciel sous Windows qui permet de contrôler nos LEDs.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:6--&amp;gt;&lt;br /&gt;
Ce logiciel très complet permet de créer des animations à l'aide du son, d'une image, d'une vidéo, d'une webcam, même de capturer l'image de l'écran et aussi d'afficher du texte.&amp;lt;/translate&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|TutoVideo}}&lt;br /&gt;
|VideoType=Youtube&lt;br /&gt;
|VideoURLYoutube=https://www.youtube.com/watch?v=zZPmNH3cheA&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Materials}}&lt;br /&gt;
|Material=&amp;lt;translate&amp;gt;&amp;lt;!--T:7--&amp;gt;&lt;br /&gt;
* ESP8266 (Wemos D1 Mini)&lt;br /&gt;
* Matrix WS2812b (ou strip de LED)&lt;br /&gt;
* Resistance 475 Ohm (entre 300/500)&lt;br /&gt;
* Condensateur 1000µF (optionnel)&lt;br /&gt;
* Alimentation dédié pour les leds (optionnel)&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Tools=&amp;lt;translate&amp;gt;&amp;lt;/translate&amp;gt;&lt;br /&gt;
|ExternalAttachmentsLinks={{ {{tntn|ExternalAttachmentsLinks}}&lt;br /&gt;
|ExternalAttachmentsLinks=http://www.live-leds.de/&lt;br /&gt;
}}{{ {{tntn|ExternalAttachmentsLinks}}&lt;br /&gt;
|ExternalAttachmentsLinks=https://github.com/mtongnz/ESP8266_ArtNetNode_v2&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Separator}}}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;&amp;lt;!--T:8--&amp;gt; Préparer l'ESP8266&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;!--T:9--&amp;gt;&lt;br /&gt;
Si vous ne l'avez pas fait, ajouter le support de l'ESP8266 dans le logiciel Arduino : [https://github.com/esp8266/Arduino#installing-with-boards-manager https://github.com/esp8266/Arduino#installing-with-boards-manager.]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:10--&amp;gt;&lt;br /&gt;
Il y a plusieurs façons d'uploader le firmware que nous allons utiliser, le plus simple est d'utiliser l'exemple '''ESP8266WebServer -&amp;gt; WebUpdate.'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:11--&amp;gt;&lt;br /&gt;
N'oubliez pas de changer STASSID et STAPSK avec le nom de votre réseau Wi-Fi et votre mot de passe.&lt;br /&gt;
 #define STASSID &amp;quot;your-ssid&amp;quot;&lt;br /&gt;
 #define STAPSK &amp;quot;your-password&amp;quot;&lt;br /&gt;
* Téléverser '''ESP8266WebServer -&amp;gt; WebUpdate.'''&lt;br /&gt;
* Appuyer sur le bouton RESET de l'ESP8266.&lt;br /&gt;
* Aller sur http://esp8266-webupdate.local.&amp;lt;/translate&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;&amp;lt;!--T:12--&amp;gt; Uploader ESP8266_ArtNetNode&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;!--T:13--&amp;gt;&lt;br /&gt;
Nous pouvez maintenant flasher le firmware sur notre ESP8266&lt;br /&gt;
* Télécharger ESP8266_ArtNetNode ici : https://github.com/mtongnz/ESP8266_ArtNetNode_v2.&lt;br /&gt;
* Retourner sur [http://esp8266-webupdate.local http://esp8266-webupdate.local.]&lt;br /&gt;
* Cliquer sur Parcourir et sélectionner '''espArtnetNode_2.0.0_b5g_WEMOS.bin'''&lt;br /&gt;
* Cliquer sur update.&lt;br /&gt;
L'ESP8266 va redémarrer plusieurs fois avant d'être disponible.&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Contrôler_des_neopixels_comme_un_DJ_browse.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;&amp;lt;!--T:14--&amp;gt; Paramétrage Wi-Fi&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;!--T:15--&amp;gt;&lt;br /&gt;
L'ESP8266 est maintenant en mode HotSpot, chercher le réseau Wi-Fi avec comme nom  '''espArtNode_00XXX.'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:16--&amp;gt;&lt;br /&gt;
Le mot de passe est :  '''byMtongnz2017'''&lt;br /&gt;
* Allez sur http://2.0.0.1 et cliquez sur WIFI pour paramétrer le SSID/mot de passe&lt;br /&gt;
* Cliquer sur '''REBOOT.'''&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Contrôler_des_neopixels_comme_un_DJ_arnet2.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;&amp;lt;!--T:17--&amp;gt; Trouver l'adresse IP de espArtNode&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;!--T:18--&amp;gt;&lt;br /&gt;
Malheureusement, espArtNode n'utilise pas '''mdns''', donc vous devrez trouver l'adresse IP par vous même.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:19--&amp;gt;&lt;br /&gt;
Vous pouvez utiliser [https://www.fing.com/ fing] (la version Android est la plus facile à utiliser) ou [https://play.google.com/store/apps/details?id=com.litux.art_net_controller_lite ArtNet-Lite] (cette application détecte automatiquement les appareils avec ArtNet)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:20--&amp;gt;&lt;br /&gt;
Jinx (le logiciel que nous allons utiliser pour contrôler les LED) a un mode SCAN, mais il ne marche pas avec espArtNetNode.&amp;lt;/translate&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;&amp;lt;!--T:21--&amp;gt; Paramétrer les NeoPixels&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;!--T:22--&amp;gt;&lt;br /&gt;
Dernier point, paramétrer le PORT A pour qu'il gère des LEDs NeoPixel.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:23--&amp;gt;&lt;br /&gt;
Le '''PORT A''' correspond à la '''broche TX.'''&lt;br /&gt;
* Cliquer sur PORT A.&lt;br /&gt;
* Dans '''Port Type''', mettre '''LED pixels - WS2812.'''&lt;br /&gt;
* Cliquer sur '''Save Changes.'''&lt;br /&gt;
* Changez number of pixels.&lt;br /&gt;
{{Info|Number of pixels n'apparait qu'après avoir sauvegardé les changements}}&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Contrôler_des_neopixels_comme_un_DJ_arnet4.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;&amp;lt;!--T:24--&amp;gt; Paramétrer Matrix Options&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;!--T:25--&amp;gt;&lt;br /&gt;
Voilà, notre appareil est prêt, mais il nous reste à paramétrer 3 choses dans Jinx pour le contrôler.&lt;br /&gt;
* '''Matrix Options''': Cette option paramètre la matrice virtuelle dans Jinx&lt;br /&gt;
* '''Output devices''': les appareils connectés à Jinx&lt;br /&gt;
* '''Output Patch''' : La position de chaque LED.&lt;br /&gt;
Si vous ne l'avez pas déjà fait brancher votre matrice / strip de LED à votre ESP8266&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:26--&amp;gt;&lt;br /&gt;
{{Warning|Alimenter beaucoup de LED peut être compliqué, je vous conseille de lire attentivement le guide d'Adafruit. : https://learn.adafruit.com/adafruit-neopixel-uberguide/the-magic-of-neopixels}}&lt;br /&gt;
{{Idea|Il est possible d'alimenter même une centaine de LED rien qu'avec l'USB du moment que vous réglait la luminosité au minimum. Faites attention si la luminosité est trop importante les LED vont se comporter bizarrement et peuvent être endommagés !}}&lt;br /&gt;
* Télécharger Jinx ici : http://www.live-leds.de/&lt;br /&gt;
* Aller dans '''Setup -&amp;gt; Matrix Options'''&lt;br /&gt;
* Paramétrer '''Width (largeur) / Height (longueur)'''&lt;br /&gt;
{{Info|Vous n'avez pas une matrice, juste un strip de LED? &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:27--&amp;gt;&lt;br /&gt;
Paramétrer la longueur (width) sur la longueur de votre strip et height (longueur) sur 4 (valeur minimum)}}&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Contrôler_des_neopixels_comme_un_DJ_wemos_neopixels.png&lt;br /&gt;
|Step_Picture_01=Contrôler_des_neopixels_comme_un_DJ_matrixoptions.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;&amp;lt;!--T:28--&amp;gt; Paramétrer Output Devices&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;!--T:29--&amp;gt;&lt;br /&gt;
Maintenant, nous allons connecter notre ESP à Jinx.&lt;br /&gt;
* Aller sur '''Setup -&amp;gt; Output Devices'''&lt;br /&gt;
* Cliquer sur '''Add'''&lt;br /&gt;
* Choissisez '''Art-Net''' (option par défaut)&lt;br /&gt;
* Déselectionner '''Broadcast''' (le broadcast est très lent)&lt;br /&gt;
* Mettez l'adresse IP de votre ESP&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Contrôler_des_neopixels_comme_un_DJ_outputdevices.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;&amp;lt;!--T:30--&amp;gt; Paramétrer Output Patch&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;!--T:31--&amp;gt;&lt;br /&gt;
Dernière chose à faire, il nous faut expliquer à Jinx dans quel ordre sont les LED.&lt;br /&gt;
* Aller sur '''Setup -&amp;gt; Output Patch.'''&lt;br /&gt;
* Choissisez votre ESP.&lt;br /&gt;
* Cliquer sur '''Fast Patch.'''&lt;br /&gt;
* Sélectionner la taille de votre matrice de LED.&lt;br /&gt;
* Dans '''Patch Mode,''' mettez le sens de votre matrice.&lt;br /&gt;
* Dans Pixel Order, mettez '''GRB.'''&lt;br /&gt;
* '''Vérifier que First channel est bien à 0.'''&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Contrôler_des_neopixels_comme_un_DJ_fastpatch.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;&amp;lt;!--T:32--&amp;gt; Testez les LED&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;!--T:33--&amp;gt;&lt;br /&gt;
{{Info|Il y a de grandes chances que vous ne paramétrerez pas vos LED correctement du premier coup, recommencez la partie Output Patch en cliquant sur Clear Patch avant et recommencez si c'est le cas. }}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:34--&amp;gt;&lt;br /&gt;
Si vous avez un doute sur votre alimentation, commencez par baisser la valeur Master afin de ne pas abimer vos LED.&lt;br /&gt;
* Aller dans '''Setup / Start Output'''&lt;br /&gt;
* Dans '''Channel 1''', choisissez '''Simple Color''', vérifiez que les LED s'allument&lt;br /&gt;
* Cliquez sur '''Edit''' et vérifier que la couleur Rouge / Vert / Bleu est correcte.&lt;br /&gt;
* Dans '''Channel 1''', choisissez '''Radar/Scan Lines'''&lt;br /&gt;
* Vérifier que votre matrice '''affiche correctement la ligne'''&lt;br /&gt;
Je ne vais pas rentrer plus en détail sur le fonctionnement de Jinx, essayez par vous même! Un manuel est disponible (en anglais) ici : http://www.live-leds.de/downloads/&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Contrôler_des_neopixels_comme_un_DJ_jinx_brightness.png&lt;br /&gt;
|Step_Picture_01=Contrôler_des_neopixels_comme_un_DJ_jinx_radarscan.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;&amp;lt;!--T:35--&amp;gt; Notes sur les LED&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;!--T:36--&amp;gt;&lt;br /&gt;
Vous pouvez trouver les modèles 3D de mes LED sur Thingiverse :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:43--&amp;gt;&lt;br /&gt;
*https://www.thingiverse.com/thing:3458654&lt;br /&gt;
*https://www.thingiverse.com/thing:3462891&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:44--&amp;gt;&lt;br /&gt;
Ces modèles sont faits par Olivier Sarrailh.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:37--&amp;gt;&lt;br /&gt;
Si vous voulez faire une matrice de LED, je ne vous conseille pas d'utiliser des strip de LED, c'est difficile de les aligner, utiliser plutôt des matrices toutes faites (flexible si vous voulez créer une matrice circulaire)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:38--&amp;gt;&lt;br /&gt;
Je me répète, mais jetez un œil à la documentation d'Adafruit sur l'alimentation des LED&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:39--&amp;gt;&lt;br /&gt;
https://learn.adafruit.com/adafruit-neopixel-uberguide/the-magic-of-neopixels&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:40--&amp;gt;&lt;br /&gt;
A contrario de ce qui y est dit, il est possible d'alimenter des matrices plus ou moins grandes avec juste un câble USB, si vous baissez la luminosité.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:45--&amp;gt;&lt;br /&gt;
Attention, vous risquez d'abimer les LED, si vous monter accidentellement la luminosité.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:41--&amp;gt;&lt;br /&gt;
Voilà pour ce tutoriel, n'hésitez pas à laisser un commentaire.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:42--&amp;gt;&lt;br /&gt;
Et suivez-moi sur twitter pour avoir plus d'informations sur les prochains tutoriels !  https://twitter.com/m4dnerd.&amp;lt;/translate&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Notes}}&lt;br /&gt;
|Notes=&amp;lt;translate&amp;gt;&amp;lt;/translate&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Status}}&lt;br /&gt;
|Complete=Published&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Madnerd</name></author>
		
	</entry>
	<entry>
		<id>https://wikifab.org/w/index.php?title=Contr%C3%B4ler_des_neopixels_comme_un_DJ&amp;diff=65367</id>
		<title>Contrôler des neopixels comme un DJ</title>
		<link rel="alternate" type="text/html" href="https://wikifab.org/w/index.php?title=Contr%C3%B4ler_des_neopixels_comme_un_DJ&amp;diff=65367"/>
		<updated>2019-05-31T22:24:15Z</updated>

		<summary type="html">&lt;p&gt;Madnerd : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ {{tntn|Tuto Details}}&lt;br /&gt;
|Main_Picture=Contrôler_des_neopixels_comme_un_DJ_jinx.gif&lt;br /&gt;
|Licences=Attribution (CC BY)&lt;br /&gt;
|Description=&amp;lt;translate&amp;gt;&amp;lt;!--T:1--&amp;gt; Utilisez un ESP8266 pour contrôler des neopixels (ws2812) comme un technicien lumière depuis le Wi-Fi avec uniquement des logiciels gratuits.&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Area=Art, Electronics, Music and Sound&lt;br /&gt;
|Type=Creation&lt;br /&gt;
|Difficulty=Very easy&lt;br /&gt;
|Duration=1&lt;br /&gt;
|Duration-type=hour(s)&lt;br /&gt;
|Cost=5&lt;br /&gt;
|Currency=EUR (€)&lt;br /&gt;
|Tags=neopixels, leds, esp8266, wifi, sacn, DMX, ARTNET, ws2812&lt;br /&gt;
|SourceLanguage=none&lt;br /&gt;
|Language=fr&lt;br /&gt;
|IsTranslation=0&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Introduction}}&lt;br /&gt;
|Introduction=&amp;lt;translate&amp;gt;&amp;lt;!--T:2--&amp;gt;&lt;br /&gt;
Pour contrôler nos LED, nous allons utiliser le protocole Art-Net : https://fr.wikipedia.org/wiki/Art-Net&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:3--&amp;gt;&lt;br /&gt;
Ce protocole permet de transmettre des instructions DMX à travers le réseau en utilisant l'UDP.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:4--&amp;gt;&lt;br /&gt;
Cette méthode est très rapide , fiable et compatible avec la plupart des systèmes d'éclairage professionnels.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:5--&amp;gt;&lt;br /&gt;
Une fois que nous aurons créer notre appareil avec l'ESP8266 nous allons utiliser Jinx, un logiciel sous Windows qui permet de contrôler nos LEDs.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:6--&amp;gt;&lt;br /&gt;
Ce logiciel très complet permet de créer des animations à l'aide du son, d'une image, d'une vidéo, d'une webcam, même de capturer l'image de l'écran et aussi d'afficher du texte.&amp;lt;/translate&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|TutoVideo}}&lt;br /&gt;
|VideoType=Youtube&lt;br /&gt;
|VideoURLYoutube=https://www.youtube.com/watch?v=zZPmNH3cheA&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Materials}}&lt;br /&gt;
|Material=&amp;lt;translate&amp;gt;&amp;lt;!--T:7--&amp;gt;&lt;br /&gt;
* ESP8266 (Wemos D1 Mini)&lt;br /&gt;
* Matrix WS2812b (ou strip de LED)&lt;br /&gt;
* Resistance 475 Ohm (entre 300/500)&lt;br /&gt;
* Condensateur 1000µF (optionnel)&lt;br /&gt;
* Alimentation dédié pour les leds (optionnel)&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Tools=&amp;lt;translate&amp;gt;&amp;lt;/translate&amp;gt;&lt;br /&gt;
|ExternalAttachmentsLinks={{ {{tntn|ExternalAttachmentsLinks}}&lt;br /&gt;
|ExternalAttachmentsLinks=http://www.live-leds.de/&lt;br /&gt;
}}{{ {{tntn|ExternalAttachmentsLinks}}&lt;br /&gt;
|ExternalAttachmentsLinks=https://github.com/mtongnz/ESP8266_ArtNetNode_v2&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Separator}}}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;&amp;lt;!--T:8--&amp;gt; Préparer l'ESP8266&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;!--T:9--&amp;gt;&lt;br /&gt;
Si vous ne l'avez pas fait, ajouter le support de l'ESP8266 dans le logiciel Arduino : [https://github.com/esp8266/Arduino#installing-with-boards-manager https://github.com/esp8266/Arduino#installing-with-boards-manager.]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:10--&amp;gt;&lt;br /&gt;
Il y a plusieurs façons d'uploader le firmware que nous allons utiliser, le plus simple est d'utiliser l'exemple '''ESP8266WebServer -&amp;gt; WebUpdate.'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:11--&amp;gt;&lt;br /&gt;
N'oubliez pas de changer STASSID et STAPSK avec le nom de votre réseau Wi-Fi et votre mot de passe.&lt;br /&gt;
 #define STASSID &amp;quot;your-ssid&amp;quot;&lt;br /&gt;
 #define STAPSK &amp;quot;your-password&amp;quot;&lt;br /&gt;
* Téléverser '''ESP8266WebServer -&amp;gt; WebUpdate.'''&lt;br /&gt;
* Appuyer sur le bouton RESET de l'ESP8266.&lt;br /&gt;
* Aller sur http://esp8266-webupdate.local.&amp;lt;/translate&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;&amp;lt;!--T:12--&amp;gt; Uploader ESP8266_ArtNetNode&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;!--T:13--&amp;gt;&lt;br /&gt;
Nous pouvez maintenant flasher le firmware sur notre ESP8266&lt;br /&gt;
* Télécharger ESP8266_ArtNetNode ici : https://github.com/mtongnz/ESP8266_ArtNetNode_v2.&lt;br /&gt;
* Retourner sur [http://esp8266-webupdate.local http://esp8266-webupdate.local.]&lt;br /&gt;
* Cliquer sur Parcourir et sélectionner '''espArtnetNode_2.0.0_b5g_WEMOS.bin'''&lt;br /&gt;
* Cliquer sur update.&lt;br /&gt;
L'ESP8266 va redémarrer plusieurs fois avant d'être disponible.&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Contrôler_des_neopixels_comme_un_DJ_browse.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;&amp;lt;!--T:14--&amp;gt; Paramétrage Wi-Fi&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;!--T:15--&amp;gt;&lt;br /&gt;
L'ESP8266 est maintenant en mode HotSpot, chercher le réseau Wi-Fi avec comme nom  '''espArtNode_00XXX.'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:16--&amp;gt;&lt;br /&gt;
Le mot de passe est :  '''byMtongnz2017'''&lt;br /&gt;
* Allez sur http://2.0.0.1 et cliquez sur WIFI pour paramétrer le SSID/mot de passe&lt;br /&gt;
* Cliquer sur '''REBOOT.'''&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Contrôler_des_neopixels_comme_un_DJ_arnet2.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;&amp;lt;!--T:17--&amp;gt; Trouver l'adresse IP de espArtNode&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;!--T:18--&amp;gt;&lt;br /&gt;
Malheureusement, espArtNode n'utilise pas '''mdns''', donc vous devrez trouver l'adresse IP par vous même.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:19--&amp;gt;&lt;br /&gt;
Vous pouvez utiliser [https://www.fing.com/ fing] (la version Android est la plus facile à utiliser) ou [https://play.google.com/store/apps/details?id=com.litux.art_net_controller_lite ArtNet-Lite] (cette application détecte automatiquement les appareils avec ArtNet)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:20--&amp;gt;&lt;br /&gt;
Jinx (le logiciel que nous allons utiliser pour contrôler les LED) a un mode SCAN, mais il ne marche pas avec espArtNetNode.&amp;lt;/translate&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;&amp;lt;!--T:21--&amp;gt; Paramétrer les NeoPixels&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;!--T:22--&amp;gt;&lt;br /&gt;
Dernier point, paramétrer le PORT A pour qu'il gère des LEDs NeoPixel.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:23--&amp;gt;&lt;br /&gt;
Le '''PORT A''' correspond à la '''broche TX.'''&lt;br /&gt;
* Cliquer sur PORT A.&lt;br /&gt;
* Dans '''Port Type''', mettre '''LED pixels - WS2812.'''&lt;br /&gt;
* Cliquer sur '''Save Changes.'''&lt;br /&gt;
* Changez number of pixels.&lt;br /&gt;
{{Info|Number of pixels n'apparait qu'après avoir sauvegardé les changements}}&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Contrôler_des_neopixels_comme_un_DJ_arnet4.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;&amp;lt;!--T:24--&amp;gt; Paramétrer Matrix Options&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;!--T:25--&amp;gt;&lt;br /&gt;
Voilà, notre appareil est prêt, mais il nous reste à paramétrer 3 choses dans Jinx pour le contrôler.&lt;br /&gt;
* '''Matrix Options''': Cette option paramètre la matrice virtuelle dans Jinx&lt;br /&gt;
* '''Output devices''': les appareils connectés à Jinx&lt;br /&gt;
* '''Output Patch''' : La position de chaque LED.&lt;br /&gt;
Si vous ne l'avez pas déjà fait brancher votre matrice / strip de LED à votre ESP8266&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:26--&amp;gt;&lt;br /&gt;
{{Warning|Alimenter beaucoup de LED peut être compliqué, je vous conseille de lire attentivement le guide d'Adafruit. : https://learn.adafruit.com/adafruit-neopixel-uberguide/the-magic-of-neopixels}}&lt;br /&gt;
{{Idea|Il est possible d'alimenter même une centaine de LED rien qu'avec l'USB du moment que vous réglait la luminosité au minimum. Faites attention si la luminosité est trop importante les LED vont se comporter bizarrement et peuvent être endommagés !}}&lt;br /&gt;
* Télécharger Jinx ici : http://www.live-leds.de/&lt;br /&gt;
* Aller dans '''Setup -&amp;gt; Matrix Options'''&lt;br /&gt;
* Paramétrer '''Width (largeur) / Height (longueur)'''&lt;br /&gt;
{{Info|Vous n'avez pas une matrice, juste un strip de LED? &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:27--&amp;gt;&lt;br /&gt;
Paramétrer la longueur (width) sur la longueur de votre strip et height (longueur) sur 4 (valeur minimum)}}&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Contrôler_des_neopixels_comme_un_DJ_wemos_neopixels.png&lt;br /&gt;
|Step_Picture_01=Contrôler_des_neopixels_comme_un_DJ_matrixoptions.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;&amp;lt;!--T:28--&amp;gt; Paramétrer Output Devices&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;!--T:29--&amp;gt;&lt;br /&gt;
Maintenant, nous allons connecter notre ESP à Jinx.&lt;br /&gt;
* Aller sur '''Setup -&amp;gt; Output Devices'''&lt;br /&gt;
* Cliquer sur '''Add'''&lt;br /&gt;
* Choissisez '''Art-Net''' (option par défaut)&lt;br /&gt;
* Déselectionner '''Broadcast''' (le broadcast est très lent)&lt;br /&gt;
* Mettez l'adresse IP de votre ESP&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Contrôler_des_neopixels_comme_un_DJ_outputdevices.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;&amp;lt;!--T:30--&amp;gt; Paramétrer Output Patch&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;!--T:31--&amp;gt;&lt;br /&gt;
Dernière chose à faire, il nous faut expliquer à Jinx dans quel ordre sont les LED.&lt;br /&gt;
* Aller sur '''Setup -&amp;gt; Output Patch.'''&lt;br /&gt;
* Choissisez votre ESP.&lt;br /&gt;
* Cliquer sur '''Fast Patch.'''&lt;br /&gt;
* Sélectionner la taille de votre matrice de LED.&lt;br /&gt;
* Dans '''Patch Mode,''' mettez le sens de votre matrice.&lt;br /&gt;
* Dans Pixel Order, mettez '''GRB.'''&lt;br /&gt;
* '''Vérifier que First channel est bien à 0.'''&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Contrôler_des_neopixels_comme_un_DJ_fastpatch.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;&amp;lt;!--T:32--&amp;gt; Testez les LED&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;!--T:33--&amp;gt;&lt;br /&gt;
{{Info|Il y a de grandes chances que vous ne paramétrerez pas vos LED correctement du premier coup, recommencez la partie Output Patch en cliquant sur Clear Patch avant et recommencez si c'est le cas. }}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:34--&amp;gt;&lt;br /&gt;
Si vous avez un doute sur votre alimentation, commencez par baisser la valeur Master afin de ne pas abimer vos LED.&lt;br /&gt;
* Aller dans '''Setup / Start Output'''&lt;br /&gt;
* Dans '''Channel 1''', choisissez '''Simple Color''', vérifiez que les LED s'allument&lt;br /&gt;
* Cliquez sur '''Edit''' et vérifier que la couleur Rouge / Vert / Bleu est correcte.&lt;br /&gt;
* Dans '''Channel 1''', choisissez '''Radar/Scan Lines'''&lt;br /&gt;
* Vérifier que votre matrice '''affiche correctement la ligne'''&lt;br /&gt;
Je ne vais pas rentrer plus en détail sur le fonctionnement de Jinx, essayez par vous même! Un manuel est disponible (en anglais) ici : http://www.live-leds.de/downloads/&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Contrôler_des_neopixels_comme_un_DJ_jinx_brightness.png&lt;br /&gt;
|Step_Picture_01=Contrôler_des_neopixels_comme_un_DJ_jinx_radarscan.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;&amp;lt;!--T:35--&amp;gt; Notes sur les LED&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;!--T:36--&amp;gt;&lt;br /&gt;
Vous pouvez trouver les modèles 3D de mes LED sur Thingiverse :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:43--&amp;gt;&lt;br /&gt;
*https://www.thingiverse.com/thing:3458654&lt;br /&gt;
*https://www.thingiverse.com/thing:3462891&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:44--&amp;gt;&lt;br /&gt;
Ces modèles sont faits par Olivier Sarrailh.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:37--&amp;gt;&lt;br /&gt;
Si vous voulez faire une matrice de LED, je ne vous conseille pas d'utiliser des strip de LED, c'est difficile de les aligner, utiliser plutôt des matrices toutes faites (flexible si vous voulez créer une matrice circulaire)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:38--&amp;gt;&lt;br /&gt;
Je me répète, mais jetez un œil à la documentation d'Adafruit sur l'alimentation des LED&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:39--&amp;gt;&lt;br /&gt;
https://learn.adafruit.com/adafruit-neopixel-uberguide/the-magic-of-neopixels&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:40--&amp;gt;&lt;br /&gt;
A contrario de ce qui y est dit, il est possible d'alimenter des matrices plus ou moins grandes avec juste un câble USB, si vous baissez la luminosité.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:45--&amp;gt;&lt;br /&gt;
Attention, vous risquez d'abimer les LED, si vous monter accidentellement la luminosité au maximum.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:41--&amp;gt;&lt;br /&gt;
Voilà pour ce tutoriel, n'hésitez pas à laisser un commentaire.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:42--&amp;gt;&lt;br /&gt;
Et suivez-moi sur twitter pour avoir plus d'informations sur les prochains tutoriels !  https://twitter.com/m4dnerd.&amp;lt;/translate&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Notes}}&lt;br /&gt;
|Notes=&amp;lt;translate&amp;gt;&amp;lt;/translate&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Status}}&lt;br /&gt;
|Complete=Published&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Madnerd</name></author>
		
	</entry>
	<entry>
		<id>https://wikifab.org/w/index.php?title=Contr%C3%B4ler_des_neopixels_comme_un_DJ&amp;diff=65359</id>
		<title>Contrôler des neopixels comme un DJ</title>
		<link rel="alternate" type="text/html" href="https://wikifab.org/w/index.php?title=Contr%C3%B4ler_des_neopixels_comme_un_DJ&amp;diff=65359"/>
		<updated>2019-05-31T22:23:25Z</updated>

		<summary type="html">&lt;p&gt;Madnerd : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ {{tntn|Tuto Details}}&lt;br /&gt;
|Main_Picture=Contrôler_des_neopixels_comme_un_DJ_jinx.gif&lt;br /&gt;
|Licences=Attribution (CC BY)&lt;br /&gt;
|Description=&amp;lt;translate&amp;gt;&amp;lt;!--T:1--&amp;gt; Utilisez un ESP8266 pour contrôler des neopixels (ws2812) comme un technicien lumière depuis le Wi-Fi avec uniquement des logiciels gratuits.&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Area=Art, Electronics, Music and Sound&lt;br /&gt;
|Type=Creation&lt;br /&gt;
|Difficulty=Very easy&lt;br /&gt;
|Duration=1&lt;br /&gt;
|Duration-type=hour(s)&lt;br /&gt;
|Cost=5&lt;br /&gt;
|Currency=EUR (€)&lt;br /&gt;
|Tags=neopixels, leds, esp8266, wifi, sacn, DMX, ARTNET, ws2812&lt;br /&gt;
|SourceLanguage=none&lt;br /&gt;
|Language=fr&lt;br /&gt;
|IsTranslation=0&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Introduction}}&lt;br /&gt;
|Introduction=&amp;lt;translate&amp;gt;&amp;lt;!--T:2--&amp;gt;&lt;br /&gt;
Pour contrôler nos LED, nous allons utiliser le protocole Art-Net : https://fr.wikipedia.org/wiki/Art-Net&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:3--&amp;gt;&lt;br /&gt;
Ce protocole permet de transmettre des instructions DMX à travers le réseau en utilisant l'UDP.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:4--&amp;gt;&lt;br /&gt;
Cette méthode est très rapide , fiable et compatible avec la plupart des systèmes d'éclairage professionnels.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:5--&amp;gt;&lt;br /&gt;
Une fois que nous aurons créer notre appareil avec l'ESP8266 nous allons utiliser Jinx, un logiciel sous Windows qui permet de contrôler nos LEDs.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:6--&amp;gt;&lt;br /&gt;
Ce logiciel très complet permet de créer des animations à l'aide du son, d'une image, d'une vidéo, d'une webcam, même de capturer l'image de l'écran et aussi d'afficher du texte.&amp;lt;/translate&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|TutoVideo}}&lt;br /&gt;
|VideoType=Youtube&lt;br /&gt;
|VideoURLYoutube=https://www.youtube.com/watch?v=zZPmNH3cheA&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Materials}}&lt;br /&gt;
|Material=&amp;lt;translate&amp;gt;&amp;lt;!--T:7--&amp;gt;&lt;br /&gt;
* ESP8266 (Wemos D1 Mini)&lt;br /&gt;
* Matrix WS2812b (ou strip de LED)&lt;br /&gt;
* Resistance 475 Ohm (entre 300/500)&lt;br /&gt;
* Condensateur 1000µF (optionnel)&lt;br /&gt;
* Alimentation dédié pour les leds (optionnel)&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Tools=&amp;lt;translate&amp;gt;&amp;lt;/translate&amp;gt;&lt;br /&gt;
|ExternalAttachmentsLinks={{ {{tntn|ExternalAttachmentsLinks}}&lt;br /&gt;
|ExternalAttachmentsLinks=http://www.live-leds.de/&lt;br /&gt;
}}{{ {{tntn|ExternalAttachmentsLinks}}&lt;br /&gt;
|ExternalAttachmentsLinks=https://github.com/mtongnz/ESP8266_ArtNetNode_v2&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Separator}}}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;&amp;lt;!--T:8--&amp;gt; Préparer l'ESP8266&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;!--T:9--&amp;gt;&lt;br /&gt;
Si vous ne l'avez pas fait, ajouter le support de l'ESP8266 dans le logiciel Arduino : [https://github.com/esp8266/Arduino#installing-with-boards-manager https://github.com/esp8266/Arduino#installing-with-boards-manager.]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:10--&amp;gt;&lt;br /&gt;
Il y a plusieurs façons d'uploader le firmware que nous allons utiliser, le plus simple est d'utiliser l'exemple '''ESP8266WebServer -&amp;gt; WebUpdate.'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:11--&amp;gt;&lt;br /&gt;
N'oubliez pas de changer STASSID et STAPSK avec le nom de votre réseau Wi-Fi et votre mot de passe.&lt;br /&gt;
 #define STASSID &amp;quot;your-ssid&amp;quot;&lt;br /&gt;
 #define STAPSK &amp;quot;your-password&amp;quot;&lt;br /&gt;
* Téléverser '''ESP8266WebServer -&amp;gt; WebUpdate.'''&lt;br /&gt;
* Appuyer sur le bouton RESET de l'ESP8266.&lt;br /&gt;
* Aller sur http://esp8266-webupdate.local.&amp;lt;/translate&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;&amp;lt;!--T:12--&amp;gt; Uploader ESP8266_ArtNetNode&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;!--T:13--&amp;gt;&lt;br /&gt;
Nous pouvez maintenant flasher le firmware sur notre ESP8266&lt;br /&gt;
* Télécharger ESP8266_ArtNetNode ici : https://github.com/mtongnz/ESP8266_ArtNetNode_v2.&lt;br /&gt;
* Retourner sur [http://esp8266-webupdate.local http://esp8266-webupdate.local.]&lt;br /&gt;
* Cliquer sur Parcourir et sélectionner '''espArtnetNode_2.0.0_b5g_WEMOS.bin'''&lt;br /&gt;
* Cliquer sur update.&lt;br /&gt;
L'ESP8266 va redémarrer plusieurs fois avant d'être disponible.&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Contrôler_des_neopixels_comme_un_DJ_browse.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;&amp;lt;!--T:14--&amp;gt; Paramétrage Wi-Fi&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;!--T:15--&amp;gt;&lt;br /&gt;
L'ESP8266 est maintenant en mode HotSpot, chercher le réseau Wi-Fi avec comme nom  '''espArtNode_00XXX.'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:16--&amp;gt;&lt;br /&gt;
Le mot de passe est :  '''byMtongnz2017'''&lt;br /&gt;
* Allez sur http://2.0.0.1 et cliquez sur WIFI pour paramétrer le SSID/mot de passe&lt;br /&gt;
* Cliquer sur '''REBOOT.'''&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Contrôler_des_neopixels_comme_un_DJ_arnet2.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;&amp;lt;!--T:17--&amp;gt; Trouver l'adresse IP de espArtNode&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;!--T:18--&amp;gt;&lt;br /&gt;
Malheureusement, espArtNode n'utilise pas '''mdns''', donc vous devrez trouver l'adresse IP par vous même.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:19--&amp;gt;&lt;br /&gt;
Vous pouvez utiliser [https://www.fing.com/ fing] (la version Android est la plus facile à utiliser) ou [https://play.google.com/store/apps/details?id=com.litux.art_net_controller_lite ArtNet-Lite] (cette application détecte automatiquement les appareils avec ArtNet)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:20--&amp;gt;&lt;br /&gt;
Jinx (le logiciel que nous allons utiliser pour contrôler les LED) a un mode SCAN, mais il ne marche pas avec espArtNetNode.&amp;lt;/translate&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;&amp;lt;!--T:21--&amp;gt; Paramétrer les NeoPixels&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;!--T:22--&amp;gt;&lt;br /&gt;
Dernier point, paramétrer le PORT A pour qu'il gère des LEDs NeoPixel.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:23--&amp;gt;&lt;br /&gt;
Le '''PORT A''' correspond à la '''broche TX.'''&lt;br /&gt;
* Cliquer sur PORT A.&lt;br /&gt;
* Dans '''Port Type''', mettre '''LED pixels - WS2812.'''&lt;br /&gt;
* Cliquer sur '''Save Changes.'''&lt;br /&gt;
* Changez number of pixels.&lt;br /&gt;
{{Info|Number of pixels n'apparait qu'après avoir sauvegardé les changements}}&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Contrôler_des_neopixels_comme_un_DJ_arnet4.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;&amp;lt;!--T:24--&amp;gt; Paramétrer Matrix Options&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;!--T:25--&amp;gt;&lt;br /&gt;
Voilà, notre appareil est prêt, mais il nous reste à paramétrer 3 choses dans Jinx pour le contrôler.&lt;br /&gt;
* '''Matrix Options''': Cette option paramètre la matrice virtuelle dans Jinx&lt;br /&gt;
* '''Output devices''': les appareils connectés à Jinx&lt;br /&gt;
* '''Output Patch''' : La position de chaque LED.&lt;br /&gt;
Si vous ne l'avez pas déjà fait brancher votre matrice / strip de LED à votre ESP8266&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:26--&amp;gt;&lt;br /&gt;
{{Warning|Alimenter beaucoup de LED peut être compliqué, je vous conseille de lire attentivement le guide d'Adafruit. : https://learn.adafruit.com/adafruit-neopixel-uberguide/the-magic-of-neopixels}}&lt;br /&gt;
{{Idea|Il est possible d'alimenter même une centaine de LED rien qu'avec l'USB du moment que vous réglait la luminosité au minimum. Faites attention si la luminosité est trop importante les LED vont se comporter bizarrement et peuvent être endommagés !}}&lt;br /&gt;
* Télécharger Jinx ici : http://www.live-leds.de/&lt;br /&gt;
* Aller dans '''Setup -&amp;gt; Matrix Options'''&lt;br /&gt;
* Paramétrer '''Width (largeur) / Height (longueur)'''&lt;br /&gt;
{{Info|Vous n'avez pas une matrice, juste un strip de LED? &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:27--&amp;gt;&lt;br /&gt;
Paramétrer la longueur (width) sur la longueur de votre strip et height (longueur) sur 4 (valeur minimum)}}&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Contrôler_des_neopixels_comme_un_DJ_wemos_neopixels.png&lt;br /&gt;
|Step_Picture_01=Contrôler_des_neopixels_comme_un_DJ_matrixoptions.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;&amp;lt;!--T:28--&amp;gt; Paramétrer Output Devices&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;!--T:29--&amp;gt;&lt;br /&gt;
Maintenant, nous allons connecter notre ESP à Jinx.&lt;br /&gt;
* Aller sur '''Setup -&amp;gt; Output Devices'''&lt;br /&gt;
* Cliquer sur '''Add'''&lt;br /&gt;
* Choissisez '''Art-Net''' (option par défaut)&lt;br /&gt;
* Déselectionner '''Broadcast''' (le broadcast est très lent)&lt;br /&gt;
* Mettez l'adresse IP de votre ESP&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Contrôler_des_neopixels_comme_un_DJ_outputdevices.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;&amp;lt;!--T:30--&amp;gt; Paramétrer Output Patch&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;!--T:31--&amp;gt;&lt;br /&gt;
Dernière chose à faire, il nous faut expliquer à Jinx dans quel ordre sont les LED.&lt;br /&gt;
* Aller sur '''Setup -&amp;gt; Output Patch.'''&lt;br /&gt;
* Choissisez votre ESP.&lt;br /&gt;
* Cliquer sur '''Fast Patch.'''&lt;br /&gt;
* Sélectionner la taille de votre matrice de LED.&lt;br /&gt;
* Dans '''Patch Mode,''' mettez le sens de votre matrice.&lt;br /&gt;
* Dans Pixel Order, mettez '''GRB.'''&lt;br /&gt;
* '''Vérifier que First channel est bien à 0.'''&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Contrôler_des_neopixels_comme_un_DJ_fastpatch.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;&amp;lt;!--T:32--&amp;gt; Testez les LED&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;!--T:33--&amp;gt;&lt;br /&gt;
{{Info|Il y a de grandes chances que vous ne paramétrerez pas vos LED correctement du premier coup, recommencez la partie Output Patch en cliquant sur Clear Patch avant et recommencez si c'est le cas. }}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:34--&amp;gt;&lt;br /&gt;
Si vous avez un doute sur votre alimentation, commencez par baisser la valeur Master afin de ne pas abimer vos LED.&lt;br /&gt;
* Aller dans '''Setup / Start Output'''&lt;br /&gt;
* Dans '''Channel 1''', choisissez '''Simple Color''', vérifiez que les LED s'allument&lt;br /&gt;
* Cliquez sur '''Edit''' et vérifier que la couleur Rouge / Vert / Bleu est correcte.&lt;br /&gt;
* Dans '''Channel 1''', choisissez '''Radar/Scan Lines'''&lt;br /&gt;
* Vérifier que votre matrice '''affiche correctement la ligne'''&lt;br /&gt;
Je ne vais pas rentrer plus en détail sur le fonctionnement de Jinx, essayez par vous même! Un manuel est disponible (en anglais) ici : http://www.live-leds.de/downloads/&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Contrôler_des_neopixels_comme_un_DJ_jinx_brightness.png&lt;br /&gt;
|Step_Picture_01=Contrôler_des_neopixels_comme_un_DJ_jinx_radarscan.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;&amp;lt;!--T:35--&amp;gt; Notes sur les LED&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;!--T:36--&amp;gt;&lt;br /&gt;
Vous pouvez trouver les modèles 3D de mes LED sur Thingiverse :&lt;br /&gt;
&lt;br /&gt;
*https://www.thingiverse.com/thing:3458654&lt;br /&gt;
*https://www.thingiverse.com/thing:3462891&lt;br /&gt;
&lt;br /&gt;
Ces modèles sont faits par Olivier Sarrailh.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:37--&amp;gt;&lt;br /&gt;
Si vous voulez faire une matrice de LED, je ne vous conseille pas d'utiliser des strip de LED, c'est difficile de les aligner, utiliser plutôt des matrices toutes faites (flexible si vous voulez créer une matrice circulaire)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:38--&amp;gt;&lt;br /&gt;
Je me répète, mais jetez un œil à la documentation d'Adafruit sur l'alimentation des LED&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:39--&amp;gt;&lt;br /&gt;
https://learn.adafruit.com/adafruit-neopixel-uberguide/the-magic-of-neopixels&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:40--&amp;gt;&lt;br /&gt;
A contrario de ce qui y est dit, il est possible d'alimenter des matrices plus ou moins grandes avec juste un câble USB, si vous baissez la luminosité.&lt;br /&gt;
&lt;br /&gt;
Au risque d'abimer les LED, si vous monter accidentellement la luminosité au maximum&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:41--&amp;gt;&lt;br /&gt;
Voilà pour ce tutoriel, n'hésitez pas à laisser un commentaire.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:42--&amp;gt;&lt;br /&gt;
Et suivez-moi sur twitter pour avoir plus d'informations sur les prochains tutoriels !  https://twitter.com/m4dnerd.&amp;lt;/translate&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Notes}}&lt;br /&gt;
|Notes=&amp;lt;translate&amp;gt;&amp;lt;/translate&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Status}}&lt;br /&gt;
|Complete=Published&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Madnerd</name></author>
		
	</entry>
	<entry>
		<id>https://wikifab.org/w/index.php?title=Brancher_des_p%C3%A9riph%C3%A9riques_USB_sur_un_ESP8266&amp;diff=62978</id>
		<title>Brancher des périphériques USB sur un ESP8266</title>
		<link rel="alternate" type="text/html" href="https://wikifab.org/w/index.php?title=Brancher_des_p%C3%A9riph%C3%A9riques_USB_sur_un_ESP8266&amp;diff=62978"/>
		<updated>2019-04-21T12:50:31Z</updated>

		<summary type="html">&lt;p&gt;Madnerd : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ {{tntn|Tuto Details}}&lt;br /&gt;
|SourceLanguage=none&lt;br /&gt;
|Language=fr&lt;br /&gt;
|IsTranslation=0&lt;br /&gt;
|Main_Picture=Brancher_des_périphériques_USB_sur_un_ESP8266_usbhost_wiki.jpg&lt;br /&gt;
|Licences=Attribution (CC BY)&lt;br /&gt;
|Description=&amp;lt;translate&amp;gt;Saviez vous que vous pouvez brancher des périphériques USB sur un Arduino ou un ESP ?&lt;br /&gt;
Que ce soit un clavier, une souris, un manette de jeu ou un contrôleur MIDI, c'est possible !&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Area=Electronics, Music and Sound, Play and Hobbies&lt;br /&gt;
|Type=Technique&lt;br /&gt;
|Difficulty=Medium&lt;br /&gt;
|Duration=2&lt;br /&gt;
|Duration-type=hour(s)&lt;br /&gt;
|Cost=6&lt;br /&gt;
|Currency=EUR (€)&lt;br /&gt;
|Tags=arduino, esp8266, esp32, usb host, clavier, souris, manette, xbox, MIDI&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Introduction}}&lt;br /&gt;
|Introduction=&amp;lt;translate&amp;gt;Je jouais avec '''Mozzi''', une '''bibliothèque de synthèse audio''' (https://sensorium.github.io/Mozzi/), quand je me suis rendu compte que si je voulais vraiment pouvoir exploiter tout le potentiel de cette bibliothèque, j'allais devoir faire un contrôleur.&lt;br /&gt;
&lt;br /&gt;
Si seulement, je pouvais brancher un '''clavier''' ou un '''contrôleur midi''', ça serait carrément plus simplement ! Mais attends ?! C'est possible en fait!&amp;lt;/translate&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|TutoVideo}}&lt;br /&gt;
|VideoType=Youtube&lt;br /&gt;
|VideoURLYoutube=https://www.youtube.com/watch?v=CeLYOu-UGXA&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Materials}}&lt;br /&gt;
|Step_Picture_00=Contrôler_des_neopixels_comme_un_DJ_Envoyer_un_message_sur_discord_wemos.png&lt;br /&gt;
|Step_Picture_01=Brancher_des_périphériques_USB_sur_un_ESP8266_usbhost_mini_def.png&lt;br /&gt;
|Material=&amp;lt;translate&amp;gt;* Un microcontrôleur 3.3v (par ex: Wemos Mini)&lt;br /&gt;
* Un USB Host Mini&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Tools=&amp;lt;translate&amp;gt;Un petit tournevis plat / Un cutter fin&amp;lt;/translate&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Separator}}}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;Choisir l'USB Host&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;Merci à CircuitatHome pour la création de l'USB Host&lt;br /&gt;
https://www.circuitsathome.com/usb-host-shield-hardware-manual/&lt;br /&gt;
&lt;br /&gt;
Dans ce tutoriel nous allons utilisé un clone de l''''USB Host Mini'''.&lt;br /&gt;
&lt;br /&gt;
La puce sur celle-ci est un MAX3421E qui ne fonctionne quand 3.3v&lt;br /&gt;
&lt;br /&gt;
{{Idea|Si vous voulez utiliser un microcontrôleur en 5v (comme l'Arduino Uno / Nano) utiliser plutôt le Shield USB Host.}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Malheureusement avant de pouvoir brancher notre USB Host, il va nous falloir '''régler plusieurs problèmes''' sinon '''cela ne marchera pas.'''&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Brancher_des_périphériques_USB_sur_un_ESP8266_3V3_only.png&lt;br /&gt;
|Step_Picture_01=Brancher_des_périphériques_USB_sur_un_ESP8266_usbhost_mini.jpg&lt;br /&gt;
|Step_Picture_02=Brancher_des_périphériques_USB_sur_un_ESP8266_usbhost_shield.jpg&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;Régler le problème d'alimentation&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;Si vous avez acheté '''un clone de l'USB Host Mini''', il n'y a pas de '''jumper pour le VBUS'''.&lt;br /&gt;
&lt;br /&gt;
Cela veut dire que les périphériques USB '''seront alimentés en 3.3v'''&lt;br /&gt;
&lt;br /&gt;
Malheureusement, '''aucun de mes périphériques ne marche,''' car ils '''nécessitent tous du 5v.'''&lt;br /&gt;
&lt;br /&gt;
Vous pouvez en apprendre plus sur ce lien (en japonais)&lt;br /&gt;
&lt;br /&gt;
https://ht-deko.com/arduino/shield_usbhost_mini.html &lt;br /&gt;
&lt;br /&gt;
Il va falloir couper une trace sur le circuit pour régler ce problème.&lt;br /&gt;
&lt;br /&gt;
J'ai utilisé un '''petit tournevis plat''', mais si vous avez un '''cutter fin c'est surement mieux.'''&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Brancher_des_périphériques_USB_sur_un_ESP8266_usbhost_mini_fix.jpg&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;Brancher l'USB Host&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;OK, j'espère que vous n'avez pas cassé votre carte! Maintenant il est temps de la brancher !&lt;br /&gt;
&lt;br /&gt;
J'ai utilisé un Wemos Mini D1 avec mon USB Host Mini, voici comment le brancher.&lt;br /&gt;
&lt;br /&gt;
{{Info|Je n'ai pas relié la broche INT, car celle-ci ne semble pas nécessaire au fonctionnement}}&lt;br /&gt;
&lt;br /&gt;
*D3 -- SS&lt;br /&gt;
*D7 -- MISO&lt;br /&gt;
*D6 -- MOSI&lt;br /&gt;
*D5 -- SCK&lt;br /&gt;
*RST -- RST&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Brancher_des_périphériques_USB_sur_un_ESP8266_usbhost_esp.jpg&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;Régler le problème avec la bibliothèque USB Host&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;Vous avez peut-être remarqué que pour la broche SS (Chip Select / CS) j'ai utilisé la '''broche D3''' au lieu de la '''broche par défaut D8.'''&lt;br /&gt;
&lt;br /&gt;
J'ai eu un problème avec l'USB Host qui mettait mon Wemos Mini en mode programmation et bloqué l'exécution du sketch.&lt;br /&gt;
&lt;br /&gt;
https://github.com/felis/USB_Host_Shield_2.0/issues/457&lt;br /&gt;
&lt;br /&gt;
Afin de '''changer la broche SS''', il va falloir changer une ligne dans la bibliothèque.&lt;br /&gt;
&lt;br /&gt;
Télécharger '''USB Host Shield Library 2.0'''&lt;br /&gt;
&lt;br /&gt;
Ouvrez le fichier '''UsbCore.h''' dans '''libraries/USB_Host_Shield_Library_2.0''' et changer cette ligne&lt;br /&gt;
 &lt;br /&gt;
&amp;lt;code&amp;gt;#elif defined(ESP8266)typedef MAX3421e&amp;lt;P15, P5&amp;gt; MAX3421E; // ESP8266 boards &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Avec cette ligne&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;code&amp;gt;#elif defined(ESP8266)typedef MAX3421e&amp;lt;P0, P5&amp;gt; MAX3421E; // ESP8266 boards&amp;lt;/code&amp;gt;&lt;br /&gt;
{{Info|Pourquoi P0 au lieu de D3 ? c'est parce que le GPIO0 est le D3 sur le Wemos Mini.}}&lt;br /&gt;
https://escapequotes.net/esp8266-wemos-d1-mini-pins-and-diagram/&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Brancher_des_périphériques_USB_sur_un_ESP8266_image_Ky517r0vQa.jpg&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;Downgrader ESP8266&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;On y est presque, si vous essayez de compiler un exemple dans la bibliothèque, '''il ne marchera pas!'''&lt;br /&gt;
&lt;br /&gt;
{{Info|Ce problème a été réglé récemment, cette étape n'est nécessaire que si vous utilisez la version 1.3.2 de cette bibliothèque}}&lt;br /&gt;
&lt;br /&gt;
Il y a une incompatibilité entre la bibliothèque et la version 2.5 d'ESP8266 sur le logiciel Arduino.&lt;br /&gt;
&lt;br /&gt;
'''Il va falloir downgrader celle-ci à 2.4.2'''&lt;br /&gt;
&lt;br /&gt;
https://github.com/felis/USB_Host_Shield_2.0/issues/449&lt;br /&gt;
&lt;br /&gt;
Aller dans '''Outils''' / '''Type de carte''' / '''Gestionnaire de carte''' et changer la version à '''2.4.2'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Brancher_des_périphériques_USB_sur_un_ESP8266_esp8266_lib.jpg&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;Test l'USB Host&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;Il y a beaucoup d'exemples dans l''''USB Host Shield Library 2.0.'''&lt;br /&gt;
&lt;br /&gt;
Afin de tester si tout marche correctement, je vous conseille de commencer par '''USB_desc'''.&lt;br /&gt;
&lt;br /&gt;
*'''Téléverser''' USB_desc&lt;br /&gt;
*Ouvrez le  '''Moniteur Série''' (115200)&lt;br /&gt;
*'''Brancher votre périphérique USB'''&lt;br /&gt;
*'''Redémarrer la carte''' (ESP8266)&lt;br /&gt;
{{Info|Il n'est pas possible de brancher &amp;quot;à chaud&amp;quot; le périphérique USB (du moins dans les exemples)&lt;br /&gt;
Vous devez redémarrer votre carte à chaque fois que vous débrancher et rebrancher un périphérique.}}&lt;br /&gt;
&lt;br /&gt;
Vous devriez voir un long message décrivant votre périphérique.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Brancher_des_périphériques_USB_sur_un_ESP8266_usbhost_ex.jpg&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;Exemple : Manette XBOX360&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;Si vous avez une manette de '''XBOX360 pour PC''', vous pouvez tester l'exemple : X'''BOX/XBOXUSB'''&lt;br /&gt;
&lt;br /&gt;
*'''L2/R2''' vibre quand vous appuyez dessus.&lt;br /&gt;
*L2/R2 : 0/255&lt;br /&gt;
*Stick (Hat) X/Y : -32768 / 32768&lt;br /&gt;
*Les LED peuvent aussi être contrôlées ! (appuyer sur '''pad''' / '''back''' / '''start''' / '''xbox''' pour essayer)&amp;lt;/translate&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;Exemple : Souris&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;Je n'ai pas réussi à utiliser ma souris. L'exemple se trouve ici : '''HID/USBHIDBootMouse'''&amp;lt;/translate&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;Exemple : Contrôleur Midi&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;Ouvrez l'exemple '''USBH_MIDI/USBH_MIDI_dump'''&lt;br /&gt;
&lt;br /&gt;
La plupart des périphériques MIDI n'utilisent qu'une petite partie du buffer ('''bufMidi''')&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;00001679: 64: 09 90 2F 13 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;0000174A: 64: 08 80 2F 7F 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*bufMidi[0] : Note ON (9) / Note OFF (8)&lt;br /&gt;
*bufMidi[2] : Note&lt;br /&gt;
*bufMidi[3] : Velocity&amp;lt;/translate&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;Conclusion&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;Utiliser des périphériques USB ouvre la porte à énormément de possibilités avec nos microcontrôleurs&lt;br /&gt;
&lt;br /&gt;
Nous n'avons vu qu'une infime partie de ce qu'il est possible de faire.&lt;br /&gt;
&lt;br /&gt;
*Vous pouvez utiliser un '''Hub USB''' pour contrôler plusieurs périphériques USB.&lt;br /&gt;
*Il y a plein de broches sur l'USB Host, c'est parce qu’elle sont utilisables comme des GPIO ! Il est possible de brancher des boutons / LED même un écran LCD dessus.&lt;br /&gt;
*Il est même possible d'utiliser des '''clés''' '''USB.'''&amp;lt;/translate&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Notes}}&lt;br /&gt;
|Notes=&amp;lt;translate&amp;gt;&amp;lt;/translate&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Status}}&lt;br /&gt;
|Complete=Published&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Madnerd</name></author>
		
	</entry>
	<entry>
		<id>https://wikifab.org/w/index.php?title=Brancher_des_p%C3%A9riph%C3%A9riques_USB_sur_un_ESP8266&amp;diff=62912</id>
		<title>Brancher des périphériques USB sur un ESP8266</title>
		<link rel="alternate" type="text/html" href="https://wikifab.org/w/index.php?title=Brancher_des_p%C3%A9riph%C3%A9riques_USB_sur_un_ESP8266&amp;diff=62912"/>
		<updated>2019-04-21T12:50:22Z</updated>

		<summary type="html">&lt;p&gt;Madnerd : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ {{tntn|Tuto Details}}&lt;br /&gt;
|Main_Picture=Brancher_des_périphériques_USB_sur_un_ESP8266_usbhost_wiki.jpg&lt;br /&gt;
|Licences=Attribution (CC BY)&lt;br /&gt;
|Description=&amp;lt;translate&amp;gt;Saviez vous que vous pouvez brancher des périphériques USB sur un Arduino ou un ESP ?&lt;br /&gt;
Que ce soit un clavier, une souris, un manette de jeu ou un contrôleur MIDI, c'est possible !&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Area=Electronics, Music and Sound, Play and Hobbies&lt;br /&gt;
|Type=Technique&lt;br /&gt;
|Difficulty=Medium&lt;br /&gt;
|Duration=2&lt;br /&gt;
|Duration-type=hour(s)&lt;br /&gt;
|Cost=6&lt;br /&gt;
|Currency=EUR (€)&lt;br /&gt;
|Tags=arduino, esp8266, esp32, usb host, clavier, souris, manette, xbox, MIDI&lt;br /&gt;
|SourceLanguage=none&lt;br /&gt;
|Language=fr&lt;br /&gt;
|IsTranslation=0&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Introduction}}&lt;br /&gt;
|Introduction=&amp;lt;translate&amp;gt;Je jouais avec '''Mozzi''', une '''bibliothèque de synthèse audio''' (https://sensorium.github.io/Mozzi/), quand je me suis rendu compte que si je voulais vraiment pouvoir exploiter tout le potentiel de cette bibliothèque, j'allais devoir faire un contrôleur.&lt;br /&gt;
&lt;br /&gt;
Si seulement, je pouvais brancher un '''clavier''' ou un '''contrôleur midi''', ça serait carrément plus simplement ! Mais attends ?! C'est possible en fait!&amp;lt;/translate&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|TutoVideo}}&lt;br /&gt;
|VideoType=Youtube&lt;br /&gt;
|VideoURLYoutube=https://www.youtube.com/watch?v=CeLYOu-UGXA&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Materials}}&lt;br /&gt;
|Step_Picture_00=Contrôler_des_neopixels_comme_un_DJ_Envoyer_un_message_sur_discord_wemos.png&lt;br /&gt;
|Step_Picture_01=Brancher_des_périphériques_USB_sur_un_ESP8266_usbhost_mini_def.png&lt;br /&gt;
|Material=&amp;lt;translate&amp;gt;* Un microcontrôleur 3.3v (par ex: Wemos Mini)&lt;br /&gt;
* Un USB Host Mini&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Tools=&amp;lt;translate&amp;gt;Un petit tournevis plat / Un cutter fin&amp;lt;/translate&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Separator}}}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;Choisir l'USB Host&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;Merci à CircuitatHome pour la création de l'USB Host&lt;br /&gt;
https://www.circuitsathome.com/usb-host-shield-hardware-manual/&lt;br /&gt;
&lt;br /&gt;
Dans ce tutoriel nous allons utilisé un clone de l''''USB Host Mini'''.&lt;br /&gt;
&lt;br /&gt;
La puce sur celle-ci est un MAX3421E qui ne fonctionne quand 3.3v&lt;br /&gt;
&lt;br /&gt;
{{Idea|Si vous voulez utiliser un microcontrôleur en 5v (comme l'Arduino Uno / Nano) utiliser plutôt le Shield USB Host.}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Malheureusement avant de pouvoir brancher notre USB Host, il va nous falloir '''régler plusieurs problèmes''' sinon '''cela ne marchera pas.'''&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Brancher_des_périphériques_USB_sur_un_ESP8266_3V3_only.png&lt;br /&gt;
|Step_Picture_01=Brancher_des_périphériques_USB_sur_un_ESP8266_usbhost_mini.jpg&lt;br /&gt;
|Step_Picture_02=Brancher_des_périphériques_USB_sur_un_ESP8266_usbhost_shield.jpg&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;Régler le problème d'alimentation&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;Si vous avez acheté '''un clone de l'USB Host Mini''', il n'y a pas de '''jumper pour le VBUS'''.&lt;br /&gt;
&lt;br /&gt;
Cela veut dire que les périphériques USB '''seront alimentés en 3.3v'''&lt;br /&gt;
&lt;br /&gt;
Malheureusement, '''aucun de mes périphériques ne marche,''' car ils '''nécessitent tous du 5v.'''&lt;br /&gt;
&lt;br /&gt;
Vous pouvez en apprendre plus sur ce lien (en japonais)&lt;br /&gt;
&lt;br /&gt;
https://ht-deko.com/arduino/shield_usbhost_mini.html &lt;br /&gt;
&lt;br /&gt;
Il va falloir couper une trace sur le circuit pour régler ce problème.&lt;br /&gt;
&lt;br /&gt;
J'ai utilisé un '''petit tournevis plat''', mais si vous avez un '''cutter fin c'est surement mieux.'''&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Brancher_des_périphériques_USB_sur_un_ESP8266_usbhost_mini_fix.jpg&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;Brancher l'USB Host&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;OK, j'espère que vous n'avez pas cassé votre carte! Maintenant il est temps de la brancher !&lt;br /&gt;
&lt;br /&gt;
J'ai utilisé un Wemos Mini D1 avec mon USB Host Mini, voici comment le brancher.&lt;br /&gt;
&lt;br /&gt;
{{Info|Je n'ai pas relié la broche INT, car celle-ci ne semble pas nécessaire au fonctionnement}}&lt;br /&gt;
&lt;br /&gt;
*D3 -- SS&lt;br /&gt;
*D7 -- MISO&lt;br /&gt;
*D6 -- MOSI&lt;br /&gt;
*D5 -- SCK&lt;br /&gt;
*RST -- RST&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Brancher_des_périphériques_USB_sur_un_ESP8266_usbhost_esp.jpg&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;Régler le problème avec la bibliothèque USB Host&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;Vous avez peut-être remarqué que pour la broche SS (Chip Select / CS) j'ai utilisé la '''broche D3''' au lieu de la '''broche par défaut D8.'''&lt;br /&gt;
&lt;br /&gt;
J'ai eu un problème avec l'USB Host qui mettait mon Wemos Mini en mode programmation et bloqué l'exécution du sketch.&lt;br /&gt;
&lt;br /&gt;
https://github.com/felis/USB_Host_Shield_2.0/issues/457&lt;br /&gt;
&lt;br /&gt;
Afin de '''changer la broche SS''', il va falloir changer une ligne dans la bibliothèque.&lt;br /&gt;
&lt;br /&gt;
Télécharger '''USB Host Shield Library 2.0'''&lt;br /&gt;
&lt;br /&gt;
Ouvrez le fichier '''UsbCore.h''' dans '''libraries/USB_Host_Shield_Library_2.0''' et changer cette ligne&lt;br /&gt;
 &lt;br /&gt;
&amp;lt;code&amp;gt;#elif defined(ESP8266)typedef MAX3421e&amp;lt;P15, P5&amp;gt; MAX3421E; // ESP8266 boards &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Avec cette ligne&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;code&amp;gt;#elif defined(ESP8266)typedef MAX3421e&amp;lt;P0, P5&amp;gt; MAX3421E; // ESP8266 boards&amp;lt;/code&amp;gt;&lt;br /&gt;
{{Info|Pourquoi P0 au lieu de D3 ? c'est parce que le GPIO0 est le D3 sur le Wemos Mini.}}&lt;br /&gt;
https://escapequotes.net/esp8266-wemos-d1-mini-pins-and-diagram/&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Brancher_des_périphériques_USB_sur_un_ESP8266_image_Ky517r0vQa.jpg&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;Downgrader ESP8266&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;On y est presque, si vous essayez de compiler un exemple dans la bibliothèque, '''il ne marchera pas!'''&lt;br /&gt;
&lt;br /&gt;
{{Info|Ce problème a été réglé récemment, cette étape n'est nécessaire que si vous utilisez la version 1.3.2 de cette bibliothèque}}&lt;br /&gt;
&lt;br /&gt;
Il y a une incompatibilité entre la bibliothèque et la version 2.5 d'ESP8266 sur le logiciel Arduino.&lt;br /&gt;
&lt;br /&gt;
'''Il va falloir downgrader celle-ci à 2.4.2'''&lt;br /&gt;
&lt;br /&gt;
https://github.com/felis/USB_Host_Shield_2.0/issues/449&lt;br /&gt;
&lt;br /&gt;
Aller dans '''Outils''' / '''Type de carte''' / '''Gestionnaire de carte''' et changer la version à '''2.4.2'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Brancher_des_périphériques_USB_sur_un_ESP8266_esp8266_lib.jpg&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;Test l'USB Host&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;Il y a beaucoup d'exemples dans l''''USB Host Shield Library 2.0.'''&lt;br /&gt;
&lt;br /&gt;
Afin de tester si tout marche correctement, je vous conseille de commencer par '''USB_desc'''.&lt;br /&gt;
&lt;br /&gt;
*'''Téléverser''' USB_desc&lt;br /&gt;
*Ouvrez le  '''Moniteur Série''' (115200)&lt;br /&gt;
*'''Brancher votre périphérique USB'''&lt;br /&gt;
*'''Redémarrer la carte''' (ESP8266)&lt;br /&gt;
{{Info|Il n'est pas possible de brancher &amp;quot;à chaud&amp;quot; le périphérique USB (du moins dans les exemples)&lt;br /&gt;
Vous devez redémarrer votre carte à chaque fois que vous débrancher et rebrancher un périphérique.}}&lt;br /&gt;
&lt;br /&gt;
Vous devriez voir un long message décrivant votre périphérique.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Brancher_des_périphériques_USB_sur_un_ESP8266_usbhost_ex.jpg&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;Exemple : Manette XBOX360&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;Si vous avez une manette de '''XBOX360 pour PC''', vous pouvez tester l'exemple : X'''BOX/XBOXUSB'''&lt;br /&gt;
&lt;br /&gt;
*'''L2/R2''' vibre quand vous appuyez dessus.&lt;br /&gt;
*L2/R2 : 0/255&lt;br /&gt;
*Stick (Hat) X/Y : -32768 / 32768&lt;br /&gt;
*Les LED peuvent aussi être contrôlées ! (appuyer sur '''pad''' / '''back''' / '''start''' / '''xbox''' pour essayer)&amp;lt;/translate&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;Exemple : Souris&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;Je n'ai pas réussi à utiliser ma souris. L'exemple se trouve ici : '''HID/USBHIDBootMouse'''&amp;lt;/translate&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;Exemple : Contrôleur Midi&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;Ouvrez l'exemple '''USBH_MIDI/USBH_MIDI_dump'''&lt;br /&gt;
&lt;br /&gt;
La plupart des périphériques MIDI n'utilisent qu'une petite partie du buffer ('''bufMidi''')&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;00001679: 64: 09 90 2F 13 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;0000174A: 64: 08 80 2F 7F 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*bufMidi[0] : Note ON (9) / Note OFF (8)&lt;br /&gt;
*bufMidi[2] : Note&lt;br /&gt;
*bufMidi[3] : Velocity&amp;lt;/translate&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;Conclusion&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;Utiliser des périphériques USB ouvre la porte à énormément de possibilités avec nos microcontrôleurs&lt;br /&gt;
&lt;br /&gt;
Nous n'avons vu qu'une infime partie de ce qu'il est possible de faire.&lt;br /&gt;
&lt;br /&gt;
*Vous pouvez utiliser un '''Hub USB''' pour contrôler plusieurs périphériques USB.&lt;br /&gt;
*Il y a plein de broches sur l'USB Host, c'est parce qu’elle sont utilisables comme des GPIO ! Il est possible de brancher des boutons / LED même un écran LCD dessus.&lt;br /&gt;
*Il est même possible d'utiliser des '''clés''' '''USB.'''&amp;lt;/translate&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Notes}}&lt;br /&gt;
|Notes=&amp;lt;translate&amp;gt;&amp;lt;/translate&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Status}}&lt;br /&gt;
|Complete=Published&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Madnerd</name></author>
		
	</entry>
	<entry>
		<id>https://wikifab.org/w/index.php?title=Brancher_des_p%C3%A9riph%C3%A9riques_USB_sur_un_ESP8266&amp;diff=62911</id>
		<title>Brancher des périphériques USB sur un ESP8266</title>
		<link rel="alternate" type="text/html" href="https://wikifab.org/w/index.php?title=Brancher_des_p%C3%A9riph%C3%A9riques_USB_sur_un_ESP8266&amp;diff=62911"/>
		<updated>2019-04-21T12:49:11Z</updated>

		<summary type="html">&lt;p&gt;Madnerd : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ {{tntn|Tuto Details}}&lt;br /&gt;
|Main_Picture=Brancher_des_périphériques_USB_sur_un_ESP8266_usbhost_wiki.jpg&lt;br /&gt;
|Licences=Attribution (CC BY)&lt;br /&gt;
|Description=Saviez vous que vous pouvez brancher des périphériques USB sur un Arduino ou un ESP ?&lt;br /&gt;
Que ce soit un clavier, une souris, un manette de jeu ou un contrôleur MIDI, c'est possible !&lt;br /&gt;
|Area=Electronics, Music and Sound, Play and Hobbies&lt;br /&gt;
|Type=Technique&lt;br /&gt;
|Difficulty=Medium&lt;br /&gt;
|Duration=2&lt;br /&gt;
|Duration-type=hour(s)&lt;br /&gt;
|Cost=6&lt;br /&gt;
|Currency=EUR (€)&lt;br /&gt;
|Tags=arduino, esp8266, esp32, usb host, clavier, souris, manette, xbox, MIDI&lt;br /&gt;
|SourceLanguage=none&lt;br /&gt;
|Language=fr&lt;br /&gt;
|IsTranslation=0&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Introduction}}&lt;br /&gt;
|Introduction=Je jouais avec '''Mozzi''', une '''bibliothèque de synthèse audio''' (https://sensorium.github.io/Mozzi/), quand je me suis rendu compte que si je voulais vraiment pouvoir exploiter tout le potentiel de cette bibliothèque, j'allais devoir faire un contrôleur.&lt;br /&gt;
&lt;br /&gt;
Si seulement, je pouvais brancher un '''clavier''' ou un '''contrôleur midi''', ça serait carrément plus simplement ! Mais attends ?! C'est possible en fait!&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|TutoVideo}}&lt;br /&gt;
|VideoType=Youtube&lt;br /&gt;
|VideoURLYoutube=https://www.youtube.com/watch?v=CeLYOu-UGXA&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Materials}}&lt;br /&gt;
|Step_Picture_00=Contrôler_des_neopixels_comme_un_DJ_Envoyer_un_message_sur_discord_wemos.png&lt;br /&gt;
|Step_Picture_01=Brancher_des_périphériques_USB_sur_un_ESP8266_usbhost_mini_def.png&lt;br /&gt;
|Material=* Un microcontrôleur 3.3v (par ex: Wemos Mini)&lt;br /&gt;
* Un USB Host Mini&lt;br /&gt;
|Tools=Un petit tournevis plat / Un cutter fin&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Separator}}}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Choisir l'USB Host&lt;br /&gt;
|Step_Content=Merci à CircuitatHome pour la création de l'USB Host&lt;br /&gt;
https://www.circuitsathome.com/usb-host-shield-hardware-manual/&lt;br /&gt;
&lt;br /&gt;
Dans ce tutoriel nous allons utilisé un clone de l''''USB Host Mini'''.&lt;br /&gt;
&lt;br /&gt;
La puce sur celle-ci est un MAX3421E qui ne fonctionne quand 3.3v&lt;br /&gt;
&lt;br /&gt;
{{Idea|Si vous voulez utiliser un microcontrôleur en 5v (comme l'Arduino Uno / Nano) utiliser plutôt le Shield USB Host.}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Malheureusement avant de pouvoir brancher notre USB Host, il va nous falloir '''régler plusieurs problèmes''' sinon '''cela ne marchera pas.'''&lt;br /&gt;
|Step_Picture_00=Brancher_des_périphériques_USB_sur_un_ESP8266_3V3_only.png&lt;br /&gt;
|Step_Picture_01=Brancher_des_périphériques_USB_sur_un_ESP8266_usbhost_mini.jpg&lt;br /&gt;
|Step_Picture_02=Brancher_des_périphériques_USB_sur_un_ESP8266_usbhost_shield.jpg&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Régler le problème d'alimentation&lt;br /&gt;
|Step_Content=Si vous avez acheté '''un clone de l'USB Host Mini''', il n'y a pas de '''jumper pour le VBUS'''.&lt;br /&gt;
&lt;br /&gt;
Cela veut dire que les périphériques USB '''seront alimentés en 3.3v'''&lt;br /&gt;
&lt;br /&gt;
Malheureusement, '''aucun de mes périphériques ne marche,''' car ils '''nécessitent tous du 5v.'''&lt;br /&gt;
&lt;br /&gt;
Vous pouvez en apprendre plus sur ce lien (en japonais)&lt;br /&gt;
&lt;br /&gt;
https://ht-deko.com/arduino/shield_usbhost_mini.html &lt;br /&gt;
&lt;br /&gt;
Il va falloir couper une trace sur le circuit pour régler ce problème.&lt;br /&gt;
&lt;br /&gt;
J'ai utilisé un '''petit tournevis plat''', mais si vous avez un '''cutter fin c'est surement mieux.'''&lt;br /&gt;
|Step_Picture_00=Brancher_des_périphériques_USB_sur_un_ESP8266_usbhost_mini_fix.jpg&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Brancher l'USB Host&lt;br /&gt;
|Step_Content=OK, j'espère que vous n'avez pas cassé votre carte! Maintenant il est temps de la brancher !&lt;br /&gt;
&lt;br /&gt;
J'ai utilisé un Wemos Mini D1 avec mon USB Host Mini, voici comment le brancher.&lt;br /&gt;
&lt;br /&gt;
{{Info|Je n'ai pas relié la broche INT, car celle-ci ne semble pas nécessaire au fonctionnement}}&lt;br /&gt;
&lt;br /&gt;
*D3 -- SS&lt;br /&gt;
*D7 -- MISO&lt;br /&gt;
*D6 -- MOSI&lt;br /&gt;
*D5 -- SCK&lt;br /&gt;
*RST -- RST&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Brancher_des_périphériques_USB_sur_un_ESP8266_usbhost_esp.jpg&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Régler le problème avec la bibliothèque USB Host&lt;br /&gt;
|Step_Content=Vous avez peut-être remarqué que pour la broche SS (Chip Select / CS) j'ai utilisé la '''broche D3''' au lieu de la '''broche par défaut D8.'''&lt;br /&gt;
&lt;br /&gt;
J'ai eu un problème avec l'USB Host qui mettait mon Wemos Mini en mode programmation et bloqué l'exécution du sketch.&lt;br /&gt;
&lt;br /&gt;
https://github.com/felis/USB_Host_Shield_2.0/issues/457&lt;br /&gt;
&lt;br /&gt;
Afin de '''changer la broche SS''', il va falloir changer une ligne dans la bibliothèque.&lt;br /&gt;
&lt;br /&gt;
Télécharger '''USB Host Shield Library 2.0'''&lt;br /&gt;
&lt;br /&gt;
Ouvrez le fichier '''UsbCore.h''' dans '''libraries/USB_Host_Shield_Library_2.0''' et changer cette ligne&lt;br /&gt;
 &lt;br /&gt;
&amp;lt;code&amp;gt;#elif defined(ESP8266)typedef MAX3421e&amp;lt;P15, P5&amp;gt; MAX3421E; // ESP8266 boards &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Avec cette ligne&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;code&amp;gt;#elif defined(ESP8266)typedef MAX3421e&amp;lt;P0, P5&amp;gt; MAX3421E; // ESP8266 boards&amp;lt;/code&amp;gt;&lt;br /&gt;
{{Info|Pourquoi P0 au lieu de D3 ? c'est parce que le GPIO0 est le D3 sur le Wemos Mini.}}&lt;br /&gt;
https://escapequotes.net/esp8266-wemos-d1-mini-pins-and-diagram/&lt;br /&gt;
|Step_Picture_00=Brancher_des_périphériques_USB_sur_un_ESP8266_image_Ky517r0vQa.jpg&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Downgrader ESP8266&lt;br /&gt;
|Step_Content=On y est presque, si vous essayez de compiler un exemple dans la bibliothèque, '''il ne marchera pas!'''&lt;br /&gt;
&lt;br /&gt;
{{Info|Ce problème a été réglé récemment, cette étape n'est nécessaire que si vous utilisez la version 1.3.2 de cette bibliothèque}}&lt;br /&gt;
&lt;br /&gt;
Il y a une incompatibilité entre la bibliothèque et la version 2.5 d'ESP8266 sur le logiciel Arduino.&lt;br /&gt;
&lt;br /&gt;
'''Il va falloir downgrader celle-ci à 2.4.2'''&lt;br /&gt;
&lt;br /&gt;
https://github.com/felis/USB_Host_Shield_2.0/issues/449&lt;br /&gt;
&lt;br /&gt;
Aller dans '''Outils''' / '''Type de carte''' / '''Gestionnaire de carte''' et changer la version à '''2.4.2'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Brancher_des_périphériques_USB_sur_un_ESP8266_esp8266_lib.jpg&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Test l'USB Host&lt;br /&gt;
|Step_Content=Il y a beaucoup d'exemples dans l''''USB Host Shield Library 2.0.'''&lt;br /&gt;
&lt;br /&gt;
Afin de tester si tout marche correctement, je vous conseille de commencer par '''USB_desc'''.&lt;br /&gt;
&lt;br /&gt;
*'''Téléverser''' USB_desc&lt;br /&gt;
*Ouvrez le  '''Moniteur Série''' (115200)&lt;br /&gt;
*'''Brancher votre périphérique USB'''&lt;br /&gt;
*'''Redémarrer la carte''' (ESP8266)&lt;br /&gt;
{{Info|Il n'est pas possible de brancher &amp;quot;à chaud&amp;quot; le périphérique USB (du moins dans les exemples)&lt;br /&gt;
Vous devez redémarrer votre carte à chaque fois que vous débrancher et rebrancher un périphérique.}}&lt;br /&gt;
&lt;br /&gt;
Vous devriez voir un long message décrivant votre périphérique.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Brancher_des_périphériques_USB_sur_un_ESP8266_usbhost_ex.jpg&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Exemple : Manette XBOX360&lt;br /&gt;
|Step_Content=Si vous avez une manette de '''XBOX360 pour PC''', vous pouvez tester l'exemple : X'''BOX/XBOXUSB'''&lt;br /&gt;
&lt;br /&gt;
*'''L2/R2''' vibre quand vous appuyez dessus.&lt;br /&gt;
*L2/R2 : 0/255&lt;br /&gt;
*Stick (Hat) X/Y : -32768 / 32768&lt;br /&gt;
*Les LED peuvent aussi être contrôlées ! (appuyer sur '''pad''' / '''back''' / '''start''' / '''xbox''' pour essayer)&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Exemple : Souris&lt;br /&gt;
|Step_Content=Je n'ai pas réussi à utiliser ma souris. L'exemple se trouve ici : '''HID/USBHIDBootMouse'''&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Exemple : Contrôleur Midi&lt;br /&gt;
|Step_Content=Ouvrez l'exemple '''USBH_MIDI/USBH_MIDI_dump'''&lt;br /&gt;
&lt;br /&gt;
La plupart des périphériques MIDI n'utilisent qu'une petite partie du buffer ('''bufMidi''')&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;00001679: 64: 09 90 2F 13 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;0000174A: 64: 08 80 2F 7F 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*bufMidi[0] : Note ON (9) / Note OFF (8)&lt;br /&gt;
*bufMidi[2] : Note&lt;br /&gt;
*bufMidi[3] : Velocity&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Conclusion&lt;br /&gt;
|Step_Content=Utiliser des périphériques USB ouvre la porte à énormément de possibilités avec nos microcontrôleurs&lt;br /&gt;
&lt;br /&gt;
Nous n'avons vu qu'une infime partie de ce qu'il est possible de faire.&lt;br /&gt;
&lt;br /&gt;
*Vous pouvez utiliser un '''Hub USB''' pour contrôler plusieurs périphériques USB.&lt;br /&gt;
*Il y a plein de broches sur l'USB Host, c'est parce qu’elle sont utilisables comme des GPIO ! Il est possible de brancher des boutons / LED même un écran LCD dessus.&lt;br /&gt;
*Il est même possible d'utiliser des '''clés''' '''USB.'''&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Notes}}&lt;br /&gt;
|Notes=&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Status}}&lt;br /&gt;
|Complete=Draft&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Madnerd</name></author>
		
	</entry>
	<entry>
		<id>https://wikifab.org/w/index.php?title=Brancher_des_p%C3%A9riph%C3%A9riques_USB_sur_un_ESP8266&amp;diff=62910</id>
		<title>Brancher des périphériques USB sur un ESP8266</title>
		<link rel="alternate" type="text/html" href="https://wikifab.org/w/index.php?title=Brancher_des_p%C3%A9riph%C3%A9riques_USB_sur_un_ESP8266&amp;diff=62910"/>
		<updated>2019-04-21T12:45:37Z</updated>

		<summary type="html">&lt;p&gt;Madnerd : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ {{tntn|Tuto Details}}&lt;br /&gt;
|SourceLanguage=none&lt;br /&gt;
|Language=fr&lt;br /&gt;
|IsTranslation=0&lt;br /&gt;
|Main_Picture=Brancher_des_périphériques_USB_sur_un_ESP8266_usbhost_wiki.jpg&lt;br /&gt;
|Licences=Attribution (CC BY)&lt;br /&gt;
|Description=Saviez vous que vous pouvez brancher des périphériques USB sur un Arduino ou un ESP ?&lt;br /&gt;
Que ce soit un clavier, une souris, un manette de jeu ou un contrôleur MIDI, c'est possible !&lt;br /&gt;
|Area=Electronics, Music and Sound, Play and Hobbies&lt;br /&gt;
|Type=Technique&lt;br /&gt;
|Difficulty=Medium&lt;br /&gt;
|Duration=2&lt;br /&gt;
|Duration-type=hour(s)&lt;br /&gt;
|Cost=6&lt;br /&gt;
|Currency=EUR (€)&lt;br /&gt;
|Tags=arduino, esp8266, esp32, usb host, clavier, souris, manette, xbox, MIDI&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Introduction}}&lt;br /&gt;
|Introduction=Je jouais avec '''Mozzi''', une '''bibliothèque de synthèse audio''' (https://sensorium.github.io/Mozzi/), quand je me suis rendu compte que si je voulais vraiment pouvoir exploiter tout le potentiel de cette bibliothèque, j'allais devoir faire un contrôleur.&lt;br /&gt;
&lt;br /&gt;
Si seulement, je pouvais brancher un '''clavier''' ou un '''contrôleur midi''', ça serait carrément plus simplement ! Mais attends ?! C'est possible en fait!&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|TutoVideo}}&lt;br /&gt;
|VideoType=Youtube&lt;br /&gt;
|VideoURLYoutube=https://www.youtube.com/watch?v=CeLYOu-UGXA&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Materials}}&lt;br /&gt;
|Step_Picture_00=Contrôler_des_neopixels_comme_un_DJ_Envoyer_un_message_sur_discord_wemos.png&lt;br /&gt;
|Step_Picture_01=Brancher_des_périphériques_USB_sur_un_ESP8266_usbhost_mini_def.png&lt;br /&gt;
|Material=* Un microcontrôleur 3.3v (par ex: Wemos Mini)&lt;br /&gt;
* Un USB Host Mini&lt;br /&gt;
|Tools=Un petit tournevis plat / Un cutter fin&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Separator}}}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Choisir l'USB Host&lt;br /&gt;
|Step_Content=Merci à CircuitatHome pour la création de l'USB Host&lt;br /&gt;
https://www.circuitsathome.com/usb-host-shield-hardware-manual/&lt;br /&gt;
&lt;br /&gt;
Dans ce tutoriel nous allons utilisé un clone de l''''USB Host Mini'''.&lt;br /&gt;
&lt;br /&gt;
La puce sur celle-ci est un MAX3421E qui ne fonctionne quand 3.3v&lt;br /&gt;
&lt;br /&gt;
{{Idea|Si vous voulez utiliser un microcontrôleur en 5v (comme l'Arduino Uno / Nano) utiliser plutôt le Shield USB Host.}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Malheureusement avant de pouvoir brancher notre USB Host, il va nous falloir '''régler plusieurs problèmes''' sinon '''cela ne marchera pas.'''&lt;br /&gt;
|Step_Picture_00=Brancher_des_périphériques_USB_sur_un_ESP8266_3V3_only.png&lt;br /&gt;
|Step_Picture_01=Brancher_des_périphériques_USB_sur_un_ESP8266_usbhost_mini.jpg&lt;br /&gt;
|Step_Picture_02=Brancher_des_périphériques_USB_sur_un_ESP8266_usbhost_shield.jpg&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Régler le problème d'alimentation&lt;br /&gt;
|Step_Content=Si vous avez acheté '''un clone de l'USB Host Mini''', il n'y a pas de '''jumper pour le VBUS'''.&lt;br /&gt;
&lt;br /&gt;
Cela veut dire que les périphériques USB '''seront alimentés en 3.3v'''&lt;br /&gt;
&lt;br /&gt;
Malheureusement, '''aucun de mes périphériques ne marche,''' car ils '''nécessitent tous du 5v.'''&lt;br /&gt;
&lt;br /&gt;
Vous pouvez en apprendre plus sur ce lien (en japonais)&lt;br /&gt;
&lt;br /&gt;
https://ht-deko.com/arduino/shield_usbhost_mini.html &lt;br /&gt;
&lt;br /&gt;
Il va falloir couper une trace sur le circuit pour régler ce problème.&lt;br /&gt;
&lt;br /&gt;
J'ai utilisé un '''petit tournevis plat''', mais si vous avez un '''cutter fin c'est surement mieux.'''&lt;br /&gt;
|Step_Picture_00=Brancher_des_périphériques_USB_sur_un_ESP8266_usbhost_mini_fix.jpg&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Brancher l'USB Host&lt;br /&gt;
|Step_Content=OK, j'espère que vous n'avez pas cassé votre carte! Maintenant il est temps de la brancher !&lt;br /&gt;
&lt;br /&gt;
J'ai utilisé un Wemos Mini D1 avec mon USB Host Mini, voici comment le brancher.&lt;br /&gt;
&lt;br /&gt;
{{Info|Je n'ai pas relié la broche INT, car celle-ci ne semble pas nécessaire au fonctionnement}}&lt;br /&gt;
&lt;br /&gt;
*D3 -- SS&lt;br /&gt;
*D7 -- MISO&lt;br /&gt;
*D6 -- MOSI&lt;br /&gt;
*D5 -- SCK&lt;br /&gt;
*RST -- RST&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Brancher_des_périphériques_USB_sur_un_ESP8266_usbhost_esp.jpg&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Régler le problème avec la bibliothèque USB Host&lt;br /&gt;
|Step_Content=Vous avez peut-être remarqué que pour la broche SS (Chip Select / CS) j'ai utilisé la '''broche D3''' au lieu de la '''broche par défaut D8.'''&lt;br /&gt;
&lt;br /&gt;
J'ai eu un problème avec l'USB Host qui mettait mon Wemos Mini en mode programmation et bloqué l'exécution du sketch.&lt;br /&gt;
&lt;br /&gt;
https://github.com/felis/USB_Host_Shield_2.0/issues/457&lt;br /&gt;
&lt;br /&gt;
Afin de '''changer la broche SS''', il va falloir changer une ligne dans la bibliothèque.&lt;br /&gt;
&lt;br /&gt;
Télécharger '''USB Host Shield Library 2.0'''&lt;br /&gt;
&lt;br /&gt;
Ouvrez le fichier '''UsbCore.h''' dans '''libraries/USB_Host_Shield_Library_2.0''' et changer cette ligne&lt;br /&gt;
 &lt;br /&gt;
&amp;lt;code&amp;gt;#elif defined(ESP8266)typedef MAX3421e&amp;lt;P15, P5&amp;gt; MAX3421E; // ESP8266 boards &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Avec cette ligne&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;code&amp;gt;#elif defined(ESP8266)typedef MAX3421e&amp;lt;P0, P5&amp;gt; MAX3421E; // ESP8266 boards&amp;lt;/code&amp;gt;&lt;br /&gt;
{{Info|Pourquoi P0 au lieu de D3 ? c'est parce que le GPIO0 est le D3 sur le Wemos Mini.}}&lt;br /&gt;
https://escapequotes.net/esp8266-wemos-d1-mini-pins-and-diagram/&lt;br /&gt;
|Step_Picture_00=Brancher_des_périphériques_USB_sur_un_ESP8266_image_Ky517r0vQa.jpg&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Downgrader ESP8266&lt;br /&gt;
|Step_Content=On y est presque, si vous essayez de compiler un exemple dans la bibliothèque, '''il ne marchera pas!'''&lt;br /&gt;
&lt;br /&gt;
{{Info|Ce problème a été réglé récemment, cette étape n'est nécessaire que si vous utilisez la version 1.3.2 de cette bibliothèque}}&lt;br /&gt;
&lt;br /&gt;
La raison pour laquelle la compilation ne marche pas et à cause d'une incompatibilité entre la bibliothèque et la version 2.5 d'ESP8266 sur le logiciel Arduino.&lt;br /&gt;
&lt;br /&gt;
'''Il va falloir downgrader celle-ci à 2.4.2'''&lt;br /&gt;
&lt;br /&gt;
https://github.com/felis/USB_Host_Shield_2.0/issues/449&lt;br /&gt;
&lt;br /&gt;
Aller dans '''Outils''' / '''Type de carte''' / '''Gestionnaire de carte''' et changer la version à '''2.4.2'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Brancher_des_périphériques_USB_sur_un_ESP8266_esp8266_lib.jpg&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Test l'USB Host&lt;br /&gt;
|Step_Content=Il y a beaucoup d'exemples dans l''''USB Host Shield Library 2.0.'''&lt;br /&gt;
&lt;br /&gt;
Afin de tester si tout marche correctement, je vous conseille de commencer par '''USB_des'''c.&lt;br /&gt;
&lt;br /&gt;
*'''Téléverser''' USB_desc&lt;br /&gt;
*Ouvrez le  '''Moniteur Série''' (115200)&lt;br /&gt;
*'''Brancher votre périphérique USB'''&lt;br /&gt;
*'''Redémarrer la carte''' (ESP8266)&lt;br /&gt;
{{Info|Il n'est pas possible de brancher &amp;quot;à chaud&amp;quot; le périphérique USB (du moins dans les exemples)&lt;br /&gt;
Vous devez redémarrer votre carte à chaque fois que vous débrancher et rebrancher un périphérique.}}&lt;br /&gt;
&lt;br /&gt;
Vous devriez voir un long message décrivant votre périphérique.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Brancher_des_périphériques_USB_sur_un_ESP8266_usbhost_ex.jpg&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Exemple : Manette XBOX360&lt;br /&gt;
|Step_Content=Si vous avez une manette de '''XBOX360 pour PC''', vous pouvez tester l'exemple : X'''BOX/XBOXUSB'''&lt;br /&gt;
&lt;br /&gt;
*'''L2/R2''' vibre quand vous appuyez dessus.&lt;br /&gt;
*L2/R2 : 0/255&lt;br /&gt;
*Stick (Hat) X/Y : -32768 / 32768&lt;br /&gt;
*Les LED peuvent aussi être contrôlées ! (appuyer sur '''pad''' / '''back''' / '''start''' / '''xbox''' pour essayer)&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Exemple : Souris&lt;br /&gt;
|Step_Content=Je n'ai pas réussi à utiliser ma souris. L'exemple se trouve ici : '''HID/USBHIDBootMouse'''&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Exemple : Contrôleur Midi&lt;br /&gt;
|Step_Content=Ouvrez l'exemple '''USBH_MIDI/USBH_MIDI_dump'''&lt;br /&gt;
&lt;br /&gt;
La plupart des périphériques MIDI n'utilisent qu'une petite partie du buffer ('''bufMidi''')&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;00001679: 64: 09 90 2F 13 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;0000174A: 64: 08 80 2F 7F 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*bufMidi[0] : Note ON (9) / Note OFF (8)&lt;br /&gt;
*bufMidi[2] : Note&lt;br /&gt;
*bufMidi[3] : Velocity&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Conclusion&lt;br /&gt;
|Step_Content=Utiliser des périphériques USB ouvre la porte à énormément de possibilités avec nos microcontrôleurs&lt;br /&gt;
&lt;br /&gt;
Nous n'avons vu qu'une infime partie de ce qu'il est possible de faire.&lt;br /&gt;
&lt;br /&gt;
*Vous pouvez utiliser un '''Hub USB''' pour contrôler plusieurs périphériques USB.&lt;br /&gt;
*Il y a plein de broches sur l'USB Host, c'est parce qu’elle sont utilisables comme des GPIO ! Il est possible de brancher des boutons / LED même un écran LCD dessus.&lt;br /&gt;
*Il est même possible d'utiliser des '''clés''' '''USB.'''&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Notes}}&lt;br /&gt;
|Notes=&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Status}}&lt;br /&gt;
|Complete=Draft&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Madnerd</name></author>
		
	</entry>
	<entry>
		<id>https://wikifab.org/w/index.php?title=Brancher_des_p%C3%A9riph%C3%A9riques_USB_sur_un_ESP8266&amp;diff=62909</id>
		<title>Brancher des périphériques USB sur un ESP8266</title>
		<link rel="alternate" type="text/html" href="https://wikifab.org/w/index.php?title=Brancher_des_p%C3%A9riph%C3%A9riques_USB_sur_un_ESP8266&amp;diff=62909"/>
		<updated>2019-04-21T12:31:30Z</updated>

		<summary type="html">&lt;p&gt;Madnerd : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ {{tntn|Tuto Details}}&lt;br /&gt;
|Main_Picture=Brancher_des_périphériques_USB_sur_un_ESP8266_usbhost_wiki.jpg&lt;br /&gt;
|Licences=Attribution (CC BY)&lt;br /&gt;
|Description=Saviez vous que vous pouvez brancher des périphériques USB sur un Arduino ou un ESP ?&lt;br /&gt;
Que ce soit un clavier, une souris, un manette de jeu ou un contrôleur MIDI, c'est possible !&lt;br /&gt;
|Area=Electronics, Music and Sound, Play and Hobbies&lt;br /&gt;
|Type=Technique&lt;br /&gt;
|Difficulty=Medium&lt;br /&gt;
|Duration=2&lt;br /&gt;
|Duration-type=hour(s)&lt;br /&gt;
|Cost=6&lt;br /&gt;
|Currency=EUR (€)&lt;br /&gt;
|Tags=arduino, esp8266, esp32, usb host, clavier, souris, manette, xbox, MIDI&lt;br /&gt;
|SourceLanguage=none&lt;br /&gt;
|Language=fr&lt;br /&gt;
|IsTranslation=0&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Introduction}}&lt;br /&gt;
|Introduction=Je jouais avec '''Mozzi''', une '''bibliothèque de synthèse audio''' (https://sensorium.github.io/Mozzi/), quand je me suis rendu compte que si je voulais vraiment pouvoir exploiter tout le potentiel de cette bibliothèque, j'allais devoir faire un contrôleur.&lt;br /&gt;
&lt;br /&gt;
Si seulement, je pouvais brancher un '''clavier''', ou un '''contrôleur midi''', ça serait carrément plus simplement ! Mais attends ?! C'est possible en fait!&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|TutoVideo}}&lt;br /&gt;
|VideoType=Youtube&lt;br /&gt;
|VideoURLYoutube=https://www.youtube.com/watch?v=CeLYOu-UGXA&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Materials}}&lt;br /&gt;
|Step_Picture_00=Contrôler_des_neopixels_comme_un_DJ_Envoyer_un_message_sur_discord_wemos.png&lt;br /&gt;
|Step_Picture_01=Brancher_des_périphériques_USB_sur_un_ESP8266_usbhost_mini_def.png&lt;br /&gt;
|Material=* Un microcontrôleur 3.3v (par ex: Wemos Mini)&lt;br /&gt;
* Un USB Host Mini&lt;br /&gt;
|Tools=Un petit tournevis plat / Un cutter fin&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Separator}}}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Choisir l'USB Host&lt;br /&gt;
|Step_Content=Merci à CircuitatHome pour la création de l'USB Host&lt;br /&gt;
https://www.circuitsathome.com/usb-host-shield-hardware-manual/&lt;br /&gt;
&lt;br /&gt;
Dans ce tutoriel nous allons utilisé un clone de l''''USB Host Mini'''.&lt;br /&gt;
&lt;br /&gt;
La puce sur celle-ci est un MAX3421E qui ne fonctionne quand 3.3v&lt;br /&gt;
&lt;br /&gt;
Si vous voulez utiliser un '''microcontrôleur en 5v''' (comme l'Arduino Uno / Nano) '''utiliser le Shield USB Host plutôt.'''&lt;br /&gt;
&lt;br /&gt;
Malheureusement avant de pouvoir brancher notre USB Host, il va nous falloir '''régler plusieurs problèmes''' sinon '''cela ne marchera pas.'''&lt;br /&gt;
|Step_Picture_00=Brancher_des_périphériques_USB_sur_un_ESP8266_3V3_only.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Régler le problème d'alimentation&lt;br /&gt;
|Step_Content=Si vous avez acheter '''un clone de l'USB Host Mini''', il n'y a pas de '''jumper pour le VBUS'''.&lt;br /&gt;
&lt;br /&gt;
Cela veut dire que les périphériques USB '''seront alimentés en 3.3v'''&lt;br /&gt;
&lt;br /&gt;
Malheureusement '''aucun de mes périphériques ne marchent''' car ils '''nécessitent tous du 5v'''&lt;br /&gt;
&lt;br /&gt;
Vous pouvez en apprendre plus sur ce lien (en japonais)&lt;br /&gt;
&lt;br /&gt;
https://ht-deko.com/arduino/shield_usbhost_mini.html &lt;br /&gt;
&lt;br /&gt;
Il va falloir couper une trâce sur le circuit pour règler ce problème.&lt;br /&gt;
&lt;br /&gt;
J'ai utiliser un '''petit tournevis plat''', mais si vous avez un '''cutter fin c'est surement mieux.'''&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Brancher l'USB Host&lt;br /&gt;
|Step_Content=OK, j'espère que vous n'avez pas cassé votre carte! Maintenant il est temps de la brancher !&lt;br /&gt;
&lt;br /&gt;
J'ai utilisé un Wemos Mini D1 avec mon USB Host Mini, voici comment le brancher.&lt;br /&gt;
&lt;br /&gt;
{{Info|Je n'ai pas relier la broche INT, car celle-ci ne semble pas nécessaire au fonctionnement}}&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*D3 -- SS&lt;br /&gt;
*D7 -- MISO&lt;br /&gt;
*D6 -- MOSI&lt;br /&gt;
*D5 -- SCK&lt;br /&gt;
*RST -- RST&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Régler le problème avec la bibliothèque USB Host&lt;br /&gt;
|Step_Content=Vous avez peut être remarquer que pour la broche SS (Chip Select / CS) j'ai utilisé la '''broche D3''' au lieu de la '''broche par défaut D8.'''&lt;br /&gt;
&lt;br /&gt;
J'ai eu un problème avec l'USB Host qui mettait mon Wemos Mini en mode programmation et bloquer l'exécution du sketch.&lt;br /&gt;
&lt;br /&gt;
https://github.com/felis/USB_Host_Shield_2.0/issues/457&lt;br /&gt;
&lt;br /&gt;
Afin de '''changer la broche SS''', il va falloir changer une ligne dans la bibliothèque.&lt;br /&gt;
&lt;br /&gt;
Télécharger '''USB Host Shield Library 2.0'''&lt;br /&gt;
&lt;br /&gt;
Ouvrez le fichier '''UsbCore.h''' dans '''libraries/USB_Host_Shield_Library_2.0''' et changer cette ligne&lt;br /&gt;
 &lt;br /&gt;
&amp;lt;code&amp;gt;#elif defined(ESP8266)typedef MAX3421e&amp;lt;P15, P5&amp;gt; MAX3421E; // ESP8266 boards &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Avec cette ligne&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;code&amp;gt;#elif defined(ESP8266)typedef MAX3421e&amp;lt;P0, P5&amp;gt; MAX3421E; // ESP8266 boards&amp;lt;/code&amp;gt;&lt;br /&gt;
{{Info|Pourquoi P0 au lieu de D3 ?, c'est parceque le GPIO0 est le D3 sur le Wemos Mini.}}&lt;br /&gt;
https://escapequotes.net/esp8266-wemos-d1-mini-pins-and-diagram/&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Downgrader ESP8266&lt;br /&gt;
|Step_Content=On y est presque, si vous essayer de compiler un exemple dans la bibliothèque, '''il ne marchera pas!'''&lt;br /&gt;
&lt;br /&gt;
{{Info|Ce problème a été réglé récemment, cette étape n'est nécessaire que si vous utiliser la version 1.3.2 de cette bibliothèque}}&lt;br /&gt;
&lt;br /&gt;
La raison pour laquelle la compilation ne marche pas et à cause d'une incompatibilité entre la bibliothèque et la version 2.5 d'ESP8266 sur le logiciel Arduino.&lt;br /&gt;
&lt;br /&gt;
'''Il va falloir downgrader celle-ci à 2.4.2'''&lt;br /&gt;
&lt;br /&gt;
https://github.com/felis/USB_Host_Shield_2.0/issues/449&lt;br /&gt;
&lt;br /&gt;
Aller dans '''Outils''' / '''Type de carte''' / '''Gestionnaire de carte''' et changer la version à '''2.4.2'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Test l'USB Host&lt;br /&gt;
|Step_Content=Il y a beaucoup d'exemples dans l''''USB Host Shield Library 2.0.'''&lt;br /&gt;
&lt;br /&gt;
Afin de tester si tout marche correctement, je vous conseille de commencer par '''USB_des'''c.&lt;br /&gt;
&lt;br /&gt;
*'''Téléverser''' USB_desc&lt;br /&gt;
*Ouvrez le  '''Moniteur Série''' (115200)&lt;br /&gt;
*'''Brancher votre périphérique USB'''&lt;br /&gt;
*'''Redémarrer la carte''' (ESP8266)&lt;br /&gt;
{{Info|Il n'est pas possible de brancher &amp;quot;à chaud&amp;quot; le périphérique USB (du moins dans les exemples)&lt;br /&gt;
Vous devez redémarrer votre carte à chaque fois que vous débrancher et rebrancher un périphérique.}}&lt;br /&gt;
&lt;br /&gt;
Vous devriez voir un long message décrivant votre périphérique.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Exemple : Manette XBOX360&lt;br /&gt;
|Step_Content=Si vous avez une manette de '''XBOX360 pour PC''', vous pouvez tester l'exemple : X'''BOX/XBOXUSB'''&lt;br /&gt;
&lt;br /&gt;
*'''L2/R2''' vibre quand vous appuyer dessus.&lt;br /&gt;
*L2/R2 : 0/255&lt;br /&gt;
*Stick (Hat) X/Y : -32768 / 32768&lt;br /&gt;
*Les LEDs peuvent aussi être contrôlés ! (appuyer sur '''pad''' / '''back''' / '''start''' / '''xbox''' pour essayer)&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Exemple : Souris&lt;br /&gt;
|Step_Content=Je n'ai pas réussi à utiliser ma souris. L'exemple se trouve ici : '''HID/USBHIDBootMouse'''&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Exemple : Contrôleur Midi&lt;br /&gt;
|Step_Content=Ouvrez l'exemple '''USBH_MIDI/USBH_MIDI_dump'''&lt;br /&gt;
&lt;br /&gt;
La plupart des périphériques MIDI n'utilise qu'une petit partie du buffer ('''bufMidi''')&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;00001679: 64: 09 90 2F 13 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;0000174A: 64: 08 80 2F 7F 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*bufMidi[0] : Note ON (9) / Note OFF (8)&lt;br /&gt;
*bufMidi[2] : Note&lt;br /&gt;
*bufMidi[3] : Velocity&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Conclusion&lt;br /&gt;
|Step_Content=Utiliser des périphériques USB ouvre la porte à énormement de possibilités avec nos microcontroleur&lt;br /&gt;
&lt;br /&gt;
Nous n'avons vu qu'une infime partie de ce qu'il est possible de faire.&lt;br /&gt;
&lt;br /&gt;
*Vous pouvez utiliser un '''Hub USB''' pour contrôler plusieurs périphériques USB.&lt;br /&gt;
*Ils y a pleins de broches sur l'USB Host, c'est parcequ'elle sont utilisables comme des GPIO ! Ils est possible de brancher des boutons / leds même un écran LCD dessus.&lt;br /&gt;
*Il est même possible d'utiliser des '''clés''' '''USB.'''&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Notes}}&lt;br /&gt;
|Notes=&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Status}}&lt;br /&gt;
|Complete=Draft&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Madnerd</name></author>
		
	</entry>
	<entry>
		<id>https://wikifab.org/w/index.php?title=Fichier:Brancher_des_p%C3%A9riph%C3%A9riques_USB_sur_un_ESP8266_usbhost_shield.jpg&amp;diff=62908</id>
		<title>Fichier:Brancher des périphériques USB sur un ESP8266 usbhost shield.jpg</title>
		<link rel="alternate" type="text/html" href="https://wikifab.org/w/index.php?title=Fichier:Brancher_des_p%C3%A9riph%C3%A9riques_USB_sur_un_ESP8266_usbhost_shield.jpg&amp;diff=62908"/>
		<updated>2019-04-21T12:31:21Z</updated>

		<summary type="html">&lt;p&gt;Madnerd : Brancher_des_périphériques_USB_sur_un_ESP8266_usbhost_shield&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Brancher_des_périphériques_USB_sur_un_ESP8266_usbhost_shield&lt;/div&gt;</summary>
		<author><name>Madnerd</name></author>
		
	</entry>
	<entry>
		<id>https://wikifab.org/w/index.php?title=Fichier:Brancher_des_p%C3%A9riph%C3%A9riques_USB_sur_un_ESP8266_usbhost_mini_fix.jpg&amp;diff=62907</id>
		<title>Fichier:Brancher des périphériques USB sur un ESP8266 usbhost mini fix.jpg</title>
		<link rel="alternate" type="text/html" href="https://wikifab.org/w/index.php?title=Fichier:Brancher_des_p%C3%A9riph%C3%A9riques_USB_sur_un_ESP8266_usbhost_mini_fix.jpg&amp;diff=62907"/>
		<updated>2019-04-21T12:31:19Z</updated>

		<summary type="html">&lt;p&gt;Madnerd : Brancher_des_périphériques_USB_sur_un_ESP8266_usbhost_mini_fix&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Brancher_des_périphériques_USB_sur_un_ESP8266_usbhost_mini_fix&lt;/div&gt;</summary>
		<author><name>Madnerd</name></author>
		
	</entry>
	<entry>
		<id>https://wikifab.org/w/index.php?title=Fichier:Brancher_des_p%C3%A9riph%C3%A9riques_USB_sur_un_ESP8266_usbhost_ex.jpg&amp;diff=62906</id>
		<title>Fichier:Brancher des périphériques USB sur un ESP8266 usbhost ex.jpg</title>
		<link rel="alternate" type="text/html" href="https://wikifab.org/w/index.php?title=Fichier:Brancher_des_p%C3%A9riph%C3%A9riques_USB_sur_un_ESP8266_usbhost_ex.jpg&amp;diff=62906"/>
		<updated>2019-04-21T12:31:17Z</updated>

		<summary type="html">&lt;p&gt;Madnerd : Brancher_des_périphériques_USB_sur_un_ESP8266_usbhost_ex&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Brancher_des_périphériques_USB_sur_un_ESP8266_usbhost_ex&lt;/div&gt;</summary>
		<author><name>Madnerd</name></author>
		
	</entry>
	<entry>
		<id>https://wikifab.org/w/index.php?title=Fichier:Brancher_des_p%C3%A9riph%C3%A9riques_USB_sur_un_ESP8266_usbhost_esp.jpg&amp;diff=62905</id>
		<title>Fichier:Brancher des périphériques USB sur un ESP8266 usbhost esp.jpg</title>
		<link rel="alternate" type="text/html" href="https://wikifab.org/w/index.php?title=Fichier:Brancher_des_p%C3%A9riph%C3%A9riques_USB_sur_un_ESP8266_usbhost_esp.jpg&amp;diff=62905"/>
		<updated>2019-04-21T12:31:15Z</updated>

		<summary type="html">&lt;p&gt;Madnerd : Brancher_des_périphériques_USB_sur_un_ESP8266_usbhost_esp&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Brancher_des_périphériques_USB_sur_un_ESP8266_usbhost_esp&lt;/div&gt;</summary>
		<author><name>Madnerd</name></author>
		
	</entry>
	<entry>
		<id>https://wikifab.org/w/index.php?title=Fichier:Brancher_des_p%C3%A9riph%C3%A9riques_USB_sur_un_ESP8266_image_Ky517r0vQa.jpg&amp;diff=62904</id>
		<title>Fichier:Brancher des périphériques USB sur un ESP8266 image Ky517r0vQa.jpg</title>
		<link rel="alternate" type="text/html" href="https://wikifab.org/w/index.php?title=Fichier:Brancher_des_p%C3%A9riph%C3%A9riques_USB_sur_un_ESP8266_image_Ky517r0vQa.jpg&amp;diff=62904"/>
		<updated>2019-04-21T12:31:13Z</updated>

		<summary type="html">&lt;p&gt;Madnerd : Brancher_des_périphériques_USB_sur_un_ESP8266_image_Ky517r0vQa&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Brancher_des_périphériques_USB_sur_un_ESP8266_image_Ky517r0vQa&lt;/div&gt;</summary>
		<author><name>Madnerd</name></author>
		
	</entry>
	<entry>
		<id>https://wikifab.org/w/index.php?title=Fichier:Brancher_des_p%C3%A9riph%C3%A9riques_USB_sur_un_ESP8266_esp8266_lib.jpg&amp;diff=62903</id>
		<title>Fichier:Brancher des périphériques USB sur un ESP8266 esp8266 lib.jpg</title>
		<link rel="alternate" type="text/html" href="https://wikifab.org/w/index.php?title=Fichier:Brancher_des_p%C3%A9riph%C3%A9riques_USB_sur_un_ESP8266_esp8266_lib.jpg&amp;diff=62903"/>
		<updated>2019-04-21T12:31:11Z</updated>

		<summary type="html">&lt;p&gt;Madnerd : Brancher_des_périphériques_USB_sur_un_ESP8266_esp8266_lib&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Brancher_des_périphériques_USB_sur_un_ESP8266_esp8266_lib&lt;/div&gt;</summary>
		<author><name>Madnerd</name></author>
		
	</entry>
	<entry>
		<id>https://wikifab.org/w/index.php?title=Fichier:Brancher_des_p%C3%A9riph%C3%A9riques_USB_sur_un_ESP8266_usbhost_mini.jpg&amp;diff=62902</id>
		<title>Fichier:Brancher des périphériques USB sur un ESP8266 usbhost mini.jpg</title>
		<link rel="alternate" type="text/html" href="https://wikifab.org/w/index.php?title=Fichier:Brancher_des_p%C3%A9riph%C3%A9riques_USB_sur_un_ESP8266_usbhost_mini.jpg&amp;diff=62902"/>
		<updated>2019-04-21T12:30:43Z</updated>

		<summary type="html">&lt;p&gt;Madnerd : Brancher_des_périphériques_USB_sur_un_ESP8266_usbhost_mini&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Brancher_des_périphériques_USB_sur_un_ESP8266_usbhost_mini&lt;/div&gt;</summary>
		<author><name>Madnerd</name></author>
		
	</entry>
	<entry>
		<id>https://wikifab.org/w/index.php?title=Brancher_des_p%C3%A9riph%C3%A9riques_USB_sur_un_ESP8266&amp;diff=62901</id>
		<title>Brancher des périphériques USB sur un ESP8266</title>
		<link rel="alternate" type="text/html" href="https://wikifab.org/w/index.php?title=Brancher_des_p%C3%A9riph%C3%A9riques_USB_sur_un_ESP8266&amp;diff=62901"/>
		<updated>2019-04-21T12:12:50Z</updated>

		<summary type="html">&lt;p&gt;Madnerd : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ {{tntn|Tuto Details}}&lt;br /&gt;
|SourceLanguage=none&lt;br /&gt;
|Language=fr&lt;br /&gt;
|IsTranslation=0&lt;br /&gt;
|Main_Picture=Brancher_des_périphériques_USB_sur_un_ESP8266_usbhost_wiki.jpg&lt;br /&gt;
|Licences=Attribution (CC BY)&lt;br /&gt;
|Description=Saviez vous que vous pouvez brancher des périphériques USB sur un Arduino ou un ESP ?&lt;br /&gt;
Que ce soit un clavier, une souris, un manette de jeu ou un contrôleur MIDI, c'est possible !&lt;br /&gt;
|Area=Electronics, Music and Sound, Play and Hobbies&lt;br /&gt;
|Type=Technique&lt;br /&gt;
|Difficulty=Medium&lt;br /&gt;
|Duration=2&lt;br /&gt;
|Duration-type=hour(s)&lt;br /&gt;
|Cost=6&lt;br /&gt;
|Currency=EUR (€)&lt;br /&gt;
|Tags=arduino, esp8266, esp32, usb host, clavier, souris, manette, xbox, MIDI&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Introduction}}&lt;br /&gt;
|Introduction=Je jouais avec '''Mozzi''', une '''bibliothèque de synthèse audio''' (https://sensorium.github.io/Mozzi/), quand je me suis rendu compte que si je voulais vraiment pouvoir exploiter tout le potentiel de cette bibliothèque, j'allais devoir faire un contrôleur.&lt;br /&gt;
&lt;br /&gt;
Si seulement, je pouvais brancher un '''clavier''', ou un '''contrôleur midi''', ça serait carrément plus simplement ! Mais attends ?! C'est possible en fait!&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|TutoVideo}}&lt;br /&gt;
|VideoType=Youtube&lt;br /&gt;
|VideoURLYoutube=https://www.youtube.com/watch?v=CeLYOu-UGXA&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Materials}}&lt;br /&gt;
|Step_Picture_00=Contrôler_des_neopixels_comme_un_DJ_Envoyer_un_message_sur_discord_wemos.png&lt;br /&gt;
|Step_Picture_01=Brancher_des_périphériques_USB_sur_un_ESP8266_usbhost_mini_def.png&lt;br /&gt;
|Material=* Un microcontrôleur 3.3v (par ex: Wemos Mini)&lt;br /&gt;
* Un USB Host Mini&lt;br /&gt;
|Tools=Un petit tournevis plat / Un cutter fin&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Separator}}}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Choisir l'USB Host&lt;br /&gt;
|Step_Content=Merci à CircuitatHome pour la création de l'USB Host&lt;br /&gt;
https://www.circuitsathome.com/usb-host-shield-hardware-manual/&lt;br /&gt;
&lt;br /&gt;
Dans ce tutoriel nous allons utilisé un clone de l''''USB Host Mini'''.&lt;br /&gt;
&lt;br /&gt;
La puce sur celle-ci est un MAX3421E qui ne fonctionne quand 3.3v&lt;br /&gt;
&lt;br /&gt;
Si vous voulez utiliser un '''microcontrôleur en 5v''' (comme l'Arduino Uno / Nano) '''utiliser le Shield USB Host plutôt.'''&lt;br /&gt;
&lt;br /&gt;
Malheureusement avant de pouvoir brancher notre USB Host, il va nous falloir '''régler plusieurs problèmes''' sinon '''cela ne marchera pas.'''&lt;br /&gt;
|Step_Picture_00=Brancher_des_périphériques_USB_sur_un_ESP8266_3V3_only.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Régler le problème d'alimentation&lt;br /&gt;
|Step_Content=Si vous avez acheter '''un clone de l'USB Host Mini''', il n'y a pas de '''jumper pour le VBUS'''.&lt;br /&gt;
&lt;br /&gt;
Cela veut dire que les périphériques USB '''seront alimentés en 3.3v'''&lt;br /&gt;
&lt;br /&gt;
Malheureusement '''aucun de mes périphériques ne marchent''' car ils '''nécessitent tous du 5v'''&lt;br /&gt;
&lt;br /&gt;
Vous pouvez en apprendre plus sur ce lien (en japonais)&lt;br /&gt;
&lt;br /&gt;
https://ht-deko.com/arduino/shield_usbhost_mini.html &lt;br /&gt;
&lt;br /&gt;
Il va falloir couper une trâce sur le circuit pour règler ce problème.&lt;br /&gt;
&lt;br /&gt;
J'ai utiliser un '''petit tournevis plat''', mais si vous avez un '''cutter fin c'est surement mieux.'''&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Brancher l'USB Host&lt;br /&gt;
|Step_Content=OK, j'espère que vous n'avez pas cassé votre carte! Maintenant il est temps de la brancher !&lt;br /&gt;
&lt;br /&gt;
J'ai utilisé un Wemos Mini D1 avec mon USB Host Mini, voici comment le brancher.&lt;br /&gt;
&lt;br /&gt;
{{Info|Je n'ai pas relier la broche INT, car celle-ci ne semble pas nécessaire au fonctionnement}}&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*D3 -- SS&lt;br /&gt;
*D7 -- MISO&lt;br /&gt;
*D6 -- MOSI&lt;br /&gt;
*D5 -- SCK&lt;br /&gt;
*RST -- RST&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Régler le problème avec la bibliothèque USB Host&lt;br /&gt;
|Step_Content=Vous avez peut être remarquer que pour la broche SS (Chip Select / CS) j'ai utilisé la '''broche D3''' au lieu de la '''broche par défaut D8.'''&lt;br /&gt;
&lt;br /&gt;
J'ai eu un problème avec l'USB Host qui mettait mon Wemos Mini en mode programmation et bloquer l'exécution du sketch.&lt;br /&gt;
&lt;br /&gt;
https://github.com/felis/USB_Host_Shield_2.0/issues/457&lt;br /&gt;
&lt;br /&gt;
Afin de '''changer la broche SS''', il va falloir changer une ligne dans la bibliothèque.&lt;br /&gt;
&lt;br /&gt;
Télécharger '''USB Host Shield Library 2.0'''&lt;br /&gt;
&lt;br /&gt;
Ouvrez le fichier '''UsbCore.h''' dans '''libraries/USB_Host_Shield_Library_2.0''' et changer cette ligne&lt;br /&gt;
 &lt;br /&gt;
&amp;lt;code&amp;gt;#elif defined(ESP8266)typedef MAX3421e&amp;lt;P15, P5&amp;gt; MAX3421E; // ESP8266 boards &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Avec cette ligne&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;code&amp;gt;#elif defined(ESP8266)typedef MAX3421e&amp;lt;P0, P5&amp;gt; MAX3421E; // ESP8266 boards&amp;lt;/code&amp;gt;&lt;br /&gt;
{{Info|Pourquoi P0 au lieu de D3 ?, c'est parceque le GPIO0 est le D3 sur le Wemos Mini.}}&lt;br /&gt;
https://escapequotes.net/esp8266-wemos-d1-mini-pins-and-diagram/&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Downgrader ESP8266&lt;br /&gt;
|Step_Content=On y est presque, si vous essayer de compiler un exemple dans la bibliothèque, '''il ne marchera pas!'''&lt;br /&gt;
&lt;br /&gt;
{{Info|Ce problème a été réglé récemment, cette étape n'est nécessaire que si vous utiliser la version 1.3.2 de cette bibliothèque}}&lt;br /&gt;
&lt;br /&gt;
La raison pour laquelle la compilation ne marche pas et à cause d'une incompatibilité entre la bibliothèque et la version 2.5 d'ESP8266 sur le logiciel Arduino.&lt;br /&gt;
&lt;br /&gt;
'''Il va falloir downgrader celle-ci à 2.4.2'''&lt;br /&gt;
&lt;br /&gt;
https://github.com/felis/USB_Host_Shield_2.0/issues/449&lt;br /&gt;
&lt;br /&gt;
Aller dans '''Outils''' / '''Type de carte''' / '''Gestionnaire de carte''' et changer la version à '''2.4.2'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Test l'USB Host&lt;br /&gt;
|Step_Content=Il y a beaucoup d'exemples dans l''''USB Host Shield Library 2.0.'''&lt;br /&gt;
&lt;br /&gt;
Afin de tester si tout marche correctement, je vous conseille de commencer par '''USB_des'''c.&lt;br /&gt;
&lt;br /&gt;
*'''Téléverser''' USB_desc&lt;br /&gt;
*Ouvrez le  '''Moniteur Série''' (115200)&lt;br /&gt;
*'''Brancher votre périphérique USB'''&lt;br /&gt;
*'''Redémarrer la carte''' (ESP8266)&lt;br /&gt;
{{Info|Il n'est pas possible de brancher &amp;quot;à chaud&amp;quot; le périphérique USB (du moins dans les exemples)&lt;br /&gt;
Vous devez redémarrer votre carte à chaque fois que vous débrancher et rebrancher un périphérique.}}&lt;br /&gt;
&lt;br /&gt;
Vous devriez voir un long message décrivant votre périphérique.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Exemple : Manette XBOX360&lt;br /&gt;
|Step_Content=Si vous avez une manette de '''XBOX360 pour PC''', vous pouvez tester l'exemple : X'''BOX/XBOXUSB'''&lt;br /&gt;
&lt;br /&gt;
*'''L2/R2''' vibre quand vous appuyer dessus.&lt;br /&gt;
*L2/R2 : 0/255&lt;br /&gt;
*Stick (Hat) X/Y : -32768 / 32768&lt;br /&gt;
*Les LEDs peuvent aussi être contrôlés ! (appuyer sur '''pad''' / '''back''' / '''start''' / '''xbox''' pour essayer)&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Exemple : Souris&lt;br /&gt;
|Step_Content=Je n'ai pas réussi à utiliser ma souris. L'exemple se trouve ici : '''HID/USBHIDBootMouse'''&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Exemple : Contrôleur Midi&lt;br /&gt;
|Step_Content=Ouvrez l'exemple '''USBH_MIDI/USBH_MIDI_dump'''&lt;br /&gt;
&lt;br /&gt;
La plupart des périphériques MIDI n'utilise qu'une petit partie du buffer ('''bufMidi''')&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;00001679: 64: 09 90 2F 13 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;0000174A: 64: 08 80 2F 7F 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*bufMidi[0] : Note ON (9) / Note OFF (8)&lt;br /&gt;
*bufMidi[2] : Note&lt;br /&gt;
*bufMidi[3] : Velocity&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Conclusion&lt;br /&gt;
|Step_Content=Utiliser des périphériques USB ouvre la porte à énormement de possibilités avec nos microcontroleur&lt;br /&gt;
&lt;br /&gt;
Nous n'avons vu qu'une infime partie de ce qu'il est possible de faire.&lt;br /&gt;
&lt;br /&gt;
*Vous pouvez utiliser un '''Hub USB''' pour contrôler plusieurs périphériques USB.&lt;br /&gt;
*Ils y a pleins de broches sur l'USB Host, c'est parcequ'elle sont utilisables comme des GPIO ! Ils est possible de brancher des boutons / leds même un écran LCD dessus.&lt;br /&gt;
*Il est même possible d'utiliser des '''clés''' '''USB.'''&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Notes}}&lt;br /&gt;
|Notes=&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Status}}&lt;br /&gt;
|Complete=Draft&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Madnerd</name></author>
		
	</entry>
	<entry>
		<id>https://wikifab.org/w/index.php?title=Brancher_des_p%C3%A9riph%C3%A9riques_USB_sur_un_ESP8266&amp;diff=62900</id>
		<title>Brancher des périphériques USB sur un ESP8266</title>
		<link rel="alternate" type="text/html" href="https://wikifab.org/w/index.php?title=Brancher_des_p%C3%A9riph%C3%A9riques_USB_sur_un_ESP8266&amp;diff=62900"/>
		<updated>2019-04-21T11:50:31Z</updated>

		<summary type="html">&lt;p&gt;Madnerd : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ {{tntn|Tuto Details}}&lt;br /&gt;
|Main_Picture=Brancher_des_périphériques_USB_sur_un_ESP8266_usbhost_wiki.jpg&lt;br /&gt;
|Licences=Attribution (CC BY)&lt;br /&gt;
|Description=Saviez vous que vous pouvez brancher des périphériques USB sur un Arduino ou un ESP ?&lt;br /&gt;
Que ce soit un clavier, une souris, un manette de jeu ou un contrôleur MIDI, c'est possible !&lt;br /&gt;
|Area=Electronics, Music and Sound, Play and Hobbies&lt;br /&gt;
|Type=Technique&lt;br /&gt;
|Difficulty=Medium&lt;br /&gt;
|Duration=2&lt;br /&gt;
|Duration-type=hour(s)&lt;br /&gt;
|Cost=6&lt;br /&gt;
|Currency=EUR (€)&lt;br /&gt;
|Tags=arduino, esp8266, esp32, usb host, clavier, souris, manette, xbox, MIDI&lt;br /&gt;
|SourceLanguage=none&lt;br /&gt;
|Language=fr&lt;br /&gt;
|IsTranslation=0&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Introduction}}&lt;br /&gt;
|Introduction=Je jouais avec '''Mozzi''', une '''bibliothèque de synthèse audio''' (https://sensorium.github.io/Mozzi/), quand je me suis rendu compte que si je voulais vraiment pouvoir exploiter tout le potentiel de cette bibliothèque, j'allais devoir faire un contrôleur.&lt;br /&gt;
&lt;br /&gt;
Si seulement, je pouvais brancher un '''clavier''', ou un '''contrôleur midi''', ça serait carrément plus simplement ! Mais attends ?! C'est possible en fait!&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|TutoVideo}}&lt;br /&gt;
|VideoType=Youtube&lt;br /&gt;
|VideoURLYoutube=https://www.youtube.com/watch?v=CeLYOu-UGXA&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Materials}}&lt;br /&gt;
|Step_Picture_00=Contrôler_des_neopixels_comme_un_DJ_Envoyer_un_message_sur_discord_wemos.png&lt;br /&gt;
|Step_Picture_01=Brancher_des_périphériques_USB_sur_un_ESP8266_usbhost_mini_def.png&lt;br /&gt;
|Material=* Un microcontrôleur 3.3v (par ex: Wemos Mini)&lt;br /&gt;
* Un USB Host Mini&lt;br /&gt;
|Tools=Un petit tournevis plat / Un cutter fin&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Separator}}}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Choisir l'USB Host&lt;br /&gt;
|Step_Content=Merci à CircuitatHome pour la création de l'USB Host&lt;br /&gt;
https://www.circuitsathome.com/usb-host-shield-hardware-manual/&lt;br /&gt;
&lt;br /&gt;
Dans ce tutoriel nous allons utilisé un clone de l''''USB Host Mini'''.&lt;br /&gt;
&lt;br /&gt;
La puce sur celle-ci est un MAX3421E qui ne fonctionne quand 3.3v&lt;br /&gt;
&lt;br /&gt;
Si vous voulez utiliser un '''microcontrôleur en 5v''' (comme l'Arduino Uno / Nano) '''utiliser le Shield USB Host plutôt.'''&lt;br /&gt;
&lt;br /&gt;
Malheureusement avant de pouvoir brancher notre USB Host, il va nous falloir '''régler plusieurs problèmes''' sinon '''cela ne marchera pas.'''&lt;br /&gt;
|Step_Picture_00=Brancher_des_périphériques_USB_sur_un_ESP8266_3V3_only.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Régler le problème d'alimentation&lt;br /&gt;
|Step_Content=If you buy a '''clone of the USB Host Mini''', there is no jumper for VBUS.This means your '''USB devices''' will be '''powered with 3.3v''', which didn't works with any of my devices who all require '''5V.'''&lt;br /&gt;
&lt;br /&gt;
You can find more details here: https://ht-deko.com/arduino/shield_usbhost_mini.html (in japanese)&lt;br /&gt;
&lt;br /&gt;
You will have to cut this trace, to fix this.I used a '''small screw driver''' to do this, but you probably should use a '''small cutter instead.'''&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Brancher l'USB Host&lt;br /&gt;
|Step_Content=OK, I hope you didn't break your board! Now it is time to plug it!&lt;br /&gt;
&lt;br /&gt;
I used a '''Wemos Mini D1''' with my USB Host Mini device, here is how to plug it.&lt;br /&gt;
&lt;br /&gt;
{{Info|Je n'ai pas relier la broche INT, car celle-ci ne semble pas nécessaire au fonctionnement}}&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* D3 -- SS&lt;br /&gt;
* D7 -- MISO&lt;br /&gt;
* D6 -- MOSI&lt;br /&gt;
* D5 -- SCK&lt;br /&gt;
* RST -- RST&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Régler le problème avec la bibliothèque USB Host&lt;br /&gt;
|Step_Content=You may have notice SS (Chip Select/CS) is plugged on '''D3 instead of D8.'''&lt;br /&gt;
&lt;br /&gt;
I run into an issue where the USB Host set my Wemos Mini in '''firmware flashing''' mode, which '''stop the sketch from running.'''https://github.com/felis/USB_Host_Shield_2.0/issues/457&lt;br /&gt;
&lt;br /&gt;
In order to '''change the SS pin,''' we need to change a line in the library.&lt;br /&gt;
&lt;br /&gt;
Download '''USB Host Shield Library 2.0'''&lt;br /&gt;
&lt;br /&gt;
Open '''UsbCore.h''' in '''libraries/USB_Host_Shield_Library_2.0''' and change this line&lt;br /&gt;
 &amp;lt;code&amp;gt;#elif defined(ESP8266)typedef MAX3421e&amp;lt;P15, P5&amp;gt; MAX3421E; // ESP8266 boards&lt;br /&gt;
 &amp;lt;/code&amp;gt;&lt;br /&gt;
With this line&lt;br /&gt;
 &amp;lt;code&amp;gt;#elif defined(ESP8266)typedef MAX3421e&amp;lt;P0, P5&amp;gt; MAX3421E; // ESP8266 boards&lt;br /&gt;
 &amp;lt;/code&amp;gt;&lt;br /&gt;
Notice we used '''P0''' instead of '''D3,''' it is because '''GPIO0''' is '''D3''' on the '''Wemos Mini'''.https://escapequotes.net/esp8266-wemos-d1-mini-pins-and-diagram/&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Downgrader ESP8266&lt;br /&gt;
|Step_Content=OK, we are almost done, if you try to compile an example from the library, '''it will not works.'''&lt;br /&gt;
&lt;br /&gt;
'''''Note''''' '': This was recently fix, so this step is only required if your version of '''USB Host Shield Library 2.0''' is '''1.3.2 or lower'''.''&lt;br /&gt;
&lt;br /&gt;
It is because the library is not compatible with Arduino ESP8266 2.5, '''you need to downgrade it to 2.4.2'''https://github.com/felis/USB_Host_Shield_2.0/issues/449&lt;br /&gt;
&lt;br /&gt;
Go to '''Tools / Boards / Boards Manager''' and change your version to '''2.4.2.'''&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Test l'USB Host&lt;br /&gt;
|Step_Content=There is a lot of examples in '''''USB Host Shield Library 2.0'''In'' order to test that everything is working correctly, you should first try '''USB_desc.'''&lt;br /&gt;
&lt;br /&gt;
* '''Upload''' USB_desc&lt;br /&gt;
* Open '''Serial Monitor''' (115200)&lt;br /&gt;
* '''Plug an USB device'''&lt;br /&gt;
* '''Reset your board''' (ESP8266)&lt;br /&gt;
&lt;br /&gt;
''Note: You can't hot-plug your USB device (at least in the examples), you need to '''reset the board''' each times you '''unplug, plug''' your device.''&lt;br /&gt;
&lt;br /&gt;
You should see a message like this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Exemple : Manette XBOX360&lt;br /&gt;
|Step_Content=If you have an '''XBOX360 for PC,''' use the example '''XBOX/XBOXUSB'''&lt;br /&gt;
&lt;br /&gt;
* '''L2/R2''' vibrates when you press it.&lt;br /&gt;
* L2/R2 : 0/255&lt;br /&gt;
* Stick (Hat) X/Y : -32768 / 32768&lt;br /&gt;
* Led can also be control ! (use the '''pad''' / '''back''' / '''start''' / '''xbox''' buttons to try it)&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Exemple : Souris&lt;br /&gt;
|Step_Content=I didn't manage to make my mouse works.The example is in '''HID/USBHIDBootMouse'''&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Exemple : Contrôleur Midi&lt;br /&gt;
|Step_Content=Open '''USBH_MIDI/USBH_MIDI_dump''' example&lt;br /&gt;
&lt;br /&gt;
Most Midi devices, will only use a small part of the buffer ('''bufMidi''')&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;00001679: 64: 09 90 2F 13 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;0000174A: 64: 08 80 2F 7F 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* bufMidi[0] : Note ON (9) / Note OFF (8)&lt;br /&gt;
* bufMidi[2] : Note&lt;br /&gt;
* bufMidi[3] : Velocity&lt;br /&gt;
&lt;br /&gt;
=== Summary ===&lt;br /&gt;
Using USB devices open up a lot of possibilities for our microcontroller, we only touch the surface of all the thing we can do with this USB Host device.&lt;br /&gt;
&lt;br /&gt;
* You can use a '''USB Hub''' to use multiple USB devices.&lt;br /&gt;
* There are a lot of pins on the USB Host, it is because there are GPIO on it! You can plug '''buttons''' / '''leds''' even an '''LCD screen''' on it!&lt;br /&gt;
* You can also use '''USB drive.'''&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Notes}}&lt;br /&gt;
|Notes=&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Status}}&lt;br /&gt;
|Complete=Draft&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Madnerd</name></author>
		
	</entry>
	<entry>
		<id>https://wikifab.org/w/index.php?title=Brancher_des_p%C3%A9riph%C3%A9riques_USB_sur_un_ESP8266&amp;diff=62899</id>
		<title>Brancher des périphériques USB sur un ESP8266</title>
		<link rel="alternate" type="text/html" href="https://wikifab.org/w/index.php?title=Brancher_des_p%C3%A9riph%C3%A9riques_USB_sur_un_ESP8266&amp;diff=62899"/>
		<updated>2019-04-21T11:43:29Z</updated>

		<summary type="html">&lt;p&gt;Madnerd : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ {{tntn|Tuto Details}}&lt;br /&gt;
|Main_Picture=Brancher_des_périphériques_USB_sur_un_ESP8266_usbhost_wiki.jpg&lt;br /&gt;
|Licences=Attribution (CC BY)&lt;br /&gt;
|Description=Saviez vous que vous pouvez brancher des périphériques USB sur un Arduino ou un ESP ?&lt;br /&gt;
Que ce soit un clavier, une souris, un manette de jeu ou un contrôleur MIDI, c'est possible !&lt;br /&gt;
|Area=Electronics, Music and Sound, Play and Hobbies&lt;br /&gt;
|Type=Technique&lt;br /&gt;
|Difficulty=Medium&lt;br /&gt;
|Duration=2&lt;br /&gt;
|Duration-type=hour(s)&lt;br /&gt;
|Cost=6&lt;br /&gt;
|Currency=EUR (€)&lt;br /&gt;
|Tags=arduino, esp8266, esp32, usb host, clavier, souris, manette, xbox, MIDI&lt;br /&gt;
|SourceLanguage=none&lt;br /&gt;
|Language=fr&lt;br /&gt;
|IsTranslation=0&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Introduction}}&lt;br /&gt;
|Introduction=Je jouais avec '''Mozzi''', une '''bibliothèque de synthèse audio''' (https://sensorium.github.io/Mozzi/), quand je me suis rendu compte que si je voulais vraiment pouvoir exploiter tout le potentiel de cette bibliothèque, j'allais devoir faire un contrôleur.&lt;br /&gt;
&lt;br /&gt;
Si seulement, je pouvais brancher un '''clavier''', ou un '''contrôleur midi''', ça serait carrément plus simplement ! Mais attends ?! C'est possible en fait!&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|TutoVideo}}&lt;br /&gt;
|VideoType=Youtube&lt;br /&gt;
|VideoURLYoutube=https://www.youtube.com/watch?v=CeLYOu-UGXA&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Materials}}&lt;br /&gt;
|Step_Picture_00=Contrôler_des_neopixels_comme_un_DJ_Envoyer_un_message_sur_discord_wemos.png&lt;br /&gt;
|Step_Picture_01=Brancher_des_périphériques_USB_sur_un_ESP8266_usbhost_mini_def.png&lt;br /&gt;
|Material=* Un microcontrôleur 3.3v (par ex: Wemos Mini)&lt;br /&gt;
* Un USB Host Mini&lt;br /&gt;
|Tools=Un petit tournevis plat / Un cutter fin&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Separator}}}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Choisir l'USB Host&lt;br /&gt;
|Step_Content=Merci à CircuitatHome pour la création de l'USB Host&lt;br /&gt;
https://www.circuitsathome.com/usb-host-shield-hardware-manual/&lt;br /&gt;
&lt;br /&gt;
Dans ce tutoriel nous allons utilisé un clone de l''''USB Host Mini'''.&lt;br /&gt;
&lt;br /&gt;
La puce sur celle-ci est un MAX3421E qui ne fonctionne quand 3.3v&lt;br /&gt;
&lt;br /&gt;
Si vous voulez utiliser un '''microcontrôleur en 5v''' (comme l'Arduino Uno / Nano) '''utiliser le Shield USB Host plutôt.'''&lt;br /&gt;
&lt;br /&gt;
Malheureusement avant de pouvoir brancher notre USB Host, il va nous falloir '''régler plusieurs problèmes''' sinon '''cela ne marchera pas.'''&lt;br /&gt;
|Step_Picture_00=Brancher_des_périphériques_USB_sur_un_ESP8266_3V3_only.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Notes}}&lt;br /&gt;
|Notes=&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Status}}&lt;br /&gt;
|Complete=Draft&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Madnerd</name></author>
		
	</entry>
	<entry>
		<id>https://wikifab.org/w/index.php?title=Brancher_des_p%C3%A9riph%C3%A9riques_USB_sur_un_ESP8266&amp;diff=62898</id>
		<title>Brancher des périphériques USB sur un ESP8266</title>
		<link rel="alternate" type="text/html" href="https://wikifab.org/w/index.php?title=Brancher_des_p%C3%A9riph%C3%A9riques_USB_sur_un_ESP8266&amp;diff=62898"/>
		<updated>2019-04-21T11:42:09Z</updated>

		<summary type="html">&lt;p&gt;Madnerd : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ {{tntn|Tuto Details}}&lt;br /&gt;
|Main_Picture=Brancher_des_périphériques_USB_sur_un_ESP8266_usbhost_wiki.jpg&lt;br /&gt;
|Licences=Attribution (CC BY)&lt;br /&gt;
|Description=Saviez vous que vous pouvez brancher des périphériques USB sur un Arduino ou un ESP ?&lt;br /&gt;
Que ce soit un clavier, une souris, un manette de jeu ou un contrôleur MIDI, c'est possible !&lt;br /&gt;
|Area=Electronics, Music and Sound, Play and Hobbies&lt;br /&gt;
|Type=Technique&lt;br /&gt;
|Difficulty=Medium&lt;br /&gt;
|Duration=2&lt;br /&gt;
|Duration-type=hour(s)&lt;br /&gt;
|Cost=6&lt;br /&gt;
|Currency=EUR (€)&lt;br /&gt;
|Tags=arduino, esp8266, esp32, usb host, clavier, souris, manette, xbox, MIDI&lt;br /&gt;
|SourceLanguage=none&lt;br /&gt;
|Language=fr&lt;br /&gt;
|IsTranslation=0&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Introduction}}&lt;br /&gt;
|Introduction=Je jouais avec '''Mozzi''', une '''bibliothèque de synthèse audio''' (https://sensorium.github.io/Mozzi/), quand je me suis rendu compte que si je voulais vraiment pouvoir exploiter tout le potentiel de cette bibliothèque, j'allais devoir faire un contrôleur.&lt;br /&gt;
&lt;br /&gt;
Si seulement, je pouvais brancher un '''clavier''', ou un '''contrôleur midi''', ça serait carrément plus simplement ! Mais attends ?! C'est possible en fait!&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|TutoVideo}}&lt;br /&gt;
|VideoType=Youtube&lt;br /&gt;
|VideoURLYoutube=https://www.youtube.com/watch?v=CeLYOu-UGXA&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Materials}}&lt;br /&gt;
|Step_Picture_00=Contrôler_des_neopixels_comme_un_DJ_Envoyer_un_message_sur_discord_wemos.png&lt;br /&gt;
|Step_Picture_01=Brancher_des_périphériques_USB_sur_un_ESP8266_usbhost_mini_def.png&lt;br /&gt;
|Material=* Un microcontrôleur 3.3v (par ex: Wemos Mini)&lt;br /&gt;
* Un USB Host Mini&lt;br /&gt;
|Tools=Un petit tournevis plat / Un cutter fin&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Separator}}}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Choisir l'USB Host&lt;br /&gt;
|Step_Content=Merci à CircuitatHome pour la création de l'USB Host&amp;lt;nowiki/&amp;gt;https://www.circuitsathome.com/usb-host-shield-hardware-manual/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Dans ce tutoriel nous allons utilisé un clone de l''''USB Host Mini'''.&lt;br /&gt;
&lt;br /&gt;
La puce sur celle-ci est un MAX3421E qui ne fonctionne quand 3.3v&lt;br /&gt;
&lt;br /&gt;
Si vous voulez utiliser un '''microcontrôleur en 5v''' (comme l'Arduino Uno / Nano) '''utiliser le Shield USB Host plutôt.'''&lt;br /&gt;
&lt;br /&gt;
Malheureusement avant de pouvoir brancher notre USB Host, il va nous falloir '''régler plusieurs problèmes''' sinon '''cela ne marchera pas.'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Brancher_des_périphériques_USB_sur_un_ESP8266_3V3_only.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Notes}}&lt;br /&gt;
|Notes=&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Status}}&lt;br /&gt;
|Complete=Draft&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Madnerd</name></author>
		
	</entry>
	<entry>
		<id>https://wikifab.org/w/index.php?title=Brancher_des_p%C3%A9riph%C3%A9riques_USB_sur_un_ESP8266&amp;diff=62897</id>
		<title>Brancher des périphériques USB sur un ESP8266</title>
		<link rel="alternate" type="text/html" href="https://wikifab.org/w/index.php?title=Brancher_des_p%C3%A9riph%C3%A9riques_USB_sur_un_ESP8266&amp;diff=62897"/>
		<updated>2019-04-21T11:41:24Z</updated>

		<summary type="html">&lt;p&gt;Madnerd : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ {{tntn|Tuto Details}}&lt;br /&gt;
|SourceLanguage=none&lt;br /&gt;
|Language=fr&lt;br /&gt;
|IsTranslation=0&lt;br /&gt;
|Main_Picture=Brancher_des_périphériques_USB_sur_un_ESP8266_usbhost_wiki.jpg&lt;br /&gt;
|Licences=Attribution (CC BY)&lt;br /&gt;
|Description=Saviez vous que vous pouvez brancher des périphériques USB sur un Arduino ou un ESP ?&lt;br /&gt;
Que ce soit un clavier, une souris, un manette de jeu ou un contrôleur MIDI, c'est possible !&lt;br /&gt;
|Area=Electronics, Music and Sound, Play and Hobbies&lt;br /&gt;
|Type=Technique&lt;br /&gt;
|Difficulty=Medium&lt;br /&gt;
|Duration=2&lt;br /&gt;
|Duration-type=hour(s)&lt;br /&gt;
|Cost=6&lt;br /&gt;
|Currency=EUR (€)&lt;br /&gt;
|Tags=arduino, esp8266, esp32, usb host, clavier, souris, manette, xbox, MIDI&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Introduction}}&lt;br /&gt;
|Introduction=Je jouais avec '''Mozzi''', une '''bibliothèque de synthèse audio''' (https://sensorium.github.io/Mozzi/), quand je me suis rendu compte que si je voulais vraiment pouvoir exploiter tout le potentiel de cette bibliothèque, j'allais devoir faire un contrôleur.&lt;br /&gt;
&lt;br /&gt;
Si seulement, je pouvais brancher un '''clavier''', ou un '''contrôleur midi''', ça serait carrément plus simplement ! Mais attends ?! C'est possible en fait!&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|TutoVideo}}&lt;br /&gt;
|VideoType=Youtube&lt;br /&gt;
|VideoURLYoutube=https://www.youtube.com/watch?v=CeLYOu-UGXA&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Materials}}&lt;br /&gt;
|Step_Picture_00=Contrôler_des_neopixels_comme_un_DJ_Envoyer_un_message_sur_discord_wemos.png&lt;br /&gt;
|Step_Picture_01=Brancher_des_périphériques_USB_sur_un_ESP8266_usbhost_mini_def.png&lt;br /&gt;
|Material=* Un microcontrôleur 3.3v (par ex: Wemos Mini)&lt;br /&gt;
* Un USB Host Mini&lt;br /&gt;
|Tools=Un petit tournevis plat / Un cutter fin&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Separator}}}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Choisir l'USB Host&lt;br /&gt;
|Step_Content=Merci à Circuit@Home pour la création de l'USB Host&amp;lt;nowiki/&amp;gt;https://www.circuitsathome.com/usb-host-shield-hardware-manual/&lt;br /&gt;
&lt;br /&gt;
Dans ce tutoriel nous allons utilisé un clone de l''''USB Host Mini'''.&lt;br /&gt;
&lt;br /&gt;
La puce sur celle-ci est un MAX3421E qui ne fonctionne quand 3.3v&lt;br /&gt;
&lt;br /&gt;
Si vous voulez utiliser un '''microcontrôleur en 5v''' (comme l'Arduino Uno / Nano) '''utiliser le Shield USB Host plutôt.'''&lt;br /&gt;
&lt;br /&gt;
Malheureusement avant de pouvoir brancher notre USB Host, il va nous falloir '''régler plusieurs problèmes''' sinon '''cela ne marchera pas.'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Brancher_des_périphériques_USB_sur_un_ESP8266_3V3_only.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Notes}}&lt;br /&gt;
|Notes=&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Status}}&lt;br /&gt;
|Complete=Draft&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Madnerd</name></author>
		
	</entry>
	<entry>
		<id>https://wikifab.org/w/index.php?title=Fichier:Brancher_des_p%C3%A9riph%C3%A9riques_USB_sur_un_ESP8266_3V3_only.png&amp;diff=62896</id>
		<title>Fichier:Brancher des périphériques USB sur un ESP8266 3V3 only.png</title>
		<link rel="alternate" type="text/html" href="https://wikifab.org/w/index.php?title=Fichier:Brancher_des_p%C3%A9riph%C3%A9riques_USB_sur_un_ESP8266_3V3_only.png&amp;diff=62896"/>
		<updated>2019-04-21T11:41:05Z</updated>

		<summary type="html">&lt;p&gt;Madnerd : Brancher_des_périphériques_USB_sur_un_ESP8266_3V3_only&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Brancher_des_périphériques_USB_sur_un_ESP8266_3V3_only&lt;/div&gt;</summary>
		<author><name>Madnerd</name></author>
		
	</entry>
	<entry>
		<id>https://wikifab.org/w/index.php?title=Fichier:Brancher_des_p%C3%A9riph%C3%A9riques_USB_sur_un_ESP8266_usbhost_mini_def.png&amp;diff=62895</id>
		<title>Fichier:Brancher des périphériques USB sur un ESP8266 usbhost mini def.png</title>
		<link rel="alternate" type="text/html" href="https://wikifab.org/w/index.php?title=Fichier:Brancher_des_p%C3%A9riph%C3%A9riques_USB_sur_un_ESP8266_usbhost_mini_def.png&amp;diff=62895"/>
		<updated>2019-04-21T11:35:12Z</updated>

		<summary type="html">&lt;p&gt;Madnerd : Brancher_des_périphériques_USB_sur_un_ESP8266_usbhost_mini_def&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Brancher_des_périphériques_USB_sur_un_ESP8266_usbhost_mini_def&lt;/div&gt;</summary>
		<author><name>Madnerd</name></author>
		
	</entry>
	<entry>
		<id>https://wikifab.org/w/index.php?title=Brancher_des_p%C3%A9riph%C3%A9riques_USB_sur_un_ESP8266&amp;diff=62894</id>
		<title>Brancher des périphériques USB sur un ESP8266</title>
		<link rel="alternate" type="text/html" href="https://wikifab.org/w/index.php?title=Brancher_des_p%C3%A9riph%C3%A9riques_USB_sur_un_ESP8266&amp;diff=62894"/>
		<updated>2019-04-21T11:33:00Z</updated>

		<summary type="html">&lt;p&gt;Madnerd : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ {{tntn|Tuto Details}}&lt;br /&gt;
|SourceLanguage=none&lt;br /&gt;
|Language=fr&lt;br /&gt;
|IsTranslation=0&lt;br /&gt;
|Main_Picture=Brancher_des_périphériques_USB_sur_un_ESP8266_usbhost_wiki.jpg&lt;br /&gt;
|Licences=Attribution (CC BY)&lt;br /&gt;
|Description=Saviez vous que vous pouvez brancher des périphériques USB sur un Arduino ou un ESP ?&lt;br /&gt;
Que ce soit un clavier, une souris, un manette de jeu ou un contrôleur MIDI, c'est possible !&lt;br /&gt;
|Area=Electronics, Music and Sound, Play and Hobbies&lt;br /&gt;
|Type=Technique&lt;br /&gt;
|Difficulty=Medium&lt;br /&gt;
|Duration=2&lt;br /&gt;
|Duration-type=hour(s)&lt;br /&gt;
|Cost=6&lt;br /&gt;
|Currency=EUR (€)&lt;br /&gt;
|Tags=arduino, esp8266, esp32, usb host, clavier, souris, manette, xbox, MIDI&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Introduction}}&lt;br /&gt;
|Introduction=Je jouais avec '''Mozzi''', une '''bibliothèque de synthèse audio''' (https://sensorium.github.io/Mozzi/), quand je me suis rendu compte que si je voulais vraiment pouvoir exploiter tout le potentiel de cette bibliothèque, j'allais devoir faire un contrôleur.&lt;br /&gt;
&lt;br /&gt;
Si seulement, je pouvais brancher un '''clavier''', ou un '''contrôleur midi''', ça serait carrément plus simplement ! Mais attends ?! C'est possible en fait!&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|TutoVideo}}&lt;br /&gt;
|VideoType=Youtube&lt;br /&gt;
|VideoURLYoutube=https://www.youtube.com/watch?v=CeLYOu-UGXA&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Materials}}&lt;br /&gt;
|Material=&lt;br /&gt;
|Tools=&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Separator}}}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&lt;br /&gt;
|Step_Content=&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Notes}}&lt;br /&gt;
|Notes=&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Status}}&lt;br /&gt;
|Complete=Draft&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Madnerd</name></author>
		
	</entry>
	<entry>
		<id>https://wikifab.org/w/index.php?title=Fichier:Brancher_des_p%C3%A9riph%C3%A9riques_USB_sur_un_ESP8266_usbhost_wiki.jpg&amp;diff=62893</id>
		<title>Fichier:Brancher des périphériques USB sur un ESP8266 usbhost wiki.jpg</title>
		<link rel="alternate" type="text/html" href="https://wikifab.org/w/index.php?title=Fichier:Brancher_des_p%C3%A9riph%C3%A9riques_USB_sur_un_ESP8266_usbhost_wiki.jpg&amp;diff=62893"/>
		<updated>2019-04-21T11:10:06Z</updated>

		<summary type="html">&lt;p&gt;Madnerd : Brancher_des_périphériques_USB_sur_un_ESP8266_usbhost_wiki&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Brancher_des_périphériques_USB_sur_un_ESP8266_usbhost_wiki&lt;/div&gt;</summary>
		<author><name>Madnerd</name></author>
		
	</entry>
	<entry>
		<id>https://wikifab.org/w/index.php?title=Brancher_des_p%C3%A9riph%C3%A9riques_USB_sur_un_ESP8266&amp;diff=62892</id>
		<title>Brancher des périphériques USB sur un ESP8266</title>
		<link rel="alternate" type="text/html" href="https://wikifab.org/w/index.php?title=Brancher_des_p%C3%A9riph%C3%A9riques_USB_sur_un_ESP8266&amp;diff=62892"/>
		<updated>2019-04-21T11:09:33Z</updated>

		<summary type="html">&lt;p&gt;Madnerd : Page créée avec « {{ {{tntn|Tuto Details}} |SourceLanguage=none |Language=fr |IsTranslation=0 |Licences=Attribution (CC BY) |Description=Did you know you could plug USB devices on an Arduin... »&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ {{tntn|Tuto Details}}&lt;br /&gt;
|SourceLanguage=none&lt;br /&gt;
|Language=fr&lt;br /&gt;
|IsTranslation=0&lt;br /&gt;
|Licences=Attribution (CC BY)&lt;br /&gt;
|Description=Did you know you could plug USB devices on an Arduino or ESP? Keyboard, mouse, game controller, Midi controller, you name it!&lt;br /&gt;
|Area=Electronics, Music and Sound, Play and Hobbies&lt;br /&gt;
|Type=Technique&lt;br /&gt;
|Difficulty=Medium&lt;br /&gt;
|Duration=2&lt;br /&gt;
|Duration-type=hour(s)&lt;br /&gt;
|Cost=6&lt;br /&gt;
|Currency=EUR (€)&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Introduction}}&lt;br /&gt;
|Introduction=&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Materials}}&lt;br /&gt;
|Material=&lt;br /&gt;
|Tools=&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Separator}}}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&lt;br /&gt;
|Step_Content=&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Notes}}&lt;br /&gt;
|Notes=&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Status}}&lt;br /&gt;
|Complete=Draft&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Madnerd</name></author>
		
	</entry>
	<entry>
		<id>https://wikifab.org/w/index.php?title=Mini_%C3%A9cran_connect%C3%A9&amp;diff=62333</id>
		<title>Mini écran connecté</title>
		<link rel="alternate" type="text/html" href="https://wikifab.org/w/index.php?title=Mini_%C3%A9cran_connect%C3%A9&amp;diff=62333"/>
		<updated>2019-03-30T20:27:39Z</updated>

		<summary type="html">&lt;p&gt;Madnerd : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ {{tntn|Tuto Details}}&lt;br /&gt;
|Main_Picture=Mini_écran_connecté_tft_iftt_wiki.jpg&lt;br /&gt;
|Licences=Attribution (CC BY)&lt;br /&gt;
|Description=&amp;lt;translate&amp;gt;Afficher des messages où que vous soyez avec cet écran connecté à internet.&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Area=Electronics, House&lt;br /&gt;
|Type=Creation&lt;br /&gt;
|Difficulty=Medium&lt;br /&gt;
|Duration=1&lt;br /&gt;
|Duration-type=hour(s)&lt;br /&gt;
|Cost=7&lt;br /&gt;
|Currency=EUR (€)&lt;br /&gt;
|Tags=iftt, mqtt, esp8266, st7789, tft, adafruit.io, iot&lt;br /&gt;
|SourceLanguage=none&lt;br /&gt;
|Language=fr&lt;br /&gt;
|IsTranslation=0&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Introduction}}&lt;br /&gt;
|Introduction=&amp;lt;translate&amp;gt;Précédemment, nous avons vu comment afficher une image sur un ST7789, un écran TFT à 3€. ( [[Afficher une image sur un écran ST7789]] )&lt;br /&gt;
&lt;br /&gt;
Nous allons exploiter cette connaissance pour faire un mini écran connecté.&lt;br /&gt;
&lt;br /&gt;
*Cet écran va afficher les messages reçus depuis un serveur MQTT&lt;br /&gt;
*Les messages peuvent contenir des caractères accentués&lt;br /&gt;
*La transmission sera chiffrée&lt;br /&gt;
*Afin d'éviter les attaques MITM (man in the middle), nous allons vérifier l'identité du serveur MQTT à l'aide de son certificat.&lt;br /&gt;
&lt;br /&gt;
À partir de là nous pouvons même utiliser '''IFTT''' (ou '''tasker''') afin de transmettre des informations du '''web''' / de notre '''installation domotique''' ou de notre '''téléphone''' sur le serveur MQTT.&lt;br /&gt;
&lt;br /&gt;
Afin de simplifier la partie MQTT, nous allons utiliser '''Adafruit IO''' qui permet d'avoir un '''serveur MQTT gratuitement'''.&lt;br /&gt;
&lt;br /&gt;
{{Info|Vous pouvez bien évidemment utiliser votre propre serveur MQTT (la partie IFTT par contre ne marchera plus)}}&amp;lt;br /&amp;gt;&amp;lt;/translate&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|TutoVideo}}&lt;br /&gt;
|VideoType=Youtube&lt;br /&gt;
|VideoURLYoutube=https://youtu.be/Diek3-pvNAs&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Materials}}&lt;br /&gt;
|Step_Picture_00=Afficher_une_image_sur_un_écran_ST7789_tft.png&lt;br /&gt;
|Material=&amp;lt;translate&amp;gt;*ESP8266&lt;br /&gt;
*ST7789&lt;br /&gt;
*Câble Wrapping 30 AWG&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Tools=&amp;lt;translate&amp;gt;*Fer à souder&lt;br /&gt;
*Imprimante 3D&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Prerequisites={{ {{tntn|Prerequisites}}&lt;br /&gt;
|Prerequisites=Afficher une image sur un écran ST7789&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Separator}}}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;Fabriquer l'écran connecté&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;Suivez le tutoriel sur l'écran ST7789, avant toute chose,&lt;br /&gt;
&lt;br /&gt;
En résumé, &lt;br /&gt;
&lt;br /&gt;
*il faut installer la '''bibliothèque tft_espi'''&lt;br /&gt;
*Changer le fichier '''User_Setup.h''' directement dans la bibliothèque&lt;br /&gt;
*Reliez l'écran à l'esp8266&lt;br /&gt;
&lt;br /&gt;
[[Afficher une image sur un écran ST7789]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Afficher_une_image_sur_un_écran_ST7789_displayFinish.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;Paramétrer Adafruit IO&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;*Créer un compte sur Adafruit IO: https://io.adafruit.com/&lt;br /&gt;
*Cliquer sur '''Feeds'''&lt;br /&gt;
*Cliquer sur '''Actions''' / '''Create a New Feed'''&lt;br /&gt;
*Dans '''Name''' mettez '''notifications'''&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Mini_écran_connecté_adafruit_io.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;Paramétrer les identifiants&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;Tout d'abord il nous faut '''récupérer le programme''' &lt;br /&gt;
&lt;br /&gt;
*Télécharger le croquis ici : https://github.com/maditnerd/st7789_mqtt&lt;br /&gt;
*Il nous faut aussi la bibliothèque : '''Adafruit_MQTT'''&lt;br /&gt;
&lt;br /&gt;
Cette bibliothèque va nous permettre de communiquer avec notre '''serveur MQTT'''.&lt;br /&gt;
&lt;br /&gt;
Dans le programme, il y a un fichier '''arduino_secrets.h''', c'est ici que nous allons stocker nos identifiants pour le '''Wi-Fi''' et le '''serveur MQTT'''&lt;br /&gt;
&lt;br /&gt;
Les identifiants sur Adafruit IO se trouvent en cliquant sur '''View AIO Key'''&lt;br /&gt;
&lt;br /&gt;
*Dans '''HOME_SSID''' mettez le nom de votre réseau WI-FI&lt;br /&gt;
*Dans '''HOME_PASS''' mettez le mot de passe de votre réseau WI-FI&lt;br /&gt;
*Dans '''ADAFRUIT_MQTT_USERNAME''' mettez le '''Username''' d'adafruit IO&lt;br /&gt;
*Dans '''ADAFRUIT_MQTT_PASS''' mettez l''''Active Key''' d'adafruit IO&lt;br /&gt;
&lt;br /&gt;
Téléverser le croquis pour tester si tout marche bien.&lt;br /&gt;
&lt;br /&gt;
Normalement vous devriez arriver jusqu'à l'écran '''Notifications'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Info|Vous pouvez vérifier sur le moniteur série (Baudrate : 115200) s'il y a un problème.}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Mini_écran_connecté_arduino_secrets.png&lt;br /&gt;
|Step_Picture_01=Mini_écran_connecté_adafruit_io_key.png&lt;br /&gt;
|Step_Picture_02=Mini_écran_connecté_tft_wifi.jpg&lt;br /&gt;
|Step_Picture_03=Mini_écran_connecté_tft_io.jpg&lt;br /&gt;
|Step_Picture_04=Mini_écran_connecté_tft_notification.jpg&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;Test depuis Adafruit IO&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;Adafruit IO nous permet de créer une donnée qui sera affichée sur l'écran.&lt;br /&gt;
&lt;br /&gt;
*Cliquer sur '''Feeds''' / '''Notifications'''&lt;br /&gt;
*Puis cliquer sur '''Add Data'''&lt;br /&gt;
*Écrivez un message&lt;br /&gt;
{{Info|Si un message est envoyé alors que l'écran n'est pas connecté, celui-ci sera ignoré. MQTT permet toutefois de garder en mémoire les messages avec la fonction Retain}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Mini_écran_connecté_adafruit_io3.png&lt;br /&gt;
|Step_Picture_01=Mini_écran_connecté_tft_io_test.jpg&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;IFTTT - Afficher les notifications d'un téléphone&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;IFTTT est un service qui permet d'automatiser des tâches, Adafruit IO est compatible avec celui-ci.&lt;br /&gt;
&lt;br /&gt;
{{Info|Si vous voulez utiliser IFTTT avec votre propre serveur, il y a des webhooks qui permettent de faire cela.}}&lt;br /&gt;
&lt;br /&gt;
Nous allons voir comment afficher les notifications d'un smartphone sur notre écran.&lt;br /&gt;
&lt;br /&gt;
{{Warning|Bien que ce soit amusant comme projet, n'oubliez pas que vous allez donner accès à vos notifications à deux services sur internet.&lt;br /&gt;
Même si les communications sont en théorie sécurisée, niveau vie privée c'est une très mauvaise idée.}}&lt;br /&gt;
&lt;br /&gt;
*Créer un compte sur IFTTT&lt;br /&gt;
*Installer l'application android&lt;br /&gt;
&lt;br /&gt;
'''if'''&lt;br /&gt;
&lt;br /&gt;
*Sur l'interface web d'IFTTT, cliquer sur '''My Applets'''&lt;br /&gt;
*Cliquer sur '''New Applet'''&lt;br /&gt;
*Choisissez le service '''Android Device'''&lt;br /&gt;
*Choisissez '''Notification Received'''&lt;br /&gt;
&lt;br /&gt;
'''then'''&lt;br /&gt;
&lt;br /&gt;
*Choisissez '''Adafruit'''&lt;br /&gt;
*Choisissez '''Send data to Adafruit IO'''&lt;br /&gt;
*Dans '''Feed Name''' mettez '''notifications'''&lt;br /&gt;
*Dans '''Data to save''' choisisez '''AppName''' et '''Notification''' '''Title'''&lt;br /&gt;
{{Dont|L'ESP8266 va se déconnecter (puis se reconnecter) du serveur MQTT, si le message est trop long.}}&amp;lt;br /&amp;gt;Votre applet devrait ressembler à ceci.&lt;br /&gt;
&lt;br /&gt;
Aller sur votre téléphone, lancer IFTTT et autoriser '''l'accès aux notifications'''.&amp;lt;br /&amp;gt;&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Mini_écran_connecté_ifttt.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;Cacher vos identifiants dans le logiciel Arduino&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;Nous avons utilisé le fichier '''arduino_secrets.h''' qui est dans notre croquis pour '''sauvegarder nos identifiants'''.&lt;br /&gt;
&lt;br /&gt;
{{Warning|Il vaut mieux éviter de faire cela, car vous risquez de partager accidentellement vos mot de passe!}}&lt;br /&gt;
&lt;br /&gt;
Une solution pour éviter ça et de créer une '''bibliothèque''' pour nos identifiants.&lt;br /&gt;
&lt;br /&gt;
L'autre avantage c'est que nos identifiants seront '''accessibles pour tous nos croquis''' !&lt;br /&gt;
&lt;br /&gt;
{{Info|1=C'est Andreas Spiesss qui a eu cette idée&lt;br /&gt;
https://www.youtube.com/watch?v=CAGQ8h8PKX4&amp;amp;t=347s}}&lt;br /&gt;
&lt;br /&gt;
*Créer dans '''Documents/Arduino/libraries''' un dossier '''arduino_secrets'''&lt;br /&gt;
*Copier '''arduino_secrets.h''' dans ce dossier&lt;br /&gt;
&lt;br /&gt;
Dans le croquis, changez l'include au début du code&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;//#include &amp;quot;arduino_secrets.h&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;include &amp;lt;arduino_secrets.h&amp;gt;&amp;lt;/code&amp;gt;&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Mini_écran_connecté_arduino_secrets2.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;Changer les images&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;Si vous voulez changer les images affichées, elles sont sauvegardées dans '''bitmaps.h'''&lt;br /&gt;
&lt;br /&gt;
Pour convertir vos images en code, suivez ce tutoriel&lt;br /&gt;
&lt;br /&gt;
[[Afficher une image sur un écran ST7789]]&lt;br /&gt;
&lt;br /&gt;
Les images en version vectorielle SVG et PNG sont disponibles dans le dossier '''images'''&lt;br /&gt;
&lt;br /&gt;
Pour afficher une image, il faut juste utiliser cette commande:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;tft.pushImage(0,0,240,240,adafruit_io);&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour écrire du texte sur plusieurs lignes, positionnez le texte puis écrivez le&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;tft.setCursor(0,50);&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;tft.println(data); //Print text&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vous pouvez aussi écrire une seule ligne avec cette commande&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;tft.drawString(HOME_SSID, 25, 20);&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Mini_écran_connecté_adafruit_io2.png&lt;br /&gt;
|Step_Picture_01=Mini_écran_connecté_notifications.png&lt;br /&gt;
|Step_Picture_02=Mini_écran_connecté_wifi.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;Changer la police d'écriture&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;Vous avez peut-être remarqué que la police d'écriture est incluse dans le croquis sous le nom '''arial12pt8b.h'''&lt;br /&gt;
&lt;br /&gt;
Il se trouve que par défaut, il n'y a pas de police d'écriture avec les accents qui puissent être intégrés directement dans le code.&lt;br /&gt;
&lt;br /&gt;
J'ai donc dû la générer à partir d'une police d'écriture ('''.ttf''').&lt;br /&gt;
&lt;br /&gt;
Vous pouvez télécharger une police d'écriture (par ex: sur https://www.dafont.com/), et la convertir en code.&lt;br /&gt;
&lt;br /&gt;
Pour cela il vous faut '''fontconvert''', le code source est disponible dans Adafruit_GFX mais vous pouvez trouver une version prêt à l'usage (pour Windows) dans la description de cette vidéo&lt;br /&gt;
&lt;br /&gt;
https://www.youtube.com/watch?v=L8MmTISmwZ8&lt;br /&gt;
&lt;br /&gt;
Pour générer la police d'écriture il vous suffit de taper cette commande:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;fontconvert arial.ttf 12 32 255 &amp;gt; arial12pt8b.h&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour changer la taille de la police, '''changer le premier chiffre''' (ici 12)&lt;br /&gt;
&lt;br /&gt;
{{Info|Le 8b signifie que la police utilise 8bytes et contient donc les caractères accentués (entre autres)}}&amp;lt;br /&amp;gt;&amp;lt;/translate&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;Utiliser son propre serveur MQTT&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;{{Info|Le croquis est configuré pour un serveur qui utilise SSL pour chiffrer les communications.}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En plus de changer les identifiants / le serveur / le port dans '''arduino_secrets.h''', il faut récupérer le certificat SSL de votre serveur.&lt;br /&gt;
&lt;br /&gt;
Pour cela il vous faut openssl, vous pouvez le télécharger ici (Windows) : https://slproweb.com/products/Win32OpenSSL.html&lt;br /&gt;
&lt;br /&gt;
Puis tapez cette commande (avec l'adresse de votre serveur mqtt)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;openssl s_client -showcerts -connect io.adafruit.com:8883&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Récupérer le dernier certificat affiché et copier le dans '''connection.h'''&amp;lt;br /&amp;gt;&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Mini_écran_connecté_ssl.png&lt;br /&gt;
|Step_Picture_01=Mini_écran_connecté_ssl2.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Notes}}&lt;br /&gt;
|Notes=&amp;lt;translate&amp;gt;Voilà ce tutoriel est fini, j'espère que cela vous donnera des idées pour faire des applications sympas avec.&lt;br /&gt;
&lt;br /&gt;
Évidemment dans l'idéal &lt;br /&gt;
&lt;br /&gt;
*Il faudrait pouvoir '''paramétrer notre écran''' depuis une '''interface web'''&lt;br /&gt;
*Éviter d'utiliser des '''images''' de la '''taille de l'écran''' quand ce n'est pas nécessaire&lt;br /&gt;
&lt;br /&gt;
Mais cela devrait vous donner un bon point de départ.&lt;br /&gt;
&lt;br /&gt;
'''Suivez-moi sur Twitter''' si vous voulez être au courant des prochains tutoriels en avance : https://twitter.com/m4dnerd&amp;lt;/translate&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Status}}&lt;br /&gt;
|Complete=Published&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Madnerd</name></author>
		
	</entry>
	<entry>
		<id>https://wikifab.org/w/index.php?title=Mini_%C3%A9cran_connect%C3%A9&amp;diff=62332</id>
		<title>Mini écran connecté</title>
		<link rel="alternate" type="text/html" href="https://wikifab.org/w/index.php?title=Mini_%C3%A9cran_connect%C3%A9&amp;diff=62332"/>
		<updated>2019-03-30T20:25:08Z</updated>

		<summary type="html">&lt;p&gt;Madnerd : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ {{tntn|Tuto Details}}&lt;br /&gt;
|Main_Picture=Mini_écran_connecté_tft_iftt_wiki.jpg&lt;br /&gt;
|Licences=Attribution (CC BY)&lt;br /&gt;
|Description=Afficher des messages où que vous soyez avec cet écran connecté à internet.&lt;br /&gt;
|Area=Electronics, House&lt;br /&gt;
|Type=Creation&lt;br /&gt;
|Difficulty=Medium&lt;br /&gt;
|Duration=1&lt;br /&gt;
|Duration-type=hour(s)&lt;br /&gt;
|Cost=7&lt;br /&gt;
|Currency=EUR (€)&lt;br /&gt;
|Tags=iftt, mqtt, esp8266, st7789, tft, adafruit.io, iot&lt;br /&gt;
|SourceLanguage=none&lt;br /&gt;
|Language=fr&lt;br /&gt;
|IsTranslation=0&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Introduction}}&lt;br /&gt;
|Introduction=Précédemment, nous avons vu comment afficher une image sur un ST7789, un écran TFT à 3€. ( [[Afficher une image sur un écran ST7789]] )&lt;br /&gt;
&lt;br /&gt;
Nous allons exploiter cette connaissance pour faire un mini écran connecté.&lt;br /&gt;
&lt;br /&gt;
*Cet écran va afficher les messages reçus depuis un serveur MQTT&lt;br /&gt;
*Les messages peuvent contenir des caractères accentués&lt;br /&gt;
*La transmission sera chiffrée&lt;br /&gt;
*Afin d'éviter les attaques MITM (man in the middle), nous allons vérifier l'identité du serveur MQTT à l'aide de son certificat.&lt;br /&gt;
&lt;br /&gt;
À partir de là nous pouvons même utiliser '''IFTT''' (ou '''tasker''') afin de transmettre des informations du '''web''' / de notre '''installation domotique''' ou de notre '''téléphone''' sur le serveur MQTT.&lt;br /&gt;
&lt;br /&gt;
Afin de simplifier la partie MQTT, nous allons utiliser '''Adafruit IO''' qui permet d'avoir un '''serveur MQTT gratuitement'''.&lt;br /&gt;
&lt;br /&gt;
{{Info|Vous pouvez bien évidemment utiliser votre propre serveur MQTT (la partie IFTT par contre ne marchera plus)}}&amp;lt;br /&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|TutoVideo}}&lt;br /&gt;
|VideoType=Youtube&lt;br /&gt;
|VideoURLYoutube=https://youtu.be/Diek3-pvNAs&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Materials}}&lt;br /&gt;
|Step_Picture_00=Afficher_une_image_sur_un_écran_ST7789_tft.png&lt;br /&gt;
|Material=*ESP8266&lt;br /&gt;
*ST7789&lt;br /&gt;
*Câble Wrapping 30 AWG&lt;br /&gt;
|Tools=*Fer à souder&lt;br /&gt;
*Imprimante 3D&lt;br /&gt;
|Prerequisites={{ {{tntn|Prerequisites}}&lt;br /&gt;
|Prerequisites=Afficher une image sur un écran ST7789&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Separator}}}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Fabriquer l'écran connecté&lt;br /&gt;
|Step_Content=Suivez le tutoriel sur l'écran ST7789, avant toute chose,&lt;br /&gt;
&lt;br /&gt;
En résumé, &lt;br /&gt;
&lt;br /&gt;
*il faut installer la '''bibliothèque tft_espi'''&lt;br /&gt;
*Changer le fichier '''User_Setup.h''' directement dans la bibliothèque&lt;br /&gt;
*Reliez l'écran à l'esp8266&lt;br /&gt;
&lt;br /&gt;
[[Afficher une image sur un écran ST7789]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Afficher_une_image_sur_un_écran_ST7789_displayFinish.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Paramétrer Adafruit IO&lt;br /&gt;
|Step_Content=*Créer un compte sur Adafruit IO: https://io.adafruit.com/&lt;br /&gt;
*Cliquer sur '''Feeds'''&lt;br /&gt;
*Cliquer sur '''Actions''' / '''Create a New Feed'''&lt;br /&gt;
*Dans '''Name''' mettez '''notifications'''&lt;br /&gt;
|Step_Picture_00=Mini_écran_connecté_adafruit_io.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Paramétrer les identifiants&lt;br /&gt;
|Step_Content=Tout d'abord il nous faut '''récupérer le programme''' &lt;br /&gt;
&lt;br /&gt;
*Télécharger le croquis ici : https://github.com/maditnerd/st7789_mqtt&lt;br /&gt;
*Il nous faut aussi la bibliothèque : '''Adafruit_MQTT'''&lt;br /&gt;
&lt;br /&gt;
Cette bibliothèque va nous permettre de communiquer avec notre '''serveur MQTT'''.&lt;br /&gt;
&lt;br /&gt;
Dans le programme, il y a un fichier '''arduino_secrets.h''', c'est ici que nous allons stocker nos identifiants pour le '''Wi-Fi''' et le '''serveur MQTT'''&lt;br /&gt;
&lt;br /&gt;
Les identifiants sur Adafruit IO se trouvent en cliquant sur '''View AIO Key'''&lt;br /&gt;
&lt;br /&gt;
*Dans '''HOME_SSID''' mettez le nom de votre réseau WI-FI&lt;br /&gt;
*Dans '''HOME_PASS''' mettez le mot de passe de votre réseau WI-FI&lt;br /&gt;
*Dans '''ADAFRUIT_MQTT_USERNAME''' mettez le '''Username''' d'adafruit IO&lt;br /&gt;
*Dans '''ADAFRUIT_MQTT_PASS''' mettez l''''Active Key''' d'adafruit IO&lt;br /&gt;
&lt;br /&gt;
Téléverser le croquis pour tester si tout marche bien.&lt;br /&gt;
&lt;br /&gt;
Normalement vous devriez arriver jusqu'à l'écran '''Notifications'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Info|Vous pouvez vérifier sur le moniteur série (Baudrate : 115200) s'il y a un problème.}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Mini_écran_connecté_arduino_secrets.png&lt;br /&gt;
|Step_Picture_01=Mini_écran_connecté_adafruit_io_key.png&lt;br /&gt;
|Step_Picture_02=Mini_écran_connecté_tft_wifi.jpg&lt;br /&gt;
|Step_Picture_03=Mini_écran_connecté_tft_io.jpg&lt;br /&gt;
|Step_Picture_04=Mini_écran_connecté_tft_notification.jpg&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Test depuis Adafruit IO&lt;br /&gt;
|Step_Content=Adafruit IO nous permet de créer une donnée qui sera affichée sur l'écran.&lt;br /&gt;
&lt;br /&gt;
*Cliquer sur '''Feeds''' / '''Notifications'''&lt;br /&gt;
*Puis cliquer sur '''Add Data'''&lt;br /&gt;
*Écrivez un message&lt;br /&gt;
{{Info|Si un message est envoyé alors que l'écran n'est pas connecté, celui-ci sera ignoré. MQTT permet toutefois de garder en mémoire les messages avec la fonction Retain}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Mini_écran_connecté_adafruit_io3.png&lt;br /&gt;
|Step_Picture_01=Mini_écran_connecté_tft_io_test.jpg&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=IFTTT - Afficher les notifications d'un téléphone&lt;br /&gt;
|Step_Content=IFTTT est un service qui permet d'automatiser des tâches, Adafruit IO est compatible avec celui-ci.&lt;br /&gt;
&lt;br /&gt;
{{Info|Si vous voulez utiliser IFTTT avec votre propre serveur, il y a des webhooks qui permettent de faire cela.}}&lt;br /&gt;
&lt;br /&gt;
Nous allons voir comment afficher les notifications d'un smartphone sur notre écran.&lt;br /&gt;
&lt;br /&gt;
{{Warning|Bien que ce soit amusant comme projet, n'oubliez pas que vous allez donner accès à vos notifications à deux services sur internet.&lt;br /&gt;
Même si les communications sont en théorie sécurisée, niveau vie privée c'est une très mauvaise idée.}}&lt;br /&gt;
&lt;br /&gt;
*Créer un compte sur IFTTT&lt;br /&gt;
*Installer l'application android&lt;br /&gt;
&lt;br /&gt;
'''if'''&lt;br /&gt;
&lt;br /&gt;
*Sur l'interface web d'IFTTT, cliquer sur '''My Applets'''&lt;br /&gt;
*Cliquer sur '''New Applet'''&lt;br /&gt;
*Choisissez le service '''Android Device'''&lt;br /&gt;
*Choisissez '''Notification Received'''&lt;br /&gt;
&lt;br /&gt;
'''then'''&lt;br /&gt;
&lt;br /&gt;
*Choisissez '''Adafruit'''&lt;br /&gt;
*Choisissez '''Send data to Adafruit IO'''&lt;br /&gt;
*Dans '''Feed Name''' mettez '''notifications'''&lt;br /&gt;
*Dans '''Data to save''' choisisez '''AppName''' et '''Notification''' '''Title'''&lt;br /&gt;
{{Dont|L'ESP8266 va se déconnecter (puis se reconnecter) du serveur MQTT, si le message est trop long.}}&amp;lt;br /&amp;gt;Votre applet devrait ressembler à ceci.&lt;br /&gt;
&lt;br /&gt;
Aller sur votre téléphone, lancer IFTTT et autoriser '''l'accès aux notifications'''.&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Mini_écran_connecté_ifttt.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Cacher vos identifiants dans le logiciel Arduino&lt;br /&gt;
|Step_Content=Nous avons utilisé le fichier '''arduino_secrets.h''' qui est dans notre croquis pour '''sauvegarder nos identifiants'''.&lt;br /&gt;
&lt;br /&gt;
{{Warning|Il vaut mieux éviter de faire cela, car vous risquez de partager accidentellement vos mot de passe!}}&lt;br /&gt;
&lt;br /&gt;
Une solution pour éviter ça et de créer une '''bibliothèque''' pour nos identifiants.&lt;br /&gt;
&lt;br /&gt;
L'autre avantage c'est que nos identifiants seront '''accessibles pour tous nos croquis''' !&lt;br /&gt;
&lt;br /&gt;
{{Info|1=C'est Andreas Spiesss qui a eu cette idée&lt;br /&gt;
https://www.youtube.com/watch?v=CAGQ8h8PKX4&amp;amp;t=347s}}&lt;br /&gt;
&lt;br /&gt;
*Créer dans '''Documents/Arduino/libraries''' un dossier '''arduino_secrets'''&lt;br /&gt;
*Copier '''arduino_secrets.h''' dans ce dossier&lt;br /&gt;
&lt;br /&gt;
Dans le croquis, changez l'include au début du code&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;//#include &amp;quot;arduino_secrets.h&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;include &amp;lt;arduino_secrets.h&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
|Step_Picture_00=Mini_écran_connecté_arduino_secrets2.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Changer les images&lt;br /&gt;
|Step_Content=Si vous voulez changer les images affichées, elles sont sauvegardées dans '''bitmaps.h'''&lt;br /&gt;
&lt;br /&gt;
Pour convertir vos images en code, suivez ce tutoriel&lt;br /&gt;
&lt;br /&gt;
[[Afficher une image sur un écran ST7789]]&lt;br /&gt;
&lt;br /&gt;
Les images en version vectorielle SVG et PNG sont disponibles dans le dossier '''images'''&lt;br /&gt;
&lt;br /&gt;
Pour afficher une image, il faut juste utiliser cette commande:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;tft.pushImage(0,0,240,240,adafruit_io);&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour écrire du texte sur plusieurs lignes, positionnez le texte puis écrivez le&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;tft.setCursor(0,50);&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;tft.println(data); //Print text&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vous pouvez aussi écrire une seule ligne avec cette commande&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;tft.drawString(HOME_SSID, 25, 20);&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Mini_écran_connecté_adafruit_io2.png&lt;br /&gt;
|Step_Picture_01=Mini_écran_connecté_notifications.png&lt;br /&gt;
|Step_Picture_02=Mini_écran_connecté_wifi.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Changer la police d'écriture&lt;br /&gt;
|Step_Content=Vous avez peut-être remarqué que la police d'écriture est incluse dans le croquis sous le nom '''arial12pt8b.h'''&lt;br /&gt;
&lt;br /&gt;
Il se trouve que par défaut, il n'y a pas de police d'écriture avec les accents qui puissent être intégrés directement dans le code.&lt;br /&gt;
&lt;br /&gt;
J'ai donc dû la générer à partir d'une police d'écriture ('''.ttf''').&lt;br /&gt;
&lt;br /&gt;
Vous pouvez télécharger une police d'écriture (par ex: sur https://www.dafont.com/), et la convertir en code.&lt;br /&gt;
&lt;br /&gt;
Pour cela il vous faut '''fontconvert''', le code source est disponible dans Adafruit_GFX mais vous pouvez trouver une version prêt à l'usage (pour Windows) dans la description de cette vidéo&lt;br /&gt;
&lt;br /&gt;
https://www.youtube.com/watch?v=L8MmTISmwZ8&lt;br /&gt;
&lt;br /&gt;
Pour générer la police d'écriture il vous suffit de taper cette commande:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;fontconvert arial.ttf 12 32 255 &amp;gt; arial12pt8b.h&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour changer la taille de la police, '''changer le premier chiffre''' (ici 12)&lt;br /&gt;
&lt;br /&gt;
{{Info|Le 8b signifie que la police utilise 8bytes et contient donc les caractères accentués (entre autres)}}&amp;lt;br /&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Utiliser son propre serveur MQTT&lt;br /&gt;
|Step_Content={{Info|Le croquis est configuré pour un serveur qui utilise SSL pour chiffrer les communications.}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En plus de changer les identifiants / le serveur / le port dans '''arduino_secrets.h''', il faut récupérer le certificat SSL de votre serveur.&lt;br /&gt;
&lt;br /&gt;
Pour cela il vous faut openssl, vous pouvez le télécharger ici (Windows) : https://slproweb.com/products/Win32OpenSSL.html&lt;br /&gt;
&lt;br /&gt;
Puis tapez cette commande (avec l'adresse de votre serveur mqtt)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;openssl s_client -showcerts -connect io.adafruit.com:8883&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Récupérer le dernier certificat affiché et copier le dans '''connection.h'''&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Mini_écran_connecté_ssl.png&lt;br /&gt;
|Step_Picture_01=Mini_écran_connecté_ssl2.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Notes}}&lt;br /&gt;
|Notes=Voilà ce tutoriel est fini, j'espère que cela vous donnera des idées pour faire des applications sympas avec.&lt;br /&gt;
&lt;br /&gt;
Évidemment dans l'idéal &lt;br /&gt;
&lt;br /&gt;
*Il faudrait pouvoir '''paramétrer notre écran''' depuis une '''interface web'''&lt;br /&gt;
*Éviter d'utiliser des '''images''' de la '''taille de l'écran''' quand ce n'est pas nécessaire&lt;br /&gt;
&lt;br /&gt;
Mais cela devrait vous donner un bon point de départ.&lt;br /&gt;
&lt;br /&gt;
'''Suivez-moi sur Twitter''' si vous voulez être au courant des prochains tutoriels en avance : https://twitter.com/m4dnerd&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Status}}&lt;br /&gt;
|Complete=Draft&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Madnerd</name></author>
		
	</entry>
	<entry>
		<id>https://wikifab.org/w/index.php?title=Mini_%C3%A9cran_connect%C3%A9&amp;diff=62331</id>
		<title>Mini écran connecté</title>
		<link rel="alternate" type="text/html" href="https://wikifab.org/w/index.php?title=Mini_%C3%A9cran_connect%C3%A9&amp;diff=62331"/>
		<updated>2019-03-30T20:23:34Z</updated>

		<summary type="html">&lt;p&gt;Madnerd : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ {{tntn|Tuto Details}}&lt;br /&gt;
|Main_Picture=Mini_écran_connecté_tft_iftt_wiki.jpg&lt;br /&gt;
|Licences=Attribution (CC BY)&lt;br /&gt;
|Description=Afficher des messages où que vous soyez avec cet écran connecté à internet.&lt;br /&gt;
|Area=Electronics, House&lt;br /&gt;
|Type=Creation&lt;br /&gt;
|Difficulty=Medium&lt;br /&gt;
|Duration=1&lt;br /&gt;
|Duration-type=hour(s)&lt;br /&gt;
|Cost=7&lt;br /&gt;
|Currency=EUR (€)&lt;br /&gt;
|Tags=iftt, mqtt, esp8266, st7789, tft, adafruit.io, iot&lt;br /&gt;
|SourceLanguage=none&lt;br /&gt;
|Language=fr&lt;br /&gt;
|IsTranslation=0&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Introduction}}&lt;br /&gt;
|Introduction=Précédemment, nous avons vu comment afficher une image sur un ST7789, un écran TFT à 3€. ( [[Afficher une image sur un écran ST7789]] )&lt;br /&gt;
&lt;br /&gt;
Nous allons exploiter cette connaissance pour faire un mini écran connecté.&lt;br /&gt;
&lt;br /&gt;
*Cet écran va afficher les messages reçus depuis un serveur MQTT&lt;br /&gt;
*Les messages peuvent contenir des caractères accentués&lt;br /&gt;
*La transmission sera chiffrée&lt;br /&gt;
*Afin d'éviter les attaques MITM (man in the middle), nous allons vérifier l'identité du serveur MQTT à l'aide de son certificat.&lt;br /&gt;
&lt;br /&gt;
À partir de là nous pouvons même utiliser '''IFTT''' (ou '''tasker''') afin de transmettre des informations du '''web''' / de notre '''installation domotique''' ou de notre '''téléphone''' sur le serveur MQTT.&lt;br /&gt;
&lt;br /&gt;
Afin de simplifier la partie MQTT, nous allons utiliser '''Adafruit IO''' qui permet d'avoir un '''serveur MQTT gratuitement'''.&lt;br /&gt;
&lt;br /&gt;
{{Info|Vous pouvez bien évidemment utiliser votre propre serveur MQTT (la partie IFTT par contre ne marchera plus)}}&amp;lt;br /&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|TutoVideo}}&lt;br /&gt;
|VideoType=Youtube&lt;br /&gt;
|VideoURLYoutube=https://youtu.be/Diek3-pvNAs&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Materials}}&lt;br /&gt;
|Step_Picture_00=Afficher_une_image_sur_un_écran_ST7789_tft.png&lt;br /&gt;
|Material=*ESP8266&lt;br /&gt;
*ST7789&lt;br /&gt;
*Câble Wrapping 30 AWG&lt;br /&gt;
|Tools=*Fer à souder&lt;br /&gt;
*Imprimante 3D&lt;br /&gt;
|Prerequisites={{ {{tntn|Prerequisites}}&lt;br /&gt;
|Prerequisites=Afficher une image sur un écran ST7789&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Separator}}}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Fabriquer l'écran connecté&lt;br /&gt;
|Step_Content=Suivez le tutoriel sur l'écran ST7789, avant toute chose,&lt;br /&gt;
&lt;br /&gt;
En résumé, &lt;br /&gt;
&lt;br /&gt;
*il faut installer la '''bibliothèque tft_espi'''&lt;br /&gt;
*Changer le fichier '''User_Setup.h''' directement dans la bibliothèque&lt;br /&gt;
*Reliez l'écran à l'esp8266&lt;br /&gt;
&lt;br /&gt;
[[Afficher une image sur un écran ST7789]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Afficher_une_image_sur_un_écran_ST7789_displayFinish.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Paramétrer Adafruit IO&lt;br /&gt;
|Step_Content=*Créer un compte sur Adafruit IO: https://io.adafruit.com/&lt;br /&gt;
*Cliquer sur '''Feeds'''&lt;br /&gt;
*Cliquer sur '''Actions''' / '''Create a New Feed'''&lt;br /&gt;
*Dans '''Name''' mettez '''notifications'''&lt;br /&gt;
|Step_Picture_00=Mini_écran_connecté_adafruit_io.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Paramétrer les identifiants&lt;br /&gt;
|Step_Content=Tout d'abord il nous faut '''récupérer le programme''' &lt;br /&gt;
&lt;br /&gt;
*Télécharger le croquis ici : https://github.com/maditnerd/st7789_mqtt&lt;br /&gt;
*Il nous faut aussi la bibliothèque : '''Adafruit_MQTT'''&lt;br /&gt;
&lt;br /&gt;
Cette bibliothèque va nous permettre de communiquer avec notre '''serveur MQTT'''.&lt;br /&gt;
&lt;br /&gt;
Dans le programme, il y a un fichier '''arduino_secrets.h''', c'est ici que nous allons stocker nos identifiants pour le '''Wi-Fi''' et le '''serveur MQTT'''&lt;br /&gt;
&lt;br /&gt;
Les identifiants sur Adafruit IO se trouvent en cliquant sur '''View AIO Key'''&lt;br /&gt;
&lt;br /&gt;
*Dans '''HOME_SSID''' mettez le nom de votre réseau WI-FI&lt;br /&gt;
*Dans '''HOME_PASS''' mettez le mot de passe de votre réseau WI-FI&lt;br /&gt;
*Dans '''ADAFRUIT_MQTT_USERNAME''' mettez le '''Username''' d'adafruit IO&lt;br /&gt;
*Dans '''ADAFRUIT_MQTT_PASS''' mettez l''''Active Key''' d'adafruit IO&lt;br /&gt;
&lt;br /&gt;
Téléverser le croquis pour tester si tout marche bien.&lt;br /&gt;
&lt;br /&gt;
Normalement vous devriez arriver jusqu'à l'écran '''Notifications'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Info|Vous pouvez vérifier sur le moniteur série (Baudrate : 115200) s'il y a un problème.}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Mini_écran_connecté_arduino_secrets.png&lt;br /&gt;
|Step_Picture_01=Mini_écran_connecté_adafruit_io_key.png&lt;br /&gt;
|Step_Picture_02=Mini_écran_connecté_tft_wifi.jpg&lt;br /&gt;
|Step_Picture_03=Mini_écran_connecté_tft_io.jpg&lt;br /&gt;
|Step_Picture_04=Mini_écran_connecté_tft_notification.jpg&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Test depuis Adafruit IO&lt;br /&gt;
|Step_Content=Adafruit IO nous permet de créer une donnée qui sera affichée sur l'écran.&lt;br /&gt;
&lt;br /&gt;
*Cliquer sur '''Feeds''' / '''Notifications'''&lt;br /&gt;
*Puis cliquer sur '''Add Data'''&lt;br /&gt;
*Écrivez un message&lt;br /&gt;
{{Info|Si un message est envoyé alors que l'écran n'est pas connecté, celui-ci sera ignoré. MQTT permet toutefois de garder en mémoire les messages avec la fonction Retain}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Mini_écran_connecté_adafruit_io3.png&lt;br /&gt;
|Step_Picture_01=Mini_écran_connecté_tft_io_test.jpg&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=IFTTT - Afficher les notifications d'un téléphone&lt;br /&gt;
|Step_Content=IFTTT est un service qui permet d'automatiser des tâches, Adafruit IO est compatible avec celui-ci.&lt;br /&gt;
&lt;br /&gt;
{{Info|Si vous voulez utiliser IFTTT avec votre propre serveur, il y a des webhooks qui permettent de faire cela.}}&lt;br /&gt;
&lt;br /&gt;
Nous allons voir comment afficher les notifications d'un smartphone sur notre écran.&lt;br /&gt;
&lt;br /&gt;
{{Warning|Bien que ce soit amusant comme projet, n'oubliez pas que vous allez donner accès à vos notifications à deux services sur internet.&lt;br /&gt;
Même si les communications sont en théorie sécurisée, niveau vie privée c'est une très mauvaise idée.}}&lt;br /&gt;
&lt;br /&gt;
*Créer un compte sur IFTTT&lt;br /&gt;
*Installer l'application android&lt;br /&gt;
&lt;br /&gt;
'''if'''&lt;br /&gt;
&lt;br /&gt;
*Sur l'interface web d'IFTTT, cliquer sur '''My Applets'''&lt;br /&gt;
*Cliquer sur '''New Applet'''&lt;br /&gt;
*Choisissez le service '''Android Device'''&lt;br /&gt;
*Choisissez '''Notification Received'''&lt;br /&gt;
&lt;br /&gt;
'''then'''&lt;br /&gt;
&lt;br /&gt;
*Choisissez '''Adafruit'''&lt;br /&gt;
*Choisissez '''Send data to Adafruit IO'''&lt;br /&gt;
*Dans '''Feed Name''' mettez '''notifications'''&lt;br /&gt;
*Dans '''Data to save''' choisisez '''AppName''' et '''Notification''' '''Title'''&lt;br /&gt;
{{Dont|L'ESP8266 va se déconnecter (puis se reconnecter) du serveur MQTT, si le message est trop long.}}&amp;lt;br /&amp;gt;Votre applet devrait ressembler à ceci.&lt;br /&gt;
&lt;br /&gt;
Aller sur votre téléphone, lancer IFTTT et autoriser '''l'accès aux notifications'''.&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Mini_écran_connecté_ifttt.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Cacher vos identifiants dans le logiciel Arduino&lt;br /&gt;
|Step_Content=Nous avons utilisé le fichier '''arduino_secrets.h''' qui est dans notre croquis pour '''sauvegarder nos identifiants'''.&lt;br /&gt;
&lt;br /&gt;
{{Warning|Il vaut mieux éviter de faire cela, car vous risquez de partager accidentellement vos mot de passe!}}&lt;br /&gt;
&lt;br /&gt;
Une solution pour éviter ça et de créer une '''bibliothèque''' pour nos identifiants.&lt;br /&gt;
&lt;br /&gt;
L'autre avantage c'est que nos identifiants seront '''accessibles pour tous nos croquis''' !&lt;br /&gt;
&lt;br /&gt;
{{Info|1=C'est Andreas Spiesss qui a eu cette idée&lt;br /&gt;
https://www.youtube.com/watch?v=CAGQ8h8PKX4&amp;amp;t=347s}}&lt;br /&gt;
&lt;br /&gt;
*Créer dans '''Documents/Arduino/libraries''' un dossier '''arduino_secrets'''&lt;br /&gt;
*Copier '''arduino_secrets.h''' dans ce dossier&lt;br /&gt;
&lt;br /&gt;
Dans le croquis, changez l'include au début du code&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;//#include &amp;quot;arduino_secrets.h&amp;quot;&lt;br /&gt;
&lt;br /&gt;
include &amp;lt;arduino_secrets.h&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
|Step_Picture_00=Mini_écran_connecté_arduino_secrets2.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Changer les images&lt;br /&gt;
|Step_Content=Si vous voulez changer les images affichées, elles sont sauvegardées dans '''bitmaps.h'''&lt;br /&gt;
&lt;br /&gt;
Pour convertir vos images en code, suivez ce tutoriel&lt;br /&gt;
&lt;br /&gt;
[[Afficher une image sur un écran ST7789]]&lt;br /&gt;
&lt;br /&gt;
Les images en version vectorielle SVG et PNG sont disponibles dans le dossier '''images'''&lt;br /&gt;
&lt;br /&gt;
Pour afficher une image, il faut juste utiliser cette commande:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;tft.pushImage(0,0,240,240,adafruit_io);&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour écrire du texte sur plusieurs lignes, positionnez le texte puis écrivez le&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;tft.setCursor(0,50);&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;tft.println(data); //Print text&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vous pouvez aussi écrire une seule ligne avec cette commande&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;tft.drawString(HOME_SSID, 25, 20);&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Mini_écran_connecté_adafruit_io2.png&lt;br /&gt;
|Step_Picture_01=Mini_écran_connecté_notifications.png&lt;br /&gt;
|Step_Picture_02=Mini_écran_connecté_wifi.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Changer la police d'écriture&lt;br /&gt;
|Step_Content=Vous avez peut-être remarqué que la police d'écriture est incluse dans le croquis sous le nom '''arial12pt8b.h'''&lt;br /&gt;
&lt;br /&gt;
Il se trouve que par défaut, il n'y a pas de police d'écriture avec les accents qui puissent être intégrés directement dans le code.&lt;br /&gt;
&lt;br /&gt;
J'ai donc dû la générer à partir d'une police d'écriture ('''.ttf''').&lt;br /&gt;
&lt;br /&gt;
Vous pouvez télécharger une police d'écriture (par ex: sur https://www.dafont.com/), et la convertir en code.&lt;br /&gt;
&lt;br /&gt;
Pour cela il vous faut '''fontconvert''', le code source est disponible dans Adafruit_GFX mais vous pouvez trouver une version prêt à l'usage (pour Windows) dans la description de cette vidéo&lt;br /&gt;
&lt;br /&gt;
https://www.youtube.com/watch?v=L8MmTISmwZ8&lt;br /&gt;
&lt;br /&gt;
Pour générer la police d'écriture il vous suffit de taper cette commande:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;fontconvert arial.ttf 12 32 255 &amp;gt; arial12pt8b.h&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour changer la taille de la police, '''changer le premier chiffre''' (ici 12)&lt;br /&gt;
&lt;br /&gt;
{{Info|Le 8b signifie que la police utilise 8bytes et contient donc les caractères accentués (entre autres)}}&amp;lt;br /&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Utiliser son propre serveur MQTT&lt;br /&gt;
|Step_Content={{Info|Le croquis est configuré pour un serveur qui utilise SSL pour chiffrer les communications.}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En plus de changer les identifiants / le serveur / le port dans '''arduino_secrets.h''', il faut récupérer le certificat SSL de votre serveur.&lt;br /&gt;
&lt;br /&gt;
Pour cela il vous faut openssl, vous pouvez le télécharger ici (Windows) : https://slproweb.com/products/Win32OpenSSL.html&lt;br /&gt;
&lt;br /&gt;
Puis tapez cette commande (avec l'adresse de votre serveur mqtt)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;openssl s_client -showcerts -connect io.adafruit.com:8883&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Récupérer le dernier certificat affiché et copier le dans '''connection.h'''&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Mini_écran_connecté_ssl.png&lt;br /&gt;
|Step_Picture_01=Mini_écran_connecté_ssl2.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Notes}}&lt;br /&gt;
|Notes=Voilà ce tutoriel est fini, j'espère que cela vous donnera des idées pour faire des applications sympas avec.&lt;br /&gt;
&lt;br /&gt;
Évidemment dans l'idéal &lt;br /&gt;
&lt;br /&gt;
*Il faudrait pouvoir '''paramétrer notre écran''' depuis une '''interface web'''&lt;br /&gt;
*Éviter d'utiliser des '''images''' de la '''taille de l'écran''' quand ce n'est pas nécessaire&lt;br /&gt;
&lt;br /&gt;
Mais cela devrait vous donner un bon point de départ.&lt;br /&gt;
&lt;br /&gt;
'''Suivez-moi sur Twitter''' si vous voulez être au courant des prochains tutoriels en avance : https://twitter.com/m4dnerd&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Status}}&lt;br /&gt;
|Complete=Draft&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Madnerd</name></author>
		
	</entry>
	<entry>
		<id>https://wikifab.org/w/index.php?title=Mini_%C3%A9cran_connect%C3%A9&amp;diff=62330</id>
		<title>Mini écran connecté</title>
		<link rel="alternate" type="text/html" href="https://wikifab.org/w/index.php?title=Mini_%C3%A9cran_connect%C3%A9&amp;diff=62330"/>
		<updated>2019-03-30T20:23:13Z</updated>

		<summary type="html">&lt;p&gt;Madnerd : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ {{tntn|Tuto Details}}&lt;br /&gt;
|Main_Picture=Mini_écran_connecté_tft_iftt_wiki.jpg&lt;br /&gt;
|Licences=Attribution (CC BY)&lt;br /&gt;
|Description=Afficher des messages où que vous soyez avec cette écran connecté à internet.&lt;br /&gt;
|Area=Electronics, House&lt;br /&gt;
|Type=Creation&lt;br /&gt;
|Difficulty=Medium&lt;br /&gt;
|Duration=1&lt;br /&gt;
|Duration-type=hour(s)&lt;br /&gt;
|Cost=7&lt;br /&gt;
|Currency=EUR (€)&lt;br /&gt;
|Tags=iftt, mqtt, esp8266, st7789, tft, adafruit.io, iot&lt;br /&gt;
|SourceLanguage=none&lt;br /&gt;
|Language=fr&lt;br /&gt;
|IsTranslation=0&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Introduction}}&lt;br /&gt;
|Introduction=Précédemment, nous avons vu comment afficher une image sur un ST7789, un écran TFT à 3€. ( [[Afficher une image sur un écran ST7789]] )&lt;br /&gt;
&lt;br /&gt;
Nous allons exploiter cette connaissance pour faire un mini écran connecté.&lt;br /&gt;
&lt;br /&gt;
*Cet écran va afficher les messages reçus depuis un serveur MQTT&lt;br /&gt;
*Les messages peuvent contenir des caractères accentués&lt;br /&gt;
*La transmission sera chiffrée&lt;br /&gt;
*Afin d'éviter les attaques MITM (man in the middle), nous allons vérifier l'identité du serveur MQTT à l'aide de son certificat.&lt;br /&gt;
&lt;br /&gt;
À partir de là nous pouvons même utiliser '''IFTT''' (ou '''tasker''') afin de transmettre des informations du '''web''' / de notre '''installation domotique''' ou de notre '''téléphone''' sur le serveur MQTT.&lt;br /&gt;
&lt;br /&gt;
Afin de simplifier la partie MQTT, nous allons utiliser '''Adafruit IO''' qui permet d'avoir un '''serveur MQTT gratuitement'''.&lt;br /&gt;
&lt;br /&gt;
{{Info|Vous pouvez bien évidemment utiliser votre propre serveur MQTT (la partie IFTT par contre ne marchera plus)}}&amp;lt;br /&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|TutoVideo}}&lt;br /&gt;
|VideoType=Youtube&lt;br /&gt;
|VideoURLYoutube=https://youtu.be/Diek3-pvNAs&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Materials}}&lt;br /&gt;
|Step_Picture_00=Afficher_une_image_sur_un_écran_ST7789_tft.png&lt;br /&gt;
|Material=*ESP8266&lt;br /&gt;
*ST7789&lt;br /&gt;
*Câble Wrapping 30 AWG&lt;br /&gt;
|Tools=*Fer à souder&lt;br /&gt;
*Imprimante 3D&lt;br /&gt;
|Prerequisites={{ {{tntn|Prerequisites}}&lt;br /&gt;
|Prerequisites=Afficher une image sur un écran ST7789&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Separator}}}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Fabriquer l'écran connecté&lt;br /&gt;
|Step_Content=Suivez le tutoriel sur l'écran ST7789, avant toute chose,&lt;br /&gt;
&lt;br /&gt;
En résumé, &lt;br /&gt;
&lt;br /&gt;
*il faut installer la '''bibliothèque tft_espi'''&lt;br /&gt;
*Changer le fichier '''User_Setup.h''' directement dans la bibliothèque&lt;br /&gt;
*Reliez l'écran à l'esp8266&lt;br /&gt;
&lt;br /&gt;
[[Afficher une image sur un écran ST7789]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Afficher_une_image_sur_un_écran_ST7789_displayFinish.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Paramétrer Adafruit IO&lt;br /&gt;
|Step_Content=*Créer un compte sur Adafruit IO: https://io.adafruit.com/&lt;br /&gt;
*Cliquer sur '''Feeds'''&lt;br /&gt;
*Cliquer sur '''Actions''' / '''Create a New Feed'''&lt;br /&gt;
*Dans '''Name''' mettez '''notifications'''&lt;br /&gt;
|Step_Picture_00=Mini_écran_connecté_adafruit_io.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Paramétrer les identifiants&lt;br /&gt;
|Step_Content=Tout d'abord il nous faut '''récupérer le programme''' &lt;br /&gt;
&lt;br /&gt;
*Télécharger le croquis ici : https://github.com/maditnerd/st7789_mqtt&lt;br /&gt;
*Il nous faut aussi la bibliothèque : '''Adafruit_MQTT'''&lt;br /&gt;
&lt;br /&gt;
Cette bibliothèque va nous permettre de communiquer avec notre '''serveur MQTT'''.&lt;br /&gt;
&lt;br /&gt;
Dans le programme, il y a un fichier '''arduino_secrets.h''', c'est ici que nous allons stocker nos identifiants pour le '''Wi-Fi''' et le '''serveur MQTT'''&lt;br /&gt;
&lt;br /&gt;
Les identifiants sur Adafruit IO se trouvent en cliquant sur '''View AIO Key'''&lt;br /&gt;
&lt;br /&gt;
*Dans '''HOME_SSID''' mettez le nom de votre réseau WI-FI&lt;br /&gt;
*Dans '''HOME_PASS''' mettez le mot de passe de votre réseau WI-FI&lt;br /&gt;
*Dans '''ADAFRUIT_MQTT_USERNAME''' mettez le '''Username''' d'adafruit IO&lt;br /&gt;
*Dans '''ADAFRUIT_MQTT_PASS''' mettez l''''Active Key''' d'adafruit IO&lt;br /&gt;
&lt;br /&gt;
Téléverser le croquis pour tester si tout marche bien.&lt;br /&gt;
&lt;br /&gt;
Normalement vous devriez arriver jusqu'à l'écran '''Notifications'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Info|Vous pouvez vérifier sur le moniteur série (Baudrate : 115200) s'il y a un problème.}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Mini_écran_connecté_arduino_secrets.png&lt;br /&gt;
|Step_Picture_01=Mini_écran_connecté_adafruit_io_key.png&lt;br /&gt;
|Step_Picture_02=Mini_écran_connecté_tft_wifi.jpg&lt;br /&gt;
|Step_Picture_03=Mini_écran_connecté_tft_io.jpg&lt;br /&gt;
|Step_Picture_04=Mini_écran_connecté_tft_notification.jpg&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Test depuis Adafruit IO&lt;br /&gt;
|Step_Content=Adafruit IO nous permet de créer une donnée qui sera affichée sur l'écran.&lt;br /&gt;
&lt;br /&gt;
*Cliquer sur '''Feeds''' / '''Notifications'''&lt;br /&gt;
*Puis cliquer sur '''Add Data'''&lt;br /&gt;
*Écrivez un message&lt;br /&gt;
{{Info|Si un message est envoyé alors que l'écran n'est pas connecté, celui-ci sera ignoré. MQTT permet toutefois de garder en mémoire les messages avec la fonction Retain}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Mini_écran_connecté_adafruit_io3.png&lt;br /&gt;
|Step_Picture_01=Mini_écran_connecté_tft_io_test.jpg&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=IFTTT - Afficher les notifications d'un téléphone&lt;br /&gt;
|Step_Content=IFTTT est un service qui permet d'automatiser des tâches, Adafruit IO est compatible avec celui-ci.&lt;br /&gt;
&lt;br /&gt;
{{Info|Si vous voulez utiliser IFTTT avec votre propre serveur, il y a des webhooks qui permettent de faire cela.}}&lt;br /&gt;
&lt;br /&gt;
Nous allons voir comment afficher les notifications d'un smartphone sur notre écran.&lt;br /&gt;
&lt;br /&gt;
{{Warning|Bien que ce soit amusant comme projet, n'oubliez pas que vous allez donner accès à vos notifications à deux services sur internet.&lt;br /&gt;
Même si les communications sont en théorie sécurisée, niveau vie privée c'est une très mauvaise idée.}}&lt;br /&gt;
&lt;br /&gt;
*Créer un compte sur IFTTT&lt;br /&gt;
*Installer l'application android&lt;br /&gt;
&lt;br /&gt;
'''if'''&lt;br /&gt;
&lt;br /&gt;
*Sur l'interface web d'IFTTT, cliquer sur '''My Applets'''&lt;br /&gt;
*Cliquer sur '''New Applet'''&lt;br /&gt;
*Choisissez le service '''Android Device'''&lt;br /&gt;
*Choisissez '''Notification Received'''&lt;br /&gt;
&lt;br /&gt;
'''then'''&lt;br /&gt;
&lt;br /&gt;
*Choisissez '''Adafruit'''&lt;br /&gt;
*Choisissez '''Send data to Adafruit IO'''&lt;br /&gt;
*Dans '''Feed Name''' mettez '''notifications'''&lt;br /&gt;
*Dans '''Data to save''' choisisez '''AppName''' et '''Notification''' '''Title'''&lt;br /&gt;
{{Dont|L'ESP8266 va se déconnecter (puis se reconnecter) du serveur MQTT, si le message est trop long.}}&amp;lt;br /&amp;gt;Votre applet devrait ressembler à ceci.&lt;br /&gt;
&lt;br /&gt;
Aller sur votre téléphone, lancer IFTTT et autoriser '''l'accès aux notifications'''.&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Mini_écran_connecté_ifttt.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Cacher vos identifiants dans le logiciel Arduino&lt;br /&gt;
|Step_Content=Nous avons utilisé le fichier '''arduino_secrets.h''' qui est dans notre croquis pour '''sauvegarder nos identifiants'''.&lt;br /&gt;
&lt;br /&gt;
{{Warning|Il vaut mieux éviter de faire cela, car vous risquez de partager accidentellement vos mot de passe!}}&lt;br /&gt;
&lt;br /&gt;
Une solution pour éviter ça et de créer une '''bibliothèque''' pour nos identifiants.&lt;br /&gt;
&lt;br /&gt;
L'autre avantage c'est que nos identifiants seront '''accessibles pour tous nos croquis''' !&lt;br /&gt;
&lt;br /&gt;
{{Info|1=C'est Andreas Spiesss qui a eu cette idée&lt;br /&gt;
https://www.youtube.com/watch?v=CAGQ8h8PKX4&amp;amp;t=347s}}&lt;br /&gt;
&lt;br /&gt;
*Créer dans '''Documents/Arduino/libraries''' un dossier '''arduino_secrets'''&lt;br /&gt;
*Copier '''arduino_secrets.h''' dans ce dossier&lt;br /&gt;
&lt;br /&gt;
Dans le croquis, changez l'include au début du code&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;//#include &amp;quot;arduino_secrets.h&amp;quot;&lt;br /&gt;
&lt;br /&gt;
include &amp;lt;arduino_secrets.h&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
|Step_Picture_00=Mini_écran_connecté_arduino_secrets2.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Changer les images&lt;br /&gt;
|Step_Content=Si vous voulez changer les images affichées, elles sont sauvegardées dans '''bitmaps.h'''&lt;br /&gt;
&lt;br /&gt;
Pour convertir vos images en code, suivez ce tutoriel&lt;br /&gt;
&lt;br /&gt;
[[Afficher une image sur un écran ST7789]]&lt;br /&gt;
&lt;br /&gt;
Les images en version vectorielle SVG et PNG sont disponibles dans le dossier '''images'''&lt;br /&gt;
&lt;br /&gt;
Pour afficher une image, il faut juste utiliser cette commande:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;tft.pushImage(0,0,240,240,adafruit_io);&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour écrire du texte sur plusieurs lignes, positionnez le texte puis écrivez le&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;tft.setCursor(0,50);&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;tft.println(data); //Print text&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vous pouvez aussi écrire une seule ligne avec cette commande&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;tft.drawString(HOME_SSID, 25, 20);&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Mini_écran_connecté_adafruit_io2.png&lt;br /&gt;
|Step_Picture_01=Mini_écran_connecté_notifications.png&lt;br /&gt;
|Step_Picture_02=Mini_écran_connecté_wifi.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Changer la police d'écriture&lt;br /&gt;
|Step_Content=Vous avez peut-être remarqué que la police d'écriture est incluse dans le croquis sous le nom '''arial12pt8b.h'''&lt;br /&gt;
&lt;br /&gt;
Il se trouve que par défaut, il n'y a pas de police d'écriture avec les accents qui puissent être intégrés directement dans le code.&lt;br /&gt;
&lt;br /&gt;
J'ai donc dû la générer à partir d'une police d'écriture ('''.ttf''').&lt;br /&gt;
&lt;br /&gt;
Vous pouvez télécharger une police d'écriture (par ex: sur https://www.dafont.com/), et la convertir en code.&lt;br /&gt;
&lt;br /&gt;
Pour cela il vous faut '''fontconvert''', le code source est disponible dans Adafruit_GFX mais vous pouvez trouver une version prêt à l'usage (pour Windows) dans la description de cette vidéo&lt;br /&gt;
&lt;br /&gt;
https://www.youtube.com/watch?v=L8MmTISmwZ8&lt;br /&gt;
&lt;br /&gt;
Pour générer la police d'écriture il vous suffit de taper cette commande:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;fontconvert arial.ttf 12 32 255 &amp;gt; arial12pt8b.h&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour changer la taille de la police, '''changer le premier chiffre''' (ici 12)&lt;br /&gt;
&lt;br /&gt;
{{Info|Le 8b signifie que la police utilise 8bytes et contient donc les caractères accentués (entre autres)}}&amp;lt;br /&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Utiliser son propre serveur MQTT&lt;br /&gt;
|Step_Content={{Info|Le croquis est configuré pour un serveur qui utilise SSL pour chiffrer les communications.}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En plus de changer les identifiants / le serveur / le port dans '''arduino_secrets.h''', il faut récupérer le certificat SSL de votre serveur.&lt;br /&gt;
&lt;br /&gt;
Pour cela il vous faut openssl, vous pouvez le télécharger ici (Windows) : https://slproweb.com/products/Win32OpenSSL.html&lt;br /&gt;
&lt;br /&gt;
Puis tapez cette commande (avec l'adresse de votre serveur mqtt)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;openssl s_client -showcerts -connect io.adafruit.com:8883&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Récupérer le dernier certificat affiché et copier le dans '''connection.h'''&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Mini_écran_connecté_ssl.png&lt;br /&gt;
|Step_Picture_01=Mini_écran_connecté_ssl2.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Notes}}&lt;br /&gt;
|Notes=Voilà ce tutoriel est fini, j'espère que cela vous donnera des idées pour faire des applications sympas avec.&lt;br /&gt;
&lt;br /&gt;
Évidemment dans l'idéal &lt;br /&gt;
&lt;br /&gt;
*Il faudrait pouvoir '''paramétrer notre écran''' depuis une '''interface web'''&lt;br /&gt;
*Éviter d'utiliser des '''images''' de la '''taille de l'écran''' quand ce n'est pas nécessaire&lt;br /&gt;
&lt;br /&gt;
Mais cela devrait vous donner un bon point de départ.&lt;br /&gt;
&lt;br /&gt;
'''Suivez-moi sur Twitter''' si vous voulez être au courant des prochains tutoriels en avance : https://twitter.com/m4dnerd&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Status}}&lt;br /&gt;
|Complete=Draft&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Madnerd</name></author>
		
	</entry>
	<entry>
		<id>https://wikifab.org/w/index.php?title=Mini_%C3%A9cran_connect%C3%A9&amp;diff=62329</id>
		<title>Mini écran connecté</title>
		<link rel="alternate" type="text/html" href="https://wikifab.org/w/index.php?title=Mini_%C3%A9cran_connect%C3%A9&amp;diff=62329"/>
		<updated>2019-03-30T20:21:04Z</updated>

		<summary type="html">&lt;p&gt;Madnerd : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ {{tntn|Tuto Details}}&lt;br /&gt;
|SourceLanguage=none&lt;br /&gt;
|Language=fr&lt;br /&gt;
|IsTranslation=0&lt;br /&gt;
|Main_Picture=Mini_écran_connecté_tft_iftt_wiki.jpg&lt;br /&gt;
|Licences=Attribution (CC BY)&lt;br /&gt;
|Description=Nous allons voir comment afficher des messages depuis un serveur MQTT sur un écran TFT.&lt;br /&gt;
|Area=Electronics, House&lt;br /&gt;
|Type=Creation&lt;br /&gt;
|Difficulty=Medium&lt;br /&gt;
|Duration=1&lt;br /&gt;
|Duration-type=hour(s)&lt;br /&gt;
|Cost=7&lt;br /&gt;
|Currency=EUR (€)&lt;br /&gt;
|Tags=iftt, mqtt, esp8266, st7789, tft, adafruit.io, iot&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Introduction}}&lt;br /&gt;
|Introduction=Précédemment, nous avons vu comment afficher une image sur un ST7789, un écran TFT à 3€. ( [[Afficher une image sur un écran ST7789]] )&lt;br /&gt;
&lt;br /&gt;
Nous allons exploiter cette connaissance pour faire un mini écran connecté.&lt;br /&gt;
&lt;br /&gt;
*Cet écran va afficher les messages reçus depuis un serveur MQTT&lt;br /&gt;
*Les messages peuvent contenir des caractères accentués&lt;br /&gt;
*La transmission sera chiffrée&lt;br /&gt;
*Afin d'éviter les attaques MITM (man in the middle), nous allons vérifier l'identité du serveur MQTT à l'aide de son certificat.&lt;br /&gt;
&lt;br /&gt;
À partir de là nous pouvons même utiliser '''IFTT''' (ou '''tasker''') afin de transmettre des informations du '''web''' / de notre '''installation domotique''' ou de notre '''téléphone''' sur le serveur MQTT.&lt;br /&gt;
&lt;br /&gt;
Afin de simplifier la partie MQTT, nous allons utiliser '''Adafruit IO''' qui permet d'avoir un '''serveur MQTT gratuitement'''.&lt;br /&gt;
&lt;br /&gt;
{{Info|Vous pouvez bien évidemment utiliser votre propre serveur MQTT (la partie IFTT par contre ne marchera plus)}}&amp;lt;br /&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|TutoVideo}}&lt;br /&gt;
|VideoType=Youtube&lt;br /&gt;
|VideoURLYoutube=https://youtu.be/Diek3-pvNAs&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Materials}}&lt;br /&gt;
|Step_Picture_00=Afficher_une_image_sur_un_écran_ST7789_tft.png&lt;br /&gt;
|Material=*ESP8266&lt;br /&gt;
*ST7789&lt;br /&gt;
*Câble Wrapping 30 AWG&lt;br /&gt;
|Tools=*Fer à souder&lt;br /&gt;
*Imprimante 3D&lt;br /&gt;
|Prerequisites={{ {{tntn|Prerequisites}}&lt;br /&gt;
|Prerequisites=Afficher une image sur un écran ST7789&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Separator}}}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Fabriquer l'écran connecté&lt;br /&gt;
|Step_Content=Suivez le tutoriel sur l'écran ST7789, avant toute chose,&lt;br /&gt;
&lt;br /&gt;
En résumé, &lt;br /&gt;
&lt;br /&gt;
*il faut installer la '''bibliothèque tft_espi'''&lt;br /&gt;
*Changer le fichier '''User_Setup.h''' directement dans la bibliothèque&lt;br /&gt;
*Reliez l'écran à l'esp8266&lt;br /&gt;
&lt;br /&gt;
[[Afficher une image sur un écran ST7789]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Afficher_une_image_sur_un_écran_ST7789_displayFinish.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Paramétrer Adafruit IO&lt;br /&gt;
|Step_Content=*Créer un compte sur Adafruit IO: https://io.adafruit.com/&lt;br /&gt;
*Cliquer sur '''Feeds'''&lt;br /&gt;
*Cliquer sur '''Actions''' / '''Create a New Feed'''&lt;br /&gt;
*Dans '''Name''' mettez '''notifications'''&lt;br /&gt;
|Step_Picture_00=Mini_écran_connecté_adafruit_io.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Paramétrer les identifiants&lt;br /&gt;
|Step_Content=Tout d'abord il nous faut '''récupérer le programme''' &lt;br /&gt;
&lt;br /&gt;
*Télécharger le croquis ici : https://github.com/maditnerd/st7789_mqtt&lt;br /&gt;
*Il nous faut aussi la bibliothèque : '''Adafruit_MQTT'''&lt;br /&gt;
&lt;br /&gt;
Cette bibliothèque va nous permettre de communiquer avec notre '''serveur MQTT'''.&lt;br /&gt;
&lt;br /&gt;
Dans le programme, il y a un fichier '''arduino_secrets.h''', c'est ici que nous allons stocker nos identifiants pour le '''Wi-Fi''' et le '''serveur MQTT'''&lt;br /&gt;
&lt;br /&gt;
Les identifiants sur Adafruit IO se trouvent en cliquant sur '''View AIO Key'''&lt;br /&gt;
&lt;br /&gt;
*Dans '''HOME_SSID''' mettez le nom de votre réseau WI-FI&lt;br /&gt;
*Dans '''HOME_PASS''' mettez le mot de passe de votre réseau WI-FI&lt;br /&gt;
*Dans '''ADAFRUIT_MQTT_USERNAME''' mettez le '''Username''' d'adafruit IO&lt;br /&gt;
*Dans '''ADAFRUIT_MQTT_PASS''' mettez l''''Active Key''' d'adafruit IO&lt;br /&gt;
&lt;br /&gt;
Téléverser le croquis pour tester si tout marche bien.&lt;br /&gt;
&lt;br /&gt;
Normalement vous devriez arriver jusqu'à l'écran '''Notifications'''&lt;br /&gt;
&lt;br /&gt;
{{Info|Vous pouvez vérifier sur le moniteur série (Baudrate : 115200) s'il y a un problème.}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Mini_écran_connecté_arduino_secrets.png&lt;br /&gt;
|Step_Picture_01=Mini_écran_connecté_adafruit_io_key.png&lt;br /&gt;
|Step_Picture_02=Mini_écran_connecté_tft_wifi.jpg&lt;br /&gt;
|Step_Picture_03=Mini_écran_connecté_tft_io.jpg&lt;br /&gt;
|Step_Picture_04=Mini_écran_connecté_tft_notification.jpg&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Test depuis Adafruit IO&lt;br /&gt;
|Step_Content=Adafruit IO nous permet de créer une donnée qui sera affichée sur l'écran.&lt;br /&gt;
&lt;br /&gt;
*Cliquer sur '''Feeds''' / '''Notifications'''&lt;br /&gt;
*Puis cliquer sur '''Add Data'''&lt;br /&gt;
*Écrivez un message&lt;br /&gt;
{{Info|Si un message est envoyé alors que l'écran n'est pas connecté, celui-ci sera ignoré. MQTT permet toutefois de garder en mémoire les messages avec la fonction Retain}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Mini_écran_connecté_adafruit_io3.png&lt;br /&gt;
|Step_Picture_01=Mini_écran_connecté_tft_io_test.jpg&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=IFTTT - Afficher les notifications d'un téléphone&lt;br /&gt;
|Step_Content=IFTTT est un service qui permet d'automatiser des tâches, Adafruit IO est compatible avec celui-ci.&lt;br /&gt;
&lt;br /&gt;
{{Info|Si vous voulez utiliser IFTTT avec votre propre serveur, il y a des webhooks qui permettent de faire cela.}}&lt;br /&gt;
&lt;br /&gt;
Nous allons voir comment afficher les notifications d'un smartphone sur notre écran.&lt;br /&gt;
&lt;br /&gt;
{{Warning|Bien que ce soit amusant comme projet, n'oubliez pas que vous allez donner accès à vos notifications à deux services sur internet.&lt;br /&gt;
Même si les communications sont en théorie sécurisée, niveau vie privée c'est une très mauvaise idée.}}&lt;br /&gt;
&lt;br /&gt;
*Créer un compte sur IFTTT&lt;br /&gt;
*Installer l'application android&lt;br /&gt;
&lt;br /&gt;
'''if'''&lt;br /&gt;
&lt;br /&gt;
*Sur l'interface web d'IFTTT, cliquer sur '''My Applets'''&lt;br /&gt;
*Cliquer sur '''New Applet'''&lt;br /&gt;
*Choisissez le service '''Android Device'''&lt;br /&gt;
*Choisissez '''Notification Received'''&lt;br /&gt;
&lt;br /&gt;
'''then'''&lt;br /&gt;
&lt;br /&gt;
*Choisissez '''Adafruit'''&lt;br /&gt;
*Choisissez '''Send data to Adafruit IO'''&lt;br /&gt;
*Dans '''Feed Name''' mettez '''notifications'''&lt;br /&gt;
*Dans '''Data to save''' choisisez '''AppName''' et '''Notification''' '''Title'''&lt;br /&gt;
{{Dont|L'ESP8266 va se déconnecter (puis se reconnecter) du serveur MQTT, si le message est trop long.}}&amp;lt;br /&amp;gt;Votre applet devrait ressembler à ceci.&lt;br /&gt;
&lt;br /&gt;
Aller sur votre téléphone, lancer IFTTT et autoriser '''l'accès aux notifications'''.&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Mini_écran_connecté_ifttt.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Cacher vos identifiants dans le logiciel Arduino&lt;br /&gt;
|Step_Content=Nous avons utilisé le fichier '''arduino_secrets.h''' qui est dans notre croquis pour '''sauvegarder nos identifiants'''.&lt;br /&gt;
&lt;br /&gt;
{{Warning|Il vaut mieux éviter de faire cela, car vous risquez de partager accidentellement vos mot de passe!}}&lt;br /&gt;
&lt;br /&gt;
Une solution pour éviter ça et de créer une '''bibliothèque''' pour nos identifiants.&lt;br /&gt;
&lt;br /&gt;
L'autre avantage c'est que nos identifiants seront '''accessibles pour tous nos croquis''' !&lt;br /&gt;
&lt;br /&gt;
{{Info|1=C'est Andreas Spiesss qui a eu cette idée&lt;br /&gt;
https://www.youtube.com/watch?v=CAGQ8h8PKX4&amp;amp;t=347s}}&lt;br /&gt;
&lt;br /&gt;
*Créer dans '''Documents/Arduino/libraries''' un dossier '''arduino_secrets'''&lt;br /&gt;
*Copier '''arduino_secrets.h''' dans ce dossier&lt;br /&gt;
&lt;br /&gt;
Dans le croquis, changez l'include au début du code&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;//#include &amp;quot;arduino_secrets.h&amp;quot;&lt;br /&gt;
&lt;br /&gt;
include &amp;lt;arduino_secrets.h&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
|Step_Picture_00=Mini_écran_connecté_arduino_secrets2.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Changer les images&lt;br /&gt;
|Step_Content=Si vous voulez changer les images affichées, elles sont sauvegardées dans '''bitmaps.h'''&lt;br /&gt;
&lt;br /&gt;
Pour convertir vos images en code, suivez ce tutoriel&lt;br /&gt;
&lt;br /&gt;
[[Afficher une image sur un écran ST7789]]&lt;br /&gt;
&lt;br /&gt;
Les images en version vectorielle SVG et PNG sont disponibles dans le dossier '''images'''&lt;br /&gt;
&lt;br /&gt;
Pour afficher une image, il faut juste utiliser cette commande:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;tft.pushImage(0,0,240,240,adafruit_io);&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour écrire du texte sur plusieurs lignes, positionnez le texte puis écrivez le&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;tft.setCursor(0,50);&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;tft.println(data); //Print text&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vous pouvez aussi écrire une seule ligne avec cette commande&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;tft.drawString(HOME_SSID, 25, 20);&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Mini_écran_connecté_adafruit_io2.png&lt;br /&gt;
|Step_Picture_01=Mini_écran_connecté_notifications.png&lt;br /&gt;
|Step_Picture_02=Mini_écran_connecté_wifi.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Changer la police d'écriture&lt;br /&gt;
|Step_Content=Vous avez peut-être remarqué que la police d'écriture est incluse dans le croquis sous le nom '''arial12pt8b.h'''&lt;br /&gt;
&lt;br /&gt;
Il se trouve que par défaut, il n'y a pas de police d'écriture avec les accents qui puissent être intégrés directement dans le code.&lt;br /&gt;
&lt;br /&gt;
J'ai donc dû la générer à partir d'une police d'écriture ('''.ttf''').&lt;br /&gt;
&lt;br /&gt;
Vous pouvez télécharger une police d'écriture (par ex: sur https://www.dafont.com/), et la convertir en code.&lt;br /&gt;
&lt;br /&gt;
Pour cela il vous faut '''fontconvert''', le code source est disponible dans Adafruit_GFX mais vous pouvez trouver une version prêt à l'usage (pour Windows) dans la description de cette vidéo&lt;br /&gt;
&lt;br /&gt;
https://www.youtube.com/watch?v=L8MmTISmwZ8&lt;br /&gt;
&lt;br /&gt;
Pour générer la police d'écriture il vous suffit de taper cette commande:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;fontconvert arial.ttf 12 32 255 &amp;gt; arial12pt8b.h&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour changer la taille de la police, '''changer le premier chiffre''' (ici 12)&lt;br /&gt;
&lt;br /&gt;
{{Info|Le 8b signifie que la police utilise 8bytes et contient donc les caractères accentués (entre autres)}}&amp;lt;br /&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Utiliser son propre serveur MQTT&lt;br /&gt;
|Step_Content={{Info|Le croquis est configuré pour un serveur qui utilise SSL pour chiffrer les communications.}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En plus de changer les identifiants / le serveur / le port dans '''arduino_secrets.h''', il faut récupérer le certificat SSL de votre serveur.&lt;br /&gt;
&lt;br /&gt;
Pour cela il vous faut openssl, vous pouvez le télécharger ici (Windows) : https://slproweb.com/products/Win32OpenSSL.html&lt;br /&gt;
&lt;br /&gt;
Puis tapez cette commande (avec l'adresse de votre serveur mqtt)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;openssl s_client -showcerts -connect io.adafruit.com:8883&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Récupérer le dernier certificat affiché et copier le dans '''connection.h'''&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Mini_écran_connecté_ssl.png&lt;br /&gt;
|Step_Picture_01=Mini_écran_connecté_ssl2.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Notes}}&lt;br /&gt;
|Notes=Voilà ce tutoriel est fini, j'espère que cela vous donnera des idées pour faire des applications sympas avec.&lt;br /&gt;
&lt;br /&gt;
Évidemment dans l'idéal &lt;br /&gt;
&lt;br /&gt;
*Il faudrait pouvoir '''paramétrer notre écran''' depuis une '''interface web'''&lt;br /&gt;
*Éviter d'utiliser des '''images''' de la '''taille de l'écran''' quand ce n'est pas nécessaire&lt;br /&gt;
&lt;br /&gt;
Mais cela devrait vous donner un bon point de départ.&lt;br /&gt;
&lt;br /&gt;
'''Suivez-moi sur Twitter''' si vous voulez être au courant des prochains tutoriels en avance : https://twitter.com/m4dnerd&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Status}}&lt;br /&gt;
|Complete=Draft&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Madnerd</name></author>
		
	</entry>
	<entry>
		<id>https://wikifab.org/w/index.php?title=Afficher_une_image_sur_un_%C3%A9cran_ST7789&amp;diff=62327</id>
		<title>Afficher une image sur un écran ST7789</title>
		<link rel="alternate" type="text/html" href="https://wikifab.org/w/index.php?title=Afficher_une_image_sur_un_%C3%A9cran_ST7789&amp;diff=62327"/>
		<updated>2019-03-30T20:11:40Z</updated>

		<summary type="html">&lt;p&gt;Madnerd : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ {{tntn|Tuto Details}}&lt;br /&gt;
|Main_Picture=Afficher_une_image_sur_un_écran_ST7789_tft_wiki.jpg&lt;br /&gt;
|Licences=Attribution (CC BY)&lt;br /&gt;
|Description=&amp;lt;translate&amp;gt;&amp;lt;!--T:1--&amp;gt; Les écrans ST7789 ne coûtent rien (3€) et permettent d'afficher des images et des photos. Même sans carte SD.&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Area=Electronics&lt;br /&gt;
|Type=Technique&lt;br /&gt;
|Difficulty=Medium&lt;br /&gt;
|Duration=2&lt;br /&gt;
|Duration-type=hour(s)&lt;br /&gt;
|Cost=7&lt;br /&gt;
|Currency=EUR (€)&lt;br /&gt;
|Tags=spi, st7789, wemos, esp8266, écran, afficheur, image, photo&lt;br /&gt;
|SourceLanguage=none&lt;br /&gt;
|Language=fr&lt;br /&gt;
|IsTranslation=0&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Introduction}}&lt;br /&gt;
|Introduction=&amp;lt;translate&amp;gt;&amp;lt;!--T:2--&amp;gt;&lt;br /&gt;
J'ai acheté cet écran (ST7789) pour l'utiliser avec un ESP8266 afin de créer un afficheur connecté low cost.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:3--&amp;gt;&lt;br /&gt;
Malheureusement, j'ai eu beaucoup de mal à trouver la bonne bibliothèque pour l'exploiter, mais avec mon aide vous devriez y arriver sans problème !&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:4--&amp;gt;&lt;br /&gt;
Voyons comment afficher une image sans avoir à utiliser une carte SD.&amp;lt;/translate&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|TutoVideo}}&lt;br /&gt;
|VideoType=Youtube&lt;br /&gt;
|VideoURLYoutube=https://www.youtube.com/watch?v=bd4tKF5LBNU&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Materials}}&lt;br /&gt;
|Step_Picture_00=Contrôler_des_neopixels_comme_un_DJ_Envoyer_un_message_sur_discord_wemos.png&lt;br /&gt;
|Step_Picture_01=Afficher_une_image_sur_un_écran_ST7789_display2.jpg&lt;br /&gt;
|Material=&amp;lt;translate&amp;gt;&amp;lt;!--T:5--&amp;gt;&lt;br /&gt;
* Wemos Mini Pro (clone) ou autre ESP8266&lt;br /&gt;
* ST7789 240x240&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Tools=&amp;lt;translate&amp;gt;&amp;lt;!--T:6--&amp;gt;&lt;br /&gt;
* Fer à souder&lt;br /&gt;
* Imprimante 3D&amp;lt;/translate&amp;gt;&lt;br /&gt;
|ExternalAttachmentsLinks={{ {{tntn|ExternalAttachmentsLinks}}&lt;br /&gt;
|ExternalAttachmentsLinks=https://www.thingiverse.com/thing:3509423&lt;br /&gt;
}}{{ {{tntn|ExternalAttachmentsLinks}}&lt;br /&gt;
|ExternalAttachmentsLinks=https://github.com/maditnerd/st7789_bitmap&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Separator}}}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;&amp;lt;!--T:7--&amp;gt; Installer / Paramètrer TFT_eSPI&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;!--T:8--&amp;gt;&lt;br /&gt;
Après avoir essayé la bibliothèque d'Adafruit ('''adafruit_st7789''') qui ne '''marche pas''' avec mon écran et une bibliothèque non disponible dans le gestionnaire de bibliothèque ('''arduino_st7789''') qui était '''instable''' et lente c'est sans équivoque '''TFT_eSPI''' qui '''marche le mieux'''.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:9--&amp;gt;&lt;br /&gt;
TFT_eSPI doit être paramétré pour fonctionner avec cet écran.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:10--&amp;gt;&lt;br /&gt;
Pour cela nous devons modifier '''User_Setup.h''' à l'intérieur de la bibliothèque, une fois que cela est fait, la bibliothèque marchera avec tous les croquis et exemples '''sans modification.'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:11--&amp;gt;&lt;br /&gt;
Télécharger mon code ici : https://github.com/maditnerd/st7789_bitmap&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:12--&amp;gt;&lt;br /&gt;
Dans le dossier '''User_Setup''', vous trouverez le fichier configuré pour un ST7789.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:13--&amp;gt;&lt;br /&gt;
*Installer '''TFT_eSPI''' à l'aide du '''Gestionnaire de bibliothèque'''&lt;br /&gt;
*Aller dans le dossier '''libraries''' (sous Windows : '''Documents/Arduino/libraries''')&lt;br /&gt;
*Aller dans le dossier '''TFT_eSPI'''&lt;br /&gt;
*Remplacer User_Setup.h avec ma version.&amp;lt;/translate&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;&amp;lt;!--T:14--&amp;gt; Branchement de l'écran&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;!--T:15--&amp;gt;&lt;br /&gt;
L'écran est branché en SPI sur l'esp8266&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:16--&amp;gt;&lt;br /&gt;
*D5 --&amp;gt; SCL (Hardware SPI)&lt;br /&gt;
*D7 --&amp;gt; SDA (Hardware SPI)&lt;br /&gt;
*D0 --&amp;gt; RES (n'importe quelle broche)&lt;br /&gt;
*D1 --&amp;gt; DC (n'importe quelle broche)&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Afficher_une_image_sur_un_écran_ST7789_tft.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;&amp;lt;!--T:17--&amp;gt; Essayer l'écran&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;!--T:18--&amp;gt; Vous pouvez essayer de faire fonctionner l'écran avec les '''exemples disponibles''' dans tft_eSPI ou '''utiliser mon code''' pour afficher une image.&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Afficher_une_image_sur_un_écran_ST7789_tft_image.jpg&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;&amp;lt;!--T:19--&amp;gt; Convertir l'image en code&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;!--T:20--&amp;gt;&lt;br /&gt;
Dans mon code (https://github.com/maditnerd/st7789_bitmap), l'image est sauvegardée dans '''bitmap.h'''.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:21--&amp;gt;&lt;br /&gt;
Pour pouvoir afficher une image, Il nous faut la '''convertir en code''' et le '''copier''' dans un '''tableau.'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:22--&amp;gt;&lt;br /&gt;
Pour cela, nous allons utiliser '''LCD image converter''', vous pouvez trouver ce programme ici: https://sourceforge.net/projects/lcd-image-converter/&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:23--&amp;gt;&lt;br /&gt;
*'''Redimensionner''' l'image à la taille de votre écran (240x240)&lt;br /&gt;
*Cliquer sur '''New Image'''&lt;br /&gt;
*Aller sur '''Image / Import''' et sélectionner votre image&lt;br /&gt;
*Aller dans '''Options / Conversion'''&lt;br /&gt;
*Choisissez le  '''Preset''' : '''Color R5G6B5'''&lt;br /&gt;
*Aller dans l'onglet '''Image'''&lt;br /&gt;
*Changer '''Block Size''' à '''16bit'''&lt;br /&gt;
*Cliquer sur '''Show Preview'''&lt;br /&gt;
*Copier le code&lt;br /&gt;
*Copier-coller le '''dans le tableau'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:24--&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;const uint16_t mercy [] PROGMEM = {// --&amp;gt; PASTE HERE};&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:25--&amp;gt;&lt;br /&gt;
Et voilà, téléverser le code et vous devriez voir l'image s'affichait sur l'écran.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:26--&amp;gt;&lt;br /&gt;
Note: Il y a un exemple dans TFT_eSPI pour décoder des fichiers JPEG ('''128x128/TFT_flash_jpg'''), l'affichage est plus lent, mais cela permet de ne pas avoir à faire de conversion.&amp;lt;br /&amp;gt;&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Afficher_une_image_sur_un_écran_ST7789_lcd_image_converter1.png&lt;br /&gt;
|Step_Picture_01=Afficher_une_image_sur_un_écran_ST7789_lcd_image_converter2.png&lt;br /&gt;
|Step_Picture_02=Afficher_une_image_sur_un_écran_ST7789_lcd_image_converter3.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;&amp;lt;!--T:27--&amp;gt; Fabriquer notre mini écran&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;!--T:28--&amp;gt;&lt;br /&gt;
Vous pouvez trouver les fichiers STL ici : https://www.thingiverse.com/thing:3509423&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:29--&amp;gt;&lt;br /&gt;
''Merci à Olivier Sarrailh pour le boitier''.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:30--&amp;gt;&lt;br /&gt;
*Afin de réduire au plus la taille, j'ai retiré les broches de l'écran.&lt;br /&gt;
*Je l'ai est remplacé par du '''Wrapping Cable 30 AWG'''&lt;br /&gt;
*Après ça j'ai soudé l'écran à mon clone de wemos mini pro&lt;br /&gt;
*Ensuite, j'ai ajouté du '''ruban électrique''' pour éviter les '''courts-circuits'''&lt;br /&gt;
*Pour finir, j'ai '''imprimé le boitier'''&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Afficher_une_image_sur_un_écran_ST7789_display1.jpg&lt;br /&gt;
|Step_Picture_01=Afficher_une_image_sur_un_écran_ST7789_display2.jpg&lt;br /&gt;
|Step_Picture_02=Afficher_une_image_sur_un_écran_ST7789_display3.jpg&lt;br /&gt;
|Step_Picture_03=Afficher_une_image_sur_un_écran_ST7789_display4.jpg&lt;br /&gt;
|Step_Picture_04=Afficher_une_image_sur_un_écran_ST7789_displayFinish.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Notes}}&lt;br /&gt;
|Notes=&amp;lt;translate&amp;gt;&amp;lt;!--T:31--&amp;gt;&lt;br /&gt;
Suivez moi sur twitter si vous voulez être au courant des prochains tutoriels en avance : https://twitter.com/m4dnerd&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:32--&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;/translate&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Status}}&lt;br /&gt;
|Complete=Published&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Madnerd</name></author>
		
	</entry>
	<entry>
		<id>https://wikifab.org/w/index.php?title=Fichier:Afficher_une_image_sur_un_%C3%A9cran_ST7789_tft_wiki.jpg&amp;diff=62326</id>
		<title>Fichier:Afficher une image sur un écran ST7789 tft wiki.jpg</title>
		<link rel="alternate" type="text/html" href="https://wikifab.org/w/index.php?title=Fichier:Afficher_une_image_sur_un_%C3%A9cran_ST7789_tft_wiki.jpg&amp;diff=62326"/>
		<updated>2019-03-30T20:11:35Z</updated>

		<summary type="html">&lt;p&gt;Madnerd : Afficher_une_image_sur_un_écran_ST7789_tft_wiki&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Afficher_une_image_sur_un_écran_ST7789_tft_wiki&lt;/div&gt;</summary>
		<author><name>Madnerd</name></author>
		
	</entry>
	<entry>
		<id>https://wikifab.org/w/index.php?title=Du_pixelart_sur_vos_%C3%A9crans_OLED&amp;diff=62324</id>
		<title>Du pixelart sur vos écrans OLED</title>
		<link rel="alternate" type="text/html" href="https://wikifab.org/w/index.php?title=Du_pixelart_sur_vos_%C3%A9crans_OLED&amp;diff=62324"/>
		<updated>2019-03-30T20:09:26Z</updated>

		<summary type="html">&lt;p&gt;Madnerd : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ {{tntn|Tuto Details}}&lt;br /&gt;
|Main_Picture=Du_pixelart_sur_vos_écrans_OLED_pixelart_wiki.jpg&lt;br /&gt;
|Licences=Attribution (CC BY)&lt;br /&gt;
|Description=&amp;lt;translate&amp;gt;&amp;lt;!--T:1--&amp;gt;&lt;br /&gt;
Le pixel art c'est cool ! si vous voulez le rendre encore plus rétro quoi de mieux qu'un petit écran OLED.&lt;br /&gt;
Nous allons voir comment créer nos propres images et les animer.&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Area=Art, Electronics, Play and Hobbies&lt;br /&gt;
|Type=Technique&lt;br /&gt;
|Difficulty=Medium&lt;br /&gt;
|Duration=2&lt;br /&gt;
|Duration-type=hour(s)&lt;br /&gt;
|Cost=5&lt;br /&gt;
|Currency=EUR (€)&lt;br /&gt;
|Tags=arduino, esp8266, esp32, oled, u8g2, pixel, pixelart&lt;br /&gt;
|SourceLanguage=none&lt;br /&gt;
|Language=fr&lt;br /&gt;
|IsTranslation=0&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Introduction}}&lt;br /&gt;
|Introduction=&amp;lt;translate&amp;gt;&amp;lt;!--T:2--&amp;gt; Dessiner sur des écrans OLED ? Ça peut paraitre compliqué, mais avec un peu d'entrainement, on peut faire un paquet de choses comme son propre logo, voir de l'animation ou même des jeux vidéos !&amp;lt;/translate&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|TutoVideo}}&lt;br /&gt;
|VideoType=Youtube&lt;br /&gt;
|VideoURLYoutube=https://www.youtube.com/watch?v=JfFld6lq_7o&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Materials}}&lt;br /&gt;
|Step_Picture_00=Filtration_sur_sable_par_arduino_3.jpg&lt;br /&gt;
|Step_Picture_01=Du_pixelart_sur_vos_écrans_OLED_0.91_I2C_OLED_128x32-_Blue_4-1000x750.png&lt;br /&gt;
|Material=&amp;lt;translate&amp;gt;&amp;lt;!--T:3--&amp;gt;&lt;br /&gt;
- Microcontrôleur compatible avec u8g2 (arduino / esp8266 / esp32 etc...)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:4--&amp;gt;&lt;br /&gt;
- Écran  OLED monochrome&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Tools=&amp;lt;translate&amp;gt;&amp;lt;/translate&amp;gt;&lt;br /&gt;
|ExternalAttachmentsLinks={{ {{tntn|ExternalAttachmentsLinks}}&lt;br /&gt;
|ExternalAttachmentsLinks=https://github.com/maditnerd/oled_xbm&lt;br /&gt;
}}{{ {{tntn|ExternalAttachmentsLinks}}&lt;br /&gt;
|ExternalAttachmentsLinks=https://create.arduino.cc/editor/madnerd/0a94bf35-ada8-4695-9f56-d62ea2ed4cff/preview&lt;br /&gt;
}}{{ {{tntn|ExternalAttachmentsLinks}}&lt;br /&gt;
|ExternalAttachmentsLinks=https://create.arduino.cc/editor/madnerd/f616433a-3f8a-483c-8ca2-6447dac0314c/preview&lt;br /&gt;
}}{{ {{tntn|ExternalAttachmentsLinks}}&lt;br /&gt;
|ExternalAttachmentsLinks=https://create.arduino.cc/editor/madnerd/b4c53d85-5579-4953-89d4-29e0a3b4228c/preview&lt;br /&gt;
}}{{ {{tntn|ExternalAttachmentsLinks}}&lt;br /&gt;
|ExternalAttachmentsLinks=https://create.arduino.cc/editor/madnerd/7deed5b1-6f4d-4cd6-b662-0e2a88a93974/preview&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Separator}}}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;&amp;lt;!--T:5--&amp;gt; Choisir son image&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;!--T:6--&amp;gt;&lt;br /&gt;
Nous allons utiliser un écran 128x32 (les écrans en 128x64 sont aussi très répandus si vous voulez plus d'espace), il nous faut donc choisir une '''petite image.'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:7--&amp;gt;&lt;br /&gt;
Les sprites de la GameBoy sont très faciles à convertir, mais gardez à l'esprit que nous sommes limités au noir et blanc, là ou la gameboy est capable d'afficher 4 nuances de gris.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:8--&amp;gt;&lt;br /&gt;
Vous pouvez télécharger des sprites sur https://www.spriters-resource.com/ comme point de départ.&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Du_pixelart_sur_vos_écrans_OLED_112885.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;&amp;lt;!--T:9--&amp;gt; Convertir son image en pixel art&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;!--T:10--&amp;gt;&lt;br /&gt;
{{Info|Tout le code est disponible sur github à cette adresse : https://github.com/maditnerd/oled_xbm}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:37--&amp;gt;&lt;br /&gt;
Pour notre premier exemple, nous allons utiliser le logo d'hackster.io&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:11--&amp;gt;&lt;br /&gt;
Nous allons&lt;br /&gt;
* Redimensionner l'image en 128x32&lt;br /&gt;
* Redessiner l'image avec deux couleurs&lt;br /&gt;
* La convertir en XBM (code arduino)&lt;br /&gt;
{{Idea|N'importe quel logiciel peut faire l'affaire, mais je recommande chaudement Krita : https://krita.org/en/}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:12--&amp;gt;&lt;br /&gt;
Redimensionner l'image à la taille la plus proche de votre écran (128x32) : Image --&amp;gt; '''Redimensionner l'image à une nouvelle taille'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:13--&amp;gt;&lt;br /&gt;
Puis augmenter la taille de votre canvas à 128x32 : Image --&amp;gt; '''Redimensionner le tableau'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:14--&amp;gt;&lt;br /&gt;
Dans les préréglages des brosses, choisissez Pixel Art&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:15--&amp;gt;&lt;br /&gt;
Puis redessiner l'image.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:16--&amp;gt;&lt;br /&gt;
{{Idea|Appuyer sur X pour passer d'une couleur à l'autre.}}&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Du_pixelart_sur_vos_écrans_OLED_hacksterio_logo_pixel.png&lt;br /&gt;
|Step_Picture_01=Du_pixelart_sur_vos_écrans_OLED_hackster.png&lt;br /&gt;
|Step_Picture_02=Du_pixelart_sur_vos_écrans_OLED_brush.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;&amp;lt;!--T:17--&amp;gt; Convertir son pixel art en code arduino&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;!--T:18--&amp;gt;&lt;br /&gt;
Sauvegarder votre image au format XBM&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:19--&amp;gt;&lt;br /&gt;
{{Warning|Sauvegarder le aussi au format PNG, vous ne pourrez pas modifier votre fichier XBM avec Krita !}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:20--&amp;gt;&lt;br /&gt;
Ouvrez le fichier XBM avec un éditeur de texte et changez le nom des variables&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:21--&amp;gt;&lt;br /&gt;
Fichier XBM&lt;br /&gt;
 #define _width 128&lt;br /&gt;
 #define _height 32&lt;br /&gt;
 static char _bits[] = {&lt;br /&gt;
 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00... &lt;br /&gt;
 };&lt;br /&gt;
Fichier logo.h&lt;br /&gt;
 #define logo_width 128&lt;br /&gt;
 #define logo_height 32&lt;br /&gt;
 static const unsigned char logo[] U8X8_PROGMEM = {&lt;br /&gt;
 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00... &lt;br /&gt;
 };&amp;lt;/translate&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;&amp;lt;!--T:22--&amp;gt; Afficher votre image&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;!--T:23--&amp;gt;&lt;br /&gt;
{{Idea|Je vous conseille de garder le code du logo dans un fichier .h, ainsi il sera plus simple de lire votre code}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:24--&amp;gt;&lt;br /&gt;
Nous allons utiliser la bibliothèque U8g2 (elle est compatible avec beaucoup d'écrans)&lt;br /&gt;
 #include &amp;lt;Wire.h&amp;gt; //I2C&lt;br /&gt;
 #include &amp;lt;U8g2lib.h&amp;gt;&lt;br /&gt;
 #include &amp;quot;logo.h&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 //I2C SSD1306 128x32 (search U8g2 examples for other display)&lt;br /&gt;
 U8G2_SSD1306_128X32_UNIVISION_F_HW_I2C u8g2(U8G2_R0, U8X8_PIN_NONE);&lt;br /&gt;
 &lt;br /&gt;
 void setup() {&lt;br /&gt;
  u8g2.begin(); //Start Screen&lt;br /&gt;
  drawLogo();&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 void loop() {&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 void drawLogo() {&lt;br /&gt;
  u8g2.firstPage();&lt;br /&gt;
  do {&lt;br /&gt;
    u8g2.drawXBMP(0, 0, logo_width, logo_height, logo);&lt;br /&gt;
  } while ( u8g2.nextPage() );&lt;br /&gt;
 }&lt;br /&gt;
J'ai aussi mis les fichiers PNG et XBM dans un dossier res/ dans mon code afin de savoir ce qu'il y a dans logo.h et de pouvoir le modifier ultérieurement.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:25--&amp;gt;&lt;br /&gt;
Téléversez votre code et voilà !&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Du_pixelart_sur_vos_écrans_OLED_res.png&lt;br /&gt;
|Step_Picture_01=Du_pixelart_sur_vos_écrans_OLED_hackter_logo.jpg&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;&amp;lt;!--T:26--&amp;gt; Animation - Position&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;!--T:27--&amp;gt;&lt;br /&gt;
Pour cette partie nous allons utiliser le boulet de cannon de Super Mario Bros.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:28--&amp;gt;&lt;br /&gt;
Il est possible d'animer votre pixel art de deux façons :&lt;br /&gt;
* Changer sa position&lt;br /&gt;
* Utiliser plusieurs images&lt;br /&gt;
Donc si nous voulons déplacer une image de gauche à droite, il suffit juste de changer la position X non ?&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:29--&amp;gt;&lt;br /&gt;
Si vous utilisez un Arduino Uno, ça va marcher, mais avec des cartes plus puissantes (comme l'ESP8266) votre animation '''va aller beaucoup trop vite!'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:30--&amp;gt;&lt;br /&gt;
Nous avons besoin de limiter le taux de rafraichissement de notre animation, nous pourrions utiliser un delay mais nous ne pourrions plus faire d'autres choses en même temps.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:31--&amp;gt;&lt;br /&gt;
Nous allons donc utiliser la bibliothèque '''AsyncDelay''' pour gérer cela plus efficacement.&lt;br /&gt;
 #include &amp;lt;AsyncDelay.h&amp;gt;&lt;br /&gt;
 const int FPS = 1000 / 30; //30 FPS &lt;br /&gt;
 &lt;br /&gt;
 AsyncDelay tick; void setup(){ &lt;br /&gt;
   tick.start(FPS, AsyncDelay::MILLIS); &lt;br /&gt;
 } &lt;br /&gt;
 void loop(){ &lt;br /&gt;
    if(tick.isExpired()){ &lt;br /&gt;
        //ANIMATION ICI&lt;br /&gt;
        tick.repeat(); &lt;br /&gt;
    } &lt;br /&gt;
 }&lt;br /&gt;
Un dernier point, si nous voulons que notre image sorte de l'écran à droite et apparaisse lentement à gauche, nous devons aller plus loin que la largeur maximale de l'écran (128) , plus exactement (128+36), 36 étant la largeur de notre image.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:32--&amp;gt;&lt;br /&gt;
Une fois l'image sortie de l'écran à droite, nous la faisons apparaitre à -36 afin de donner l'impression qu'elle apparait à gauche.&lt;br /&gt;
 void loop() {&lt;br /&gt;
  if (tick.isExpired()) {&lt;br /&gt;
    drawAnimation();&lt;br /&gt;
    pos_x = pos_x + X;&lt;br /&gt;
    if (pos_x &amp;gt; OLED_WIDTH + cannon_width) {&lt;br /&gt;
      pos_x = -cannon_width;&lt;br /&gt;
    }&lt;br /&gt;
    tick.repeat();&lt;br /&gt;
  }&lt;br /&gt;
 }&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Du_pixelart_sur_vos_écrans_OLED_grid_cannon.png&lt;br /&gt;
|Step_Picture_01=Du_pixelart_sur_vos_écrans_OLED_P1120658.JPG&lt;br /&gt;
|Step_Picture_02=Du_pixelart_sur_vos_écrans_OLED_P1120654.JPG&lt;br /&gt;
|Step_Picture_03=Du_pixelart_sur_vos_écrans_OLED_mariocann.jpg&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;&amp;lt;!--T:33--&amp;gt; Animation - Images multiples&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;!--T:34--&amp;gt;&lt;br /&gt;
Une autre façon d'animer une image et d'utiliser plusieurs images.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:35--&amp;gt;&lt;br /&gt;
Au lieu de changer la position X, nous allons utiliser une '''condition SWITCH''' et augmenter la valeur '''animation_state.'''&lt;br /&gt;
 void drawAnimation() {&lt;br /&gt;
  u8g2.firstPage();&lt;br /&gt;
  do {&lt;br /&gt;
    switch (animation_state) {&lt;br /&gt;
      case 0:&lt;br /&gt;
        u8g2.drawXBMP(0, 0, logo_width, logo_height, logo_1);&lt;br /&gt;
        break;&lt;br /&gt;
      case 1:&lt;br /&gt;
        u8g2.drawXBMP(0, 0, logo_width, logo_height, logo_2);&lt;br /&gt;
        break;&lt;br /&gt;
      case 2:&lt;br /&gt;
        u8g2.drawXBMP(0, 0, logo_width, logo_height, logo_3);&lt;br /&gt;
        break;&lt;br /&gt;
      case 3:&lt;br /&gt;
        u8g2.drawXBMP(0, 0, logo_width, logo_height, logo_4);&lt;br /&gt;
        break;&lt;br /&gt;
      case 4:&lt;br /&gt;
        u8g2.drawXBMP(0, 0, logo_width, logo_height, logo_5);&lt;br /&gt;
        break;&lt;br /&gt;
      case 5:&lt;br /&gt;
        u8g2.drawXBMP(0, 0, logo_width, logo_height, logo_6);&lt;br /&gt;
        break;&lt;br /&gt;
    }&lt;br /&gt;
  } while ( u8g2.nextPage() );&lt;br /&gt;
 }&lt;br /&gt;
Afin que notre animation soit complète, il nous faut l'inverser, pour cela, nous allons utiliser le booléen (vrai/faux) '''animation_direction''' afin que l'animation aille dans le sens inverse.&lt;br /&gt;
 drawAnimation();&lt;br /&gt;
    if (animation_direction) {&lt;br /&gt;
      animation_state--;&lt;br /&gt;
    } else {&lt;br /&gt;
      animation_state++;&lt;br /&gt;
    }&lt;br /&gt;
    if (animation_state == 5) {&lt;br /&gt;
      animation_direction = true;&lt;br /&gt;
    }&lt;br /&gt;
    if (animation_state == 0) {&lt;br /&gt;
      animation_direction = false;&lt;br /&gt;
    }&lt;br /&gt;
Si on combine les deux techniques, on peut créer des animations plus complexe : https://www.youtube.com/watch?v=iB52FujIK-A&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Du_pixelart_sur_vos_écrans_OLED_hackster_anim.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Notes}}&lt;br /&gt;
|Notes=&amp;lt;translate&amp;gt;&amp;lt;!--T:36--&amp;gt; Si vous voulez être informés des prochains tutoriels suivez moi sur twitter : https://twitter.com/m4dnerd&amp;lt;/translate&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Status}}&lt;br /&gt;
|Complete=Published&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Madnerd</name></author>
		
	</entry>
	<entry>
		<id>https://wikifab.org/w/index.php?title=Fichier:Du_pixelart_sur_vos_%C3%A9crans_OLED_pixelart_wiki.jpg&amp;diff=62323</id>
		<title>Fichier:Du pixelart sur vos écrans OLED pixelart wiki.jpg</title>
		<link rel="alternate" type="text/html" href="https://wikifab.org/w/index.php?title=Fichier:Du_pixelart_sur_vos_%C3%A9crans_OLED_pixelart_wiki.jpg&amp;diff=62323"/>
		<updated>2019-03-30T20:09:19Z</updated>

		<summary type="html">&lt;p&gt;Madnerd : Du_pixelart_sur_vos_écrans_OLED_pixelart_wiki&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Du_pixelart_sur_vos_écrans_OLED_pixelart_wiki&lt;/div&gt;</summary>
		<author><name>Madnerd</name></author>
		
	</entry>
	<entry>
		<id>https://wikifab.org/w/index.php?title=Envoyer_un_message_sur_discord&amp;diff=62321</id>
		<title>Envoyer un message sur discord</title>
		<link rel="alternate" type="text/html" href="https://wikifab.org/w/index.php?title=Envoyer_un_message_sur_discord&amp;diff=62321"/>
		<updated>2019-03-30T20:06:09Z</updated>

		<summary type="html">&lt;p&gt;Madnerd : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ {{tntn|Tuto Details}}&lt;br /&gt;
|Main_Picture=Envoyer_un_message_sur_discord_discord_wiki.jpg&lt;br /&gt;
|Licences=Attribution (CC BY)&lt;br /&gt;
|Description=&amp;lt;translate&amp;gt;&amp;lt;!--T:1--&amp;gt;&lt;br /&gt;
Vous voulez envoyer des messages sur Discord à l'aide d'un ESP8266/ESP32/Arduino MKR ? &lt;br /&gt;
C'est facile grâce au webhook !&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Area=Electronics, Play and Hobbies&lt;br /&gt;
|Type=Creation&lt;br /&gt;
|Difficulty=Very easy&lt;br /&gt;
|Duration=30&lt;br /&gt;
|Duration-type=minute(s)&lt;br /&gt;
|Cost=3&lt;br /&gt;
|Currency=EUR (€)&lt;br /&gt;
|Tags=esp8266, esp32, mkr1010, discord, bot, webhook&lt;br /&gt;
|SourceLanguage=none&lt;br /&gt;
|Language=fr&lt;br /&gt;
|IsTranslation=0&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Introduction}}&lt;br /&gt;
|Introduction=&amp;lt;translate&amp;gt;&amp;lt;!--T:2--&amp;gt;&lt;br /&gt;
Les serveurs discords ont un système qui permet d'envoyer des messages automatiquement sur un salon.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:3--&amp;gt;&lt;br /&gt;
Ce système utilise les webhook, ce qui permet d'envoyer une requête web à une URL afin que le message soit écrit sur le salon sélectionné&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:4--&amp;gt;&lt;br /&gt;
https://en.wikipedia.org/wiki/Webhook&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:5--&amp;gt;&lt;br /&gt;
Grâce à ça, on peut faire pas mal de choses, par exemple:&lt;br /&gt;
*Créer un badgeur RFID qui envoie un message quand quelqu'un vient à votre FabLab.&lt;br /&gt;
*Afficher la température d'une pièce toutes les heures.&amp;lt;/translate&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Materials}}&lt;br /&gt;
|Step_Picture_00=Envoyer_un_message_sur_discord_wemos.png&lt;br /&gt;
|Material=&amp;lt;translate&amp;gt;&amp;lt;!--T:6--&amp;gt; Une carte avec le WiFi (ESP8266/ESP32/MKR1010)&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Tools=&amp;lt;translate&amp;gt;&amp;lt;/translate&amp;gt;&lt;br /&gt;
|ExternalAttachmentsLinks={{ {{tntn|ExternalAttachmentsLinks}}&lt;br /&gt;
|ExternalAttachmentsLinks=https://github.com/maditnerd/discord_test&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Separator}}}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;&amp;lt;!--T:7--&amp;gt; Créer le webhook&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;!--T:8--&amp;gt;&lt;br /&gt;
Cliquer sur le nom de votre discord &lt;br /&gt;
*Paramètres du Serveur&lt;br /&gt;
*Webhook&lt;br /&gt;
*Créer un webhook&lt;br /&gt;
Copier l'URL du webhook&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:9--&amp;gt;&lt;br /&gt;
https://support.discordapp.com/hc/fr/articles/228383668-Utiliser-les-Webhooks&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Envoyer_un_message_sur_discord_discord_3.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;&amp;lt;!--T:10--&amp;gt; Code Arduino&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;!--T:11--&amp;gt;&lt;br /&gt;
Si vous utiliser un Arduino MKR Wifi 1010, vous pouvez utiliser l'IDE Arduino en ligne:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:12--&amp;gt;&lt;br /&gt;
https://create.arduino.cc/editor/madnerd/429197a3-8a40-4d2c-bc16-1a502cb26cd9/preview&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:13--&amp;gt;&lt;br /&gt;
Sinon le code pour l'ESP8266 / ESP32 est disponible sur https://github.com/maditnerd/discord_test&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:14--&amp;gt;&lt;br /&gt;
Paramètres:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:15--&amp;gt;&lt;br /&gt;
Les paramètres sont dans le fichier arduino_secrets.h (ou le Secret Tab)&lt;br /&gt;
*'''SECRET_SSID''': Le nom de votre réseau WiFi&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:16--&amp;gt;&lt;br /&gt;
*'''SECRET_PASS''': le mot de passe WiFi&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:17--&amp;gt;&lt;br /&gt;
*'''SECRET_WEBHOOK''': l'URL du Webhook sans '''[https://discordapp.com/ https://discordapp.com]''' pour le MKR, l'URL entière pour les ESP.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:18--&amp;gt;&lt;br /&gt;
*'''SECRET_TTS: true''' pour activer la synthèse vocale , '''false''' pour la déactiver.&lt;br /&gt;
Téléverser le code sur votre carte, et vous devriez voir, le message Hello World s'afficher.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:19--&amp;gt;&lt;br /&gt;
Pour trouver plus d'informations sur les webhooks de discord:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:20--&amp;gt;&lt;br /&gt;
https://discordapp.com/developers/docs/resources/webhook#execute-webhook&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:21--&amp;gt;&lt;br /&gt;
Et pour la synthèse vocale ici:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:22--&amp;gt;&lt;br /&gt;
https://support.discordapp.com/hc/fr/articles/212517297-Text-to-Speech-101&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Envoyer_un_message_sur_discord_discord_4.png&lt;br /&gt;
|Step_Picture_01=Envoyer_un_message_sur_discord_discord_5.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Notes}}&lt;br /&gt;
|Notes=&amp;lt;translate&amp;gt;&amp;lt;/translate&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Status}}&lt;br /&gt;
|Complete=Published&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Madnerd</name></author>
		
	</entry>
	<entry>
		<id>https://wikifab.org/w/index.php?title=Fichier:Envoyer_un_message_sur_discord_discord_wiki.jpg&amp;diff=62320</id>
		<title>Fichier:Envoyer un message sur discord discord wiki.jpg</title>
		<link rel="alternate" type="text/html" href="https://wikifab.org/w/index.php?title=Fichier:Envoyer_un_message_sur_discord_discord_wiki.jpg&amp;diff=62320"/>
		<updated>2019-03-30T20:06:02Z</updated>

		<summary type="html">&lt;p&gt;Madnerd : Envoyer_un_message_sur_discord_discord_wiki&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Envoyer_un_message_sur_discord_discord_wiki&lt;/div&gt;</summary>
		<author><name>Madnerd</name></author>
		
	</entry>
	<entry>
		<id>https://wikifab.org/w/index.php?title=Pav%C3%A9_Num%C3%A9rique_MIDI&amp;diff=62318</id>
		<title>Pavé Numérique MIDI</title>
		<link rel="alternate" type="text/html" href="https://wikifab.org/w/index.php?title=Pav%C3%A9_Num%C3%A9rique_MIDI&amp;diff=62318"/>
		<updated>2019-03-30T20:03:59Z</updated>

		<summary type="html">&lt;p&gt;Madnerd : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ {{tntn|Tuto Details}}&lt;br /&gt;
|Main_Picture=Pavé_Numérique_MIDI_midikeypad_wiki.jpg&lt;br /&gt;
|Licences=Attribution (CC BY)&lt;br /&gt;
|Description=&amp;lt;translate&amp;gt;&amp;lt;!--T:1--&amp;gt; Nous allons voir comment utiliser un pavé numérique pour faire de la musique, avec les bons programmes on peut même en faire une guitare électrique !&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Area=Electronics, Music and Sound&lt;br /&gt;
|Type=Technique&lt;br /&gt;
|Difficulty=Medium&lt;br /&gt;
|Duration=5&lt;br /&gt;
|Duration-type=hour(s)&lt;br /&gt;
|Cost=8&lt;br /&gt;
|Currency=EUR (€)&lt;br /&gt;
|Tags=Musique, Arduino, MIDI, Instrument de musique&lt;br /&gt;
|SourceLanguage=none&lt;br /&gt;
|Language=fr&lt;br /&gt;
|IsTranslation=0&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Introduction}}&lt;br /&gt;
|Introduction=&amp;lt;translate&amp;gt;&amp;lt;!--T:2--&amp;gt;&lt;br /&gt;
Afin d’apprendre à créer des instruments MIDI (c.a.d des instruments utilisables dans des logiciels de musique), je me suis entraîné à l’aide de simples boutons.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:3--&amp;gt;&lt;br /&gt;
Puis je me suis dit que je pourrais aussi directement utiliser un pavé numérique (keypad).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:4--&amp;gt;&lt;br /&gt;
En soi ça m’a paru une bonne idée, car cela permet d’avoir 16 boutons facilement.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:5--&amp;gt;&lt;br /&gt;
Mais les pavés numériques '''ne sont pas pensés pour pouvoir être utilisés avec plusieurs boutons en même temps''' donc si cela est important pour vous, vous êtes prévenus.&amp;lt;/translate&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|TutoVideo}}&lt;br /&gt;
|VideoType=Youtube&lt;br /&gt;
|VideoURLYoutube=https://www.youtube.com/watch?v=Hx9eIiDx2Bc&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Materials}}&lt;br /&gt;
|Step_Picture_00=Pavé_Numérique_MIDI_bom.png&lt;br /&gt;
|Material=&amp;lt;translate&amp;gt;&amp;lt;!--T:6--&amp;gt;&lt;br /&gt;
* Arduino micro (n’importe quelle carte avec un atmega32u4 peut être utilisée)&lt;br /&gt;
* Afficheur OLED I2C 128x32&lt;br /&gt;
* Pavé numérique (keypad) 16 Touches&lt;br /&gt;
* Une stripboard&lt;br /&gt;
* Des headers femelles&lt;br /&gt;
* Du câble 26 AWG&lt;br /&gt;
* Des vis (facultatif)&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Tools=&amp;lt;translate&amp;gt;&amp;lt;!--T:7--&amp;gt;&lt;br /&gt;
*Un fer à souder / étain&lt;br /&gt;
*Cable 26 AWG Monobrin (j’aime bien ces câbles qui sont très fins)&lt;br /&gt;
*Un dremel (pour couper la breadboard, fait un trou pour les vis)&lt;br /&gt;
*Une pince coupante&amp;lt;/translate&amp;gt;&lt;br /&gt;
|ExternalAttachmentsLinks={{ {{tntn|ExternalAttachmentsLinks}}&lt;br /&gt;
|ExternalAttachmentsLinks=https://github.com/maditnerd/keypad_midi&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Separator}}}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;&amp;lt;!--T:8--&amp;gt; Couper les headers femelles&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;!--T:9--&amp;gt;&lt;br /&gt;
Tout d’abord il nous faut couper deux headers femelles de 17 broches (pour l’arduino) et une de 4 broches (pour l’écran OLED)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:10--&amp;gt;&lt;br /&gt;
Voici une méthode pour le faire: [https://www.youtube.com/watch?v=qDG3VFSMSPQ &amp;lt;u&amp;gt;https://www.youtube.com/watch?v=qDG3VFSMSPQ&amp;lt;/u&amp;gt;]&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Pavé_Numérique_MIDI_headers.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;&amp;lt;!--T:11--&amp;gt; Soudure des headers&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;!--T:12--&amp;gt;&lt;br /&gt;
Souder les headers sur la stripboard, vous pouvez vous aider de l’arduino micro pour ne pas vous tromper sur l’espacement (de 5 cases entre les deux)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:13--&amp;gt;&lt;br /&gt;
''Personnellement, je n’ai pas utilisé de headers pour l’afficheur OLED, car j’avais retiré les broches.''&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Pavé_Numérique_MIDI_headers_solder.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;&amp;lt;!--T:14--&amp;gt; Placement des composants&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;!--T:15--&amp;gt;&lt;br /&gt;
Vous pouvez soit coller le keypad (avec un pistolet à colle à chaud) où soit le visser en faisant des trous sur la stripboard.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:16--&amp;gt;&lt;br /&gt;
Il vaut mieux fixer le keypad avant de souder les câbles pour pouvoir plus facilement vérifier la longueur des câbles.&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Pavé_Numérique_MIDI_components_placement.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;&amp;lt;!--T:17--&amp;gt; Soudure du Keypad&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;!--T:18--&amp;gt;&lt;br /&gt;
Bon passons au vif du sujet, voilà comment souder le keypad.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:19--&amp;gt;&lt;br /&gt;
Faites très attention à ne pas vous tromper en regarder votre arduino, tout est inversé.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:20--&amp;gt;&lt;br /&gt;
Je vous conseille de partir de la broche 11, et de faire les suivantes.&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Pavé_Numérique_MIDI_solder_keypad.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;&amp;lt;!--T:21--&amp;gt; Soudure de l'afficheur OLED&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;!--T:22--&amp;gt;&lt;br /&gt;
Voici comment relier notre écran OLED, cet écran est relié en I2C (un protocole de communication) et utilise donc les broches 3 et 2 (c’est toujours le cas sur les cartes qui utilise un atmega32u4)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:23--&amp;gt;&lt;br /&gt;
Noter que le GND (la terre) et le 5v sont sur la même colonne.&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Pavé_Numérique_MIDI_solder_oled.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;&amp;lt;!--T:24--&amp;gt; Ajout des bibliothèques&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;!--T:25--&amp;gt;&lt;br /&gt;
Maintenant que notre keypad midi est prêt, il nous reste à programmer notre arduino micro, mon code a été fait d’une traite donc je ne garantis pas que tout marche correctement.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:26--&amp;gt;&lt;br /&gt;
Le code est disponible ici : https://github.com/maditnerd/keypad_midi&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:27--&amp;gt;&lt;br /&gt;
Le code utilise 3 bibliothèques qu’ils nous faut installer.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:28--&amp;gt;&lt;br /&gt;
Voici un petit rappel de comment gérer les bibliothèques.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:29--&amp;gt;&lt;br /&gt;
[https://www.arduino.cc/en/Guide/Libraries &amp;lt;u&amp;gt;https://www.arduino.cc/en/Guide/Libraries&amp;lt;/u&amp;gt;]&lt;br /&gt;
* '''MidiUSB''' de Gary Grewal (Pour que l’arduino soit reconnu comme un instrument midi)&lt;br /&gt;
* '''U8g2''' de olikraus (Pour l’écran Oled)&lt;br /&gt;
* '''Keypad''' de NullKraft (Pour le keypad)&lt;br /&gt;
MidiUSB et U8g2 s’installe depuis le gestionnaire de bibliothèque d’Arduino.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:30--&amp;gt;&lt;br /&gt;
Pour '''Keypad c’est plus complexe''', il s’agit d’une version modifié de la bibliothèque Keypad de Mark Stanley, Alexander Brevig.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:31--&amp;gt;&lt;br /&gt;
C’est la seul qui est capable de gérer l’appui de 4 touches en simultanée.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:32--&amp;gt;&lt;br /&gt;
L’appui simultanée marche plus où moins, vu que mon objectif est surtout de faire un instrument monophonique (c.a.d une note à la fois) ça suffit mais si vous voulez jouer des accords, il y a aura un léger décalage dans le son.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:33--&amp;gt;&lt;br /&gt;
Pour installer Keypad, il faut&lt;br /&gt;
* Aller sur le github : [https://github.com/Nullkraft/Keypad &amp;lt;u&amp;gt;https://github.com/Nullkraft/Keypad&amp;lt;/u&amp;gt;]&lt;br /&gt;
* Cliquer sur le bouton vert '''Clone/Download'''&lt;br /&gt;
* Extracter l’archive '''Keypad-master.zip''' dans votre dossier libraries de votre sketchbook, vous devriez avoir un dossier '''Keypad-Master''' dans '''libraries'''&amp;lt;/translate&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;&amp;lt;!--T:34--&amp;gt; Informations sur le programme&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;!--T:35--&amp;gt;&lt;br /&gt;
J’ai essayé de commenter au mieux le code, donc je ne vais pas trop rentrer dans les détails, n’hésitez pas à me demander si vous voulez plus d’informations sur une partie en particulier.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:36--&amp;gt;&lt;br /&gt;
'''Compromis sur la mémoire'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:37--&amp;gt;&lt;br /&gt;
J’ai dû faire des compromis dans le programme, principalement faute de l’écran.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:38--&amp;gt;&lt;br /&gt;
En effet la bibliothèque U8g2 consomme beaucoup de mémoire dynamique (utiliser par les variables), j’aurais pu utiliser U8x8 ou la bibliothèque d’Adafruit mais malheureusement les lettres sur l’écran sont soit trop grosses soit trop petites.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:39--&amp;gt;&lt;br /&gt;
J’ai donc dû limiter le nombre de preset à 8, il est surement possible d’augmenter le nombre de preset en ne personnalisant pas la vélocité par ex.&amp;lt;/translate&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;&amp;lt;!--T:40--&amp;gt; Modifier les presets (notes/velocité)&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;!--T:41--&amp;gt;&lt;br /&gt;
Le plus important est le début du programme, c’est ici que l’on va définir nos notes et la vélocité de celle-ci (vélocité est le volume des notes)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:42--&amp;gt;&lt;br /&gt;
'''Nom des preset'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:43--&amp;gt;&lt;br /&gt;
Le nom des preset est stocké dans un tableau&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:44--&amp;gt;&lt;br /&gt;
String preset_name[PRESET] = {&amp;quot;Du Riechst So Gut&amp;quot;, &amp;quot;FF - Replica&amp;quot;, &amp;quot;DrumKit&amp;quot;, &amp;quot;A&amp;quot;, &amp;quot;4&amp;quot;, &amp;quot;5&amp;quot;, &amp;quot;6&amp;quot;, &amp;quot;B&amp;quot;};&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:45--&amp;gt;&lt;br /&gt;
'''Notes'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:46--&amp;gt;&lt;br /&gt;
Les notes sont stockées dans un tableau à deux dimensions, les notes sont dans l’ordre des boutons (la première est le 1 , la deuxième le 2, etc.)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:47--&amp;gt;&lt;br /&gt;
int notes[PRESET][NB_BUTTONS] = {&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:48--&amp;gt;&lt;br /&gt;
{38, 38, 39, 39, 43, 46, 38, 38, 48, 46, 45, 45, 57, 60, 60, 57}, //Preset 1&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:49--&amp;gt;&lt;br /&gt;
{37, 40, 42, 39, 40, 38, 41, 40, 48, 46, 45, 45, 57, 60, 60, 57}, // Preset 2&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:50--&amp;gt;&lt;br /&gt;
{35, 35, 38, 42, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 55, 57}, // Preset 3&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:51--&amp;gt;&lt;br /&gt;
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},  //Preset A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:52--&amp;gt;&lt;br /&gt;
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},  //Preset 4&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:53--&amp;gt;&lt;br /&gt;
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},  //Preset 5&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:54--&amp;gt;&lt;br /&gt;
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},  //Preset 6&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:55--&amp;gt;&lt;br /&gt;
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}  //Preset B&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:56--&amp;gt;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:57--&amp;gt;&lt;br /&gt;
Les notes sont stockées en tant que notes midi (elles vont de 0 à 127)  voici un tableau de correspondances avec la notation anglaise.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:58--&amp;gt;&lt;br /&gt;
Si vous êtes plus habitués au DO,RE,MI … voici la correspondance des notes&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:59--&amp;gt;&lt;br /&gt;
[https://bassandbeatbox.com/lire-la-musique-avec-la-notation-americaine/ &amp;lt;u&amp;gt;https://bassandbeatbox.com/lire-la-musique-avec-la-notation-americaine/&amp;lt;/u&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:60--&amp;gt;&lt;br /&gt;
'''Vélocité'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:61--&amp;gt;&lt;br /&gt;
Même chose pour la vélocité (pareil de 0 à 127) (&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:62--&amp;gt;&lt;br /&gt;
int velocity[PRESET][NB_BUTTONS] = {&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:63--&amp;gt;&lt;br /&gt;
{70, 70, 70, 70, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100}, //Preset 1&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:64--&amp;gt;&lt;br /&gt;
{70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70}, //Preset 2&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:65--&amp;gt;&lt;br /&gt;
{100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100}, //Preset 3&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:66--&amp;gt;&lt;br /&gt;
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, //Preset A&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:67--&amp;gt;&lt;br /&gt;
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, //Preset 4&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:68--&amp;gt;&lt;br /&gt;
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, //Preset 5&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:69--&amp;gt;&lt;br /&gt;
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, //Preset 6&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:70--&amp;gt;&lt;br /&gt;
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, //Preset B&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:71--&amp;gt;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:72--&amp;gt;&lt;br /&gt;
'''Changeur de vélocité'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:73--&amp;gt;&lt;br /&gt;
Prominy Metal-V permet de gérer si les cordes sur une guitare sont étouffées ou pas selon que la vélocité soit inférieure à 70 ou supérieure à 100.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:74--&amp;gt;&lt;br /&gt;
J’ai donc créé un système pour que quand D est appuyé la vélocité monte à 100.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:75--&amp;gt;&lt;br /&gt;
Un tableau de booléen permet d’activer ou non cette fonctionnalité.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:76--&amp;gt;&lt;br /&gt;
const int velocity_button = 15; // The D key is used to change velocity if velocity changer is true&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:77--&amp;gt;&lt;br /&gt;
const int VELOCITY_CHANGE = 100; //Velocity when D is pressed (should probably be changeable)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:78--&amp;gt;&lt;br /&gt;
bool velocity_changer[PRESET] = {false, true, false, false, false, false, false, false};&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Pavé_Numérique_MIDI_midi_note.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=&amp;lt;translate&amp;gt;&amp;lt;!--T:79--&amp;gt; Transformer le keypad en guitare électrique !&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Content=&amp;lt;translate&amp;gt;&amp;lt;!--T:80--&amp;gt;&lt;br /&gt;
Cette partie nécessite des connaissances en MAO (musique assisté par ordinateur)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:81--&amp;gt;&lt;br /&gt;
Alors évidemment pas de miracle, afin d’obtenir un son convaincant de guitare, j’ai utilisé des plugins payants.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:82--&amp;gt;&lt;br /&gt;
Pour “hoster” les plugins VST (des plugins pour générer/modifier) du son, j’ai utilisé Reason ([https://www.propellerheads.com/fr/reason &amp;lt;u&amp;gt;https://www.propellerheads.com/fr/reason&amp;lt;/u&amp;gt;])&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:83--&amp;gt;&lt;br /&gt;
Vous pouvez évidemment utiliser n’importe quel logiciel capable de gérer des plugins VST.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:84--&amp;gt;&lt;br /&gt;
Voici les plugins que j’ai utilisé pour la guitare:&lt;br /&gt;
* Native Instrument Kontakt : [https://www.native-instruments.com/fr/products/komplete/samplers/kontakt-6/ &amp;lt;u&amp;gt;https://www.native-instruments.com/fr/products/komplete/samplers/kontakt-6/&amp;lt;/u&amp;gt;]  Ce programme permet d’utiliser notre plugin guitare.&lt;br /&gt;
* Prominy V-Metal [http://prominy.com/V_METAL.htm &amp;lt;u&amp;gt;http://prominy.com/V_METAL.htm&amp;lt;/u&amp;gt;]  Le plugin de la guitare&lt;br /&gt;
* Guitar Rig 5 [https://www.native-instruments.com/fr/products/komplete/guitar/guitar-rig-5-pro/ &amp;lt;u&amp;gt;https://www.native-instruments.com/fr/products/komplete/guitar/guitar-rig-5-pro/&amp;lt;/u&amp;gt;]  Le plugin pour les effets de guitare&lt;br /&gt;
J’ai combiné deux guitares afin d’avoir un son plus lourd.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:85--&amp;gt;&lt;br /&gt;
Une qui joue note par note (no legato) et une qui joue des accords (power chords)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:86--&amp;gt;&lt;br /&gt;
Pour les effets j’ai utilisé le preset '''Sheder Solo''' que j’ai un peu modifié.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:87--&amp;gt;&lt;br /&gt;
Je réfléchis à faire une version light qui pourrait fonctionner avec LMMS [https://lmms.io/ &amp;lt;u&amp;gt;https://lmms.io/&amp;lt;/u&amp;gt;] ou samplerbox [http://www.samplerbox.org/ &amp;lt;u&amp;gt;http://www.samplerbox.org/&amp;lt;/u&amp;gt;] en utilisant des samples, si ça vous intéresse, parlez m’en en MP sur twitter ([https://twitter.com/m4dnerd &amp;lt;u&amp;gt;https://twitter.com/m4dnerd&amp;lt;/u&amp;gt;]).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:88--&amp;gt;&lt;br /&gt;
(Ca sera probablement pas aussi bien par contre, réver pas)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:89--&amp;gt;&lt;br /&gt;
Voilà pour un rapide tour de mon rig, si vous avez jeter un coup d’oeil au prix des plugins, ça vous a probablement refroidi un peu!&amp;lt;/translate&amp;gt;&lt;br /&gt;
|Step_Picture_00=Pavé_Numérique_MIDI_hot_solo.png&lt;br /&gt;
|Step_Picture_01=Pavé_Numérique_MIDI_v_metal.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Notes}}&lt;br /&gt;
|Notes=&amp;lt;translate&amp;gt;&amp;lt;/translate&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Status}}&lt;br /&gt;
|Complete=Published&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Madnerd</name></author>
		
	</entry>
	<entry>
		<id>https://wikifab.org/w/index.php?title=Fichier:Pav%C3%A9_Num%C3%A9rique_MIDI_midikeypad_wiki.jpg&amp;diff=62317</id>
		<title>Fichier:Pavé Numérique MIDI midikeypad wiki.jpg</title>
		<link rel="alternate" type="text/html" href="https://wikifab.org/w/index.php?title=Fichier:Pav%C3%A9_Num%C3%A9rique_MIDI_midikeypad_wiki.jpg&amp;diff=62317"/>
		<updated>2019-03-30T20:03:51Z</updated>

		<summary type="html">&lt;p&gt;Madnerd : Pavé_Numérique_MIDI_midikeypad_wiki&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Pavé_Numérique_MIDI_midikeypad_wiki&lt;/div&gt;</summary>
		<author><name>Madnerd</name></author>
		
	</entry>
	<entry>
		<id>https://wikifab.org/w/index.php?title=Mini_%C3%A9cran_connect%C3%A9&amp;diff=62316</id>
		<title>Mini écran connecté</title>
		<link rel="alternate" type="text/html" href="https://wikifab.org/w/index.php?title=Mini_%C3%A9cran_connect%C3%A9&amp;diff=62316"/>
		<updated>2019-03-30T20:01:37Z</updated>

		<summary type="html">&lt;p&gt;Madnerd : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ {{tntn|Tuto Details}}&lt;br /&gt;
|Main_Picture=Mini_écran_connecté_tft_iftt_wiki.jpg&lt;br /&gt;
|Licences=Attribution (CC BY)&lt;br /&gt;
|Description=Nous allons voir comment afficher des messages depuis un serveur MQTT sur un écran TFT.&lt;br /&gt;
|Area=Electronics, House&lt;br /&gt;
|Type=Creation&lt;br /&gt;
|Difficulty=Medium&lt;br /&gt;
|Duration=1&lt;br /&gt;
|Duration-type=hour(s)&lt;br /&gt;
|Cost=7&lt;br /&gt;
|Currency=EUR (€)&lt;br /&gt;
|Tags=iftt, mqtt, esp8266, st7789, tft, adafruit.io, iot&lt;br /&gt;
|SourceLanguage=none&lt;br /&gt;
|Language=fr&lt;br /&gt;
|IsTranslation=0&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Introduction}}&lt;br /&gt;
|Introduction=Précédemment, nous avons vu comment afficher une image sur un ST7789, un écran TFT à 3€. ( [[Afficher une image sur un écran ST7789]] )&lt;br /&gt;
&lt;br /&gt;
Nous allons exploiter cette connaissance pour faire un mini écran connecté.&lt;br /&gt;
&lt;br /&gt;
*Cet écran va afficher les messages reçus depuis un serveur MQTT&lt;br /&gt;
*Les messages peuvent contenir des caractères accentués&lt;br /&gt;
*La transmission sera chiffrés&lt;br /&gt;
*Afin d'éviter les attaques MITM (man in the middle), nous allons vérifier l'identité du serveur MQTT à l'aide de son certificat.&lt;br /&gt;
&lt;br /&gt;
À partir de là nous pouvons même utiliser '''IFTT''' (ou '''tasker''') afin de transmettre des informations du '''web''' / de notre '''installation domotique''' ou de notre '''téléphone''' sur le serveur MQTT.&lt;br /&gt;
&lt;br /&gt;
Afin de simplifier la partie MQTT, nous allons utiliser '''Adafruit IO''' qui permet d'avoir un '''serveur MQTT gratuitement'''.&lt;br /&gt;
&lt;br /&gt;
{{Info|Vous pouvez bien évidemment utiliser votre propre serveur MQTT (la partie IFTT par contre ne marchera plus)}}&amp;lt;br /&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Materials}}&lt;br /&gt;
|Step_Picture_00=Afficher_une_image_sur_un_écran_ST7789_tft.png&lt;br /&gt;
|Material=*ESP8266&lt;br /&gt;
*ST7789&lt;br /&gt;
*Câble Wrapping 30 AWG&lt;br /&gt;
|Tools=*Fer à souder&lt;br /&gt;
*Imprimante 3D&lt;br /&gt;
|Prerequisites={{ {{tntn|Prerequisites}}&lt;br /&gt;
|Prerequisites=Afficher une image sur un écran ST7789&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Separator}}}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Fabriquer l'écran connecté&lt;br /&gt;
|Step_Content=Suivez le tutoriel sur l'écran ST7789, avant toute chose,&lt;br /&gt;
&lt;br /&gt;
En résumé, &lt;br /&gt;
&lt;br /&gt;
*il faut installer la '''bibliothèque tft_espi'''&lt;br /&gt;
*Changer le fichier '''User_Setup.h''' directement dans la bibliothèque&lt;br /&gt;
*Reliez l'écran à l'esp8266&lt;br /&gt;
&lt;br /&gt;
[[Afficher une image sur un écran ST7789]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Afficher_une_image_sur_un_écran_ST7789_displayFinish.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Paramétrer Adafruit IO&lt;br /&gt;
|Step_Content=*Créer un compte sur Adafruit IO: https://io.adafruit.com/&lt;br /&gt;
*Cliquer sur '''Feeds'''&lt;br /&gt;
*Cliquer sur '''Actions''' / '''Create a New Feed'''&lt;br /&gt;
*Dans '''Name''' mettez '''notifications'''&lt;br /&gt;
|Step_Picture_00=Mini_écran_connecté_adafruit_io.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Paramétrer les identifiants&lt;br /&gt;
|Step_Content=Tout d'abord il nous faut '''récupérer le programme''' &lt;br /&gt;
&lt;br /&gt;
*Télécharger le croquis ici : https://github.com/maditnerd/st7789_mqtt&lt;br /&gt;
*Il nous faut aussi la bibliothèque : '''Adafruit_MQTT'''&lt;br /&gt;
&lt;br /&gt;
Cette bibliothèque va nous permettre de communiquer avec notre '''serveur MQTT'''.&lt;br /&gt;
&lt;br /&gt;
Dans le programme, il y a un fichier '''arduino_secrets.h''', c'est ici que nous allons stocker nos identifiants pour le '''Wi-Fi''' et le '''serveur MQTT'''&lt;br /&gt;
&lt;br /&gt;
Les identifiants sur Adafruit IO se trouvent en cliquant sur '''View AIO Key'''&lt;br /&gt;
&lt;br /&gt;
*Dans '''HOME_SSID''' mettez le nom de votre réseau WI-FI&lt;br /&gt;
*Dans '''HOME_PASS''' mettez le mot de passe de votre réseau WI-FI&lt;br /&gt;
*Dans '''ADAFRUIT_MQTT_USERNAME''' mettez le '''Username''' d'adafruit IO&lt;br /&gt;
*Dans '''ADAFRUIT_MQTT_PASS''' mettez l''''Active Key''' d'adafruit IO&lt;br /&gt;
&lt;br /&gt;
Téléverser le croquis pour tester si tout marche bien.&lt;br /&gt;
&lt;br /&gt;
Normalement vous devriez arriver jusqu'à l'écran '''Notifications'''&lt;br /&gt;
&lt;br /&gt;
{{Info|Vous pouvez vérifier sur le moniteur série (Baudrate : 115200) s'il y a un problème.}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Mini_écran_connecté_arduino_secrets.png&lt;br /&gt;
|Step_Picture_01=Mini_écran_connecté_adafruit_io_key.png&lt;br /&gt;
|Step_Picture_02=Mini_écran_connecté_tft_wifi.jpg&lt;br /&gt;
|Step_Picture_03=Mini_écran_connecté_tft_io.jpg&lt;br /&gt;
|Step_Picture_04=Mini_écran_connecté_tft_notification.jpg&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Test depuis Adafruit IO&lt;br /&gt;
|Step_Content=Adafruit IO nous permet de créer une donnée qui sera affichée sur l'écran.&lt;br /&gt;
&lt;br /&gt;
*Cliquer sur '''Feeds''' / '''Notifications'''&lt;br /&gt;
*Puis cliquer sur '''Add Data'''&lt;br /&gt;
*Écrivez un message&lt;br /&gt;
{{Info|Si un message est envoyé alors que l'écran n'est pas connecté, celui-ci sera ignoré. MQTT permet toutefois de garder en mémoire les messages avec la fonction Retain}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Mini_écran_connecté_adafruit_io3.png&lt;br /&gt;
|Step_Picture_01=Mini_écran_connecté_tft_io_test.jpg&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=IFTTT - Afficher les notifications d'un téléphone&lt;br /&gt;
|Step_Content=IFTTT est un service qui permet d'automatiser des tâches, Adafruit IO est compatible avec celui-ci.&lt;br /&gt;
&lt;br /&gt;
{{Info|Si vous voulez utiliser IFTTT avec votre propre serveur, il y a des webhooks qui permettent de faire cela.}}&lt;br /&gt;
&lt;br /&gt;
Nous allons voir comment afficher les notifications qu'un smartphone sur notre écran.&lt;br /&gt;
&lt;br /&gt;
{{Warning|Bien que ce soit amusant comme projet, n'oubliez pas que vous allez donner accès à vos notifications à deux services sur internet.&lt;br /&gt;
Même si les communications sont en théorie sécurisée, niveau vie privée c'est une très mauvaise idée.}}&lt;br /&gt;
&lt;br /&gt;
*Créer un compte sur IFTTT&lt;br /&gt;
*Installer l'application android&lt;br /&gt;
&lt;br /&gt;
'''if'''&lt;br /&gt;
&lt;br /&gt;
*Sur l'interface web d'IFTTT, cliquer sur '''My Applets'''&lt;br /&gt;
*Cliquer sur '''New Applet'''&lt;br /&gt;
*Choisissez le service '''Android Device'''&lt;br /&gt;
*Choisissez '''Notification Received'''&lt;br /&gt;
&lt;br /&gt;
'''then'''&lt;br /&gt;
&lt;br /&gt;
*Choisissez '''Adafruit'''&lt;br /&gt;
*Choisissez '''Send data to Adafruit IO'''&lt;br /&gt;
*Dans '''Feed Name''' mettez '''notifications'''&lt;br /&gt;
*Dans '''Data to save''' choisisez '''AppName''' et Notification '''Title'''&lt;br /&gt;
{{Dont|L'ESP8266 va se déconnecter (puis se reconnecter) du serveur MQTT, si le message est trop long.}}&amp;lt;br /&amp;gt;Votre applet devrait ressembler à ceci.&lt;br /&gt;
&lt;br /&gt;
Aller sur votre téléphone, lancer IFTTT et autoriser '''l'accès aux notifications'''.&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Mini_écran_connecté_ifttt.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Cacher vos identifiants dans le logiciel Arduino&lt;br /&gt;
|Step_Content=Nous avons utilisé le fichier '''arduino_secrets.h''' qui est dans notre croquis pour '''sauvegarder nos identifiants'''.&lt;br /&gt;
&lt;br /&gt;
{{Warning|Il vaut mieux éviter de faire cela, car vous risquez de partager accidentellement vos mot de passe!}}&lt;br /&gt;
&lt;br /&gt;
Une solution pour éviter ça et de créer une '''bibliothèque''' pour nos identifiants.&lt;br /&gt;
&lt;br /&gt;
L'autre avantage c'est que nos identifiants seront '''accessibles pour tous nos croquis''' !&lt;br /&gt;
&lt;br /&gt;
{{Info|1=C'est Andreas Spiesss qui a eu cette idée&lt;br /&gt;
https://www.youtube.com/watch?v=CAGQ8h8PKX4&amp;amp;t=347s}}&lt;br /&gt;
&lt;br /&gt;
*Créer dans '''Documents/Arduino/libraries''' un dossier '''arduino_secrets'''&lt;br /&gt;
*Copier '''arduino_secrets.h''' dans ce dossier&lt;br /&gt;
&lt;br /&gt;
Dans le croquis, changez l'include au début du code&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;//#include &amp;quot;arduino_secrets.h&amp;quot;&lt;br /&gt;
&lt;br /&gt;
include &amp;lt;arduino_secrets.h&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
|Step_Picture_00=Mini_écran_connecté_arduino_secrets2.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Changer les images&lt;br /&gt;
|Step_Content=Si vous voulez changer les images affichées, elles sont sauvegardées dans '''bitmaps.h'''&lt;br /&gt;
&lt;br /&gt;
Pour convertir vos images en code, suivez ce tutoriel&lt;br /&gt;
&lt;br /&gt;
[[Afficher une image sur un écran ST7789]]&lt;br /&gt;
&lt;br /&gt;
Les images en version vectorielle SVG et PNG sont disponibles dans le dossier '''images'''&lt;br /&gt;
&lt;br /&gt;
Pour afficher une image, il faut juste utiliser cette commande:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;tft.pushImage(0,0,240,240,adafruit_io);&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour écrire du texte sur plusieurs lignes, positionnez le texte puis écrivez le&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;tft.setCursor(0,50);&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;tft.println(data); //Print text&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vous pouvez aussi écrire une seule ligne avec cette commande&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;tft.drawString(HOME_SSID, 25, 20);&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Mini_écran_connecté_adafruit_io2.png&lt;br /&gt;
|Step_Picture_01=Mini_écran_connecté_notifications.png&lt;br /&gt;
|Step_Picture_02=Mini_écran_connecté_wifi.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Changer la police d'écriture&lt;br /&gt;
|Step_Content=Vous avez peut-être remarqué que la police d'écriture est incluse dans le croquis sous le nom '''arial12pt8b.h'''&lt;br /&gt;
&lt;br /&gt;
Il se trouve que par défaut, il n'y a pas de police d'écriture avec les accents qui puissent être intégrés directement dans le code.&lt;br /&gt;
&lt;br /&gt;
J'ai donc dû la générer à partir d'une police d'écriture ('''.ttf''').&lt;br /&gt;
&lt;br /&gt;
Vous pouvez télécharger une police d'écriture (par ex: sur https://www.dafont.com/), et la convertir en code.&lt;br /&gt;
&lt;br /&gt;
Pour cela il vous faut '''fontconvert''', le code source est disponible dans Adafruit_GFX mais vous pouvez trouver une version prêt à l'usage (pour Windows) dans la description de cette vidéo&lt;br /&gt;
&lt;br /&gt;
https://www.youtube.com/watch?v=L8MmTISmwZ8&lt;br /&gt;
&lt;br /&gt;
Pour générer la police d'écriture il vous suffit de taper cette commande:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;fontconvert arial.ttf 12 32 255 &amp;gt; arial12pt8b.h&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour changer la taille de la police, changer le premier chiffre (ici 12pt)&lt;br /&gt;
&lt;br /&gt;
Le 8b signifie que la police utilise 8bytes et contient donc les caractères accentués (entre autres)&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Step}}&lt;br /&gt;
|Step_Title=Utiliser son propre serveur MQTT&lt;br /&gt;
|Step_Content={{Info|Le croquis est configuré pour un serveur qui utilise SSL pour chiffrer les communications.}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En plus de changer les identifiants / le serveur / le port dans '''arduino_secrets.h''', il faut récupérer le certificat SSL de votre serveur.&lt;br /&gt;
&lt;br /&gt;
Pour cela il vous faut openssl, vous pouvez le télécharger ici (Windows) : https://slproweb.com/products/Win32OpenSSL.html&lt;br /&gt;
&lt;br /&gt;
Puis tapez cette commande (avec l'adresse de votre serveur mqtt)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;openssl s_client -showcerts -connect io.adafruit.com:8883&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Récupérer le dernier certificat affiché et copier le dans '''connection.h'''&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Mini_écran_connecté_ssl.png&lt;br /&gt;
|Step_Picture_01=Mini_écran_connecté_ssl2.png&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Notes}}&lt;br /&gt;
|Notes=Voilà ce tutoriel est fini, j'espère que cela vous donnera des idées pour faire des applications sympas avec.&lt;br /&gt;
&lt;br /&gt;
Évidemment dans l'idéal &lt;br /&gt;
&lt;br /&gt;
*Il faudrait pouvoir '''paramétrer notre écran''' depuis une '''interface web'''&lt;br /&gt;
*Éviter d'utiliser des '''images''' de la '''taille de l'écran''' quand ce n'est pas nécessaire&lt;br /&gt;
&lt;br /&gt;
Mais cela devrait vous donner un bon point de départ.&lt;br /&gt;
&lt;br /&gt;
'''Suivez-moi sur Twitter''' si vous voulez être au courant des prochains tutoriels en avance : https://twitter.com/m4dnerd&lt;br /&gt;
}}&lt;br /&gt;
{{ {{tntn|Tuto Status}}&lt;br /&gt;
|Complete=Draft&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Madnerd</name></author>
		
	</entry>
</feed>