Table des matières:

HackerBox 0050 : 8 étapes
HackerBox 0050 : 8 étapes

Vidéo: HackerBox 0050 : 8 étapes

Vidéo: HackerBox 0050 : 8 étapes
Vidéo: Projects - July 2016 2024, Juillet
Anonim
HackerBox 0050
HackerBox 0050

Salutations aux HackerBox Hackers du monde entier ! Pour HackerBox 0050, nous assemblons et programmons la carte processeur embarquée HB50. Le HB50 prend en charge les expérimentations avec les microcontrôleurs ESP32, le WiFi IoT intégré, le son bit bang, les LED RVB, les écrans LCD TFT couleur, les entrées pour écran tactile, le Bluetooth, etc. HackerBox 0050 explore également une petite solution de clavier pour tout projet intégré, les interfaces I2C, la budgétisation de l'énergie et les automates cellulaires.

Ce guide contient des informations pour démarrer avec HackerBox 0050, qui peuvent être achetées ici jusqu'à épuisement des stocks. Si vous souhaitez recevoir une HackerBox comme celle-ci directement dans votre boîte mail chaque mois, veuillez vous inscrire sur HackerBoxes.com et rejoignez la révolution !

HackerBoxes est le service de box d'abonnement mensuel pour les pirates informatiques et les passionnés d'électronique et de technologie informatique. Rejoignez-nous pour vivre la HACK LIFE.

Étape 1: Liste de contenu pour HackerBox 0050

  • Circuit imprimé exclusif HB50
  • Module Wi-Fi double cœur ESP-WROOM-32
  • Écran LCD TFT couleur QVGA 2,4 pouces
  • Écran tactile intégré avec stylet
  • Six LED RVB WS2812B
  • Six boutons tactiles à montage en surface
  • Avertisseur Piezo SMD 12mm
  • AMS1117 3.3V Régulateur Linéaire SOT223
  • En-tête de rupture à 40 broches à angle droit
  • Deux condensateurs au tantale 22uF 1206 SMD
  • Deux résistances 10K Ohm 0805 SMD
  • Mini clavier CardKB
  • Câble de dérivation Grove vers femelle DuPont
  • Module série USB CP2102
  • DuPont Jumpers Femme-Femme 10cm
  • Sticker PCB Grande Vague Hokusai
  • Sticker exclusif HackerBox WireHead
  • Pièce de défi HackerBox 50 exclusive

Quelques autres choses qui seront utiles:

  • Fer à souder, soudure et outils de soudure de base
  • Ordinateur pour exécuter des outils logiciels

Plus important encore, vous aurez besoin d'un sens de l'aventure, d'un esprit de hacker, de patience et de curiosité. Construire et expérimenter avec l'électronique, bien que très gratifiant, peut être délicat, stimulant et même parfois frustrant. Le but est le progrès, pas la perfection. Lorsque vous persistez et profitez de l'aventure, une grande satisfaction peut être tirée de ce passe-temps. Faites chaque pas lentement, faites attention aux détails et n'ayez pas peur de demander de l'aide.

Il y a une mine d'informations pour les membres actuels et potentiels dans la FAQ HackerBoxes. Presque tous les e-mails d'assistance non techniques que nous recevons y sont déjà répondus, nous apprécions donc vraiment que vous preniez quelques minutes pour lire la FAQ.

Étape 2: Carte de circuit imprimé HB50

Carte de circuit imprimé HB50
Carte de circuit imprimé HB50

Pour commémorer le numéro 0050 de HackerBox, nous avons créé une version mise à jour du circuit imprimé HackerBox le plus populaire à la demande générale. Le kit de badge HackerBox 0020 Summer Camp s'est vendu à DEF CON 25 en moins de deux heures. Les fichiers PCB ont depuis été fréquemment demandés. Le tableau a été réimprimé au moins deux fois par des tiers. La conception a inspiré une poignée d'autres badges et projets IoT intégrés dont nous sommes conscients et, espérons-le, plusieurs autres dont nous ne sommes pas au courant.

