photron
Administrators-
Gesamte Inhalte
3.125 -
Benutzer seit
-
Letzter Besuch
-
Tagessiege
47
Alle erstellten Inhalte von photron
-
New Bricklets, Blog Entry 4/4 Blog entry
-
Neue Bricklets, Blogeintrag 4/4 Blogeintrag
-
Brick Viewer 2.0.8 Add support for Distance US, Dual Button, Hall Effect, LED Strip, Line, Moisture, Motion Detector, Multi Touch, Piezo Speaker, Remote Switch, Rotary Encoder, Segment Display 4x7, Sound Intensity and Tilt Bricklet Don't crash on unknown Bricklets Support 3.3V range and averaging configuration for Analog In Bricklet Make serial port detection more robust on Windows Speed up firmware version information discovery Make sample point file parsing more robust for Distance IR Bricklet Downloads: Windows, Linux, Mac OS X
-
Brick Viewer 2.0.8 Support für Distance US, Dual Button, Hall Effect, LED Strip, Line, Moisture, Motion Detector, Multi Touch, Piezo Speaker, Remote Switch, Rotary Encoder, Segment Display 4x7, Sound Intensity und Tilt Bricklet hinzugefügt Stürzt nicht mehr bei unbekannten Bricklets ab 3,3V Bereich und Averaging Einstellung für Analog In Bricklet hinzugefügt Auslistung der seriellen Schnittstellen ist robuster auf Windows Ermittlung der aktuellen Firmware Version beschleunigt Lesen der Kalibrierungsdateien für das Distance IR Bricklet ist robuster Downloads: Windows, Linux, Mac OS X
-
Bindings: C/C++ 2.0.12, C# 2.0.12, Delphi 2.0.14, Java 2.0.13, PHP 2.0.11, Python 2.0.12, Ruby 2.0.12, Shell 2.0.4, VB.NET 2.0.8 Add support for Distance US, Dual Button, Hall Effect, LED Strip, Line, Moisture, Motion Detector, Multi Touch, Piezo Speaker, Remote Switch, Rotary Encoder, Segment Display 4x7, Sound Intensity and Tilt Bricklet [all] Also apply the workaround for a struct packing bug in GCC 4.7 to generated code [C/C++] Throw ArgumentOutOfRangeException on invalid Base58 value as UID [C#, VB.NET] Throw IllegalArgumentException on invalid Base58 value as UID [Java] Complain if bcmath or sockets extension is not available Accept int values also in hexadecimal, octal and binary notation [shell] Fix Python3 string handling for listen command [shell] Avoid printing '\0' in enumerate-disconnect callback [shell] Download: C/C++, C#, Delphi, Java, PHP, Python, Ruby, Shell, VB.NET
-
Bindings: C/C++ 2.0.12, C# 2.0.12, Delphi 2.0.14, Java 2.0.13, PHP 2.0.11, Python 2.0.12, Ruby 2.0.12, Shell 2.0.4, VB.NET 2.0.8 Support für Distance US, Dual Button, Hall Effect, LED Strip, Line, Moisture, Motion Detector, Multi Touch, Piezo Speaker, Remote Switch, Rotary Encoder, Segment Display 4x7, Sound Intensity und Tilt Bricklet hinzugefügt [alle] Workaround für Struct Packing Bug in GCC 4.7 wird jetzt auch auf generierten Code angewendet [C/C++] ArgumentOutOfRangeException wird ausgelöst wenn ungültiger Base58 Wert als UID verwendet wird [C#, VB.NET] IllegalArgumentException wird ausgelöst wenn ungültiger Base58 Wert als UID verwendet wird [C#, VB.NET] Falls bcmath oder sockets Extension nicht verfügbar sind wird dies per Exception mitgeteilt int Werte Werden auch in hexadezimaler, octaler und binärer Notation akzeptiert [shell] String Behandlung für den listen Befehl in Python3 korrigiert [shell] Es wird kein '\0' mehr im enumerate-disconnect Callback ausgegeben [shell] Download: C/C++, C#, Delphi, Java, PHP, Python, Ruby, Shell, VB.NET
-
Installation brickd_windows_2_0_9 unter W7 erzeugt bluescreen
Thema antwortete auf photrons Butti in: Software, Programmierung und externe Tools
Welchen Treiber meinst du, oder meinst du brickd selbst? Brick Daemon fragt alle USB Geräte ab. Ich würde darauf tippen, dass in EtronHub3.sys ein Fehler der den BSOD auslöst wenn brickd auf ein USB Gerät an diesem Etron USB Controller zugreift. Google spuckt zu "EtronHub3.sys BSOD" einige Treffer aus, scheint kein unbekanntes Problem zu sein. Möglicherweise hilft ein Treiberupdate. Diese hier sieht nach dem passenden Treiber aus: http://www.etron.com/en/products/u3hc_detial.php?Product_ID=6 -
NetIO - TypeError: Type str doesn't support the buffer API
Thema antwortete auf photrons matthiku in: Software, Programmierung und externe Tools
Der listen Befehl gibt standardmäßig Daten auf die Konsole aus, die empfangen und versendet werden. -
Ja, es wird thematische Untergruppen geben, damit es übersichtlich bleibt.
-
First Bricklet Batch arrived - Photos, Testing and Packing to be done: Blog entry
-
Erste Bricklet Charge angekommen - Fotos, Testen und Verpacken steht an: Blogeintrag
-
Christmas is coming: Blog entry
-
Weihnachten rückt näher: Blogeintrag
-
NetIO - TypeError: Type str doesn't support the buffer API
Thema antwortete auf photrons matthiku in: Software, Programmierung und externe Tools
Das stimmt, aber der duration-Parameter wird ja fuer die Kommunikation mit dem Brick-Daemon benoetigt, nicht fuer die Kommunikation mit NetIO. Ich bin mir nicht sicher, ob ich richtig verstehe wie du das meinst. Das --duration Parameter gibt an wie lange eine enumerate oder dispatch Befehl eingehende Callbacks von Bricks und Bricklets verarbeitet. Bei enumerate ist der Standardwert 250ms und bei dispatch ist es -1 (unbegrenzt). python tinkerforge --host <ip-addr> enumerate --duration 1000 Dieser Befehl fragt eine Enumerate an und verarbeitet dann 1s lang eingehenden Enumerate Callbacks. python tinkerforge --host <ip-addr> dispatch --duration 5000 temperature-bricklet XYZ temperature Dieser Befehl verarbeitet 5s lang eingehenden temperature Callbacks vom Temperature Bricklet mit UID XYZ. Wenn du die duration für einen enumerate oder dispatch Befehl, den du von NetIO sendest, ändern willst dann musst du das --duration Parameter in diesem Befehl angeben. Das hat nichts mit dem listen Befehl zu tun. -
NetIO - TypeError: Type str doesn't support the buffer API
Thema antwortete auf photrons matthiku in: Software, Programmierung und externe Tools
listen hat kein duration-Parameter. listen lauscht auf eingehende Anfragen bis du das Skript abbrichst. ... bekomme nach dem Starten der NetIO-App folgenden Fehler im Fenster mit den Shell-Bindings immer wieder angezeigt: Du verwendest Python3. Das String-Handling zwischen Python2 und Python3 unterscheidet sich deutlich. Ich habe wohl vergessen das String-Handling für den listen Befehl unter Python3 zu testen Angehängt eine verbesserte Version zum Testen. tinkerforge -
BrickD in VMware VM
Thema antwortete auf photrons StefanP in: Software, Programmierung und externe Tools
Okay, da der Brick jetzt richtig erkannt wurde sollte er auch in brickv auftauchen. Wenn brickv schon verbunden war bevor du den Brick in die VM hineingereicht hast dann taucht er nicht auf. Dann muss du einmal in brickv Disconnect und dann wieder Connect klicken. Das hängt mit dem Enumerate und dem Durchreichen in die VM zusammen. -
Allgemeine Fragen zur Realisierung einer Rollosteuerung
Thema antwortete auf photrons Chris in: Anfängerfragen und FAQ
Erstmal vielen Dank für die ausgiebigen Tests und die Beschreibung der Ergebnisse EMV ist leider ein komplexes Thema Man könnte jetzt versucht sein Erkenntnisse aus deinen Tests abzuleiten: Zum Beispiel, könnte man behaupten, dass Master Brick 1 (mit den 3 Fenster Rollos) alleine funktioniert, weil die zu schaltende Motorlast kleiner ist als an Master Brick 2 (mit 4 Tür und Fenster Rollos). An Master Brick 2 ist die Last größer und damit die Störung größer, so dass sie hier über der Schwelle liegt die der Brick verträgt. Das muss aber nicht so sein. Vielleicht ist die Verkabelung an Master Brick 2 einfach anders und bildet eine bessere Antenne um Störungen einzufangen. Ähnlich liegt es mit dem Trennen des Stack zu zwei einzeln angeschlossenen Bricks. Dass das hilft liegt vielleicht daran, dass du dadurch Antennen verändert/verkleinert hast und jetzt weniger Störungen eingefangen werden. Bastians Hinweis mit dem Varistor zielte auf die induktive Last der Motoren ab, die möglicherweise im Relais beim Abschalten eine Funken erzeugen der dann den Master Brick stören kann. Hier kommt es auch wieder darauf an wie der Master Brick mit möglichen Antennen verbunden ist die Störung einfangen können. Das ist aber nur eine mögliche Störungsquelle. Wir haben hier schon einige Tests zu EMV im Bezug auf Relais gemacht, sind aber bisher nicht zu schlüssigen Ergebnissen gekommen. Wir sind da aber noch am Ball -
BrickD in VMware VM
Thema antwortete auf photrons StefanP in: Software, Programmierung und externe Tools
Dass heißt, wenn du den Brick in die VM durchreichst meldet VMware jetzt keinen Fehler mehr. Taucht denn der Brick im Geräte Manager von Windows XP in der VM auf? -
Python IF ELSE
Thema antwortete auf photrons LukasRtM in: Software, Programmierung und externe Tools
In diesem Programm erst zu fragen ob ein Brick(let) wirklich da ist, wobei dein Programm eigentlich davon ausgeht das es da ist, ist eigentlich nicht typisch Python. Typischer wäre es einfach die Getter aufzurufen und die Exception zu behandeln, die möglicherweise auftreten kann. Also z.B. so: try: voltage = master.get_stack_voltage()/1000.0 except Exception as e: print "get_stack_voltage() failed", str(e) Statt erst zu prüfen ob das Brick(let) vielleicht nicht da ist (wobei is_device_available() nicht in der Form existiert und nur der Verdeutlichung dient): if is_device_available(master): voltage = master.get_stack_voltage()/1000.0 Wenn davon auszugehen ist, dass meistens oder immer nicht alle Bricklets die dein Programm erwartet vorhanden sind, dann kann es sinnvoll sein zu erst per Enumerate zu erfragen was angeschlossen ist. Dann muss nur einmal kurz gewartet werden, statt bei jedem Aufruf einen möglichen Timeout abwarten zu müssen wenn ein erwartetes Brick(let) nicht vorhanden ist. Hier ein Beispiel, dass per Enumerate die Liste der bekannten UIDs aufbaut und aktuell hält (ungetestet): available_uids = set() def cb_enumerate(uid, connected_uid, position, hardware_version, firmware_version, device_identifier, enumeration_type): if enumeration_type == IPConnection.ENUMERATION_TYPE_DISCONNECTED: available_uids.remove(uid) else: available_uids.add(uid) if __name__ == "__main__": ipcon = IPConnection() ipcon.connect(HOST, PORT) ipcon.register_callback(IPConnection.CALLBACK_ENUMERATE, cb_enumerate) ipcon.enumerate() time.sleep(1) # wait a moment for enumerate callbacks print available_uids ipcon.disconnect() Du kannst jetzt prüfen ob deine erwartete UID in available_uids ist und dann entsprechend handeln. Dies kann aber nicht alle Fälle abdecken. Wenn dein Programm z.B. mittendrin die Verbindung zum Stack verliert werden die Funktionen der Brick(let) Objekte immer noch Exceptions werfen. Du kommst also um Fehlerbehandlung für ein robustes Programm nicht herum. -
BrickD in VMware VM
Thema antwortete auf photrons StefanP in: Software, Programmierung und externe Tools
Das hört sich danach an als ob VMware ein Problem mit dem Durchreichen von USB Geräten (zumindest Bricks) hat. Wir verwenden hier VirtualBox und reichen auch ständig Bricks in die VM hinein, das funktioniert ohne Probleme. Kannst du denn andere USB Geräte in die VM durchreichen? Ist der Brick am Host an einem USB 3.0 Port (innen blau) angeschlossen? Vielleicht bereitet das VMware Probleme. Teste mal den Brick an einen USB 2.0 Port anzuschließen und dann in die VM durchzureichen. Dieser VMware Knowledge Base Eintrag hört sich relevant an. -
Doppelter Aufruf von Distance-IR Callback
Thema antwortete auf photrons remotecontrol in: Software, Programmierung und externe Tools
Haben wir wirklich vergessen Ist jetzt korrigiert. -
Plugins: Distance IR Bricklet 2.0.1 Don't send threshold callback twice erroneously anymore Downloads: Distance IR Bricklet
-
Plugins: Distance IR Bricklet 2.0.1 Threshold Callbacks werden nicht mehr fälschlicherweise zweimal nacheinander ausgelöst Downloads: Distance IR Bricklet
-
Brick Daemon 2.0.9 Use libusb hotplug support if available on Linux Update bundled libusb to 1.0.17 on Mac OS X, libusb hotplug replaces custom IOKit code Update bundled libusb to 1.0.17 on Windows, adds support for VIA VL805 USB 3.0 host controllers Add --libusb-debug option to enable libusb debug output Report too long lines in config file as errors instead of silently ignoring them Add IPv6 support with configurable dual-stack handling Don't interfere with Apple's USB Ethernet Adapter on Mac OS X Sign brickd.app and installer on Mac OS X to silence the Gate Keeper Linux packages build on older Debian/Ubuntu release to lower required glibc version Downloads: Windows, Linux (amd64, i386, armhf), Mac OS X
-
Brick Daemon 2.0.9 libusb Hotplug Support wird auf Linux verwendet, wenn verfügbar Mitgelieferte libusb Version für Mac OS X auf 1.0.17 aktualisiert, libusb Hotplug ersetzt eigenen IOKit Code Mitgelieferte libusb Version für Windows auf 1.0.17 aktualisiert, Support für VIA VL805 USB 3.0 Host Controller hinzugefügt --libusb-debug Option hinzugefügt um libusb Debug Ausgabe zu aktivieren Zu lange Zeilen in der Config Datei werden als Fehler gemeldet anstatt sie zu ignorieren IPv6 Support mit einstellbarer Dual-Stack Behandlung hinzugefügt Apples USB Ethernet Adapter wird jetzt auf Mac OS X nicht mehr durch libusb gestört brickd.app und Installer sind jetzt auf Mac OS X signiert um den Gate Keeper ruhig zu stellen Linux Packages werden auf älterer Debian/Ubuntu Release gebaut um die benötigte glibc Version zu verringern Downloads: Windows, Linux (amd64, i386, armhf), Mac OS X