Journal L'équipe Magic Lantern embarque Linux sur les boitier Canon EOS

Posté par (page perso) . Licence CC by-sa
40
6
avr.
2015

Lors d'un précédent journal (Magic Lantern un projet open source trop discret?, j'avais évoqué le formidable travail des équipes de Magic Lantern concernant le hack du firmware des appareils photo Canon (entres autres). Ce firmware modifié permet d'ajouter des fonctions en mode photo ( par exemple l'intervallomètre, absent en natif et qui nécessite l'ajout d'un matériel supplémentaire) et surtout en vidéo (avec l'ajout d'un format non compressé ainsi qu'une palette d'outils que l'on trouve sur des caméras milieu de gamme/haut de gamme).

Alors qu'on pensait à une blague de premier avril (la blague, c'est que ce n'était pas une blague), l'équipe récidive dans l'exploit en faisant démarrer un système Linux sur des boitiers de ma gamme EOS ( 60D, 600D, 7D, 5D Mark II, et 5D Mark III).

Proof of concept

Tout a commencé lorsque l'équipe de développement à découvert un accès à l'affichage des appareils, et la question bête qui en a découlé : alors, pourquoi pas démarrer un autre os ? C'est chose faite, les vidéos montrent le démarrage d'un noyau Linux 3.19 sur plusieurs boitiers.

Alors évidemment, pour l'instant c'est très rudimentaire, mais c'est comme pour la plupart des proof of concept la perspective de grand potentiel. L'équipe de Magic Lantern tente régulièrement de contourner les limitations des boitiers via une surcouche logicielle, on peut imaginer qu'a terme, ils pourraient être capable d'amener un OS from scratch, basé sur GNU/Linux qui gère l'ensemble du boitier et qui lui amène une série de fonctionnalités avancées, une petite révolution.

Alors quid de la légalité ? A priori Canon tolère plus ou moins par omission les hacks de la communauté, elle se contente de mettre à jour le firmware pour mettre un terme a chaque hack (qui sont renouvelé a chaque fois), mais ce genre de nouvelle pourrait peut être obliger la firme à se positionner plus clairement (et a priori on sait de quel coté elle se rangera). Pour l'instant, Magic Lantern semble continuer à naviguer a vue dans ce flou. Après tout, c'est ce coté un peu "borderline" qui nous a tous poussés un jour ou l'autre au bidouillage, non ?

L'annonce
La video
L'article sur PetaPixel
L'article sur EOSHD

  • # Un gros oubli !

    Posté par (page perso) . Évalué à 3.

    J'ai oublié de le préciser, mais les sources de l'exploit sont disponibles, téléchargeables et utilisables sur le lien de l'annonce !

  • # For the win

    Posté par . Évalué à 2.

    J'ai pas mal utilisé Magic Lantern sur mon 650D et ils ont vraiment fait un travail admirable.

    En revanche, je suis un peu plus sceptique sur le fait de faire tourner un autre OS complet sur un reflex. En dehors de la réutilisation de code existant (et encore… on ne fera pas tourner gimp sur l'écran), la plupart des fonctionnalités d'un reflex restent limitées. Et le scripting Lua ajouté par ces braves gens de chez ML permet déjà de faire un peu ce qu'on veut. Sans compter que la plupart des limites dans lesquelles les devs butent aujourd'hui sont plutôt d'ordre matériel (comme comment utiliser le DMA pour balancer de la vidéo en RAW sur la carte SD) que logiciel.

    Mais joli exploit tout de même :).

    • [^] # Re: For the win

      Posté par (page perso) . Évalué à 4.

      Il y a un truc cependant qui m’intéresse, au delà de l’exploit, c’est que plusieurs développeurs de Magic Lantern ont annoncé vouloir collaborer avec Apertus et leur caméras Axiom, et puisqu’il y a déjà un firmware en développement pour les caméra Axiom, sera-t-il possible de porter ce firmware pour Canon ? Entre un noyau qui boote et une interface complète et tout ce qu’il faut pour prendre des clichés et les sauvegarder sur disque il y a un monde, mais ce travail est déjà en train d’être fait pour Axiom, et ce qui n’est pas encore fait devra l’être pour Axiom, même si personne ne fait rien pour Canon, alors pourquoi pas ? :-)

      ce commentaire est sous licence cc by 4 et précédentes

  • # Excellent !

    Posté par (page perso) . Évalué à 10.

    Linux sur EOS 5D Mark III

    ce commentaire est sous licence cc by 4 et précédentes

    • [^] # Re: Excellent !

      Posté par (page perso) . Évalué à 1.

      ahahah oui, ce n'est pas encore tout à fait au point

      • [^] # Re: Excellent !

        Posté par (page perso) . Évalué à 7. Dernière modification le 07/04/15 à 01:00.

        Si tu fais référence au kernel panic, c’est tout à fait normal, parce que l’init n’en est pas un en fait (c’est juste un hello world qui rend la main tout de suite et qui ne réagit pas comme un init), Linux n’a aucun problème ici et tourne très bien. Il faut juste mettre un vrai init maintenant, puis un userland etc. Mais ça ce sont les étapes suivantes. L’étape Linux est complètement réussie (mais oui, en s’arrêtant à cette étape, ça ne sert à rien qu’à frimer).

        ce commentaire est sous licence cc by 4 et précédentes

        • [^] # Re: Excellent !

          Posté par . Évalué à 10.

          Salut,

          J'hésite, on n'est pas vendredi.

          Bon, tant pis !

          Il faut juste mettre un vrai init maintenant

          Il faut juste mettre systemd maintenant

    • [^] # Re: Excellent !

      Posté par (page perso) . Évalué à 4.

      La vraie question : est-ce un Canon à noyau Linux qui a pris la photo du Canon à noyau Linux ? Ou as-tu numérisé ton écran d'appareil photo avec un scanner compatible Sane ?

      • [^] # Re: Excellent !

        Posté par (page perso) . Évalué à 4. Dernière modification le 07/04/15 à 11:19.

        Non, malheureusement j’a pris la photo avec un Nikon (mais avec un firmware patché grâce au projet Nikon Hacker, on sauve l’honneur).

        \_o{ kwak kwak

        ce commentaire est sous licence cc by 4 et précédentes

  • # À m'en dégoûter de mon Nikon...

    Posté par . Évalué à 1.

    Excellent, j'ai vraiment envie de revendre mon Nikon (et ses accessoires) afin de passer sur Canon. Moi qui manquais d'arguments pour apprécier le travail de cette marque (c'est de bonne facture certes mais qu'est-ce qu'ils proposent en plus/mieux ?)…

    Les fonctionnalités apportés sont elles les mêmes pour tous les modèles (j'imagine que non), si un expert passe par là peut-il m'indiquer un bon modèle pour faire de la vidéo (prise micro stéréo, stabilisateur, etc) ?
    Merci d'avance et longue vie au projet. :)

  • # "Alors quid de la légalité ?"

    Posté par . Évalué à 10.

    Je ne comprends pas que l'on commence à se poser la question alors que l'on ne parle que modifier un objet que tu as acheté ! On ne demande pas l'avis du fabricant si tu as envie de repeindre en vert, ou de mettre un coup de hache sur la table de ton salon !

    Ce qui peut être problématique, c'est la redistribution de code extrait du firmware, et l'implémentation d'un code fait par reverse engineering par la même personne, car la justice pense que le risque de recopie de code est trop grand.

    Il y la problème des nouvelles lois concernant le contournement de dispositif de protection "efficace", mais ce droit ne peut aller contre le droit à l'interopérabilité.

    "La première sécurité est la liberté"

  • # Réaction de Canon

    Posté par . Évalué à 3.

    Alors quid de la légalité ? A priori Canon tolère plus ou moins par omission les hacks de la communauté, elle se contente de mettre à jour le firmware pour mettre un terme a chaque hack (qui sont renouvelé a chaque fois), mais ce genre de nouvelle pourrait peut être obliger la firme à se positionner plus clairement (et a priori on sait de quel coté elle se rangera). Pour l'instant, Magic Lantern semble continuer à naviguer a vue dans ce flou. Après tout, c'est ce coté un peu "borderline" qui nous a tous poussés un jour ou l'autre au bidouillage, non ?

    J'ai pu rencontrer et discuter avec des gens de Canon Europe récemment et, bien entendu, j'ai lancé le sujet à propos des "hacks" Magic Lantern. Alors effectivement, c'est un sujet assez touchy chez eux. Pourtant, hormis les anciens boitiers, les bindings sont "tolérés". A priori (je n'ai pas pu tester malheureusement même si cela me tente véritablement), le 5D-Mk3 (et d'autres modèles) ont de meilleurs binding pour pouvoir surcharger le firmware de fonctionnalités supplémentaires. Maintenant, je me base que sur le propos d'un des gars de Canon qui me parlait de cela. De lui-même, prendre un Canon et rajouter les features Magic Lantern serait un plus, mais la direction est plus mitigée à ce sujet. Peut-être que cela changera au fur-et-à-mesure du temps.

    • [^] # Re: Réaction de Canon

      Posté par . Évalué à 3.

      Je ne sais pas si on aura mieux qu'une tolérance de la part du constructeur.

      Car je pense que d'une part, il y a un risque (même s'il semble minime) de panne à bricoler son appareil. Et si ce n'est pas détectable (je ne sais pas pour Magic Lantern, mais pour CHDK, le firmware est chargé en RAM, et lorsqu'on éteint l'appareil CHDK disparaît), le constructeur n'aura pas envie de voir le nombre de réparations sous garantie augmenter (mais d'un autre côté, si le constructeur donnait les spécificités, le risque serait encore plus négligeable). D'autre part, et c'est peut-être la raison principale, on se retrouve avec des fonctionnalités qui normalement ne sont disponibles qu'avec des appareils plus chers ou des accessoires. Du coup, il y a un risque de voir les modèles haut de gamme et les accessoires se vendre moins bien.

      D'un autre côté, un projet comme Magic Lantern peut amener des clients intéressés par les possibilités qu'apportent ce projet. Par exemple, moi je ne l'utilise pas car je n'ai pas de reflex, mais j'utilise depuis plusieurs années sont petit frère CHDK sur mon compact, et je ne pourrais plus m'en passer. C'est pourquoi si un jour je me décide à acheter un reflex, ce sera obligatoirement un modèle compatible avec ML. Si Canon empêchait ce type de modification, aucune chance pour que j'achète un de leur appareils.

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.