Ansteuerung I2C Bus mit App oder Sprache

achim S.

Mitglied
16 Jan 2010
614
9
18
Berlin Biesdorf
Sprachen
  1. ANSI C
Hallo
Hat schon jemand versucht den I2C Bus mit einer App anzusteuern oder sogar mit der Sprache zu steuern, z.B. mit Alexa? Es geht mir dabei nicht um den Einsatz von einem ESP oder Rasperry. Mehr etwas einfaches was man relativ leicht programmieren kann.
Erhahrung oder wie am besten machen.
achim
 

LotadaC

Sehr aktives Mitglied
22 Jan 2009
3,466
64
48
Marwitz
Sprachen
  1. BascomAVR
  2. Assembler
Welchen I²C-Bus meinst Du denn konkret?
Welche/was für eine App (Windows/Android?)?
Und worauf willst Du mit "relativ leicht programmieren können" hinaus?

I²C ist selbst schon relativ komplex, wenn das zu Fuß gemacht werden muß. Bietet das eingesetzte System Hardware, die das nativ unterstützt, wirds natürlich einfacher. Auf der anderen Seite gibts natürlich auch Programmierumgebungen, die Dir entsprechende Sachen erleichtern/abnehmen (BASCOM, die Arduino-IDE (die auch die ESPs unterstützt),...).

Und dann kommts auch noch darauf an, was Dein I²C-Bus können soll - I²C betrifft ja nur den eigentlichen Bus; für Displays, Speicher, Sensoren usw bieten sich ggf unterschiedliche Protokoll-Umsetzungen an.

