Aller au contenu

GO Print

MoMotte

Membres
  • Compteur de contenus

    4
  • Inscrit(e) le

  • Dernière visite

Information

  • Imprimantes
    U20 one

Visiteurs récents du profil

Le bloc de visiteurs récents est désactivé et il n’est pas visible pour les autres utilisateurs.

Récompenses de MoMotte

Newbie

Newbie (1/14)

  • First Post
  • Conversation Starter
  • Week One Done
  • One Month Later
  • One Year In

Badges récents

1

Réputation sur la communauté

  1. MoMotte

    Octoprint + SmartPlug

    Hello, Je réponds sur ce thread car je me suis battu il y a quelques jours avec une tuya cheap d'amazon donc j'ai du investiguer un peu le sujet. Octoprint contrôle bien le smartplug mais la fiabilité est variable et clairement, je ne recommencerais pas et je me tournerai plutôt vers une solution octoprint + relai à l'avenir. L'idée de base du contrôle des tuya est de récupérer un identifiant et une clée de chiffrement lors de l'enrollement de la prise dans le cloud Tuya/SmartLife, la fameuse paire productId/localKey. Visiblement @spacerabbit37 a réussi sous Android avec la méthode du proxy SSL. Je n'avais pas exactement la même app mais je n'ai pas réussi de cette façon. J'ai trouvé deux outils qui permettent l'extraction de la clé, tuyapi en nodeJs et pytuya en python. Le plugin TuyaSmartplug d'Octoprint dépend de pytuya. Les différentes approches sont documentées ici. J'ai tenté via les logs Android mais je n'y récupérais que le productId, la localKey restait introuvable. J'ai finalement réussi à récupérer une paire correcte avec cette méthode, sous Linux. J'imagine que c'est faisable sur Windows aussi mais comme c'est en ligne de commande ... Evidemment, ça ne suffit plus XD (mais ça devrait bientôt arriver). A ce moment, le plugin ne contrôle toujours pas la prise. En testant la prise avec mon smartphone, j'aurai déclenché une mise à jour (silencieuse) du firmware du smartplug qui change le protocole de communication. Les devs de tuyapi ont clairement identifié la cause du problème : https://github.com/codetheweb/tuyapi/issues/175 et pytuya a mergé le support du nouveau protocole https://github.com/clach04/python-tuya/commit/bee5b97e726425059c32b8191f7147e01bf0c3c2 après coup. TuyaSmartplug dans mon octoprint tire pytuya 7.0.2. Le support du nouveau protocole est dans pytuya 7.0.4 qui n'est visiblement pas arrivé dans pipy et pour le moment le plugin n'en a pas connaissance. Au bout d'un long moment, partant d'un Octoprint sans TuyaSmartplug d'installé : * ssh octoprint * git clone https://github.com/ziirish/OctoPrint-TuyaSmartplug * git clone https://github.com/clach04/python-tuya * source oprint/bin/activate * pip install -e . dans le dossier cloné de pytuya * 2 lignes de code à modifier pour un support basique (setup.py et octoprint_tuyasmartplug/__init__.py voir patch). C'est du python, attention à l'indentation. * pip install -e . dans le dossier cloné de TuyaSmartplug * reboot * It works. Bon c'est brutal, ça va casser le support des prises avec une autre version du protocole mais dans mon cas je n'en avais qu'une qui ne marchait pas. Vu l'avancement du sujet, j'imagine que c'est une question de semaines/mois avant que tuyasmartplug ne supporte correctement le protocole. Mais bon, vu que ce n'est pas encore le cas et qu'il suffit d'une mise à jour silencieuse pour se retrouver coincé ... diff --git a/octoprint_tuyasmartplug/__init__.py b/octoprint_tuyasmartplug/__init__.py index 068aea2..2cfb3d3 100644 --- a/octoprint_tuyasmartplug/__init__.py +++ b/octoprint_tuyasmartplug/__init__.py @@ -209,6 +209,7 @@ class tuyasmartplugPlugin(octoprint.plugin.SettingsPlugin, self._tuyasmartplug_logger.debug('Sending command: %s to %s' % (cmd, plugip)) plug = self.plug_search(self._settings.get(["arrSmartplugs"]), "ip", plugip) device = pytuya.OutletDevice(plug['id'], plug['ip'], plug['localKey']) + device.set_version(3.3) commands = { 'info': ('status', None), diff --git a/setup.py b/setup.py index fa8e00b..d537e0d 100644 --- a/setup.py +++ b/setup.py @@ -34,7 +34,7 @@ plugin_license = "AGPLv3" # Any additional requirements besides OctoPrint should be listed here plugin_requires = [ - 'pytuya==7.0' + 'pytuya' ] ### --------------------------------------------------------------------------------------------------------------------
  2. Err, effectivement du coup, https://gofile.io/?c=QwaLZe Bon après il me semble bien qu'il n'y ait rien de très croustillant dans la sd mais bon, faut bien démarrer.
  3. Hello, remonte dans le thread, ça a déjà été linké.
  4. Hello, J'ai reçu ma U20 One hier, je joue avec tranquillement. J'ai imprimé le teletubbies de test en premier print, 3h pour 6cm de fugliness blindé de défauts. Je découvre l'impression 3d, c'est assez génial Sinon coté firmware, c'est nouveau ça non ? Il me semble que la cible du lien que @3d.taze indique arrive là maintenant : https://www.gearbest.com/blog/download/alfawise-u20-one-3d-printer-firmware-pack-7293 alors qu'avant c'était un dropbox ou assimilé. Selon la page "About" de l'imprimante, je suis passé de la version/build 197 à 217. En l'absence de changelog, c'est le changement le plus important que j'ai pu observer Il y a en plus du firmware un package pour un thème d'UI ou quelque chose du genre. J'ai pas eu le temps de m'habituer à la version initiale pour voir la différence. J'ai lu en diagonale qu'il est possible de créer un theme soi-même, avis aux amateurs. D'ailleurs l'update du thème utilise du gcode, peut-être quelque chose d'intéressant à dénicher.
  5. MoMotte

    Bonjour

    Je vais recevoir une U20 one la semaine prochaine et je suis assez impatient de m'y mettre Cela fait déjà quelques jours que je parcours avec grand intérêt les diverses sections liées à l'U20 notamment les parties ventilations et le portage de Marlin. Chapeau o// Je suis développeur donc je suis intéressé pour participer à un effort similaire pour la U20 One, je ne travaille pas d'habitude à si bas niveau mais l'expérience me dit bien. Dans l'idée, mon premier gros chantier sera de prendre en main et modifier l'imprimante pour maximiser silence et qualité d'impression. Mon second gros chantier sera de bricoler un casing autour d'un panneau LCD récupéré d'un laptop, potentiellement sur batteries. C'est en parti pour cette idée que je suis parti sur la U20 One à cause de son volume d'impression vu que je voulais tester avec un panneau de 15" et un 17".
×
×
  • Créer...