Gladys 4 - Entwicklung des Arduino-Dienstes

@billona Danke für deine Erklärungen! Jetzt verstehe ich es besser, alles was du gemacht hast ist super :slight_smile:

Oh gut beobachtet, die Tabelle fehlt in dieser Modellierung. Ich denke, es gibt einige Unterschiede zwischen der tatsächlichen Implementierung und dieser „vorausschauenden“ Modellierung, die ich zu Beginn gemacht habe. Ich mache mir nicht immer die Mühe, die Modellierung bei jedem Commit neu zu erstellen/zu exportieren, das gebe ich zu ^^

Ich habe ein GitHub-Issue erstellt, um mich daran zu erinnern, die Modellierung neu zu erstellen:

https://github.com/GladysAssistant/gladys-4-docs/issues/13

Was mich gestört hat, ist die Bezeichnung „Sub-Service“. Es gibt bereits Dienste in Gladys, und das ist etwas anderes. Ich denke, du solltest umbenennen, zum Beispiel in „function_to_call“.

Ich mag die Idee von @benPi, wenn wir zum Beispiel etwas sehr Offenes machen würden, zum Beispiel:

{
  "function_name": "send_433_code",
  "parameters": [
         12345
   ]
}

Dann hätten wir tatsächlich ein generisches .ino mit generischen Funktionen, die in Gladys codiert sind (und der Benutzer weiß nichts davon)

Aber in einem zweiten Schritt (nicht jetzt), können wir die Möglichkeit hinzufügen, dass der fortgeschrittene Benutzer das Basis-.ino ändern und Funktionen hinzufügen kann.

Was denkst du darüber?

Schau dir den Body der Antwort an, die Fehlermeldung ist darin enthalten.

Das ist wahrscheinlich ein Bug, ich habe ein GitHub-Issue erstellt, um die Ursache zu untersuchen:

Ja, tatsächlich, danach ist es vor allem eine Frage des verwendeten Vokabulars, aber die Idee hinter diesen Unterdiensten war genau das :smile:
Ich korrigiere das noch heute.

Die Idee gefällt mir sehr! Ich werde zunächst die .ino-Datei ändern, die ich in Gladys 3 verwendet habe und die mir als gute Basis erscheint. Dann haben wir einen ersten generischen Code.

Das Problem ist gelöst, ich habe viel recherchiert, aber es hat sich gelohnt ^^

Also, kleiner Punkt:

In Bezug auf die Benutzeroberfläche sieht die aktuelle Darstellung wie folgt aus:

In Bezug auf die Datenbank haben wir dann das:

Ich habe die Berücksichtigung der IR- und 433-MHz-Codes hinzugefügt, die jetzt in der Datenbank gespeichert werden, wobei ich für die Chacon-Steckdosen die Sorgfalt aufgebracht habe, zwei ON/OFF-Codes zu berücksichtigen.
Ich verbessere die Benutzeroberfläche weiter, aber für mich sind wir am Ende, ich habe daher begonnen, ein wenig an der Backend-Arbeit zu arbeiten, um Kommunikationen mit dem Arduino zu erstellen :wink:

Wow! Das ist alles wirklich sehr sehr gut :smiley: Großartige Arbeit!

Ok, ich würde vorschlagen, diese ganze Sub-Service-Geschichte umzubenennen, wir können stattdessen von « Funktion » sprechen, die aufgerufen wird :slight_smile:

Das ist sehr sauber, wirklich tolle Arbeit :clap:

Fantastisch!

Ehrlich gesagt, super Ansatz, wir kommen für mich zu einem super Service :slight_smile: Ich kann es kaum erwarten, das in Gladys zu sehen!

Vielen Dank @pierre-gilles, das freut mich sehr zu lesen :smile:

Was das Umbenennen der „Unterdienste“ in „Funktionen“ betrifft, ist das erledigt.

Jetzt versuche ich, die Typen und Kategorien der Features für jede Funktion zu regeln.