Les mises à jour trouvées dans le nouveau kit PCB HB50 incluent l'échange du ESP-32 DEVkitC pour le module ESP-WROOM-32 plus compact. Les cinq boutons tactiles capacitifs ont été remplacés par des boutons tactiles mécaniques. Les cinq LED RGB WS2812 qui étaient dans des boîtiers blancs ont été portées à six et sont désormais dans des boîtiers noirs. Le buzzer piézo a été remplacé par une version à montage en surface plus compacte. L'alimentation a été simplifiée. L'écran TFT couleur est passé de 2,2 pouces à 2,4 pouces. Le PCB est plus compact et a même quelques broches E/S éclatées pour votre plaisir de piratage. Depuis l'époque de HackerBox 20, il y a beaucoup plus de projets, d'exemples et de code disponibles pour l'ESP32, alors préparons-nous à gronder…

Caractéristiques:

  • Processeur ESP32 Dual Core 160MHz
  • Écran LCD TFT couleur QVGA de 2,4 pouces
  • Wi-Fi 802.11 b/g/n/d/e/i/k/r
  • Bluetooth LE 5.0
  • Cinq boutons-poussoirs tactiles (+ un pour la réinitialisation)
  • Six LED RVB WS2812
  • Avertisseur piézo
  • Régulateur linéaire 3.3V
  • En-tête d'extension

Comme son prédécesseur, le HB50 peut être porté sur un cordon, utilisé comme ordinateur de poche, monté sur un mur ou déployé à peu près n'importe où dans d'innombrables applications sans fil et colorées.

Étape 3: Affichez la carte HB50

Affichez le tableau HB50
Affichez le tableau HB50

Pour minimiser, ou au moins isoler les erreurs, nous suggérons de commencer l'assemblage en ne remplissant que le strict minimum de composants sur le PCB HB50 qui sont nécessaires pour programmer l'ESP32. Cette approche minimale viable est décrite dans les étapes suivantes:

  1. Regardez cette vidéo sur le soudage des modules crénelés.
  2. Soudez le module ESP-WROOM-32 sur le PCB. Prends ton temps. Ne vous inquiétez pas pour le plot de masse central sous le module. Il ne peut être soudé que par refusion et n'est là que pour un couplage thermique supplémentaire.
  3. Utilisez un multimètre pour vous assurer qu'il n'y a pas de court-circuit entre 3V3 et GND. S'il y a un court-circuit, il doit être identifié et retiré avant d'alimenter la carte ou le monstre de fumée pourrait sortir.
  4. Soudez les deux résistances 10K juste au dessus des boutons EN et IO0.
  5. Soudez les boutons EN et IO0. Les quatre autres boutons peuvent être laissés de côté pour le moment.
  6. Casser une bande de 16 broches d'en-tête. Insérez-le du côté CPU du PCB de telle sorte que les broches pointent vers le bord le plus proche du PCB. Ensuite, soudez le connecteur en place du côté du bouton du PCB.
  7. Vérifiez à nouveau qu'il n'y a pas de court-circuit entre 3V3 et GND.
  8. Utilisez quatre cavaliers DuPont pour connecter le module CP2102 comme illustré. Notez que nous utilisons temporairement la source d'alimentation 3V3 car le régulateur linéaire n'est pas encore installé sur le PCB.
  9. Si votre ordinateur n'a pas déjà installé l'IDE Arduino, obtenez-le ici.
  10. Configurez la prise en charge ESP32 dans l'IDE Arduino à l'aide de ce guide.
  11. Dans l'IDE, définissez tools > board sur "ESP32 Wrover Module".
  12. Branchez le module CP2102 sur un port USB de l'ordinateur.
  13. Dans l'IDE, définissez tools > port sur le bon port USB pour le CP2102.
  14. Si un nouveau port n'apparaît pas lorsque le module CP2102 est inséré, installez le pilote USB requis de Silicon Labs.
  15. Prenez le sketch button_demo.
  16. Compilez et téléchargez le croquis.
  17. Lorsque le téléchargement commence, maintenez les boutons EN et IO0 enfoncés. FR est essentiellement un bouton de réinitialisation et IO0 est la broche de cerclage pour forcer la reprogrammation du flash.
  18. Une fois que les points et les tirets apparaissent dans l'IDE, relâchez le bouton EN (relâchez la réinitialisation) mais continuez à maintenir le bouton IO0 enfoncé jusqu'à ce que la programmation du flash commence pour être sûr que la broche de cerclage est reconnue au démarrage.
  19. Une fois la programmation terminée, appuyez à nouveau sur le bouton EN pour réinitialiser et démarrer le nouveau code flashé.
  20. Ouvrez le moniteur série Arduino IDE et réglez-le sur 115200 bauds.
  21. Appuyer sur le bouton IO0 devrait générer un message sur le moniteur série.

