Se connecter
Se connecter

ou
Créer un compte

ou

Sujet Ouvrir un mode console Linux sur la MPC Live

  • 79 réponses
  • 21 participants
  • 11 003 vues
  • 28 followers
1 Ouvrir un mode console Linux sur la MPC Live
Hi.

Après mon précédent post sur la possibilité d'avoir 4 MIDI OUT sur la MPC Live, je suis allé un peu plus loin.
J'ai branché une interface série USB TTL sur la carte CPU après avoir ouvert le boitier (avec quelques sueurs froides !!).

akai-mpc-live-2537222.png

Une fois la connexion effectuée, on peut suivre tout le processus de Boot de la MPC Live, jusqu'à obtenir un prompt de login. Le user "root" sans mot de passe permet d'accéder au système, et par exemple de lancer quelques commandes ALSA (le système audio de Linux).

# amidi -l
Dir Device    Name
IO  hw:2,0,0  MPC Live Controller MIDI 1
IO  hw:2,0,1  MPC Live Controller MIDI 2
IO  hw:2,0,2  MPC Live Controller MIDI 3
IO  hw:2,0,3  MPC Live Controller MIDI 4
#


# cat /proc/asound/cards
 0 [codec          ]: USB-Audio - USB Audio CODEC
                      Burr-Brown from TI USB Audio CODEC at usb-ff500000.usb-1.1, full speed
 1 [audio          ]: USB-Audio - MPC Live Audio
                      Akai Professional MPC Live Audio at usb-ff500000.usb-1.5, high speed
 2 [controller     ]: USB-Audio - MPC Live Controller
                      Akai Pro MPC Live Controller at usb-ff500000.usb-1.6, full speed
#


# lsusb -t
/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=ehci-platform/1p, 480M
    |__ Port 1: Dev 2, If 0, Class=, Driver=hub/7p, 480M
        |__ Port 1: Dev 3, If 0, Class=, Driver=cdc_acm, 12M
        |__ Port 1: Dev 3, If 1, Class=, Driver=cdc_acm, 12M
        |__ Port 2: Dev 4, If 0, Class=, Driver=snd-usb-audio, 12M
        |__ Port 2: Dev 4, If 1, Class=, Driver=snd-usb-audio, 12M
        |__ Port 2: Dev 4, If 2, Class=, Driver=snd-usb-audio, 12M
        |__ Port 2: Dev 4, If 3, Class=, Driver=usbhid, 12M
        |__ Port 4: Dev 8, If 0, Class=, Driver=uas, 480M
        |__ Port 5: Dev 6, If 2, Class=, Driver=snd-usb-audio, 480M
        |__ Port 5: Dev 6, If 0, Class=, Driver=snd-usb-audio, 480M
        |__ Port 5: Dev 6, If 3, Class=, Driver=, 480M
        |__ Port 5: Dev 6, If 1, Class=, Driver=snd-usb-audio, 480M
        |__ Port 6: Dev 7, If 0, Class=, Driver=snd-usb-audio, 12M
        |__ Port 6: Dev 7, If 1, Class=, Driver=snd-usb-audio, 12M
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=dwc2/1p, 480M
#


On peut voir ci-dessus que j'ai branché une interface audio usb "cheap" Behringer qui est bien détectée par l'OS mais non visible dans le soft MPC.

J'ai également pu décoder tous les messages MIDI du contrôleur en mode "interne" en sniffant les messages avec amidi.
akai-mpc-live-2537228.png

Cela ouvre quelques perspectives intéressantes !!



Afficher le premier post
41
Citation de thekik :
Par ailleurs, Il est quasi impossible de "bricker" une MPC Live/X (il faut vraiment le faire express !).

Que veux-tu dire par là ?

"Le monde se divise en deux catégories : ceux qui passent par la porte, et ceux qui passent par la fenêtre." (Tuco)

42
Le CPU ARM RK 3288 a un mode "DFU" appelé "MASKROM" qui permet de restaurer le bootloader Linux (U-Boot), qui lui-même démarre le filesystem "rootfs". C'est du flashage "bas-niveau" avec un outillage spécifique mais disponible.
La séquence de boot est décrite dans la datasheet du RK 3288.

