Raspberry Pico Keyboard
Het makkelijkste toetsenbord ontwikkeld door de Makersbase
Supplies
Dit zijn alle onderdelen die we nodig hebben voor deze opdracht:
- Knopje
- Draad (Rood en kleur naar keuze)
- Houten onderdelen voor het doosje
- Micro USB kabel
- Raspberry Pi Pico
- Soldeer tin
Dit is al het gereedschap die we nodig gaan hebben voor deze opdracht:
- Soldeerbout
- (Lasersnijder)
Voorbereiding Lijmen Hout Doosje
Voordat wij het doosje gaan maken waar al je elektronica in komt moeten we eerst de juiste onderdelen bij elkaar verzamelen. Dit zijn:
- Houtlijm
- Houten doosje onderdelen. Download de behuizing onder deze stap voor lasersnijden
Downloads
3D Printen Doosje
Download het bestand onder deze stap als je in plaats van een hout doosje een wil 3dprinten.
Je hoeft als je 3dprint niet meer te lijmen en het houten doosje gebruiken!
Downloads
Lijmen
Zoals je kan zien in het filmpje hierboven kan je nu het doosje in elkaar lijmen.
Let op! Lijm nog niet de deksel op het doosje. Deze moet nog open kunnen om alle elektronica in te doen.
Voorbereiding Solderen
Voor het solderen heb je een aantal dingen nodig:
- De Pico
- Een knop
- Twee draadjes (rood en kleur naar keuze)
- Soldeer tin
En we hebben wat gereedschap nodig:
- Kniptang
- Kabel stripper
- Soldeerbout
- Little helper
Little Helper
Dit is de Little Helper. Deze handige tool heeft een vergroot glas en twee kleine handjes.
Met deze handjes kan hij bijvoorbeeld je Raspberry Pi Pico vasthouden tijdens het solderen. Zodat alles makkelijk op een plaats wordt gehouden. In het andere handje kan hij zelfs de kabels die je aan de Pico gaat vastmaken stevig vasthouden.
Gebruik de Little Helper altijd wanneer het kan tijdens het solderen!
Kabel Stripper
Om kabels aan je Knop en Pico vast te solderen moet je eerst het omhulsel van de kabels afhalen. Dit noem je kabels strippen.
Dit doen we om het gedeelte van de kabel bloot te leggen wat de stroom gat geleiden. Deze geleidende kleinere kabeltjes herken je door de zilver/bronzen kleur. Deze gaan wij vast solderen op de Pico en Knop.
Strip de beide kanten van allebei je kabeltjes.
Pico Solderen
We gaan in deze stap allebei de kabels vast solderen aan de Pico.
Dit doen we door eerst wat soldeer tin op de pico te doen waar we de draadjes gaan aansluiten.
Dit gaan we op de pin 3.3V en GP10 doen (zie afbeelding)
Knop Solderen
In deze stap gaan we de kabels die we in de vorige stap hebben gesoldeerd aan de pico vast solderen aan een knop. Je hebt 2 pins aan de knop zitten. Soldeer een draad per aansluiting.
Zorg ervoor dat de uiteindes van het draadje niet elkaar aanraken!
Let op of je alles aan de goede punten hebt gesoldeerd!
Knop Vastmaken
Nu stoppen we het knopje door het gat van de deksel en draai je hem vast met het moertje!
Download Ciruitpython
- Klik op https://downloads.circuitpython.org/bin/raspberry_pi_pico/nl/adafruit-circuitpython-raspberry_pi_pico-nl-7.3.0.uf2
- Zet het gedownloade bestandje in een mapje waar je bij kan
CircuitPython Op De Raspberry Pi Pico Zetten
Hou de Bootsel button (zie foto hierboven) ingedrukt van de pico en plaats hem via de usb kabel in de PC.
Kopieer en plak het bestand (adafruit-circuitpython-ras...) op de Raspberry Pi Pico die als een USB apparaat tevoorschijn komt,
Als het goed is start de Pico opnieuw op. En nu kan je zien wat er op de Pico staat. Hier ga je de volgende stap bestanden in zetten. .
Installeren En Kopiƫren Van HID
Installeer de https://github.com/adafruit/Adafruit_CircuitPython_HID/archive/refs/heads/main.zip HID Library die we gaan gebruiken in de we gaan gebruiken om van de Pico naar de computer te communiceren.
Kopieer de Zip folder naar een apart mapje.
Daarna pak je het zip mapje uit
Ga dan naar Adafruit_CircuitPython_HID-main > adafruit_hid
Kopieer het adafruit_hid mapje dan naar de Pico.
Thorny Installeren
Installeer Thonny https://github.com/thonny/thonny/releases/download/v3.3.13/thonny-3.3.13.exe
Na het instaleren start je Thonny op
Thorny Verbinden Met Pico
Nu gaan we aangeven in welke code taal we gaan coderen. Zodat de microcontroller die we zo gaan aansluiten dit kan gaan begrijpen.
Ga via de taakbalk naar Uitvoeren>Selecteer Interpreter
Nu we in het Interpreter menu zijn klikken we op het pijltje naar beneden om CircuitPython(generic) Te selecteren. Klik op OK.
De Code
Download nu de code die bij deze stap staat. En open hem in Thorny.
button1 = digitalio.DigitalInOut(board.GP10)
button1.direction = digitalio.Direction.INPUT
button1.pull = digitalio.Pull.DOWN
Dit is een belangrijk stukje van de code. Dit geeft aan de we een pin gebruiken op de Pico. Dat is GP10 (zie foto hierboven). De namen van alle pinnnen staat ook op de Pico als je goed kijkt op de foto.
Downloads
Wat Wij Gaan Aanpassen
while True:
if button.value:
kbd.send(Keycode.T, Keycode.O, Keycode.M,)
time.sleep(0.1)
In het stukje While True kijken we als het knopje is ingedrukt gaan we het stukje er onder uitvoeren.
Dit is het belangrijkste stukje code die we gaan aanpassen.
In het stukje kbd.send(Keycode.T, Keycode.O, Keycode.M,) staat Keycode.T dit betekent dat we de letter T gaan sturen als we op het knopje drukken. Deze letter kan je dus in alles veranderen. Dus Keycode.A of Bcde....
Let op! Je kan maar 1 letter per Keycode sturen. Wil je een heel woord sturen? Dan zet je meerdere Keycode's achter elkaar zoals hier: Keycode.M, Keycode.A, Keycode.K, Keycode.E, Keycode.R, Wat uiteindelijk "Maker" maakt als je de knop indrukt.
time.sleep(0.1) Dit stukje code zorgt er voor dat hij nu 0,1 seconden wacht om je code te herhalen.
Let OP je kan maar 6 letters sturen per loop.
Code Opslaan Op Pico
Nu moeten we de code opslaan op de pico.
Dit doen we door naar Bestand > kopie opslaan en selecteer de Pico.
Vernoem je code naar Main.py
Hij Doet Het!
Haal je pico uit de computer en doe hem daarna weer in je computer. En nu doet hij het!
Als je de code wilt aanpassen moet je opnieuw je nieuwe code opslaan en vervang je het oude code.
Voorbeelden!
Voor het typen van een hoofdletter 'A'.
kbd.send(Keycode.SHIFT, Keycode.A)
Voor het typen van Control X
kbd.send(Keycode.CONTROL, Keycode.X)
Grote Zinnen Sturen (extra Opdracht)
We kunnen ook grote zinnen gaan sturen. Maar hiervoor moeten we andere code gebruiken. De code kan je downloaden in deze stap!
We hebben 4 zinnen toegevoegd waardoor we nu bijvoorbeeld hele zinnen of linkjes kunnen sturen.
from adafruit_hid.keyboard_layout_us import KeyboardLayoutUS
kbd = Keyboard(usb_hid.devices)
layout = KeyboardLayoutUS(kbd)
Deze staan boven aan en hiermee laten we weten dat we een keyboard gaan nadoen.
layout.write('Makersbase\n')
Dit is het belangrijkste stukje die we gaan bewerken. Om precies te zijn gaan we wat tussen de haakjes staat () bewerken. Zorg er voor dat alles wat je schrijft tussen de haakjes () en de '' aanhalingstekens staat!
Dus je kan bijvoorbeeld ('Makersbase\n') naar ('Makersbase is cool\n') veranderen.
of
('www.google.com\n')
\n betekent dat je een enter drukt na het invoeren van je tekst. Als je dit weg haalt drukt het geen enter meer!