Se connecter
Se connecter

ou
Créer un compte

ou
FR
EN

Ouvrir un mode console Linux sur la MPC Live

  • 88 réponses
  • 24 participants
  • 13 154 vues
  • 29 followers
Sujet de la discussion 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 sujet de la discussion
26
Citation de thekik :

C'est relativement simple à implémenter, mais effectivement, mieux vaut attendre un update officiel. Tous les canaux MIDI IN sont routés vers la piste active pour l'instant. Et pas de MIDI OUT reconnus pour les interfaces USB externes.

J'ai du mal a comprendre leurs méthodes consistant à mettre un produit sur le marché non fini tout en sachant qu'ils vont l'updater au fil de l'eau ! Le process semble exactement le même pour la Force ( d'ailleurs ils annoncent l'update sur la page officiel du produit ). Je sais qu'on a du mal à trouver des devs mais quand même ....

Citation de thekik :

Je suis en train de préparer une image de la 2.4 pour activer le SSH au boot sans avoir besoin de démonter quoi que ce soit. J'ai aussi reçu ma Tinker Board , une carte de développement genre Raspberry Pi, basée sur le même chipset RK3288 que la MPC Live. Je suis curieux de voir si je peux faire tourner le soft MPC là-dessus...
T'es dingue :bravo::bravo:;)

x
Hors sujet :
Hors sujet mais, j'ai l'impression qu'il y a pas mal de shop qui sont en rupture de la Live. Même Thomann annonce une semaine de délais

[ Dernière édition du message le 02/03/2019 à 11:04:23 ]

27
Citation :
J'ai du mal a comprendre leurs méthodes consistant à mettre un produit sur le marché non fini tout en sachant qu'ils vont l'updater au fil de l'eau ! Le process semble exactement le même pour la Force ( d'ailleurs ils annoncent l'update sur la page officiel du produit ). Je sais qu'on a du mal à trouver des devs mais quand même ...

La décision de sortir une release est un compromis entre les fonctionnalités implémentées et celles souhaitées dans le logiciel. Pourquoi ? Car le temps développement d'un logiciel est trés long.
Akai Force = 6 ans de développement. Je crois que c'est un temps déjà trés long.
Si tu souhaites implémenter toutes les features request d'un produit alors tu peux trés bien ne jamais le sortir.

De plus quand tu regardes les features request (notamment chez Microsoft) des utilisateurs alors tu te rends comptes qu'il y a des milliers de demandes. Quelquefois elles sont mêmes incompatibles entre elles. Donc dire "je veux telle fonctionnalité" implique en fait bcp plus de chose que ce que l'utilisateur croit. Et je ne parle pas des contraintes marketing.
28
Citation de dsy :
Citation :
J'ai du mal a comprendre leurs méthodes consistant à mettre un produit sur le marché non fini tout en sachant qu'ils vont l'updater au fil de l'eau ! Le process semble exactement le même pour la Force ( d'ailleurs ils annoncent l'update sur la page officiel du produit ). Je sais qu'on a du mal à trouver des devs mais quand même ...

La décision de sortir une release est un compromis entre les fonctionnalités implémentées et celles souhaitées dans le logiciel. Pourquoi ? Car le temps développement d'un logiciel est trés long.
Akai Force = 6 ans de développement. Je crois que c'est un temps déjà trés long.
Si tu souhaites implémenter toutes les features request d'un produit alors tu peux trés bien ne jamais le sortir.

De plus quand tu regardes les features request (notamment chez Microsoft) des utilisateurs alors tu te rends comptes qu'il y a des milliers de demandes. Quelquefois elles sont mêmes incompatibles entre elles. Donc dire "je veux telle fonctionnalité" implique en fait bcp plus de chose que ce que l'utilisateur croit. Et je ne parle pas des contraintes marketing.


J'entends ce que tu dis, et pour avoir bosser dans le dev il y a maintenant quelques années j'approuve tes dires. Il y a quand même eu pas mal de frustration chez ceux qui l'ont acheté des sa sortie, frustration qui se lève au fil des updates. Après c'est vrai qu'on en veut toujours plus et qu'on est jamais satisfait. Les besoins des uns n'est pas toujours ceux des autres ... c'est vrai aussi et au final c'est pareil chez les autres fabricant. Quand tu lis les commentaires, c'est pas mieux chez Native par ex. Ça me rappel le première Iphone ou Apple n'avait pas implémenté la fonction copier/coller. :8O: ( Bon a la fois s'était le premier smartphone ), mais quand je lis qu'il n'y a pas de mode "Song" sur la Force ... j'avoue que ça me surprend un peu ... Ça me semble une users requests essentielle.

[ Dernière édition du message le 02/03/2019 à 12:45:27 ]

29
Développer du soft c'est long bien sûr...mais il ne faut pas perdre de vue la logique commerciale...
On verrouille certaines features pour les activer dans un produit plus haut de gamme...
Approche mise en oeuvre depuis des lustres par d'autres industries (ex : télécom, automobile..).

