Projet Mini strem deck

Pour commencer on va crée les touches

On part de touche 12*12*7.3MM qui resemble a ca

png

On crée un model 3D qui se place sur ce type de bouton avec un peutit logo qui representera l'actions de la touche

Ensuite on crée un suport pour les touche et on vient coller tout les bouton dessue et on place au dessue les touche customiser crée juste avant, ensuite on relie tout les boutons a un possitif et chaque sortie de bouton a une entrée de la carte raspberry pi pico. On branche tout de cette magnière

png

On obtien quelquechose qui resemble a ceci.

jpg

Ensuite on construit la boite dans laquel on metra tout ca et on prévoir des barre pour suporter la grille de maintien des touche, c'est simplement une boite avec des troue et la plaque arriere est construit de magnière a ce que la raspberry ne bouge pas trop.

jpg jpg jpg

Quand on combine le tout on otiens une boite avec des bouton sous cette forme

png

Maintenant on passe au programe

Pour commencer le raspberry pi pico doit être programée d'un certaine magnière, Pour faire ceci on va simplement placé un zip telecharger ici dans le raspberry pi pico.

https://circuitpython.org/board/raspberry_pi_pico

Si c'est trop compliquer tu peut trouver le tuto plus complet ici

Ensuite il est conseiller d'instaler Mu éditor png

Enfin tout le code que nous allons ajouter doit s'écrire dans le fichier code qui a été crée automatiquement quand on a mis dans le raspberry pi pico le zip, donc depuis mu éditor on fait ouvrire un fichier on s'éléctionne le fichier code dans la carte raspberry et on peut écrire ce code

import time
import board
import digitalio
import usb_hid


from adafruit_hid.keyboard import Keyboard
from adafruit_hid.keyboard_layout_us import KeyboardLayoutUS
from adafruit_hid.keycode import Keycode

keyboard = Keyboard(usb_hid.devices)
keyboard_layout = KeyboardLayoutUS(keyboard)
layout = KeyboardLayoutUS(Keyboard)

bouton_music_suivante = digitalio.DigitalInOut(board.GP16)
bouton_music_suivante.direction = digitalio.Direction.INPUT
bouton_music_suivante.pull = digitalio.Pull.DOWN

bouton_music_precedente = digitalio.DigitalInOut(board.GP17)
bouton_music_precedente.direction = digitalio.Direction.INPUT
bouton_music_precedente.pull = digitalio.Pull.DOWN

bouton_pause = digitalio.DigitalInOut(board.GP18)
bouton_pause.direction = digitalio.Direction.INPUT
bouton_pause.pull = digitalio.Pull.DOWN

bouton_plein_ecran = digitalio.DigitalInOut(board.GP19)
bouton_plein_ecran.direction = digitalio.Direction.INPUT
bouton_plein_ecran.pull = digitalio.Pull.DOWN

bouton_retours_s = digitalio.DigitalInOut(board.GP20)
bouton_retours_s.direction = digitalio.Direction.INPUT
bouton_retours_s.pull = digitalio.Pull.DOWN

bouton_autre_1 = digitalio.DigitalInOut(board.GP21)
bouton_autre_1.direction = digitalio.Direction.INPUT
bouton_autre_1.pull = digitalio.Pull.DOWN

bouton_autre_2 = digitalio.DigitalInOut(board.GP22)
bouton_autre_2.direction = digitalio.Direction.INPUT
bouton_autre_2.pull = digitalio.Pull.DOWN

bouton_autre_3 = digitalio.DigitalInOut(board.GP26)
bouton_autre_3.direction = digitalio.Direction.INPUT
bouton_autre_3.pull = digitalio.Pull.DOWN

while True:
    if bouton_music_suivante.value:
        keyboard.send(Keycode.SHIFT, Keycode.N)
        time.sleep(0.5)
    if bouton_music_precedente.value:
        keyboard.send(Keycode.SHIFT, Keycode.P)
        time.sleep(0.5)
    if bouton_pause.value:
        keyboard.send(Keycode.SPACE)
        time.sleep(0.5)
    if bouton_plein_ecran.value:
        keyboard.send(Keycode.F)
        time.sleep(0.5)
    if bouton_retours_s.value:
        keyboard.send(Keycode.LEFT_ARROW)
        time.sleep(0.5)
    if bouton_autre_1.value:
        keyboard.send(Keycode.K)
        time.sleep(0.5)
    if bouton_autre_2.value:
        keyboard.send(Keycode.K)
        time.sleep(0.5)
    if bouton_autre_3.value:
        keyboard.send(Keycode.K)
        time.sleep(0.5)    time.sleep(0.1)