Lorsque l'on se trouve en "Update Mode", c'est en fait un mode U-boot de mise à jour par l'USB (fastboot), un peu comme sur les smartphones Android. C'est donc la perte ou la corruption de ce bootloader qui pourrait "bricker" la MPC, et empêcher toute nouvelle mise à jour. Mais on peut le reflasher via les outils Rockhip.
Donc, il y a 2 niveaux de sécurité : celle offerte par le RK3288 lui-même et celle du bootloader + la possibilité de booter un file system sur la carte sd (celle qui contient les expansions usine).

Les updates officielles ne mettent à jour que la partition rootfs. Lorsque la MPC est branchée en mode update sur un port USB, on peut utiliser la commande "fastboot" pour effectuer cette opération en ligne de commande, manuellement. Le fastboot est verrouillé par une clé "magique", qu'on peut voir en clair sur dump de la partition contenant le bootloader, ou en sniffant les échanges USB lors d'une mise à jour standard. Une fois débloqué, on peut flasher un nouveau bootloader et un file system sur le disque SSD interne.




43
44
Effectivement ça limite les possibilités de blocage, mais à condition de disposer du dump du bootloader custom Akai en cas de besoin (pour le restaurer si on l'efface par exemple).
A moins que Akai ait utilisé le bootloader par défaut du RK3288, et dans ce cas il est peut-être récupérable dans le kit de développement.
Le bootloader est customisé Akai de ce que tu as pu voir ?
Il serait possible de mettre en place un dual boot, et ainsi avoir la possibilité de charge l'OS Akai, ou un autre entièrement maison ?

"Le monde se divise en deux catégories : ceux qui passent par la porte, et ceux qui passent par la fenêtre." (Tuco)

[ Dernière édition du message le 08/03/2019 à 19:49:15 ]

45
Citation de Deltank :
Effectivement ça limite les possibilités de blocage, mais à condition de disposer du dump du bootloader custom Akai en cas de besoin (pour le restaurer si on l'efface par exemple).


ça c'est fait....une bête commande dd sous linux et copie sur un disque dur externe branché sur l'USB de la MPC.
Ci-dessous, le partionnement EMMC (carte SSD interne) :

Numéro  Début   Fin     Taille  Système de fichiers  Nom             Fanions
 1      32,8kB  98,3kB  65,5kB                       uboot-spl       msftdata
 2      98,3kB  106kB   8192B                        env             msftdata
 3      131kB   524kB   393kB                        uboot           msftdata
 4      524kB   4719kB  4194kB                       splash          msftdata
 5      4719kB  8913kB  4194kB                       recoverysplash  msftdata
 6      8913kB  533MB   524MB   ext4                 rootfs          legacy_boot, msftdata
 7      533MB   3959MB  3426MB  ext4                 data            msftdata

Périphérique        Début     Fin Secteurs Taille Type
mmcblk2-emmc.img1      64     191      128    64K Données de base Microsoft
mmcblk2-emmc.img2     192     207       16     8K Données de base Microsoft
mmcblk2-emmc.img3     256    1023      768   384K Données de base Microsoft
mmcblk2-emmc.img4    1024    9215     8192     4M Données de base Microsoft
mmcblk2-emmc.img5    9216   17407     8192     4M Données de base Microsoft
mmcblk2-emmc.img6   17408 1041407  1024000   500M Données de base Microsoft
mmcblk2-emmc.img7 1041408 7733214  6691807   3,2G Données de base Microsoft


Une image disque du volume mmcblk2 sauve toutes les partitions y compris le bootloader.

Citation de Deltank :


A moins que Akai ait utilisé le bootloader par défaut du RK3288, et dans ce cas il est peut-être récupérable dans le kit de développement.
Le bootloader est customisé Akai de ce que tu as pu voir ?


oui pour U-Boot. Il y a des fonctions oem (peu).
et le démarrage de Linux comporte des flags spécifiques.
Pour le bootloader interne du Rk3288, je ne sais pas.
Je ne pense pas qu'Akai l'ait changé. Aucun intérêt.

$ sudo fastboot getvar bootloader-version
bootloader-version: U-Boot 2016.05-inmusic-20170406
finished. total time: 0.001s




Citation de Deltank :

Il serait possible de mettre en place un dual boot, et ainsi avoir la possibilité de charge l'OS Akai, ou un autre entièrement maison ?


En tout cas, on peut mettre un bootloader libéré. ON pourrait ainsi booter sur une carte sd externe pour tester une nouvelle version avant de l'installer par exemple...ou monter une MPC Live/X custom...

[ Dernière édition du message le 09/03/2019 à 02:13:15 ]

46
Pour ceux qui souhaitent tenter l'expérience du "ssh" sur leur MPC LIVE/X, un lien d'une image du rootfs modifié pour activer ssh basée sur la version 2.4. Il faut disposer de l'utilitaire fastboot sur son ordinateur.

https://drive.google.com/open?id=1DYlFwQ5ElKaLnuQgDGbEXt7IDc6OHOen

C'est sans grands risques, car vous pouvez à tout moment reflasher l'image officielle Akai, mais je décline cependant toute responsabilité si vous vous plantez....Je l'ai déjà fait au moins 10 fois sur la mienne.

1. Télécharger et décompresser l'image dans un dossier, puis ouvrir une ligne de commande en mode root/administrateur sur ce même dossier.

2. Brancher le cable USB de la MPC sur votre PC. Rebooter la MPC en mode "update" (menu "Préférences", touche Shift, puis bouton "Update" en bas), comme pour une mise à jour Akai normale.

3. Vérifiez que la MPC Live est bien en mode "fastboot", en entrant la commande :

$ sudo fastboot devices       
Réponse >>A1XXXXXXXXXXXXX    fastboot

Vous devriez voir apparaître votre n° de série.

4. pour flasher le file system de votre MPC, et rebooter, entrez les commandes suivantes :

$ sudo fastboot oem inmusic-unlock-magic-7de5fbc22b8c524e
>>...
>>OKAY [  0.000s]
>>finished. to

puis flasher l'image décompressée (changer éventuellement le nom du fichier img):
$ sudo fastboot flash rootfs MPC2.4.0-rootfs-tkgl-v1.img
>>target reported max download size of 1879048192 bytes
>>erasing 'rootfs'...
>>OKAY [  3.631s]
>>sending 'rootfs' (409601 KB)...
>>OKAY [ 30.779s]
>>writing 'rootfs'...
>>OKAY [ 33.336s]
>>finished. total time: 67.745s


Rebooter la MPC
$ sudo fastboot reboot

Voilà. Si tout se passe bien, vous allez activer le WIFI dans les préférences, et vous obtenez l'adresse IP de votre MPC sur votre réseau. Puis vous entrez la commande :
$ ssh root@<adresse IP MPC>

Acceptez l'avertissement, et vous devriez normalement obtenir le prompt Linux.
# ls -l /


La modif est permanente.



[ Dernière édition du message le 09/03/2019 à 15:12:58 ]

47
Tu devrais te monter un site Web et regrouper toutes tes expériences.
Un tuto pour ceux qui ont foiré leur update, et qui ne savent pas comment relancer leur MPC, ça serait top je pense.

"Le monde se divise en deux catégories : ceux qui passent par la porte, et ceux qui passent par la fenêtre." (Tuco)

[ Dernière édition du message le 09/03/2019 à 15:47:00 ]

48
C'est cool que ça tourne sous linux !

Du côté de 'top' ça te semble utiliser tous les processeurs lorsque tu lance pas mal de plugins interne ou il y a encore de la marge côté cpu ?
Histoire de se faire une idée si elle est déjà à genoux ou si akai a moyen de mettre d'autre plugin dedans.
49

thekik , tu fait un boulot prodigieux... icon_bravo.gif

50
Bonjour, en tant qu'utilisateur d'une mpc live je trouve votre discussion super intéressante. J'aimerais savoir coder comme vous.