Lateo.net - Flux RSS en pagaille (pour en ajouter : @ moi)

🔒
❌ À propos de FreshRSS
Il y a de nouveaux articles disponibles, cliquez pour rafraîchir la page.
À partir d’avant-hierPila's blog

Linux Mint / Ubuntu : Transmettre les informations de lecture multimédia via Bluetooth (AVRCP TG)

Par : Pila

Ayant récemment développé un projet de récepteur audio Bluetooth utilisant AVRCP pour récupérer les informations du lecteur multimédia actif, j’ai pu constater que Linux Mint ne communique aucune information sur le média en cours de lecture à travers la liaison Bluetooth.

Après quelques recherche, il s’avère que c’est le démon MPRIS-PROXY qui est chargé de cette fonction, mais celui-ci ne semble pas actif sous Mint. Pire, il est introuvable ni à son emplacement supposé (/bin), ni dans les paquets !

La frayeur est de courte durée, il est bien installé avec le paquet bluez, et se situe à /lib/bluetooth/mpris-proxy.

Il suffit pour l’activer de créer un fichier de configuration pour systemd en mode utilisateur :

$ mkdir ~/.config/systemd/user
$ nano ~/.config/systemd/user/mpris-proxy.service

Y ajouter le contenu suivant :

[Unit]
Description=Forward bluetooth media controls to MPRIS

[Service]
Type=simple
ExecStart=/lib/bluetooth/mpris-proxy

[Install]
WantedBy=default.target

Il ne reste plus qu’à l’activer :

$ systemctl --user start mpris-proxy.service
$ systemctl --user enable mpris-proxy.service

On peut vérifier son bon fonctionnement avec la commande suivante :

$ systemctl --user status mpris-proxy.service

Qui doit nous retourner cette réponse :

Et voilà, les informations de la lecture multimédia (état lecture / pause, piste en cours, et position) sont maintenant accessibles par les périphériques Bluetooth connectés.

Compiler Marlin en ligne de commande

Par : Pila

Cet article résume le process nécessaire pour compiler Marlin en ligne de commande sous Linux avec PlatformIO Core.

1. Installer PlatformIO Core.

2. Ajouter PlatformIO au PATH local :

export PATH=$PATH:~/.platformio/penv/bin

3. Récupérer le code source de Marlin.

4. Si on récupère le code source officiel (et pas une version déjà customisée pour une machine spécifique ), récupérer les fichiers de configuration dans le dépot git MarlinFirmware/Configurations, et copier les fichiers de configuration adéquat dans le dossier Marlin / Marlin /

5. Se placer dans le dossier Marlin ( contenant platformio.ini ).

6. Identifier la valeur de MOTHERBOARD, en gras dans l’exemple ci dessous, à partir du fichier Configuration.h. ( pour une carte BTT SKR E3 MINI V2.0 )

$ cat Marlin/Configuration.h | grep MOTHERBOARD
#ifndef MOTHERBOARD
#define MOTHERBOARD BOARD_BTT_SKR_MINI_E3_V2_0
If not defined the default pin for the selected MOTHERBOAR

7. Identifier les environnements PlatformIO compatibles à partir du fichier pins.h ( attention à supprimer le BOARD dans la valeur de MOTHERBOARD ):

$ cat Marlin/src/pins/pins.h | grep BTT_SKR_MINI_E3_V2_0
elif MB(BTT_SKR_MINI_E3_V2_0)
#include "stm32f1/pins_BTT_SKR_MINI_E3_V2_0.h" // STM32F1
env:STM32F103RC_btt env:STM32F103RC_btt_512K
env:STM32F103RC_btt_USB env:STM32F103RC_btt_512K_USB

8. Compiler avec l’environnement adapté ( dans mon cas gestion de l’USB mais pas 512K de ROM ) :

$ platformio run -e STM32F103RC_btt_USB

9. Récupérer le fichier firmware.bin à l’emplacement suivant :

.pio/build/STM32F103RC_btt_USB/firmware.bin

10. Le copier sur une carte SD ( sans altérer son nom ), et la mise à jour s’effectue à la mise sous tension de l’imprimante. Le fichier sera alors renommé en FIRMWARE (sans extension).

11. Si présence d’un fichier EEPROM.DAT sur la carte SD lors de la mise à jour firmware, le contenu de l’EEPROM (calibration, réglages) sera écrasé.

❌