Zum Beispiel, in Gladys 3, für ein Device, das ein IR-Signal senden sollte, hatte ich einen einfachen Push-Button, auf den ich nur drücken musste, um den Code an den Arduino zu senden. Aber ich habe noch nicht die richtige Konfiguration gefunden, um das in Gladys 4 zu machen. Könntest du mich bitte darauf hinweisen?

Es gibt das noch nicht :slight_smile: Man müsste es einfach erstellen!

Okay, ich schau mal ^^

Ich habe einen ersten Arduino-Code gepusht, den ich noch überarbeiten werde. Aber dieser erste Code ermöglicht die Übertragung im 433-MHz-Bereich mit dem standardisierten JSON, das wir weiter oben vorgestellt haben ^^ Ich werde ihn anpassen, um die Länge des Codes (standardmäßig 24) zu berücksichtigen, und dann die anderen Funktionen anpassen :wink:

Eine andere Sache, die ich gerade suche, ist, dass ich eine Aktion ausführen möchte, wenn sich die Werte meines Geräts ändern. Wo kann ich das verwalten?

Lass dich von den anderen Diensten inspirieren, zum Beispiel dem Code von Philips Hue:

Du musst eine Funktion setValue exponieren.

Gut, hier ist sie! Die Funktion ist exponiert :smile:

Hier sind die ersten Logs:

2020-05-12T16:55:35+0200 <debug> scene.executeSingleAction.js:15 (SceneManager.executeSingleAction) Ausführen der Aktion vom Typ device.set-value
2020-05-12T16:55:35+0200 <debug> device.setValue.js:15 (ArduinoManager.setValue) arduino: Wert ändern!! Neuer Wert => 0
2020-05-12T16:55:35+0200 <debug> device.setValue.js:16 (ArduinoManager.setValue) { id: '9679f014-f5df-45aa-ad05-f0405f90038f',
  service_id: '683503cf-c265-480d-a410-6dede6301116',
  room_id: 'e3f0189d-e0a9-4c50-8089-d0bd5ea87301',
  name: 'test',
  selector: 'test',
  model: null,
  external_id: '852d2ed6-3afb-46f2-b879-8cf3bcb50189',
  should_poll: false,
  poll_frequency: null,
  createdAt: 2020-05-12T10:06:44.351Z,
  updatedAt: 2020-05-12T10:06:44.351Z,
  features:
   [ { id: '88bd694c-4748-4ce6-8afc-c0aeaed034c7',
       device_id: '9679f014-f5df-45aa-ad05-f0405f90038f',
       name: 'test',
       selector: 'test',
       external_id: '852d2ed6-3afb-46f2-b879-8cf3bcb50189',
       category: 'switch',
       type: 'binary',
       read_only: false,
       keep_history: false,
       has_feedback: false,
       unit: null,
       min: 0,
       max: 1,
       last_value: 1,
       last_value_string: null,
       last_value_changed: 2020-05-12T14:54:59.415Z,
       createdAt: 2020-05-12T10:06:44.410Z,
       updatedAt: 2020-05-12T14:52:19.804Z } ],
  params:
   [ { id: '9f8a3be3-214a-4010-a44d-7bf36c421504',
       device_id: '9679f014-f5df-45aa-ad05-f0405f90038f',
       name: 'DATA_PIN',
       value: '2',
       createdAt: 2020-05-12T10:06:44.429Z,
       updatedAt: 2020-05-12T10:06:44.429Z },
     { id: '78d63e83-2d83-4c5c-9f1f-d70bedc8e648',
       device_id: '9679f014-f5df-45aa-ad05-f0405f90038f',
       name: 'FUNCTION',
       value: 'emit_433',
       createdAt: 2020-05-12T10:06:44.430Z,
       updatedAt: 2020-05-12T10:06:44.430Z },
     { id: '1089f07e-76a0-41b3-a4ce-02c8b7958ebc',
       device_id: '9679f014-f5df-45aa-ad05-f0405f90038f',
       name: 'ARDUINO_LINKED',
       value: 'arduino-1',
       createdAt: 2020-05-12T10:06:44.432Z,
       updatedAt: 2020-05-12T10:06:44.432Z },
     { id: '29cafc77-660b-46e7-a8b4-cfcdf8325d5a',
       device_id: '9679f014-f5df-45aa-ad05-f0405f90038f',
       name: 'CODE',
       value: '0',
       createdAt: 2020-05-12T10:06:44.433Z,
       updatedAt: 2020-05-12T10:06:44.433Z },
     { id: '6af71eca-ca23-451e-8536-35892b362d72',
       device_id: '9679f014-f5df-45aa-ad05-f0405f90038f',
       name: 'CODE_ON',
       value: '0',
       createdAt: 2020-05-12T10:06:44.434Z,
       updatedAt: 2020-05-12T10:06:44.434Z },
     { id: 'd14269d8-03b8-41f9-aab8-2fc586c156b1',
       device_id: '9679f014-f5df-45aa-ad05-f0405f90038f',
       name: 'CODE_OFF',
       value: '0',
       createdAt: 2020-05-12T10:06:44.436Z,
       updatedAt: 2020-05-12T10:06:44.436Z },
     { id: '94258157-bc83-427a-8684-fe6e294ffabd',
       device_id: '9679f014-f5df-45aa-ad05-f0405f90038f',
       name: 'BIT_LENGTH',
       value: '24',
       createdAt: 2020-05-12T10:06:44.437Z,
       updatedAt: 2020-05-12T10:06:44.437Z } ],
  room:
   { id: 'e3f0189d-e0a9-4c50-8089-d0bd5ea87301',
     house_id: '9077ff85-438f-4a76-9493-caeb0650da15',
     name: 'Salon',
     selector: 'salon',
     createdAt: 2020-05-11T02:20:24.506Z,
     updatedAt: 2020-05-11T02:20:24.506Z },
  service:
   { id: '683503cf-c265-480d-a410-6dede6301116',
     pod_id: null,
     name: 'arduino',
     selector: 'arduino',
     version: '0.1.0',
     enabled: true,
     has_message_feature: false,
     createdAt: 2020-05-11T02:19:03.662Z,
     updatedAt: 2020-05-11T02:19:03.662Z } }
