Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - borg

Pages: [1] 2 3 ... 209
1
General Discussion / Re: Pyranometer
« on: August 20, 2019, 14:27:12 »
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

2
Allgemeine Diskussionen / Re: Brickv Piezo Speaker crash
« on: August 19, 2019, 11:31:40 »
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!  ;D

3
Allgemeine Diskussionen / Re: Veröffentlichungen
« on: August 19, 2019, 11:28:30 »
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

4
General Discussion / Re: Announcements
« on: August 19, 2019, 11:28: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

5
Hardware / Re: Problem mit LCD 128x64 Bricklet (Touch)
« on: August 13, 2019, 15:16:40 »
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.

6
Allgemeine Diskussionen / Re: Veröffentlichungen
« on: August 13, 2019, 14:43:48 »
Firmware: Thermal Imaging Bricklet 2.0.4

  • Nutze Double Buffering für Lepton-Statistiken um Tearing in den Statistiken zu verhindern
Download: Thermal Imaging

7
General Discussion / Re: Announcements
« on: August 13, 2019, 14:43:23 »
Firmware: Thermal Imaging Bricklet 2.0.4

  • Double buffer lepton statistics to prevent statistics tearing
Download: Thermal Imaging

8
Hardware / Re: Potentiometrischer Wegaufnehmer
« on: August 13, 2019, 14:15:19 »
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.

9
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:

Code: [Select]
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:

Code: [Select]
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.

11
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.

12
Allgemeine Diskussionen / Re: Veröffentlichungen
« on: August 01, 2019, 13:43:37 »
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

13
General Discussion / Re: Announcements
« on: August 01, 2019, 13:43:32 »
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

14
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).

15
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.

Pages: [1] 2 3 ... 209