Étape 4: Boutons, buzzers et voyants, OH MY

Boutons, buzzers et LED, OH MY !
Boutons, buzzers et LED, OH MY !

PLUS DE BOUTONS

Une fois l'étape de programmation initiale réussie, éteignez la carte HB50 et soudez les quatre boutons restants. Le même sketch button_demo devrait maintenant signaler les cinq boutons (IO0, A, B, C et D) au moniteur série lorsqu'ils sont enfoncés.

AVERTISSEUR SONORE

Éteignez la carte HB50 et soudez le buzzer sur ses plots. Orientez le point sur le buzzer pour qu'il soit le plus proche du pad "+" sur la carte HB50. Programmez le sketch buzzer_demo et réinitialisez (EN) la carte pour la laisser fonctionner. Ça a l'air bien?

LED RVB WS2812B

Éteignez la carte HB50 et soudez les six LED sur leurs plots. Orientez le coin marqué en blanc de chaque LED pour qu'il corresponde au coin à onglet comme indiqué sur la sérigraphie du PCB.

À partir des outils Arduino IDE > Gérer les bibliothèques, installez la bibliothèque FastLED.

Ouvrez le croquis: Fichier > Exemples > FastLED > ColorPalette.

Dans le code d'esquisse, remplacez LED_PIN par 13, NUM_LEDS par 6 et LED_TYPE par WS2812B.

Téléchargez le croquis et réinitialisez (EN) le tableau pour le laisser fonctionner. Profitez de lumières clignotantes de toutes les couleurs.

RÉGULATEUR DE PUISSANCE LINÉAIRE