2020-05-12T16:55:35+0200 <debug> device.setValue.js:17 (ArduinoManager.setValue) { id: '88bd694c-4748-4ce6-8afc-c0aeaed034c7',
  device_id: '9679f014-f5df-45aa-ad05-f0405f90038f',
  name: 'test',
  selector: 'test',
  external_id: '852d2ed6-3afb-46f2-b879-8cf3bcb50189',
  category: 'switch',
  type: 'binary',
  read_only: false,
  keep_history: false,
  has_feedback: false,
  unit: null,
  min: 0,
  max: 1,
  last_value: 1,
  last_value_string: null,
  last_value_changed: 2020-05-12T14:54:59.415Z,
  createdAt: 2020-05-12T10:06:44.410Z,
  updatedAt: 2020-05-12T14:52:19.804Z }
2020-05-12T16:55:35+0200 <debug> device.saveState.js:16 (DeviceManager.saveState) device.saveState von deviceFeature test
2020-05-12T16:55:35+0200 <debug> gateway.forwardWebsockets.js:14 (Gateway.forwardWebsockets) Gateway: nicht verbunden. Verhindere Weiterleitung des Ereignisses.
2020-05-12T16:55:35+0200 <debug> scene.checkTrigger.js:12 (SceneManager.checkTrigger) Trigger: neues Ereignis checkTrigger "device.new-state"

In meinem setValue hole ich also den Pfad des Arduinos, erstelle das JSON und rufe die Funktion send auf. Ich bin nicht weit davon entfernt, das alles zu beenden, und wenn wir das geschafft haben, ist der „Sende“-Teil „fertig“. Es bleibt nur noch zu optimieren und sich um den „Empfangs“-Teil zu kümmern :smile:

Zur Info, wie wir uns geeinigt haben, hier ist der JSON-Standard, mit dem ich angefangen habe:

{
	"function": "emit_433",
	"parameters": {
		"code": "4464676",
		"bit_length": "24",
		"data_pin": "4"
	}
}

{
	"function": "emit_433_chacon",
	"parameters": {
		"code": "1536116369",
		"data_pin": "4"
	}
}

