Raspberry Pico Keyboard

by Makersbase Breda in Teachers > 7

1788 Views, 4 Favorites, 0 Comments

Raspberry Pico Keyboard

Full materiaal overview.png

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

Hout lijmen overview.png

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

FX9HTR7L4SGT0JI.png

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

Eindresultaat lijmen hout.png
Hout igf.gif

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

Knop soldeer 1.png
Overzicht solderen producten.png

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

Little helper 1.png
Little helper 3.png
Little helper 4.png
Little helpergif.gif

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

Kabel strip.png
Kabel strippen.gif

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

soldeeer overview.png
Soldeer pico.gif
Draaden solderen gif.gif

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

Knop solderen gif.gif
Knop soldeer result.png

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

Button.gif
Eindresultaat alles.png

Nu stoppen we het knopje door het gat van de deksel en draai je hem vast met het moertje!

Download Ciruitpython

Gif circuit python.gif

CircuitPython Op De Raspberry Pi Pico Zetten

Button pico.png

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

Gif Selecteer interp.gif

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

gp10.png

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

Opslaan.gif

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!


Downloads