Embedded desk docking station

Ingebouwde docking station in je bureau. Eenvoudig je telefoon opladen / computer aan- of uitzetten / ledstrip bedienen vanuit één plek. Ledstrip gaat automatisch aan/uit zodra de computer aan of uit staat.

Stap 1: Benodigdheden

  • 5v angel button (Link)
  • Oled display (Link)
  • ESP8266 D1 Wemos (Link)
  • USB hub (Link)
  • USB-C adapter (Link)
  • USB naar USB-C kabel
  • Rotary push button (Link)
  • Female dupont kabels

Stap 2: Software

De docking station wordt bestuurd door een (kleine) microcontroller met Wi-Fi. Er kan uiteraard ook een andere microcontroller worden gebruikt zoals bijvoorbeeld een ESP32. De microcontroller kan worden geflasht door middel van een microUSB kabel. Hiervoor is een ingang gemaakt aan de bovenkant van de behuizing.

De omgeving waarin ik de Arduino firmware heb ontwikkeld is PlatformIO echter zou er ook een andere IDE voor kunnen worden gebruikt.

De firmware kan gedownload worden onderaan de pagina en valt te vinden in main.cpp.

Bovenaan dit bestand staan de pin configuraties. Mocht je kiezen om andere I/O van de microcontroller te gebruiken kunnen deze hier worden aangepast. Verder is het belangrijk om te kijken naar de define "NUM_LEDS". Deze bepaalt het aantal leds van de eventueel aangesloten ledstrip. In dit project is gekozen voor een ledstrip met chipset WS2812B, mocht je een andere willen gebruiken dan moet je deze ook aanpassen in de define bovenaan de pagina.

De firmware zorgt ervoor dat de ledstrip wordt aan- of uitgezet aan de hand van twee factoren;

  • Het signaal van de desktop (PC_STATUS)
  • De rotary push button

Zodra de ledstrip aan staat en als status: "ControllerBoxStateRunning" heeft, kan er door middel van de rotarybutton de brightness worden aangepast door naar links of rechts te draaien.

Stap 3: Behuizing

De behuizing in dit voorbeeld is geprint in PLA (Zwart), echter zou het ook in andere materialen geprint kunnen worden. De STL bestanden hiervoor staan onderaan de pagina. De componenten kunnen met behulp van schroefdraad (welke ik heb vastgesmolten met een soldeerbout) en schroeven in elkaar worden gezet.

De overige componenten kunnen aan elkaar worden gelijmd, hiervoor is gekozen aangezien dit voorkomt dat het geheel op supports wordt geprint. De hardware kan met behulp van bijvoorbeeld smeltlijm worden bevestigd.

Om de USB adapter te kunnen bevestigen is ervoor gekozen om hier een behuizing voor de printen. Dit in combinatie met een kleine veer (uit bijvoorbeeld een pen) houdt het geheel op zijn plaats en zorgt ervoor dat de usb connector op en neer kan bewegen.

Stap 4: Electronica

De electronica kan als volgt worden verbonden:

Microcontroller:

  • D0 -> I/O van led moederbord (Pc status). Aangezien mijn pc een output voltage heeft van 5V heb ik deze geconvert naar 3,3V
  • D3 -> Rotary Button (10k ohm weerstand naar voeding)
  • D5 -> Rotary pin A (10k ohm weerstand naar voeding)
  • D6 -> Rotary pin B (10k ohm weerstand naar voeding)
  • SDA(IO21) -> SDA van OLED
  • SCL(IO22) -> SCL van OLED

Aansluitschema is hieronder te vinden in de afbeeldingen

Angel Button:

Afhankelijk van het type angel button, in dit geval konden de + en - van de LED rechtstreeks met het moederbord verbonden worden en de NC verbinding direct worden aangesloten op de power switch van het moederbord.

Voor de USB hub heb ik de behuizing om de printplaat verwijderd en alleen de PCB van de USBs gebruikt. Hierop zit een USB kabel aangesloten die rechtstreeks kan worden aangesloten op je desktop.

Door middel van female headers in de behuizing te lijmen (3 pin en 4 pin) kan er een connector vanaf het moederbord (4 pins) worden aangesloten op de docking station. De 3 pins zijn bestemd voor de voeding en digitale ingang van de ledstrip.



© Prompt. All rights reserved. Crafted by Kevin Assen