Ankündigung

Einklappen
Keine Ankündigung bisher.

KNX-Arduino Gemeinschaftsprojekt: "KNXino" Arduino+KNX Transceiver onBoard

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    KNX/EIB KNX-Arduino Gemeinschaftsprojekt: "KNXino" Arduino+KNX Transceiver onBoard





    -=[ ZUR INFO ]=-
    Dank unseres Admins hier haben wir für KONNEKTING ein eigenes Unterforum spendiert bekommen:

    ---> https://knx-user-forum.de/forum/projektforen/konnekting <---


    Themen die KONNEKTING betreffen bitte in Zukunft dort verfassen.
    Themen die KNX und Arduino, aber NICHT KONNEKTING betreffen dürfen hier im DIY Bereich bleiben.






    Hallo Zusammen,

    Ich würde hier gerne eine Hardware entwickeln, die hier in der Community als gemeinsame Basis verwendet werden soll. So das an gemeinschaftlichen Libs und Tools gearbeitet werden kann. Dies sollte vor allem für Einsteiger die Welt in KNX und Arduino vereinfachen.
    Hier im Forum gibt es schon viele Interessante Ansätze, jetzt ist es Zeit einen Teil davon zusammen zu bringen !!! :-)

    Dafür haben wir mal den Namen "KONNEKTING" ins Leben gerufen. (KNXino gibt es so nicht mehr)

    Es darf sich jeder beteiligen und Vorschläge einbringen, aber es müssen dabei immer Kompromisse geschlossen werden. Ich würde daher mit einem einfachen unkomplexen Layout beginnen. Ein Update auf eine leistungsstärkere Plattform ist immer sinnvoller als andersrum, besonders für Anfänger.
    Auch Anfänger sollen sich einbringen können und nicht nur ein paar wenige die Ahnung davon haben.
    Des Weitern ist nur bei sehr wenigen Anwendungen im KNX-Bereich eine leistungsstarke Hardware von Nöten.

    In diesem Thread soll es in erster Linie um die Hardware-Plattform gehen! Für Dinge die sich alleine um SW und der gleichen drehen, wird in geraumer Zeit ein weiterer Thread dazu kommen.

    Um sich etwas besser vorstellen zu können, was wir hier erschaffen wollen, hier noch eine kurze Einführung:
    - Arduino kompatibler Microcontroller
    - auf dem Board integrierter KNX-Transceiver
    - möglichst kleiner und passender Bauform
    - Schnittstellen für Sensoren und Erweiterungen
    - Preislich im Rahmen bleiben (~30€)

    Es sollen die einzelnen Punkte einzeln bearbeitet werden, daher bitte nur Kommentare zu der jeweiligen Aufgabenstellung !!!


    Aktueller Stand: (01.02.2016)

    HW-Platine 1.0 (Entwicklungsplatine für Siemens BCU oder NCN5120 Baustein) Entwickler: Masifi

    a20151203_204402.jpgimage_44604.jpg a20151203_204447.jpg image-20160201_210013.jpg

    Die Platine soll als Entwicklungsplatine dienen auf der man schnell was ausprobieren kann. Sie ist einfach und variabel aufgebaut und somit auch für Anfänger gedacht.

    Was ihr mindestens benötigt:
    - Arduino ProMini 3,3V 8Mhz
    - Siemens BCU (5WG1117-2AB129

    Man kann auch die Siemens BCU gegen einen bestückten NCN5120 tauschen. Dieser liefert aktuell nur 3,3V(da er diese selber benötigt) weshalb ein 3,3V ProMini 8Mhz verwendet werden muss.

    Aber Achtung:
    auf das HW1 Board dürft ihr ohne eine kleine Modifikation keinen ProMicro stecken !!!.
    Der ProMini hat zwei Reset-Pins, der ProMicro nur einen. Stattdessen befindet sich dort nun ein GND-PIN. Wenn ihr einen ProMicro auf der HW1 benutzen wollt, dann müsst ihr den GND-Pin neben dem RXI-PIN abzwicken !!!




    HW 1.1 (Erweiterung von HW1.0)
    Aktuell laufen Versuche diese Platine etwas "aufzubohren" und den 5V DC/DC Wandler zu integrieren. Dazu soll noch eine Art Lochrasterplatine für Prototypen ergänzt werden. Federführend daran ist aktuell Eugenius
    image_46231.png
    Wenn ihr die 5V auf diesem Board nutzen wollt, ist es es zwingend erforderlich, das ihr die 3,3V mit bestückt (NCN5120 Betriebspannung).



    HW 1.2 (HW1.0 -> ProMini getauscht gegen ProMicro) @Masifi
    Um die Debugfähigkeiten und Flashmöglichkeiten zu verbessern, wurde die HW1.0 noch etwas angepasst. Dabei wurde der ATMEGA328P gegen einen ATMEGA32U4 erstetzt, oder besser gesagt, der ProMini gegen einen ProMicro.
    Dank dem ATMEGA32U4 besitzt dieses Board noch ein USB-Anschluss über den man eine USB-Serial-Verbindung aufbauen kann, die unabhängig vom Hardware-Serial ist. Damit könnt ihr unabhängige Debug-Botschaften auf den PC ausgeben.

    Unbenannt.PNG
    Genauere Infos, siehe Post: 340 (Seite23)
    https://knx-user-forum.de/forum/%C3%B...onboard/page23





    HW-Platine 2.0 (Temperatur, Luftfeuchte, Luftqualität) Entwickler: dreamy1

    image_45329.jpg image_45334.jpg

    Anbei mal ein Bild vom ersten Modul....Temperatur, Luftfeuchte und VOC auf den KNX. Für jeden nachbaubar, es müssen nur ein paar Bauteile im 2,54mm-Format und ein paar Stiftleisten gelötet werden, das Ganze wird dann einfach auf den bekannten Siemens Busankoppler aufgesteckt und verschraubt. Die Sensoren werden modular bestückt - wer kein VOC benötigt, lässt den Sensor einfach weg (oder umgekehrt den Temperatur-/Luftfeuchtesensor).


    Zuletzt geändert von Masifi; 23.02.2016, 18:27.
    www.smart-mf.de | KNX-Klingel | GardenControl | OpenKNX-Wiki

    #2
    1. Aufgabe: Auswahl Microcontroller

    Es muss ein passender Controller gefunden werden der:

    - die notwendigen Schnittstellen zur Verfügung stellt (I2C, UART, SPI, ... )
    - eine angemessene Leistungsfähigkeit besitzt
    - Arduino kompatibel sein
    - geringe Stromaufnahme haben
    - ausreichender Speicher (Flash/RAM)
    - Preislich ok und Verfügbar ist


    Ich würde den Atmega328P vorschlagen da:

    Vorteile:
    - Preis Verfügbarkeit sehr gut
    - Verschieden Bauformen -> sehr klein
    - wird am öftesten eingesetzt
    - Speicher ausreichend
    - Viele Libs und Projekte

    Nachteile:
    - nur ein Serial (aber SW-Serial)


    Es gibt sicher viele die hier den Arduino Micro vorschlagen weil dieser einen USB-Anschluss besitzt.
    ABER um diese nutzen zu können, muss erst der passende Bootloader geladen werden und dafür wird die ISP-Schnittstelle benötigt. Ich nutze heute schon nur das ISP-Interface zum Programmieren der Boards. Ja es dauert etwas länger, aber warum soll man sich ein ISP-Stecker und einen USB Stecker auf das Board machen.
    Ein ISP-Programmer kostet bei Ebay auch nur 5€
    www.smart-mf.de | KNX-Klingel | GardenControl | OpenKNX-Wiki

    Kommentar


      #3
      Das Argument mit dem fehlenden USB seh ich ein. Da der Bootloader sowieso drauf muss, braucht man sowieso den ISP.

      Davon abgesehen überlege ich gerade ob ein "echter" zweiter Serialport nicht doch sinn machen würde, bzw. wo man diesen "vermissen" würde.
      Welche Einschränkungen ergeben sich denn durch den Software-Serial?

      Hab die Datenblätter gerade nicht vor Augen, aber wenn ich mir hier https://www.arduino.cc/en/Products/Compare den unterschied zwischen Pro und Micro/Leonardo anschaue, dann hat der Pro mit seinem 328P deutlich weniger Analogeingänge und ebenso weniger IOs.
      Der Micro hat 2.5kb SRAM, während der 328P mit 2k dann 20% weniger hat.

      Mit dem Micro habe ich bereits (trotz hacken des Stacks auf Speicher-Sparen) am Limit gekratzt, konnte den Bedarf dann aber knapp unter das Limit reduzieren. Ob der gleiche Code noch auf dem 328P ohne zicken laufen würde... fraglich.

      Wenn sich preislich (der 328p ist spürbar billiger?), löttechnisch (Pin-Abstand ist gleich, wenn ich das richtig recherchiert habe) und platzmäßig (ähnlich klein) durch den 32u4 keine gravierenden Nachteile ergeben, würde ich für den Stimmen. Ansonsten kann ich mit dem 328P leben.

      Einen anderen der in das Raster passt hab ich nicht gefunden.

      P.S. Ich hatte mal versucht den Namen "karduino" einzuführen (und hatte auch schon ein Logo gebastelt). Spricht sich flüssiger aus als "knxuino". Aber da bin ich zu allen schandtaten aufgeschlossen.

      Kommentar


        #4
        Das ist genau der Punkt:

        - Wieviele Pins werden wirklich gebraucht !?
        In der Vergangenheit hatte ich noch keine Anwendung bei der ich alle benötigt hätte

        - Wieviel RAM/Flash !?
        Auch hier bin ich in der Vergangenheit nie an die Grenzen des Atmega328P gestoßen
        Kommt jetzt sicher auf den KNX-Stack an.
        Wenn selbst der MIcro schon knapp ist dem KNX-Stack, was würde es für eine weitere alternative geben !?

        -Ein Vorteil des Atmega328P:
        es gibt ihn als 3,3V 8Mhz Variante -> Stromverbrauch (ist mir zumindest sehr wichtig)


        Es ist nicht zu verläugnen, das ich den Atmega328P in kombination mit Francks KNX-Stack bevorzuge. :-)


        Ach der Name ist mir eigentlich egal, dachte nur das macht es einfacher wenn man immer vom selben redet :-)
        Zuletzt geändert von Masifi; 04.11.2015, 14:58.
        www.smart-mf.de | KNX-Klingel | GardenControl | OpenKNX-Wiki

        Kommentar


          #5
          Mit 20 IOs könnte man sich einen 20-fach Schaltaktor bauen ;-)

          Nein, prinzipiell sollten die Pins des 328P ja reichen. Und wenn nicht, kann man immer noch auf i2c ausweichen um an mehr Pins zu kommen.

          Der RAM Unterschied nicht nicht so gewaltig groß zwischen den beiden. Das von mir verwendete Stack (wenn man das überhaupt so nennen kann) ist nicht sooo riesig. Aber ich hatte eben 6 PWM Kanäle. Summa sumarum bin ich auf rund 60 KOs gekommen. Da läppert sich so einiges zusammen. Sicherlich kann man da noch massiv sparen. Im Endeffekt könnte das halt zu lasten des Codes gehen. Aber mit 2k sollte man auch hinkommen. Zur Not lagert man halt in den EEPROM aus was sich auslagern lässt.

          Ich wäre überhaupt froh wenn es ein Micro-like Board mit eingebautem TP-UART gäbe, egal welcher uC jetzt drauf sitzt... Das würde den Platzbedarf drastisch nach unten schrauben.

          Ach der Name ist mir eigentlich egal, dachte nur das macht es einfacher wenn man immer vom selben redet :-)
          FullACK

          Kommentar


            #6
            2e06234759f7f3b0925d0bf90447c24bf.jpg


            so klein könnte es werden etwa 50mm x 25mm :-)

            OnSemi KNX-Transceiver + Atmega328P

            Es stehen aber nur SPI + I2C + 2ADC (oder 4 wenn kein I2C verwendet wird) + 2 EXTINT + 2 I/O + 2 Debounce ICs für Taster zur Verfügung

            Der 2x4 Pinhead ist so geroutet das ein NRF24L01+ Funk-Baustein aufgesteckt werden kann.

            3,3V & 5V frei wählbar
            Zuletzt geändert von Masifi; 04.11.2015, 15:39.
            www.smart-mf.de | KNX-Klingel | GardenControl | OpenKNX-Wiki

            Kommentar


              #7
              Ihr macht mich fertig :-)

              Ich wollte in Richtung Winter gerade wieder in das Thema KNX+Arduino einsteigen....und hatte mir da auch schon ein paar Gedanken gemacht. Ich komme auch aus eher aus der Hardwareecke und kann mit Eagle umgehen, da würden sich sicher ein paar Synergien ergeben. Wo ich bei aller Lötaffinität große Probleme sehe, ist die Entscheidung ob *jeder* das nachbauen bzw. zusammenlöten kann oder nicht, davon hängt dann auch der potentielle Interessentenkreis ab. Nicht jeder kann 0,3mm Pitch löten...

              Mein Ansatz war ursprünglich: möglichst viel in "fertig" und modular. Ich dachte da an den Siemens BCU, einen Arduino Pro Mini 3,3V/8MHz und eine einzige selbsterstellte Platine, die dann je nach Bedarf mit weiteren fertigen Modulen bzw. Bausteinen bestückt wird (VOC, R/H mit HTU21D, Display etc.). Im Grunde sind das dann fast nur noch Stiftleisten, die zu löten sind. Die einzige selbsterstellte Platine wird dann direkt auf die Siemens BCU gesteckt und per angepasster Blindabdeckung (habe schon ein paar Ideen dazu) ausgestattet so dass sich diese in viele gängige Schalterprogramme optisch ansprechend integrieren lässt (gerade Letzteres wird oft zweitrangig behandelt, ist mir aber wichtig).

              Soviel zur Hardware....ich bin da aber für alle Richtungen offen. Softwareseitig hatte ich mir vorgestellt, dass man den Arduino initial per USB-TTL-Interface programmiert und alles andere z.B. per KNX-Telegramm erledigt (z.B. einfach über den Busmonitor, der Arduino horcht dann auf entsprechende Befehle und ändert z.B. einen Grenzwert oder eine neue PA und legt das dann im internen EEPROM ab). Dann bräuchte man nichtmal ein separates Tool, sondern könnte das mit "Hausmitteln" erledigen...
              Viele Grüße,
              Stefan

              DIY-Bastelprojekte: || >> Smelly One << || >> BURLI << ||

              Kommentar


                #8
                Hallo
                Habe vor kurzen diesen Arduino Pin compatiblen entdeckt.
                https://www.raspiprojekt.de/kaufen/s...co-pinned.html
                Für die Schalterdose sehr interessant. Gruß NetFritz
                KNX & Wago 750-849 ,Wiregate u. Cometvisu, iPad 3G 64GB.
                WP Alpha-Innotec WWC130HX (RS232-Moxa-LAN),Solaranlage für Brauchwasser und Heizung.
                PV-Anlage = SMA Webbox2.0 , SunnyBoy 4000TL, Sharp 4kWP

                Kommentar


                  #9
                  Der ist sehr klein ja :-)
                  Aber ein Cortex M4 ist etwas oversized für eine einfache Hausautomation. Der nimmt bestimmt schon alleine um die 150 bis 250mA auf.
                  www.smart-mf.de | KNX-Klingel | GardenControl | OpenKNX-Wiki

                  Kommentar


                    #10
                    Der STM32L4 Cortex M4 ist mit 100uA je MHz angegeben, also 8mA bei 80 MHz. Also keine Angst vor Rechenleistung

                    Ob darauf ein Arduino-Derivat läuft, weiss ich nicht, meine aber, es gebe ein entsprechendes Demoboard.

                    Max

                    Kommentar


                      #11
                      Der STM32L4 Cortex M4 ist mit 100uA je MHz angegeben, also 8mA bei 80 MHz.
                      Und das bei 1,7V Core-Spannung und dann hängt auch noch Peripherie mit dran, die wird bei solchen Rechnungen gerne vergessen :-)

                      Es ist halt die Frage was man genau machen will. Ich würde die Controller mal etwas klassifizieren, für welchen Aufgabenbereich diese eigentlich Bestimmt sind:

                      Cortex M4: Besitzt intern einen DSP (https://de.wikipedia.org/wiki/Digitaler_Signalprozessor) und eine FPU (https://de.wikipedia.org/wiki/Gleitkommaeinheit) Man benötigt das für schnelle AD / DA Wandlungen und für schnell und komplexe Regelungsaufgaben. Wir machen hier aber einfache Hausautomation. Des Weitern muss man schon ein ausgebildeter SWler sein, der diese Vorteile nutzen kann. Da liegen Welten zwischen dem guten altem Atmega AVRs und einem Cortex M4

                      Cortex M3: macht meiner Meinung nach nur Sinn wenn man was mit Ethernet machen möchte. Und wir wollen hier eigentlich KNX und nicht Ethernet umsetzen.

                      Cortex M0+: Mein Favorit ATSAMD21G18, der ist mit <70uA/MHz (max 48MHz möglich) angegeben, bietet alle notwendigen Schnittstellen + einer RTC (außer Ethernet). Ein weiterer Vorteil ist, das es ihn als Arduino Board gibt und man damit die Arduino-Libs nutzen kann. Das Board ist erst seit ein paar Monaten auf dem Markt.
                      Er ist so Leistungsfähig das auch aufwendige Funktionen umgesetzt werden können, aber durch die Arduino integration auch für Anfänger händelbar.
                      [Nachtrag]: Das Board heißt Arduino M0 oder Arduino Zero

                      Atmega328P: Einfach zu verstehender Controller, reicht für die meisten Aufgaben die in einem KNX-Bus benötigt werden, durch Arduino sehr viele Nutzer und viel support. Leider besitzt er etwas wenig Flash/RAM.

                      Das Ziel sollte hier sein, eine Plattform zu entwickeln die von vielen Nutzern betrieben werden kann. Ein Großteil der Nutzer hier sind keine Experten in Embedded C.

                      Ich hoffe das Anfänger durch unser "Geschwafel" hier nicht abgeschrägt werden. Würde mir auch mehr Input von euch wünschen ;-)

                      Ich habe selber mal klein angefangen und war damals sehr dankbar für jede Hilfe die ich bekommen habe.
                      Zuletzt geändert von Masifi; 05.11.2015, 16:41.
                      www.smart-mf.de | KNX-Klingel | GardenControl | OpenKNX-Wiki

                      Kommentar


                        #12
                        Ähm …
                        In Anfängerspache … was kann ich damit alles anstellen ?
                        Danke und LG, Dariusz
                        GIRA | ENERTEX | MDT | MEANWELL | 24VDC LED | iBEMI | EDOMI | ETS5 | DS214+ | KNX/RS232-GW-ROTEL

                        Kommentar


                          #13
                          Es soll eine Plattform sein mit der du einfach KNX-Devices umsetzten kannst. z.B.:

                          Temp-Sensoren
                          PIR-Senoren
                          Co2 Sensoren
                          LED-Dimmer
                          ....
                          was du möchtest :-)
                          You do not have permission to view this gallery.
                          This gallery has 2 photos.
                          www.smart-mf.de | KNX-Klingel | GardenControl | OpenKNX-Wiki

                          Kommentar


                            #14
                            Danke für die Erklärung Matthias !
                            Wie sieht es mit HiFi aus (z.B.: DVD/BD, SAT-Receiver, …) ?
                            Danke und LG, Dariusz
                            GIRA | ENERTEX | MDT | MEANWELL | 24VDC LED | iBEMI | EDOMI | ETS5 | DS214+ | KNX/RS232-GW-ROTEL

                            Kommentar


                              #15
                              Puh in der Richtung habe ich bis jetzt noch nichts gemacht.

                              Was stellst du dir denn da so vor !?
                              www.smart-mf.de | KNX-Klingel | GardenControl | OpenKNX-Wiki

                              Kommentar

                              Lädt...
                              X