{
	"function": "emit_ir",
	"parameters": {
		"code": "0xF720DF",
		"data_pin": "3"
	}
}

Gut gemacht! :slight_smile:

Könntest du « function » in « function_name » umbenennen? « function » ist ein reserviertes Schlüsselwort in Node.js, ich habe Angst, dass es in manchen Fällen mysteriöse Bugs verursacht und Linting-Probleme…

Ansonsten ist es wirklich super :clap:

Kein Problem, das wurde umbenannt :wink:

Ich denke, bis morgen wird die Sendung endlich verwaltet :stuck_out_tongue:

Und hier ist es: Gladys kann jetzt Nachrichten an die Arduino senden!!! :tada:

Kurzes Video meiner Installation:

VID_259860813_020103_334

Jetzt gehe ich zur Code-Optimierung und zur Verbesserung der Funktionen über.

Wenn ihr meinen Code testen möchtet, ist jedes Feedback willkommen :smile:

Hi @billona!!
Meinen Glückwunsch zu diesem Dev, der sehr interessant ist und von großer Einfachheit sein sollte. Ich verwende Arduino nur im Netzwerk, aber wenn es dich interessiert, kann ich Tests durchführen, falls es dir hilft. Kannst du uns eine Liste der gewünschten Tests geben:

  • Arduino-Karten-Typen - ich habe Nano, Uno, Mega, Yun, Due und glaube, ich habe noch andere, die mir gerade nicht einfallen - alles in Chinesisch, Italienisch, anderen … 5 verschiedene Marken.
  • Die Referenzen der 433, die du getestet hast, um gleich loszulegen, und die, die du gerne getestet hättest - ich habe auch 5 oder 6 Marken.
  • Sonst noch etwas?

Toll! :slight_smile: Gut gemacht!

Vielen Dank :slightly_smiling_face:

@Terdious Vielen Dank, dass du es testest. :smile:

Was ich brauche, ist die Überprüfung der korrekten Funktion beim Hinzufügen einer beliebigen Karte. Übrigens wird beim Hinzufügen der USB-Pfad vom Hersteller gefolgt. Eine Liste der Hersteller deiner Klone wäre daher willkommen, damit ich die eventuellen Klone, die ich noch nicht in meine Liste aufgenommen habe, hinzufügen kann. Diese Liste wird später dazu dienen, zu überprüfen, ob der bereitgestellte Pfad tatsächlich eine Arduino-Karte ist.

Bei den 433er Modulen habe ich mich mit einfachen Modulen begnügt, die ich bei Amazon für ein paar Cent gekauft habe. Ich habe keine spezifische Referenz, aber es ist Standardkram.

Falls du das nötige Equipment hast, wäre es super, die IR-Geräte zu testen. Falls du nur eine normale LED und keine IR-LED hast, geht das trotzdem. Alles, was du brauchst, ist ein Widerstand und eine LED in Reihe, und die Stromversorgung deines Schaltkreises mit dem Datenpin verbinden, der die Daten sendet. Wenn es funktioniert, sollte die LED schnell ein- und ausschalten.

Für den Empfang ist es nicht nötig, es zu versuchen. Ich habe diesen Teil noch nicht gemacht. Ich werde mich sehr bald darum kümmern.

Nochmals vielen Dank für deine Tests, ich freue mich darauf, die Funktionsweise meiner Arbeit bei anderen als mir zu beobachten :smile:

Ich mach dir das alles noch vor Ende des Wochenendes fertig!!^^

Hallo,

Ich versuche gerade, „Push“-Buttons für das Dashboard zu erstellen, ein bisschen im Stil von Gladys 3:

Ich habe angefangen, mein JSX zu gestalten:

Hier ist das Ergebnis:

Ich finde nicht die richtige Referenz, um den Schalter rechts in eine Art Druckknopf zu ändern. Alles funktioniert, die Geräte reagieren wie sie sollen, aber es stört mich ein bisschen aus ästhetischer Sicht… Hättet ihr eine Idee, die ihr mir vorschlagen könnt?

Vielen Dank :smile:

1 Problem auf der Frontseite, aber nicht reproduzierbar danach:
Bei der Erstellung des ersten Boards, wenn die Seite nicht neu geladen wird, wird beim erneuten Erstellen die Karte rechts neben der ersten Karte mit einer Linie darüber angezeigt.

Hinweis: Ich habe es mit dem Erstellen von 5 Karten getestet, es funktioniert

Details der Boards:
  1. Arduino UNO-Board - Offiziell Made in Italy
  • Anzeige in Gladys: /dev/ttyACM0 - Arduino (www.arduino.cc)
  • USB-Infos RaspPi:
[ 2592.111144] usb 1-1.4: neues Full-Speed-USB-Gerät mit der Nummer 4 wird verwendet xhci_hcd
[ 2592.256294] usb 1-1.4: Neues USB-Gerät gefunden, idVendor=2341, idProduct=0043, bcdDevice= 0.01
[ 2592.256310] usb 1-1.4: Neue USB-Gerätestrings: Mfr=1, Product=2, SerialNumber=220
[ 2592.256323] usb 1-1.4: Hersteller: Arduino (www.arduino.cc)
[ 2592.256336] usb 1-1.4: Seriennummer: 55736313637351C0A0F1
[ 2592.261205] cdc_acm 1-1.4:1.0: ttyACM0: USB ACM-Gerät
  1. Arduino UNO-Board - Inoffiziell Made in China - KEYESTUDIO mit integriertem Ethernet Shield W5500
  • Anzeige in Gladys: /dev/ttyACM1 - Arduino (www.arduino.cc)
  • USB-Infos RaspPi:
[ 6496.436872] usb 1-1.1: neues Full-Speed-USB-Gerät mit der Nummer 11 wird verwendet xhci_hcd
[ 6496.581980] usb 1-1.1: Neues USB-Gerät gefunden, idVendor=2341, idProduct=0043, bcdDevice= 0.01
[ 6496.581996] usb 1-1.1: Neue USB-Gerätestrings: Mfr=1, Product=2, SerialNumber=220
[ 6496.582010] usb 1-1.1: Hersteller: Arduino (www.arduino.cc)
[ 6496.582022] usb 1-1.1: Seriennummer: 85733323939351F00140
[ 6496.588884] cdc_acm 1-1.1:1.0: ttyACM1: USB ACM-Gerät
  1. Arduino Nano-Board - Atmel MEGA328P Made in ? - Ursprünglich gelötete Pins (Ich weiß nicht, ob offiziell - blaue Farbe)
  • Anzeige in Gladys: /dev/ttyUSB0 - 1a86
  • USB-Infos RaspPi:
[ 4435.781031] usb 1-1.3: neues Full-Speed-USB-Gerät mit der Nummer 5 wird verwendet xhci_hcd
[ 4435.917404] usb 1-1.3: Neues USB-Gerät gefunden, idVendor=1a86, idProduct=7523, bcdDevice= 2.54
[ 4435.917420] usb 1-1.3: Neue USB-Gerätestrings: Mfr=0, Product=2, SerialNumber=0
[ 4435.917433] usb 1-1.3: Produkt: USB2.0-Serial
[ 4435.987155] usbcore: neues Schnittstellen-Treiber usbserial_generic registriert
[ 4435.987215] usbserial: USB-Serial-Unterstützung für generic registriert
[ 4435.989478] usbcore: neues Schnittstellen-Treiber ch341 registriert
[ 4435.989548] usbserial: USB-Serial-Unterstützung für ch341-uart registriert
[ 4435.989623] ch341 1-1.3:1.0: ch341-uart-Wandler erkannt
[ 4435.998363] usb 1-1.3: ch341-uart-Wandler jetzt an ttyUSB0 angeschlossen
  1. Arduino Nano-Board - Atmel MEGA328P Made in ? - Nicht gelötete Pins (Ich weiß nicht, ob offiziell - blaue Farbe)
  • Anzeige in Gladys: /dev/ttyUSB0 - 1a86
  • USB-Infos RaspPi:
[ 6048.560858] usb 1-1.3: neues Full-Speed-USB-Gerät mit der Nummer 8 wird verwendet xhci_hcd
[ 6048.697505] usb 1-1.3: Neues USB-Gerät gefunden, idVendor=1a86, idProduct=7523, bcdDevice= 2.54
[ 6048.697522] usb 1-1.3: Neue USB-Gerätestrings: Mfr=0, Product=2, SerialNumber=0
[ 6048.697539] usb 1-1.3: Produkt: USB2.0-Serial
[ 6048.706180] ch341 1-1.3:1.0: ch341-uart-Wandler erkannt
[ 6048.710929] usb 1-1.3: ch341-uart-Wandler jetzt an ttyUSB0 angeschlossen
  1. Arduino Due-Board - Offiziell Made in Italy - Blaue Farbe - Rückseite anders als das grüne Board
  • Kein Modell zum Auswählen in der Liste
  • Anzeige in Gladys: /dev/ttyACM1 - Arduino (www.arduino.cc)
  • USB-Infos RaspPi:
[ 4661.867320] usb 1-1.1: neues Full-Speed-USB-Gerät mit der Nummer 6 wird verwendet xhci_hcd
[ 4662.010994] usb 1-1.1: Neues USB-Gerät gefunden, idVendor=2341, idProduct=003d, bcdDevice= 0.01
[ 4662.011010] usb 1-1.1: Neue USB-Gerätestrings: Mfr=1, Product=2, SerialNumber=220
[ 4662.011024] usb 1-1.1: Produkt: Arduino Due Prog. Port
[ 4662.011036] usb 1-1.1: Hersteller: Arduino (www.arduino.cc)
[ 4662.011048] usb 1-1.1: Seriennummer: 5583931343835151F1F0
[ 4662.018512] cdc_acm 1-1.1:1.0: ttyACM1: USB ACM-Gerät
  1. Arduino Due-Board - Offiziell Made in Italy - Grüne Farbe
  • Kein Modell zum Auswählen in der Liste
  • Anzeige in Gladys: /dev/ttyACM0 - Arduino LLC
  • USB-Infos RaspPi:
[ 6187.282745] usb 1-1.1: neues High-Speed-USB-Gerät mit der Nummer 9 wird verwendet xhci_hcd
[ 6187.413680] usb 1-1.1: Neues USB-Gerät gefunden, idVendor=2341, idProduct=003e, bcdDevice= 1.00
[ 6187.413697] usb 1-1.1: Neue USB-Gerätestrings: Mfr=1, Product=2, SerialNumber=3
[ 6187.413710] usb 1-1.1: Produkt: Arduino Due
[ 6187.413723] usb 1-1.1: Hersteller: Arduino LLC
[ 6187.421444] cdc_acm 1-1.1:1.0: ttyACM0: USB ACM-Gerät
  1. Arduino MEGA2560 R3-Board - Made in Italy - Marke ELEGOO
  • Anzeige in Gladys: /dev/ttyACM0 - Arduino (www.arduino.cc)
  • USB-Infos RaspPi:
[ 6302.164314] usb 1-1.4: neues Full-Speed-USB-Gerät mit der Nummer 10 wird verwendet xhci_hcd
[ 6302.307683] usb 1-1.4: Neues USB-Gerät gefunden, idVendor=2341, idProduct=0010, bcdDevice= 0.01
[ 6302.307700] usb 1-1.4: Neue USB-Gerätestrings: Mfr=1, Product=2, SerialNumber=220
[ 6302.307713] usb 1-1.4: Produkt: Arduino Mega 2560
[ 6302.307726] usb 1-1.4: Hersteller: Arduino (www.arduino.cc)
[ 6302.307738] usb 1-1.4: Seriennummer: 55632313738351B02001
[ 6302.312512] cdc_acm 1-1.4:1.0: ttyACM0: USB ACM-Gerät
  1. Arduino Leonardo ETH R3-Board - Offiziell Made in Italy
  • Anzeige in Gladys: /dev/ttyACM0 - Arduino Srl
  • USB-Infos RaspPi:
[ 7789.586093] usb 1-1.1: neues Full-Speed-USB-Gerät mit der Nummer 14 wird verwendet xhci_hcd
[ 7789.724706] usb 1-1.1: Neues USB-Gerät gefunden, idVendor=2a03, idProduct=8040, bcdDevice= 1.00
[ 7789.724723] usb 1-1.1: Neue USB-Gerätestrings: Mfr=1, Product=2, SerialNumber=0
[ 7789.724736] usb 1-1.1: Produkt: Ethernet 2
[ 7789.724749] usb 1-1.1: Hersteller: Arduino Srl
[ 7789.729608] cdc_acm 1-1.1:1.0: ttyACM0: USB ACM-Gerät
[ 7789.738335] input: Arduino Srl Ethernet 2       Mouse as /devices/platform/scb/fd500000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0/usb1/1-1/1-1.1/1-1.1:1.2/0003:2A03:8040.0001/input/input0
[ 7789.738705] input: Arduino Srl Ethernet 2       Keyboard as /devices/platform/scb/fd500000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0/usb1/1-1/1-1.1/1-1.1:1.2/0003:2A03:8040.0001/input/input1
[ 7789.806282] hid-generic 0003:2A03:8040.0001: input,hidraw0: USB HID v1.01 Mouse [Arduino Srl Ethernet 2      ] on usb-0000:01:00.0-1.1/input2
  1. Arduino YUN-Board - Made in Taiwan - Blaue Farbe - Modell: DHQAR-W03
  • Anzeige in Gladys: /dev/ttyACM0 - Arduino Srl
  • USB-Infos RaspPi:
[ 7940.058376] usb 1-1.1: neues Full-Speed-USB-Gerät mit der Nummer 15 wird verwendet xhci_hcd
[ 7940.197677] usb 1-1.1: Neues USB-Gerät gefunden, idVendor=2a03, idProduct=8041, bcdDevice= 1.00
[ 7940.197693] usb 1-1.1: Neue USB-Gerätestrings: Mfr=1, Product=2, SerialNumber=0
[ 7940.197706] usb 1-1.1: Produkt: Arduino Yun
[ 7940.197718] usb 1-1.1: Hersteller: Arduino Srl
[ 7940.204521] cdc_acm 1-1.1:1.0: ttyACM0: USB ACM-Gerät
[ 7940.213499] input: Arduino Srl Arduino Yun Mouse as /devices/platform/scb/fd500000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0/usb1/1-1/1-1.1/1-1.1:1.2/0003:2A03:8041.0002/input/input2
[ 7940.214002] input: Arduino Srl Arduino Yun Keyboard as /devices/platform/scb/fd500000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0/usb1/1-1/1-1.1/1-1.1:1.2/0003:2A03:8041.0002/input/input3
[ 7940.278763] hid-generic 0003:2A03:8041.0002: input,hidraw0: USB HID v1.01 Mouse [Arduino Srl Arduino Yun] on usb-0000:01:00.0-1.1/input2
  1. MEGA2560 R3 + ESP8266 USB-TTL-Board - Made in ? - Marke WeMOS
  • Kein Modell zum Auswählen in der Liste
  • Anzeige in Gladys: /dev/ttyUSB0 - 1a86
  • USB-Infos RaspPi:
[ 8163.951667] usb 1-1.1: neues Full-Speed-USB-Gerät mit der Nummer 16 wird verwendet xhci_hcd
[ 8164.088047] usb 1-1.1: Neues USB-Gerät gefunden, idVendor=1a86, idProduct=7523, bcdDevice= 2.54
[ 8164.088063] usb 1-1.1: Neue USB-Gerätestrings: Mfr=0, Product=2, SerialNumber=0
[ 8164.088076] usb 1-1.1: Produkt: USB2.0-Serial
[ 8164.094804] ch341 1-1.1:1.0: ch341-uart-Wandler erkannt
[ 8164.099488] usb 1-1.1: ch341-uart-Wandler jetzt an ttyUSB0 angeschlossen
  1. Board Arduino Mega ADK R3 - Offizielle Made in Italy
  • Kein Modell in der Liste zum Auswählen
  • Anzeige in Gladys: /dev/ttyACM0 - Arduino Srl
  • USB-Infos RaspPi:
[ 7609.393255] usb 1-1.4: neues Full-Speed-USB-Gerät mit der Nummer 13, verwendet xhci_hcd
[ 7609.536653] usb 1-1.4: Neues USB-Gerät gefunden, idVendor=2a03, idProduct=0044, bcdDevice= 0.01
[ 7609.536670] usb 1-1.4: Neue USB-Gerätestrings: Mfr=1, Product=2, SerialNumber=220
[ 7609.536684] usb 1-1.4: Product: Arduino Mega ADK
[ 7609.536696] usb 1-1.4: Hersteller: Arduino Srl
[ 7609.536708] usb 1-1.4: SerialNumber: 55338343539351016102
[ 7609.541494] cdc_acm 1-1.4:1.0: ttyACM0: USB ACM-Gerät
  1. Board ESP8266 LoL1n new NodeMcu v3 - Made in Italy - Marke WeMOS
  • Kein Modell in der Liste zum Auswählen
  • Anzeige in Gladys: /dev/ttyUSB0 - 1a86
  • USB-Infos RaspPi:
[ 6671.399170] usb 1-1.1: neues Full-Speed-USB-Gerät mit der Nummer 12, verwendet xhci_hcd
[ 6671.535528] usb 1-1.1: Neues USB-Gerät gefunden, idVendor=1a86, idProduct=7523, bcdDevice= 2.54
[ 6671.535544] usb 1-1.1: Neue USB-Gerätestrings: Mfr=0, Product=2, SerialNumber=0
[ 6671.535557] usb 1-1.1: Product: USB2.0-Serial
[ 6671.542288] ch341 1-1.1:1.0: ch341-uart-Wandler erkannt
[ 6671.546969] usb 1-1.1: ch341-uart-Wandler jetzt an ttyUSB0 angeschlossen

Das sind die Karten, die ich derzeit besitze. Ich werde am Wochenende weitermachen.

Waouh, ich hätte nicht gedacht, dass du so viele Arduino-Boards hast :scream: Das ist großartig!

Ich werde die Hersteller hinzufügen, um später die automatische Erkennung der Karten vorzubereiten.

Ich bin mir nicht sicher, ob ich das richtig verstehe. Korrigier mich, falls ich mich irre: Wenn du dein Gerät auf der Arduino-Geräte-Seite erstellst, erscheint ohne Neuladen beim Erstellen einer zweiten Box diese Box rechts neben der ersten, aber mit einem zusätzlichen Strich?
In jedem Fall werde ich den Code überprüfen, vielleicht habe ich zwischen zwei Kaffees einen kleinen Fehler eingebaut :sweat_smile:

Kleine Ankündigung, solange ich dabei bin: Da die IR-Verwaltungsbibliothek, die ich in meinem Code verwende, geändert wurde, um das Senden von Pins nach Belieben zu ermöglichen, erkundige ich mich nach der Möglichkeit, den Code direkt über Gladys hochzuladen.

Damit muss der durchschnittliche Benutzer keine zusätzlichen Manipulationen vornehmen: Er schließt seinen Arduino an, erstellt ihn in Gladys und klickt auf einen „Hochladen“-Button, der die Arbeit für ihn erledigt :wink:

Ich habe dieses Modul gefunden, das mir sehr gut dafür geeignet scheint:

Hihi!! Ich habe viel getestet ^^ Deshalb werde ich alle Tests damit durchführen. Ich weiß, dass ich regelmäßig Probleme mit Bibliotheken mit den Arduino Due hatte, die nicht immer mit den Standardbibliotheken kompatibel sind.

Genau das ist es!! Aber auf der Seite „Arduino-Konfiguration“, nicht auf der Seite „Geräte“.

Das wäre großartig für Frau und Herrn Jedermann!! Gute Entdeckung ^^

PS: Ich ändere meinen Beitrag von oben, um alle Verweise zu verstecken, damit nichts durcheinandergebracht wird.

Genial für das Detail, ich hole die IDs für die UDEV-Regeln ab :+1: