PI Pin est une broche AI que vous pouvez porter toute la journée 24 heures qui enregistre la conversation que vous avez et utilise une AI générative pour résumer et prendre des notes pour vous.
Pi Pin est entièrement open-source et abordable, il est construit sur une framboise PI Zero 2 W avec un microphone et une batterie.
Il est entièrement piratable et vous pouvez écrire votre propre application dessus.
L'enceinte de la broche PI est conçue autour du Raspberry Pi zéro, du microphone et de la batterie pour assurer des dimensions physiques compactes (relativement) compactes.
L'électronique est intentionnellement maintenue minimale (PI, microphone, batterie, module de charge de batterie) et la plupart des pièces sont imprimables en 3D ou disponibles en tant que produits standard.
Le graphique ci-dessous montre tout le câblage dont vous avez besoin pour la broche PI.
| Depuis | À |
|---|---|
| Interrupteur de glissière Pin droit | Pi 5v (broche 2) |
| Pin moyen de l'interrupteur à glissière | Module d'alimentation 5V + |
| Module d'alimentation 5V - | Pi gnd (broche 6) |
| Module d'alimentation 3.7 V + | Batterie + |
| Module d'alimentation 3.7 V - | Batterie - |
| Micro | Pi gnd (broche 6) |
| Micro 3v | PI 3.3V (broche 1) |
| Micro bclk | PI PCM 18 (broche 12) |
| Micro Mic | PI PCM 19 (broche 35) |
| Micro micro | PI PCM 20 (broche 38) |
Batterie:
Nous utilisons une batterie au lithium de 3,7 V 600mAh 702030 avec un module d'alimentation comme solution de batterie. Le module d'alimentation fonctionne comme un contrôleur de charge de batterie et un convertisseur DC / DC en un.
Normalement, la connexion du fil aimerait le graphique à gauche ci-dessous. Vous pouvez connecter la batterie au lithium 3,7 V + la batterie du module d'alimentation + et une batterie au lithium 3,7 V - la batterie du module d'alimentation - (comme le graphique droit ci-dessous).
Après cela, vous aurez une sortie 5V constante au module d'alimentation 5V + et - .
Le module d'alimentation fournit également un port USB-C pour charger la batterie.
Nous ajoutons également un interrupteur de diapositive du panneau de commutateur entre le module d'alimentation 5V + et l'en-tête PI 5V, ce qui aide à activer / éteindre tout le système de broches.
Microphone:
Nous utilisons le microphone MEMS Adafruit I2S comme module de microphone, et le graphique ci-dessous montre comment vous câblez le micro à un Raspberry Pi. Le graphique montre le câblage du micro avec un gros framboise PI mais l'en-tête GPIO est le même que le Raspberry Pi zéro que nous avons utilisé dans PI PIN.
Assemblage de cas:
Vous pouvez trouver des pièces imprimées en 3D ici (fichiers de pas). La partie supérieure est conçue autour du Raspberry Pi Zero, et la partie inférieure est conçue contenant du microphone, de la batterie, du module d'alimentation et de l'interrupteur. Tous les modules doivent s'adapter parfaitement à l'intérieur du boîtier, et vous pouvez également utiliser du ruban adhésif ou de la colle pour les stable.
Le graphique laissé ci-dessous montre le montage des modules (pas de câblage) dans le cas.
Le graphique laissé ci-dessous montre le raccord des modules (câblage) dans le cas.
Ensuite, vous pouvez combiner deux parties et utiliser quatre vis M1x7 mm pour les fixer.
Vous devrez commencer par Raspbian ou Raspbian Lite. Obtenez la dernière version de la page de téléchargement Raspberry Pi et suivez ces instructions pour installer l'image du système d'exploitation sur la carte SD.
Mettre à jour le PI
sudo apt-get -y update
sudo apt-get -y upgradesudo pip install --upgrade adafruit-python-shell
git clone https://github.com/liltom-eth/pi-pin.git
cd pi-pin/scripts
sudo python i2smic.pyUne fois que vous avez exécuté le script, vous serez présenté avec des options de configuration.
Le modèle PI doit être détecté automatiquement.
Si vous souhaitez que la prise en charge du module Mic I2S soit chargée au démarrage, sélectionnez oui ici. Sinon, vous devrez installer manuellement le module chaque fois que vous souhaitez l'utiliser.
Vous devez redémarrer pour que les paramètres prennent effet.
sudo rebootUtilisez la commande suivante pour répertorier les périphériques d'entrée disponibles:
arecord -lVous devriez voir une entrée de carte avec des informations similaires à ceci:
Notez le numéro de carte. Dans la capture d'écran au-dessus, il est 0 . Vous pouvez enregistrer un fichier WAV de 6 secondes en mono avec cette commande (modifiez le paramètre -plughw pour correspondre au numéro de carte ci-dessus):
arecord -D dmic_sv -c2 -r 44100 -f S32_LE -t wav -V mono -v file.wav --duration=6Si vous avez des haut-parleurs connectés au PI, vous pouvez lire le fichier directement sur l'appareil:
aplay file.wav
Ou, vous pouvez le copier sur votre ordinateur pour la lecture.
Vous pouvez ajouter un contrôle de volume à votre micro via Alsamixer et Alsa Config.
sudo apt-get install vim
vim ~ /.asoundrcEt mettez ce qui suit:
# This section makes a reference to your I2S hardware, adjust the card name
# to what is shown in arecord -l after card x: before the name in []
# You may have to adjust channel count also but stick with default first
pcm.dmic_hw {
type hw
card sndrpii2scard
channels 2
format S32_LE
}
# This is the software volume control, it links to the hardware above and after
# saving the .asoundrc file you can type alsamixer, press F6 to select
# your I2S mic then F4 to set the recording volume and arrow up and down
# to adjust the volume
# After adjusting the volume - go for 50 percent at first, you can do
# something like
# arecord -D dmic_sv -c2 -r 48000 -f S32_LE -t wav -V mono -v myfile.wav
pcm.dmic_sv {
type softvol
slave.pcm dmic_hw
control {
name " Boost Capture Volume "
card sndrpii2scard
}
min_dB -3.0
max_dB 30.0
}Maintenant, avant de pouvoir modifier le volume, vous devez utiliser l'appareil une fois (c'est une chose alsa)
Courir:
arecord -D dmic_sv -c1 -r 48000 -f S32_LE -t wav -V mono -v file1.wav --duration=6Maintenant, vous pouvez exécuter alsamixer - appuyez sur F6 et sélectionnez la carte son I2S
Il se plaindra qu'il n'y a pas de commandes de lecture (car c'est pour l'enregistrement uniquement).
Appuyez sur F4 pour passer en mode capture et vous devriez pouvoir régler le volume avec des touches de flèches haut / bas.
Parfois ~/.asoundrc disparaît après le redémarrage, vous devez configurer raspi-config pour démarrer sur la console plutôt que de démarrer sur le bureau.
sudo raspi-configPour enregistrer l'audio via des scripts Python, vous devez installer ces dépendances:
sudo apt-get install libportaudio0 libportaudio2 libportaudiocpp0 portaudio19-dev
sudo pip install pyaudiopython record_on_boot.py --output_folder ./recordingNous exécuterons le Pi Zero en tant que portable avec une alimentation de batterie, nous avons donc besoin d'un moyen de démarrer le script Python lorsque le zéro s'approche.
Créez un fichier de service dans /lib/systemd/system/ , par exemple pipin.service avec le contenu suivant:
sudo vim /lib/systemd/system/pipin.serviceEt mettez ce qui suit:
Description=Record on Boot
After=sound.target alsa-state.service
[Service]
User=tom
Type=simple
ExecStart=/usr/bin/python /home/tom/projects/pi-pin/record_on_boot.py --output_folder /home/tom/projects/pi-pin/recording/
Restart=on-failure
RestartSec=5
[Install]
WantedBy=multi-user.target Modifiez User et ExecStart par votre propre nom et chemin de script.
Modifiez l'autorisation du fichier et activez le service à démarrer lors du démarrage.
sudo chmod 644 /lib/systemd/system/pipin.service
sudo systemctl start pipin.service
sudo systemctl enable pipin.service Pour le débogage, vous pouvez utiliser sudo systemctl status pipin.service pour vérifier l'état et utiliser journalctl -u pipin.service pour vérifier le journal de sortie.
Pour arrêter manuellement le service, utilisez sudo systemctl stop pipin.service .
Avant d'utiliser le script, vous devrez peut-être installer certaines dépendances clients OpenAI sur l'appareil que vous souhaitez obtenir le résumé. J'utilise mon ordinateur portable pour appeler ces points de terminaison d'IA.
pip install -r requirements.txt summarize.ipynb vous montre un exemple en utilisant OpenAI whisper pour Speech2Text, puis utilisez OpenAI gpt4 pour résumer la transcription de votre conversation.
Ceci est un résumé que j'ai obtenu lorsque j'ai porté le PI-PIN AUVOIR UNE NOUVELLE TECH (L'enregistrement audio peut être trouvé ./recording/wav_2024_03_20-065147_PM.wav ).
The report discusses the significant comeback of tech conferences in the Bay Area, focusing on a particularly large event in downtown San Jose centered around artificial intelligence. Tens of thousands of attendees created a scene reminiscent of a major concert outside the SAP Center, highlighting the immense interest and investment in AI. NVIDIA's GTC convention is spotlighted as a major contributor to this momentum, drawing a crowd of around 20,000 people and significantly benefiting local businesses. NVIDIA CEO Jensen Wang spoke on the transformative impact of AI across various industries, emphasizing the computer as a crucial societal tool. The event has led to a notable economic boost for the area, with restaurants and venues experiencing high demand. This resurgence of tech conferences is likened to the phenomenon of "revenge travel" post-COVID lockdowns, indicating a strong desire within the tech community to reconnect, explore new technologies, and invest in the industry's future.
La transcription et le résumé peuvent également être trouvés dans le dossier ./recording/ .