Avec les LED en jeu (et surtout une fois l'émetteur WiFi activé), le HB50 tire beaucoup de courant de l'alimentation 3V3. Améliorons la capacité d'alimentation de 3,3 V en soudant le régulateur linéaire AMS1117 (SOT 233 Package) en place. Remplissez également les deux condensateurs de filtrage 22uF à côté du régulateur. Notez qu'un côté de chaque sérigraphie de condensateur est rectangulaire et l'autre côté est octogonal. Les condensateurs doivent être orientés de manière à ce que le stipe sombre du boîtier s'aligne sur le côté octogonal de la sérigraphie. Le régulateur va maintenant transformer une partie de l'alimentation 5V en 3,3V et peut fournir beaucoup plus de courant que le module CP2102 à lui seul. Pour alimenter maintenant le HB50 via l'alimentation 5V, déplacez les DEUX EXTRÉMITÉS du cavalier 3V3 DuPont sur 5V. C'est-à-dire que la source 5V du module CP2102 dans l'une des broches d'entrée 5V sur l'en-tête HB50. Notez que la broche 5V peut en fait être alimentée avec n'importe quelle tension comprise entre 3,5V et 5V.

Étape 5: Écran LCD TFT couleur ILI9341 QVGA

Écran LCD TFT couleur ILI9341 QVGA
Écran LCD TFT couleur ILI9341 QVGA

L'affichage MSP2402 (page lcdwiki) est un module de bus SPI basé sur la puce ILI9341. La puce pilote un écran couleur de 2,4 pouces prenant en charge 65 000 couleurs et une résolution de 320X240 pixels (QVGA).

Le module dispose également d'une entrée à écran tactile et d'un emplacement pour carte SD.

BROCHES D'E/S D'AFFICHAGE DE PRE-TEST

Si vous avez rencontré des problèmes avec la soudure des broches ESP-WROOM-32 jusqu'à présent, il peut être judicieux de pré-tester les broches d'E/S du module d'affichage avant de souder le module d'affichage en place. Comme indiqué ci-dessous et sur le schéma du PCB, les E/S ESP32 en jeu sont 19, 23, 18, 5, 22, 21 et 15. Notez qu'il s'agit des numéros d'IO et non des numéros de broche. Les broches peuvent être testées en écrivant un petit programme qui définit toutes ces E/S comme sorties, puis boucle sur les E/S en les activant et en les éteignant tour à tour avec un délai d'une seconde ou deux. Une simple LED avec une résistance de limitation de courant attachée peut être utilisée comme sonde pour s'assurer que chaque broche d'E/S mappée sur les en-têtes d'affichage (voir le schéma) est correctement allumée et éteinte et qu'aucune d'entre elles n'est couplée ensemble.

Une fois toutes les broches vérifiées, l'écran TFT peut être soudé en place à l'aide des en-têtes longs et courts.

INSTALLER ET CONFIGURER LA BIBLIOTHÈQUE TFT

Depuis l'IDE Arduino: outils > Gérer les bibliothèques, installez la bibliothèque TFT_eSPI

Accédez au dossier Bibliothèques Arduino. Ouvrez le dossier TFT_eSPI et modifiez le fichier User_Setup.h pour configurer la puce du pilote du module, la résolution des pixels et les broches IO. Pour ce faire, assurez-vous que les définitions sont (non) commentées comme indiqué ci-dessous et définies sur les valeurs indiquées. Vous pouvez vérifier que ceux-ci correspondent aux connexions dans le schéma PCB.

// Section 1.

#define ILI9341_DRIVER #define TFT_WIDTH 240 #define TFT_HEIGHT 320 // Section 2. // Pour la carte de développement ESP32 #define TFT_MISO 19 #define TFT_MOSI 23 #define TFT_SCLK 18 #define TFT_CS 5 #define TFT_DC 22 #define TFT_RST 21 //#define TFT_RST -1 //#définir TFT_BL 32 #définir TOUCH_CS 15

Ouvrez et téléchargez le croquis:

Fichier > Exemples > TFT_eSPI > 320 x 240 > Cellular_Automata

Ce croquis est une démonstration visuelle sympa du jeu de la vie de Conway.

Un planeur hacker pourrait évoluer vers l'existence… gardez un œil sur !

AFFICHER LE LOGO HACKERBOX SUR TFT LCD

Essayez le sketch BitHeadDemo.

Étape 6: Saisie de l'utilisateur sur l'écran tactile

Saisie utilisateur à écran tactile
Saisie utilisateur à écran tactile

Le croquis suivant peut être utilisé pour configurer et tester la fonctionnalité de l'écran tactile:

Fichier > Exemples > TFT_eSPI > 320 x 240 > Clavier_240x320

Le bouton "Envoyer" transmet le numéro saisi au moniteur série à 9600 bauds.

Étape 7: Clavier CardKB I2C

Clavier CardKB I2C
Clavier CardKB I2C

Cette petite carte implémente un clavier QWERTY complet qui peut être utilisé avec à peu près n'importe lequel de vos projets de microcontrôleur. Le clavier communique via un port GROVE A (interface I2C) sur l'adresse 0x5F. Les combinaisons de boutons (Sym+Key, Shift+Key, Fn+Key) sont prises en charge pour produire des valeurs de clé riches.

Commencez par l'exemple simple d'esquisse CardKB_Serial, qui communique avec le clavier via GROVE I2C et renvoie les pressions de touche sur le moniteur série. L'esquisse peut être exécutée sur ESP32 (comme le HB50), Arduino UNO, Arduino Nano ou toute plate-forme prenant en charge I2C.

Notez qu'il existe deux appels Wire.begin différents pour ESP32 et pour UNO/Nano. Décommentez la ligne appropriée pour l'hôte que vous utilisez. Câblez les fils de dérivation GROVE jaune et blanc aux broches spécifiées sur cette ligne de code. Câblez le fil de dérivation GROVE rouge à 5V et le fil GROVE noir à GND.

Page de documentation du fabricant. Notez que même si le microcontrôleur embarqué CardKB est préprogrammé, la source du firmware est disponible si vous souhaitez pirater le clavier.

Étape 8:

Image
Image

Nous espérons que vous appréciez l'aventure HackerBox de ce mois-ci dans l'électronique et la technologie informatique. Contactez-nous et partagez votre succès dans les commentaires ci-dessous ou sur le groupe Facebook HackerBoxes. N'oubliez pas non plus que vous pouvez envoyer un e-mail à [email protected] à tout moment si vous avez une question ou avez besoin d'aide.

Et après? Rejoignez la révolution. Vivez la HackLife. Recevez chaque mois une glacière contenant du matériel piratable directement dans votre boîte aux lettres. Surfez sur HackerBoxes.com et souscrivez à votre abonnement mensuel à HackerBox.

Conseillé: