Ankündigung

Einklappen
Keine Ankündigung bisher.

[Konnekting] Idee: BodenfeuchteSensor

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

    #76
    Zitat von henfri Beitrag anzeigen
    const byte KonnektingDevice::_numberOfParams = sizeof (_paramSizeList); // do not change this code
    wenn du mit Beta4b arbeitest, dann muss aus dem byte ein int gemacht werden
    const int KonnektingDevice::_numberOfParams = sizeof (_paramSizeList); // do not change this code
    www.smart-mf.de | KNX-Klingel | GardenControl | OpenKNX-Wiki

    Kommentar


      #77
      Hallo,

      vielen Dank. Es kompiliert jetzt.
      Ich habe den Code hier hochgeladen:
      https://github.com/henfri/KonnektingSoilMoisture

      Ich habe die Funktion noch nicht testen können.
      Das Problem ist, dass ich über die RX/TX Pins über die ich (die HW 1.0) programmiere nur umgedrehte Fragezeichen auf dem seriellen Monitor bekam.

      Dann habe ich mich erinnert, dass Softserial verwendet wird (siehe Code) und RX/TX mit Pins 10 und 11 verbunden.
      Da bekomme ich aber gar keinen Output auf dem seriellen Monitor.

      Sieht jemand den Fehler?

      Standalone -ohne Konnekting auf einem Arduino Micro lief es schon.

      Gruß,
      Hendrik

      Kommentar


        #78
        läuft der µC mit dem richtigen Quarztakt, also sind die Fuses entsprechend programmiert? Das ist bei mir Nr.1 Fehler wenn die Baudrate für die USART nicht zu stimmen scheint

        Kommentar


          #79
          Hallo,

          Ich habe 8Mhz gewählt.
          Was meinst du mit den Fuses?
          Diese zu trennenden Leiterbahnen?

          aber es ist doch richtig dass ich die PINs 10 und 11 verwenden (bzw allgemein Softserial) muss fürs Debugging, oder?
          Wenn ich mich recht entsinne funktioniert der Uart nur fürs Programmieren und im Betrieb wird er für den KNX verwendet.
          Und über softserial bekomme ich ja gar kein Auto. Noch nicht mal irgendwelche komische Zeichen.

          Gruß,
          Hendrik

          Kommentar


            #80
            Ich hab leider kein Eagle drauf, also kann ich mir den Schaltplan der Hardware nicht ankucken. Schau mal am µC dort müsste ein Quarz hängen, 16Mhz oder so?
            Dann muss in den Fuse Einstellungen vom Controller ext. Takt aktiviert sein, und Divide clock by 8 abgeschalten. Fürs Fuse programmieren verwende ich immernoch Bascom, weil man da schön auswählen kann => kann dir leider nicht sagen, wie es bei Arduino selbst geht.

            Wenn du da nichts an den Fuses machst, arbeitet der µC bei 8Mhz bzw. sogar bei 1Mhz jenachdem ob per default "divide clock by 8" angeschalten ist.

            Kommentar


              #81
              Hallo,

              das einzige Bauteil, auf dem ich etwas lesen kann ist der Prozessor. Das ist ein 328P. Und ich bin sicher, dass die HW1.0 3.3V hat.
              Somit muss es 8Mhz sein. 16 gibt es zumindest in der IDE beim 328P nicht zu finden.

              Das Board war ja bei mir vor 2 Jahren schonmal im Einsatz. Deshalb glaube ich nicht, dass ich etwas an den Fuses -von denen ich noch nie gehört habe- ändern muss, oder?


              Gruß,
              Hendrik

              Kommentar


                #82
                Zitat von henfri Beitrag anzeigen
                Und ich bin sicher, dass die HW1.0 3.3V hat.
                Ist die Platine von mir !?
                www.smart-mf.de | KNX-Klingel | GardenControl | OpenKNX-Wiki

                Kommentar


                  #83
                  Ja!

                  Kommentar


                    #84
                    dann sollte er ein 8Mhz Typ sein.

                    Man kann das leicht prüfen. Einfach das Blink Beispiel aufspielen einmal mit dem ProMini 3,3V 8Mhz und einmal mit dem ProMini 5V 16Mhz als Board in der IDE, bei dem wo er wirklich mit einer Sekunde blinkt, das ist der richtige :-)
                    Zuletzt geändert von Masifi; 22.10.2018, 09:35.
                    www.smart-mf.de | KNX-Klingel | GardenControl | OpenKNX-Wiki

                    Kommentar


                      #85
                      Fuses oder der gleichen musst du mal nicht brennen, das habe ich damals schon gemacht. du musst in der IDE nur den ProMini 3,3V 8Mhz auswählen.
                      Zuletzt geändert von Masifi; 22.10.2018, 09:33.
                      www.smart-mf.de | KNX-Klingel | GardenControl | OpenKNX-Wiki

                      Kommentar


                        #86
                        müsste dein Aufruf nicht so etwa heißen (ich bin kein SWler :-) )

                        Code:
                        // DEBUG-MODE
                        #define KDEBUG // comment this line to disable DEBUG mode
                        
                        #ifdef KDEBUG
                        #include <SoftwareSerial.h>
                        SoftwareSerial softserial(11, 10); // D11=RX/D10=TX
                        #define DEBUGSERIAL softserial
                        #endif
                        www.smart-mf.de | KNX-Klingel | GardenControl | OpenKNX-Wiki

                        Kommentar


                          #87
                          Hallo,

                          danke, das habe ich auch probiert. Keine Besserung.
                          Auch habe ich das Beispiel versucht zu übertragen:
                          https://github.com/KONNEKTING/Exampl...or_Temp_RH.ino
                          Hier meine Verison:
                          https://github.com/henfri/Konnekting...denfeuchte.ino

                          Keine Besserung.
                          Vielleicht sieht jemand den Fehler. Ich bin ratlos.

                          Gruß,
                          Hendrik

                          Kommentar


                            #88
                            Auf der HW1.0 ist ganz normaler ProMini drauf, woe Mattias schon sagte, einfach mal Blink Sketch aufspielen und testen. Dann Beispiel mit SoftwareSerial (ohne Konnekting).
                            nicht vergessen, dass RX und TX über Kreuz verbunden sein sollen.

                            Kommentar


                              #89
                              Hallo,

                              so, ich habe es gefunden.
                              Ich weiß nicht, was in meinem vorherigen Versuch falsch war. Aber im aktuellen versuch war einfach
                              //#define KDEBUG // comment this line to disable DEBUG mode
                              Noch auskommentiert.
                              Ich komme einfach noch mit dem # und // für Kommentare durcheinander. Daher ist es mir nicht aufgefallen.

                              Jetzt bekomme ich einen Output auf dem seriellen Port und der TPUART meldet sich auch.

                              Nur funktioniert mein Debug.println() nur in der setup() funktion, nicht aber im loop().
                              Wenn ich diese (link) Zeile einkommentiere bekomme ich diese Fehlermeldung:
                              Code:
                              C:\Users\Hendrik\Documents\Arduino\libraries\KONNEKTING_Device_Library\src/DebugUtil.h:76:10: note: void DebugUtil::println(const __FlashStringHelper*, ...)
                              
                                   void println(const __FlashStringHelper *format, ...);
                              
                                        ^
                              
                              C:\Users\Hendrik\Documents\Arduino\libraries\KONNEKTING_Device_Library\src/DebugUtil.h:76:10: note:   no known conversion for argument 1 from 'float' to 'const __FlashStringHelper*'
                              
                              exit status 1
                              no matching function for call to 'DebugUtil::println(float&)'
                              Ich verstünde, dass es das "Debug" Objekt nur in setup() nicht aber loop() gibt.
                              Aber in diesem Beispiel (link) ist es doch genauso.

                              Gruß,
                              Hendrik

                              Kommentar


                                #90
                                "F" fehlt, so muss es sein:
                                Code:
                                ​Debug.println(F(moisture));​​​​​​

                                Kommentar

                                Lädt...
                                X