Journal Le matériel libre où en sommes nous ?

46
2
juin
2016
Ce journal a été promu en dépêche : Conception de matériel libre, où en sommes nous ?.

Bonjour à tous,

Comme certains d’entre vous le savent déjà, je suis fortement impliqué dans le développement de matériels libres. Par matériel, j'entends serveurs et consort. Je suis rentré il y a maintenant plus de 24 mois dans le projet Open Compute piloté par quelques géants de la silicon vallée qui ne sont pas toujours appréciés sur nos forums nous dirons, mais là n'est pas le problème.

Après ces 24 mois je voulais partager avec vous où nous en sommes. Après une période d'apprentissage de 12 mois, et d'essais en utilisant des logiciels propriétaires pour développer le projet ruggedpod (http://ruggedpod.qyshare.com), nous avons pris il y a 6 mois un virage à 180 degrés pour basculer sur des logiciels libres et construire le framework nécessaire au bon fonctionnement d'une communauté de développeurs matériels. Les principales raisons de ce choix se retrouvent dans les arguments classiques de prix et d'interropérabilités. Les échanges de données entres Solidworks et ProE sont catastrophiques tout comme entre Altium designer et Cadence.

Alors de quoi avons nous besoin ? De logiciels de mécaniques (pour faire les boitiers), de logiciels de simulations (thermiques pour vérifier que nos composants ne surchauffent pas, mécaniques des fluides, contrôle de qualité de signal, mécanique de structure), de logiciels de modélisation de cartes (EDA)

Nous avons à ce jour fait le choix du couple FreeCAD / KiCAD, qui gagnent grandement en maturité. Les deux ont besoins d'améliorations pour faciliter le travail collaboratif, ils ont tous les deux été conçu pour un poste utilisateur mais pas avec en tête l'échange de données, ni même le suivis de modifications nécessaire au travail en équipe repartis. En soit ce n'est pas grave, nous avons commencé à travailler sur l'implémentation de ces fonctions.

FreeCAD a un avantage par rapport à ces "concurrents", il intègre un module de calcul par élément fini (base sur le solveur CalculiX), ainsi qu'une interface avec un mailleur basé sur l'excellent couple Salomé/Netgen tout en conservant un modeleur 3D paramétrique accessible. Le logiciel est en développement, il est buggé mais il s'améliore de jour en jour. L'équipe de développement est accessible, n'hésitez pas à leur donner un coup de main si l'envie vous tente (développeur Python / C++ wanted)

KiCAD bénéficie du support du CERN et l'ajout de fonctions de trace length matching et de calcul d'impédance différentiel font de lui un "best seller" pour tout électronicien qui travaille sur des signaux hautes fréquences. L'ergonomie n'est pas encore tip top, mais les bases sont là.

Nous avons finalement porte l'intégralite du projet RuggedPOD sur ces outils et ça marche ! Bon on en a bave, on a rencontré des bugs et l'équipe m'a un peu charriée pendant qqs semaines, car il a fallu convaincre ingénieurs en mécaniques, électroniques et modélisation de basculer sur des outils non aboutis, mais au final n'importe qui peut maintenant nous donner un coup de main dans le développement de RuggedPOD et c'est une excellente nouvelle.

D'ailleurs où en sommes nous ? Et bien après de nombreux bugs (on y échappe pas), RuggedPOD semble enfin devenir fonctionnel et utilisable. Le problème majeur que nous avions rencontré provenait de fuite de gaz lié à la dépression que nous imposons au système (RuggedPOD est un chassis d'ordinateur qui fonctionne comme une boite a vide rempli au 2/3 d'huile), nous avons enfin trouvé l'erreur de design liée à l'emploi de rayon de courbure trop court sur les gorges de joints toriques. En basculant sur des joints plats et augmentant les épaisseurs matières, il semblerait que le problème disparaisse. On croise les doigts mais d'ici lundi nous aurons un bien meilleur retour.

Merci à CalculiX pour nous avoir apporté les courbes de distortion de matière liée au vide sur la paroi supérieur du POD.

Le matériel libre progresse, pas aussi vite que nous le souhaiterions, mais il progresse. Nous en sommes au stade du logiciel libre à la fin des années 90, il reste beaucoup de travail à accomplir, construire les outils pour simplifier les développements, mais aussi construire le modèle économique associé. A ce titre, la société pour laquelle je travaille (horizon computing solutions) a mis en ligne dernièrement un configurateur pour les équipements Open hardware. Il est dispo en beta, accessible à cette adresse https://sales.horizon-computing.com et vous permettra de vous faire une idée de ce que l'on peut faire à partir de matériel Open Compute et à quel prix.

Nous sommes en train d'y ajouter RuggedPOD. N’hésitez pas à tester tout cela et nous donner un coup de main pour améliorer l'ensemble !

Au plaisir de vous lire

vejmarie

  • # Dépêche !

    Posté par . Évalué à 3.

    Si tu as le temps et l'envie de plus de visibilité sur le site, je serai ravi de lire une dépêche sur le sujet avec une présentation de RuggedPOD et son historique

    Merci et bon courage

  • # Code Aster

    Posté par . Évalué à 1.

    Pour le calcul en libre, il y a surtout code ASTER et code SATURNE, avec lesquels tu peux utiliser SALOME (c'est EDF qui développe tout ça). Il parait que ça étale de loin les concurrents proprio mais ça ne se prend pas en main et deux secondes, c'est un vrai métier ingénieur calcul, d’autant que y'a pas trop de tuto sur ces logiciels.

    http://caelinux.com/CMS/

    • [^] # Re: Code Aster

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

      Bonjour,

      Oui je connais bien Aster, il y a aussi OpenFoam, Cast3M, TrioCFD etc … L'idee que l'on a dans FreeCAD c'est d'apporter une interface "simple" directement integre dans le logiciel de conception.

      vejmarie

      • [^] # Re: Code Aster

        Posté par . Évalué à 1.

        C'est sûr que l'intégration dans le logiciel FAO facilite les choses.
        Maintenant cela ne reste souvent que de l'informatif, comme le dit Binoyte le calcul F.E.M. est vraiment un métier à part entière.
        Sinon j'en profite pour mentionner Freelem qui bien que free n'est pas free, on se comprend, et permet du calcul de structure très performant.

    • [^] # Re: Code Aster

      Posté par . Évalué à 8.

      J'ai fait du calcul de structure professionnellement et j'ai à l'époque cherché avec beaucoup d'intérêt les alternatives libres existantes. Code Aster et Salomé sont effectivement développés et maintenus par EDF, ce qui les rend très intéressants.

      Code Aster est absolument fabuleux ! Dur à maitriser mais une fois l'apprentissage passé, les possibilités offertes sont énormes. J'ai également adoré la documentation (en français ! La traduction automatisée en anglais est plutôt bancale, ce qui rend malheureusement le logiciel quasi-inutilisable par des non-francophones), c'est une véritable mine d'or qui contient également les "manuels de référence" (Formulation des phénomènes modélisés, méthodes d'analyse, algorithmes numériques). Je la recommande chaudement comme source d'information à tous les étudiants en mécanique / thésards / ingénieurs qui s'intéressent à la question. La documentation est fournie sous licence GNU FDL (que je ne connaissais pas), dommage que les sources ne soient pas fournies, on pourrait imaginer une version web de la doc beaucoup plus conviviale à parcourir que des dizaines (centaines ?) de fichiers pdf.

      Concernant Salomé, j'ai essayé à plusieurs reprises de l'utiliser. J'ai à chaque fois été saisi par une violente envie de jeter mon ordi par la fenêtre en moins de quelques heures. C'est malheureux à dire mais l'interface est extrêmement déplaisante, aussi bien visuellement qu'en terme d'ergonomie. Le diable est dans les détails. Les détails s'accumulent et le logiciel est au final extrêmement frustrant à utiliser. On est à des années lumières de la productivité que les solutions propriétaires offrent, d'où son adoption très faible dans l'industrie en dépit de l'avantage que lui confère sa "gratuité" par rapport au coût exorbitant des logiciels propriétaires sur le marché.

      J'avais envie de me lancer dans une dépêche sur Code Aster, il n'y a eu jusqu'à présent que de courtes annonces de la libération du code. La ravalement de façade récent du site officiel pourrait être une excellente occasion d'en parler plus en profondeur. N'hésitez pas à me le signaler si vous voulez y participer !

      • [^] # Re: Code Aster

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

        J'avais envie de me lancer dans une dépêche sur Code Aster

        il y a la rédaction collaborative pour cela (à toi de recruter et déjà d'apporter la matière).

        Pour salome, je te rejoins :/ c'est un modèle de la R&D de EDF qui fonctionne moins bien…

        Que cela ne t'empêche pas de contribuer sur aster, calibre ou autre sujet intéressant, ces deux derniers étant mis en avant tant aux RMLL qu'au fosdem (non, je n'ai pas parlé de scibian). Bref, lance-toi, tu n'es pas le seul à connaître le sujet.

  • # CAO en SAAS

    Posté par . Évalué à 3. Dernière modification le 02/06/16 à 11:06.

    À signaler, bien que ça sorte du domaine du logiciel libre, Onshape, logiciel de CAO en Software As A Service, gratuit pour les petits projets mais pas libre. C'est fait par une entreprise qui a été créée par le géniteur de SolidWorks, et on y accède par l'intermédiaire d'un navigateur, une des contrainte étant que l'utilisation de WebGL soit possible. (Par exemple sur mon HP Probook W7 du travail qui dispose d'une carte Radeon, pas moyen bien que WebGL soit activé, sur le PC orienté CAO, W7, Xeon, NVidia Quadro d'un copain de travail, bien évidemment ça fonctionne, et chez moi sur un dérivé fanless d'un Intel Nuk, carte graphique Intel donc, Debian, ça marche très bien aussi.)

    Je ne sais pas si ce genre de choses est transposable au libre, ou plutôt si, difficilement pour le moins. Le gros avantage de ce genre d'architecture est la mise à jour continue et transparente qui permet de dépasser les problèmes d'administration, déploiement et mises à jour. Le problème concerne toutes les inquiétudes que l'on peut avoir concernant les logiciels et les données hébergés dans le cloud. Il faut noter, si j'ai bien compris, qu'il est possible de sauvegarder en local, sous plusieurs formats possibles les projets créés.

    Pour une utilisation professionnelle illimitée, cela coûte cent dollars par mois, ce qui est nettement moins qu'un SolidWorks mis à jour tous les deux ans. Je ne suis pas sûr que la productivité qu'on peut en attendre, au moins pour le moment, soit comparable.

    Voilà, ces informations sont maigres. Je lance le sujet en espérant susciter le débat pour éclairer ma lanterne. Une des questions que je me pose est la suivante : est-il possible de déployer une application libre, pas forcément de CAO, dans le cloud, en mode SAAS ?

    • [^] # Re: CAO en SAAS

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

      Je confirme onShape est un bon outil, on peut aussi citer upverter (http://www.upverter.com), mais ces outils restent sur un modele economique "complexe". Leur gratuite n'en garantie pas la pérennité, et les investissements en temps lorsque l'on fait du hardware sont enormes pour constituer par exemple les bases de references de composants. Si ces societes se font rachetees ou changent de modeles economiques certains travaux communautaires peuvent se retrouver en difficultes. Le cas ideal serait que onshape et upverter fournissent une plateforme a une fondation a but non lucratif pour supporter les travaux communautaires garantissant une certaine perennite, mais ce n'est pas encore le cas.

      L'autre probleme reste aussi la latence qui est parfois un cauchemard a l'usage. On a donc plutot decide d'utiliser des clients lourds que l'on adapte a nos besoins. Meme si WebGL est une vrai avancee, il y a un travail de titan pour faire fonctionner correctement des logiciels de type CAO dans le navigateur et a la fin le poste client requiert le meme niveau de performance que si il faisait tourner un client lourd sans en avoir la flexibilite.

      Je ne suis sincerement pas ferme a ces evolutions technologiques mais ces limitations sont pour le moment un frein pour moi a ces services que d'autres ne rencontreront peut-etre pas ;).

      • [^] # Re: CAO en SAAS

        Posté par . Évalué à 3.

        " l'on fait du hardware sont enormes pour constituer par exemple les bases de references de composants"

        Je n'ai jamais compris pourquoi il fallait toujours redessiner l'empreinte d'un composant, alors que les boitiers suivent tous des standards (DIP, SO,…). Un composant devrait simplement référencer ce genre d'empreinte, et permettre de nommer les pins.

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

        • [^] # Re: CAO en SAAS

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

          Malheureusement l'industrie entretien son business en creeant sans cesse de nouveaux boitiers, et/ou en ne respectant pas parfaitement les formats standards. La connectique est un bon exemple de catastrophe ou les empruntes sont vraiment differentes entre deux connecteurs RJ45 par exemple, pareil pour les sockets intel. Les fabricants de slots memoire arrivent a ne pas se mettre d'accord sur l'emplacement de la pin de centrage mecanique etc etc … C'est globalement du protectionisme malheureusement.

          • [^] # Re: CAO en SAAS

            Posté par . Évalué à 3.

            Malheureusement l'industrie entretien son business en creeant sans cesse de nouveaux boitiers, et/ou en ne respectant pas parfaitement les formats standards …

            Mais du coup ne serait-ce pas justement le but de l'open hardware d'éliminer ces comportements protectionnistes ?

            kentoc'h mervel eget bezan saotred

  • # KiCad collaboratif

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

    C'est une très bonne nouvelle que quelqu'un se penche enfin sur le travail collaboratif et le suivi de modifications avec KiCad. Même en l'utilisant tout seul pour quelques modestes projets open hardware, c'est quelque chose dont j'aurais bien besoin (mais pas assez pour avoir commencé à développer quelque chose).

    Merci!

  • # Materiel libre ?

    Posté par . Évalué à 5.

    Juste pour bien comprendre, tu entends quoi par matériel libre ?
    Châssis serveur au design libre ?
    Circuits des cartes électronique libre ?
    Plans du processeur libre ?

    Les clients de horizon computing solutions sont uniquement des entreprises, ou je peux acheter un (seul) serveur (à pas cher !) en tant que particulier ?

    • [^] # Re: Materiel libre ?

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

      Le cas ideal l'ensemble des fichiers qui permettent de reconstruire une plateforme. Chacun des sous composants pouvant etre proprietaires ou libres a partir du moment ou leurs specifications permettent de construire un systeme.

      On a un peu le meme cas avec les logiciels libres qui peuvent etre integres (ou pas en fonction de leurs licences ) dans des codes proprietaires.

      On est oblige de faire comme ca au debut, car il n'existe aucune legacy. Maintenant de notre cote on essaie de tout faire en libre (sur le cote processeur on est encore tres tres loin), mais deja le chassis (avec les etudes associes), les circuits electroniques (backplane etc).

      Pour la partie processeur il faut disposer d'un jeux d'instruction et rien que ca c'est pas simple a recuperer, mais on y travaille.

      Horizon vend a toute personne qui souhaite nous acheter nos produits (en dehors de certains pays dans lesquels la legislation ne nous y autorise pas). Les serveurs dont nous disposons sont un peu bruyant pour un particulier ;), mais apres ca depend de l'usage comme on dit !

      • [^] # Re: Materiel libre ?

        Posté par . Évalué à 10.

        Juste pour réagir à ta remarque concernant les processeurs libres. C'est un sujet si l'intéressé énormément depuis bien longtemps. Du coup lors du derniers ELC, j'ai été très agréablement surpris par la présentation de l'équipe du J2. C'est gens ont compris pas mal de problème (efficience du jeu d'instruction, brevets, compilateur et portage d'os). Ils viennent juste de release leur premier code en vhdl sous licence bsd et sans brevet aucun sur leur site: http://0pf.org/.

        Pourquoi c'est intéressant, parce que en faite ils ne font que reimplenter le super Hitachi ! Version 2 pour l'instant, mais la 4 devrait arriver en fin d'année, car les brevets auront tous expiré à ce moment la. Ils ont juste rajouter quelque primitive supplémentaire pour permettre le smp en se basant aussi sur une vieille architecture dont les brevets ont expiré. Du coup, on se retrouve avec une architecture complètement libre, plus efficace que arm et au niveau d'Intel sur la densité de code (arm avait à l'époque pris une licence des brevets d'Hitachi pour implémenter l'extension thumb). Cerise sur le gâteau, gcc et linux, voire même certaine distribution supporte déjà cette plateforme !

        Enfin le coup de production part d'ancienne fab permet d'atteindre facilement 250MHz pour 25000$ par wafer. A priori, c'est le moment avec le ralentissement en Chine pour faire de petit batch. Toujours d'après les mêmes membre de l'équipe, ils sont déjà à un coup par cpu largement inférieur à arm du fait de l'absence de licence (sans compter le support logiciel). J'attend avec impatience de voir le multi coeur J4 !

        • [^] # Re: Materiel libre ?

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

          Pas mal en effet, je ne connaissais pas ce projet. Il y en a un autre https://riscv.org/, pour ceux qui connaissent mon passe il y a une architecture qui m'interesse beaucoup plus mais qui n'est pas encore libre :(.

          • [^] # Re: Materiel libre ?

            Posté par . Évalué à 3.

            Oui, tout aussi interressant. Les auteurs du J2 ont d'ailleurs discuste avec l'equipe de riscv avant de partir sur le J2 et c'est sur leur recommendation qu'ils sont parti sur l'architecture du super hitachi. Mais partir de zero est bien plus complex et couteux, sans compter les risques des brevets qui sont plus difficile a trouver. Pas forcement un probleme pour le RISCV qui se veut plus une architecture pour la recherche.

            Sinon tu penses a quelle architecture ?

  • # 404

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

    • [^] # Re: 404

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

      Exact on a quitté openproject de par la taille du système notre vm est limité à 8gb de storage. On a basculé sur un kanban like.

Suivre le flux des commentaires

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