Jump to content

borg

Administrators
  • Gesamte Inhalte

    3.655
  • Benutzer seit

  • Letzter Besuch

  • Tagessiege

    65

Alle erstellten Inhalte von borg

  1. Firmware: Joystick V2 Bricklet 2.0.2 Fix bug in callback handler Download: Joystick 2.0
  2. borg

    Energy Monitor

    Das klingt nach einem Bug, schaue ich mir an. Sollte auf jeden Fall funktionieren. Edit: Ich sehe das Problem. Ich bestimme einen neuen Werte alle X Nulldurchgänge der Sinuskurve. Wenn ein Spannungswandler angeschlossen ist nutze ich dafür die Spannung, wenn nicht nutze ich dafür den Strom. Wenn jetzt aber kein Strom mehr fließt gibt es gar keine Sinuskurve mehr und es wird kein neuer Wert mehr berechnet. An der Stelle brauche ich eine Art Fallback der Greift wenn ich für eine bestimmte Zeit keine Nulldurchgänge gesehen habe und den Strom dann einfach auf 0 setzt.
  3. V2.0.4 ist jetzt veröffentlicht.
  4. Die V2.0.3 hat leider einen peinlichen copy+paste-Bug, gibt heute noch die V2.0.4.
  5. Firmware: CO2 V2 Bricklet 2.0.2 Behandlung von I2C-Fehlern verbessert Download: CO2 2.0
  6. Firmware: CO2 V2 Bricklet 2.0.2 Improve I2C error handling Download: CO2 2.0
  7. Die neueste Firmware (2.0.5) sollte die Ausreißer jetzt endgültig beheben . Sag bitte Bescheid falls du mit 2.0.5 immer noch Ausreißer hast!
  8. Firmware: Air Quality Bricklet 2.0.5 Bosch BSEC auf v1.4.7.4 aktualisiert Behandlung von Ausreißerwerten verbessert Download: Air Quality
  9. Firmware: Air Quality Bricklet 2.0.5 Update Bosch BSEC to v1.4.7.4 Improve outlier value handling Download: Air Quality
  10. borg

    Pyranometer

    I think you will be able to read out most professional pyranometer with the existing Bricklets. For example, with a quick search i found this: https://www.rg-messtechnik.de/pyranometer-cmp11.php They use Pt elements that you would be able to read with a PTC Bricklet 2.0
  11. Bitte einmal auf die neueste Piezo Speaker Firmware Version aktualisieren, dann geht es wieder. Da gab es eine Inkompatibilität mit neueren Master Brick Firmware Versionen die noch gar nicht aufgefallen war. Danke für den Hinweis!
  12. Firmware: Piezo Speaker Bricklet 2.0.3 Don't disable IRQs during calibration, since newer Brick versions use interrupts during I2C communication Download: Piezo Speaker
  13. Firmware: Piezo Speaker Bricklet 2.0.3 Don't disable IRQs during calibration, since newer Brick versions use interrupts during I2C communication Download: Piezo Speaker
  14. Ich hatte hier jetzt eine Zeit lang einen Testaufbau am laufen der immer nur get_touch_position aufgerufen hat mit der Hoffnung dass ich irgendwann einen "falschen Touch" sehe. Ich konnte das leider bisher nicht reproduzieren. Ein Pressure-Wert von 1 ist bereits der niedrigste Wert, meine Behauptung von vorher dass ich dort einen Threshold niedriger setzen kann macht also keinen Sinn. Meine neueste Vermutung ist, dass du für eine ganz kurze Zeit fälschlicherweise irgendwo eine Berührung siehst (beim Aufruf von get_touch_position nach dem Callback ist der Pressure-Wert dann schon wieder auf 1) und der Fix wäre eher ein Minmum-Klickzeit für den Button-Klick einzuführen. Ich hab da jetzt nochmal mehr logging eingebaut und es sind jetzt auch Buttons mit konfigurierten Callbacks mit eingebaut. Das lasse ich jetzt nochmal ein paar Tage laufen. Melde mich dann wieder.
  15. Firmware: Thermal Imaging Bricklet 2.0.4 Nutze Double Buffering für Lepton-Statistiken um Tearing in den Statistiken zu verhindern Download: Thermal Imaging
  16. Firmware: Thermal Imaging Bricklet 2.0.4 Double buffer lepton statistics to prevent statistics tearing Download: Thermal Imaging
  17. Einen Widerstand kannst du mit den Bricklets am einfachsten über einen Spannungsteiler und einem (Industrial) Analog In Bricklet messen. https://www.elektronik-kompendium.de/sites/slt/0201111.htm In dem Beispiel wäre R1 der veränderliche Widerstand und R2 ein fester Widerstand. Die Spannung zwischen den beiden Widerständen verändert sich dann wenn sich R1 ändert.
  18. Ich bin jetzt dazu gekommen mir das einmal mit dem Profiler anzuschauen. Einen kleinen Flaschenhals hab ich bei den SPI Chip Selects gefunden, die konnten ohne großen Aufwand effizienter gemacht werden. Das hat sowas wie ~15% eingespart. Zusätzlich hab ich eine "sleep_between_read"-Option pro Bricklet in die /etc/brickd.conf hinzugefügt. Damit kann jetzt eingestellt werden wie lange der Brick Daemon mindestens warten soll zwischen zwei "Reads" von einem Bricklet. Der Wert ist in us und war damals per Default 200us. Die Default-Konfiguration sieht mit der neuen brickd Version jetzt so aus: bricklet.portA.sleep_between_reads = 200 bricklet.portB.sleep_between_reads = 200 bricklet.portC.sleep_between_reads = 200 bricklet.portD.sleep_between_reads = 200 bricklet.portHAT.sleep_between_reads = 2000 Die Default-Einstellung vom HAT selbst hab ich von 200us auf 2ms erhöht, da das HAT selbst sowieso nie große Datenmengen übertragen muss. Wenn am Bricklet nichts angeschlossen ist was große Datenmengen überträgt kann aber auch z.B. alles auf 5ms gesetzt werden und es funktioniert immernoch gut: bricklet.portA.sleep_between_reads = 5000 bricklet.portB.sleep_between_reads = 5000 bricklet.portC.sleep_between_reads = 5000 bricklet.portD.sleep_between_reads = 5000 bricklet.portHAT.sleep_between_reads = 5000 Meine Ergebnisse nach den Änderungen: HAT mit Defaultkonfiguration, keine Bricklets angeschlossen: HAT mit Defaultkonfiguration, Thermal Imaging Bricklet an port B streamt mit vollem Durchsatz Bild über WIFI: HAT mit 5ms-Konfiguration, Rotary Encoder an Port B: Anbei die Beta-Version des neuen Brickd mit den Änderungen. brickd-2.4.1-beta1_armhf.deb
  19. Anbei Beta-Versionen des nächsten Bindings-Release von Rust und MATLAB: http://download.tinkerforge.com/_stuff/tinkerforge_rust_bindings_2_0_11_beta1.zip http://download.tinkerforge.com/_stuff/tinkerforge_matlab_bindings_2_0_23_beta1.zip
  20. Firmware Version 2.0.2 ist jetzt veröffentlicht und sollte das fixen. Ich hab die Firmware in dem Zuge auf die neuen Coop Tasks umgestellt die wir in der bricklib haben (gab es zu dem Zeitpunkt als wir die Firmware geschrieben haben noch nicht) Die Baudrate hab ich auf 200kHz erhöht um das Jitter zu verringern, wobei der Durchsatz bei 100kHz prinzipiell auch bereits gereicht hatte. So sieht das jetzt aus: 976 SPS 488 SPS 244 SPS Der etwas größere Block bei CLK sind immer die Daten und die kleinen Blöcke sind die Statusabfrage. Das sieht jetzt IMO ganz gut aus und bleibt auch langfristig gleichmäßig.
  21. Firmware: Industrial Dual Analog In V2 Bricklet 2.0.2 Fix error in sample rate configuration Use coop task instead of complicated state machine Properly reconfigure ADC in case of invalid data Download: Industrial Dual Analog In 2.0
  22. Firmware: Industrial Dual Analog In V2 Bricklet 2.0.2 Fix error in sample rate configuration Use coop task instead of complicated state machine Properly reconfigure ADC in case of invalid data Download: Industrial Dual Analog In 2.0
  23. So, ich hab jetzt eine entsprechende Funktion hinzugefügt: https://www.tinkerforge.com/en/doc/Software/Bricklets/AccelerometerV2_Bricklet_Python.html#BrickletAccelerometerV2.set_filter_configuration Gibt es in Firmware Version 2.0.2. Die API wird dann mit dem nächsten Bindings-Release aktualisiert. Das kann leider noch ein wenig dauern. Welche Programmiersprache verwendet ihr? Dann erstelle ich für euch einmal schnell Beta-Bindings zum testen (wenn bedarf besteht).
  24. Ich hab es mir auf die TODO-Liste geschrieben da nochmal mit einem Profiler zu schauen wo die CPU-Zeit verloren geht. Eventuell können wir da ein einstellbares Abfrageintervall o.ä. machen für Anwendungen wo kein hoher Durchsatz benötigt wird.
  25. Steht irgendetwas in der /var/log/brickd.log? Zum Thema CPU-Auslastung: Kann es sein dass der brickd gerade so wenig CPU zieht das der RPi sich heruntertaktet und dann eine relativ hohe Auslastung anzeigt? Um das zu testen kannst du einmal probeweise den Linux Governor auf "performance" stellen: https://www.tinkerforge.com/de/doc/Hardware/Bricks/HAT_Brick.html#konfiguration-fur-verbesserten-durchsatz
×
×
  • Neu erstellen...