Alexa: kommuniziert mMn mit verbundenen ...äh... was auch immer über (W)LAN - Deine I²C-Hardware müßte also über (W)LAN-Anbindung verfügen. Das wird bei den hier meist eingesetzten AVR schon recht tricky (natürlich gibt's Möglichkeiten mit entsprechenden Interface-Chips (ENC28J60, WIZ812MJ u.ä.)), aber selbst dann...

Das ganze muß dann auch softwaretechnisch in Alexa eingebunden werden. Du benötigst also irgend'n Skin (oder wie das da auch immer heißt). Die ESP kann man als Philips HUE-Gerät nutzen.

Ich würde eher versuchen, ein offenes Hausautomationssystem wie FHEM (in Verbindung mit Alexa) auszunutzen, und da dann eigene Hardware anzuschließen. Auch hier muß Deine Hardware natürlich das zugrunde liegende Kommunikationsnetz unterstützen ((W)LAN, dieses 433MHz-Netz oder was auch immer, auch da gibts entsprechende Lösungen auf Raspi/ESP-Basis, und auch da kann man natürlich weitere eigene primitivere Hardware (AVR etc) anbinden.
Sind aber alles erstmal nur Ansätze fixer Ideen...
 

achim S.

Mitglied
16 Jan 2010
614
9
18
Berlin Biesdorf
Sprachen
  1. ANSI C
Verwende ja selbst den I2C Bus für die verschiedensten Anwendungen, Aktoren, Sensoren und Displays. Schön währe es wenn man eine App nehmen kann und damit eine selbstgebaute Hardware steuern kann. Je nach der App kann das ja dann auch Alexa machen. Möchte aber keine komplizierte Hardware oder Treiber dazu nehmen. Bei einem entsprecehnden Aufwand ist sicher viel möglich. Bleibt nur die Frage ob ich das mit meinem Wissen auch hinbekomme.
 

LotadaC

Sehr aktives Mitglied
22 Jan 2009
3,466
64
48
Marwitz
Sprachen
  1. BascomAVR
  2. Assembler
Wie ich schon oben gefragt habe: Für welche Hardware-Plattform und für welches Betriebssystem suchst Du denn die App?

Und wie soll das System mit der App mit Deinem I²C-Bus verbinden werden? An den meisten PCs und am Smartphone hast Du üblicherweise keinen I²C-Anschluß.
(Also den SM-Bus hast Du zwar in fast jedem PC, und es gibt auch Software, die den ansteuern kann (Speedfan kann so zB Temperaturdaten des PCs und Festplatten auslesen, und nebenbei auch die ICs vom Arbeitsspeicher), aber ohne Bastelei kommst Du nicht wirklich an den Bus ran (ok, Du kannst direkt am Arbeitsspeicher was entsprechende Leitungen ranlöten, oder Du entwirfst 'ne eigene Platine die das im DIMM-Slot abgreift)

Bei Einplatinencomputern ist der Bus hingegen oft verfügbar (RasPi, LattePanda usw).

Ich hatte hier auch schon mal irgendwo sowas ähnliches angesprochen:
Analog zu den USB-TTL-UART-Wandlern gibt es auch universelle Schnittstellenwandler, die variabel auf SPI, I²C, paralleles Bitbanging usw eingestellt werden können. Entsprechend konfiguriert verhalten die sich PC-seitig dann wie 'ne serielle Schnittstelle. Und es gibt Bibliotheken, die in zB. VisualStudio eingebunden werden können.
Damit könntest Du Dir recht einfach 'n I²C-Terminal für den Windows-PC zurechtstricken und auf das eigentliche I²C Dein gewünschtes Protokoll draufsetzen (I²C definiert ja eigentlich nur den Bus und die Byte-weisen Zugriffe)
 

achim S.

Mitglied
16 Jan 2010
614
9
18
Berlin Biesdorf
Sprachen
  1. ANSI C
Als Hardware wollte ich mein System verwenden. Also einen Atmega 1284p und alles in C machen. Vom Raspi bin ich ziemlich enttäuscht. Wird hochgejubeld was er alles kann und ist dabei auch nur ein Stück Silicon mit einer hohen Frequenz. Python ist auch nur eine Programmiersprache die angeblich sooo viel besser ist. Ist zwar anders aber nicht grundsätzlich besser.
Bleibe deshalb wohl lieber bei meinem C.
Hatte mir vorgestellt das man Befehle per Alexa angeben kann und eine Ausführung auf C Prozessor weiter geleitet wird. Heutzutage ist doch oft der Begriff "Bridge" im Gespräch. Gibt es da nich was passendes?
 

Hero_123

Mitglied
17 Sep 2010
165
3
18
Sprachen
  1. ANSI C
Hallo achim S.

Verstehe ich das korrekt - Du willst mittels z.B Alexa Sprachbefehle an den ATMega1284p senden und dieser soll mittels I2C (den Du ja schon implementiert hast) dann Aktoren, Sensoren etc ansteuern bzw abfragen.
Also benötigst Du eine Kommunikationsebene Alexa <-> ATMega1284p, um diesem mitzuteilen, was er machen soll.
Du müsstest also herausfinden, wie und in welche Signale Alexa die Sprache wandelt und mit dieser Info eine Kommunikation Alexa <-> Atmega1284p aufzubauen (USART, XBEE, etc)
Und Du müsstest evtl Alexa "pimpen"

Die Frage die sich mir stellt - wozu das Ganze, wenn's das schon gibt?

mfg

Hero_123
 

Hero_123

Mitglied
17 Sep 2010
165
3
18
Sprachen
  1. ANSI C
Na, mit Alexa/Echo/Siri/App kann man doch inzwischen alles Mögliche steuern - Licht, Heizung, Hausautomatisierung incl Überwachung etc ...

Über kurz oder lang wird mal der Kühlschrank an Netto/Aldi/Norma melden, dass nicht genügend Milch (oder Toilettenpapier ;)) vorhanden ist - "Smart Home"
 

achim S.

Mitglied
16 Jan 2010
614
9
18
Berlin Biesdorf
Sprachen
  1. ANSI C
Über kurz oder lang wird mal der Kühlschrank an Netto/Aldi/Norma melden, dass nicht genügend Milch (oder Toilettenpapier ;)) vorhanden ist
Ist doch ein alter Hut. Kann mich daran erinnern, das vor ... Jahren bereits Kühlschränke mit eingebauten Display verkauft oder besser angepriesen wurden. Da konnte man Rezepte abrufen oder was bestellen.
Habe selber vor über 15 Jahren Kühlschränke von Samsung repariert, die ein eingebautes Modem hatten. Wurde aber in Deutschland nicht genutzt. Leider ist die Digitaliesierung in DE auch heute nicht viel weiter.
 

Über uns

  • Makerconnect ist ein Forum, welches wir ausschließlich für einen Gedankenaustausch und als Diskussionsplattform für Interessierte bereitstellen, welche sich privat, durch das Studium oder beruflich mit Mikrocontroller- und Kleinstrechnersystemen beschäftigen wollen oder müssen ;-)
  • Dirk
  • Du bist noch kein Mitglied in unserer freundlichen Community? Werde Teil von uns und registriere dich in unserem Forum.
  •  Registriere dich

User Menu

 Kaffeezeit

  • Wir arbeiten hart daran sicherzustellen, dass unser Forum permanent online und schnell erreichbar ist, unsere Forensoftware auf dem aktuellsten Stand ist und der Server regelmäßig gewartet wird. Auch die Themen Datensicherheit und Datenschutz sind uns wichtig und hier sind wir auch ständig aktiv. Alles in allem, sorgen wir uns darum, dass alles Drumherum stimmt :-)

    Dir gefällt das Forum und unsere Arbeit und du möchtest uns unterstützen? Unterstütze uns durch deine Premium-Mitgliedschaft!
    Wir freuen uns auch über eine Spende für unsere Kaffeekasse :-)
    Vielen Dank! :ciao:


     Spende uns! (Paypal)