Stream Deck

Introducere

Un stream deck este un dispozitiv hardware specializat, care este utilizat în principal de streameri și creatori de conținut pentru a simplifica procesul de creare și gestionare a conținutului în timp real.

Stream deck-ul este o tastatură cu multiple butoane programabile, care poate fi configurată pentru a efectua diverse acțiuni și comenzi, cum ar fi deschiderea programelor, trimiterea de mesaje automate, pornirea sau oprirea unei transmisiuni live, modificarea setărilor audio și multe altele. Utilizatorii pot atribui comenzi personalizate fiecărui buton, astfel încât să poată accesa rapid și ușor diferite funcții, fără a fi nevoie să caute și să folosească taste sau combinații de taste.

Am ales acest proiect întrucât am considerat că îl pot folosi cu diverse ocazii și poate chiar pentru diverse task-uri de zi cu zi pe calculatorul personal.

Descriere generală

Butoanele vor fi customizabile vor fi afișate virtual pe display-ul tactil și la fiecare buton apăsat, atât virtual cât și fizic se va auzi un sunet emis de către buzzer cu scop de feedback. Ele vor trimite pe interfața serială denumirea tastei de la F13 la F21 pentru a fi apăsată prin intermediul unui script de comunicare. De asemenea, m-am gândit și la posibilitatea de a seta timere pentru comenzi. Un timer va putea fi adjustat prin intermediul a două butoane (+ și -), iar butonul pe care îl apăsăm va executa comanda asociată la trecerea timpului setat.

Hardware Design

Listă de piese:

  • Arduino UNO R3
  • Breadboard
  • Display tactil
  • Butoane
  • Buzzer
  • Rezistente
  • Cabluri

Software Design

Descrierea codului aplicaţiei (firmware): Mediul de dezvoltare folosit a fost ArduinoIDE, programarea fiind realizată în C++. Am folosit biblioteca Adafruit pentru grafica de pe display-ul tft și URTouch pentru feature-urile de touch screen ale acestuia.

În setup inițializez ecranul cu grafica necesară, configurez buzzer-ul și inițializez interfața serială întrucât am implementat un driver de comunicare pe interfața serială (un script în python care citește comenzile trimise din microcontroller și le execută pe computer)

În loop se verifică dacă s-au executat acțiuni asupra display-ului, iar dacă s-a apăsat într-o regiune aferentă unui buton, se va trimite comanda asociată acestuia ( lui 1 îi este asociat F13, lui 2 F14, ș.a.m.d. până la 9 ) și se va emite un sunet de către buzzer ca feedback de apăsare al unui buton. Motivul pentru care am ales tastele virtuale de la F13 la F21 este pentru a nu avea conflicte între tastatură și device-ul pe care l-am proiectat.

Rezultate Obţinute

Concluzii

Proiectul a fost implementat cu o mare parte din particularitățile dorite. Partea de timere din păcate, este cea care lipsește. Cea mai mare dificultate întâmpinată a fost ocuparea majorității pinilor digitali de către display-ul tft, rămânând doar cu unul singur pe care l-am alocat buzzer-ului pentru a avea feedback sonor la apăsările de butoane. Ce mi-aș mai fi dorit, ar fi fost să-l încapsulez sau să-l pun într-un fel de cutie pentru a-l folosi pe viitor și să aibă și un aspect fain.

Download

Toate resurse folosite pot fi găsite pe următorul link de Google Drive

Link Drive

Bibliografie/Resurse

Listă cu documente, datasheet-uri, resurse Internet folosite, eventual grupate pe Resurse Software şi Resurse Hardware.

Export to PDF

pm/prj2023/razvans/stream-deck.txt · Last modified: 2023/05/29 18:02 by david.capragiu
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0