Je trouve qu'Akai reste correct malgré tout. Les produits valent largement le prix payé, et ils ont fini par livrer des updates costauds sur la MPC Live/x comme la 2.3 et la 2.4. J'espère que cela continuera mais on peut légitimement se poser la question avec l'arrivée de Force !

Maintenir 2 lignes de production logiciel, c'est coûteux. Le soft de la Live et de la X sont les mêmes. Pas celui de la Force. A moins que tout cela merge vers une version "versatile" qui lance les bons executables en fonction de l'id produit...A leur place, c'est ce que je ferai pour optimiser les coûts de build et de run !
Le "core" hardware (Radxa Rock2 Square - RK3288 CPU) est le même. Seul es les cartes contrôleurs diffèrent (ex : CV Gates sur la X, 64 Pads sur la Force, etc...).

30
Citation de thekik :
A moins que tout cela merge vers une version "versatile" qui lance les bons executables en fonction de l'id produit...A leur place, c'est ce que je ferai pour optimiser les coûts de build et de run !
Il me semble avoir lu quelques part ( sur gearslutz.com mais pas sure ) que c'est ce qui était prévu ... Maintenant je ne veux pas croire qu'Akai délaisse le Mpc'iste au profit des utilisateurs de la Force ( j'espère ).
31
Ca repondra au quelques post precedent sur les raisons de ne pas avoir eu le midi multitimbral (en resume ca n'etiat pas leur focus car ils pensaient que ca serait le centre d'un setup), et aussi qu'ils vont clairement le faire (xparis bosse pour akai):
https://www.gearslutz.com/board/showpost.php?p=13810856&postcount=15100

et aussi on voit bien que dans akai, il y a souvent des discussions sur les priorites, sans accord. Comme d'habitude d'ailleur dans toutes les entreprises
https://www.gearslutz.com/board/showpost.php?p=13797056&postcount=14931

"Le succès, c'est d'aller d’échec en échec sans perdre son enthousiasme"

32
Citation de yomanfree :
Ca repondra au quelques post precedent sur les raisons de ne pas avoir eu le midi multitimbral (en resume ca n'etiat pas leur focus car ils pensaient que ca serait le centre d'un setup), et aussi qu'ils vont clairement le faire (xparis bosse pour akai):
https://www.gearslutz.com/board/showpost.php?p=13810856&postcount=15100

et aussi on voit bien que dans akai, il y a souvent des discussions sur les priorites, sans accord. Comme d'habitude d'ailleur dans toutes les entreprises
https://www.gearslutz.com/board/showpost.php?p=13797056&postcount=14931



Tout est dit :) Merci @yomanfree
33
Flag par ici, j'adore ce genre de hack bien joué ! :bravo:
34
Quelques photos haute déf de l'intérieur de la MPC Live.
A noter les deux switches Reset et Recovery.
Le recovery fait basculer en "Update mode", quand on le maintient tout en allumant la MPC, puis en le relâchant.
Difficile d'y accéder de l'extérieur mais pas impossible.
Bon à savoir en cas de mise à jour qui se plante...c'est arrivé à certains.
Ce petit bouton peut éviter un retour en SAV chez Akai...

akai-mpc-live-2552517.jpg

akai-mpc-live-2552515.jpg
35
Je comprends l'utilité du "Reset", mais "Update Mode" je ne vois pas ?
36
comme dit plus haut, en cas de plantage lors d'un upgrade, ça te remet en update mode directement, tu recharges le dernier OS( enfin, celui que tu veux) et zou, ça evite de reset, et faire la MAJ, ça fait gagner du temps;)

PK crew( à l'abandon) / Mixcloud / 3'ks

En vrai t'es Eddie Barclay avoue :oops2:

37
Les 2 connecteurs non peuplés à droite de la première photo concernent HDMI & Ethernet (natif sur le RK 3288).
Par ailleurs, Il est quasi impossible de "bricker" une MPC Live/X (il faut vraiment le faire express !).

[ Dernière édition du message le 08/03/2019 à 10:31:22 ]

38
Un pti mode avec écran externe ! :8O::bave:
39
akai-mpc-live-2553802.jpg

Vu sur Al.....ss. Cette carte a exactement les mêmes spécifications que la carte interne MKS utilisée par Akai pour la Live,la X et la Force.

40

icon_exorbite.gif 
donc potentiellement, tu sais quasiment re-fabriquer une Live en lui injectant le code source d'origine... (oui, pas légal, blabla... mais c'est de la recherche là, pas du piratage pour profit $, pas la même démarche ni les mêmes conséquences, personne ne va se fabriquer sa Live maison!)
beau boulot de hacking, bravo l'artiste... icon_bravo.gif
c'est grace à des initiatives et des recherches comme ça qu'on comprend et connait mieux nos machines, vive les chercheurs !

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
En gros c’est vachement bien foutu quoi :oops2::-D
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.