
Introducció al producte
Un Stream-Deck és un perifèric d’ordinador que ens permet seleccionar amb facilitat funcions del programari amb aquest perifèric.
Un exemple d’aquest tipus de producte el té l’empresa «ElGato» (https://www.elgato.com/es/stream-deck).
És un perifèric amb tecles, connectat a l’ordinador via USB, i amb una APP per la seva configuració i utilització.
Partint de la funcionalitat d’aquest producte, hem desenvolupat el nostre projecte, sense intentar fer, ni de bon tros, la totalitat de funcionalitat.
Idea del projecte
El nostre projecte utilitzarà un LCD de 2,7″ com a element d’entrada i sortida per l’usuari.
També usarà un mòdul microcontrolador amb l’ESP32.
Alimentat a partir de la connexió USB a la placa.
I comunicat a l’ordinador a través de la connexió Bluetooth (donat que necessitem una connexió HID-Keyboard que no podem implementar a partir de l’USB de l’ESP32 (per ser un USB/Serial), però sí el Bluetooth.
Hardware utilitzat
- Mòdul LCD 2,7″ amb panell tàctil, per Arduino.
Aquest mòdul disposar de possible targeta SD que no utilitzem (guardem fitxers en memòria directament).
Hem realitzat un parell de modificacions per l’adequat funcionament amb el mòdul ESP32.
- Mòdul ESP32. Escollit per:
- La seva capacitat d’emmagatzematge, per guardar:
- El Firmware corresponent
- La funcionalitat de disc SPIFFS (fitxers de configuració i icones)
- I els valors de calibratge de la pantalla tàctil.
- USB per l’accés de l’alimentació (llàstima de no poder comunicar amb l’ordinador per port sèrie).
- Bluetooth par la comunicació amb l’ordinador a través d’una connexió HID-Keyboard.
- La seva capacitat d’emmagatzematge, per guardar:
Software utilitzat
- El codi està escrit en C, amb l’IDE d’Arduino
- Utilitza les llibreries de placa del:
- ESP32
- I les llibreries de programari de:
- TFT_eSPI
- BleKeyboard
- EEPROM
- ArduinoJson
- FS
- SPIFFS
- PNGdec
- Touch (personalitzada i incorporada al directori del projecte)
Funcionalitat
1. Arrancada. Connexió USB per alimentar. Pantalla Versió. Durada 1”…

2. Si abans de desapareixia aquesta imatge, pressionem la pantalla… Calibratge de panel tàctil…

- A dos punts (superior / esquerra i inferior / dreta).
- Guardarà dades en memòria no volàtil.
3. Després de l’arrancada (amb versió), Pantalla principal…

- I en aquesta pantalla principal, i segons menú configurat, accés a totes les funcions, carpetes, i possibles subcarpetes.
- En aquest cas concret, tenim una funcionalitat (carpeta) d’OBS, que obra una altra pantalla…

- I aquesta pantalla té diverses funcions que enviaran (via Bluetooth) una tecla predeterminada para cada funcionalitat definida (vegeu fitxer de configuracions).
- Les tecles poden ser d’enviar valor i, a més, poden ser de doble funcionalitat (Grava / Para, Pausa / Reprèn, Silenciar / Activar el micròfon…).
Millorable o pendent
- Aplicació de PC per:
- Crear els fitxers de configuració que és un fitxer de text que ara és creat manualment.
- Gestionar la descàrrega dels fitxers d’icones que ara són descarregats manualment.
- Càrrega dels fitxers de configuració (tecles i icones) al hardware (actualment es far amb l’IDE de programació.
- A més a més es podria encarregar de capturar certes tecles que convingués per fer alguna acció requerida (ara és l’OBS, …, el que es cuida directament de fer-lo).

