Jump to content
View in the app

A better way to browse. Learn more.

Tinkerunity

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

photron

Administrators
  • Benutzer seit

  • Letzter Besuch

Alle erstellten Inhalte von photron

  1. Wie AuronX sagt, sind die Antworten vom IO-4, die du da sieht, die fürs Response Expected Flag. Unter der Annahme, dass du die Temperaturabfrage und das IO-4 Setzen nicht über die gleiche TCP/IP Verbindung machst solltest du diese IO-4 Antworten da nicht sehen. Spielt dir da vielleicht netcat einen Streich, oder machst du doch beides über eine TCP/IP Verbindung? Hast du mal ins brickd Log geschaut und dort nachverfolgt wann TCP/IP Verbindung auf und abgebaut werden und wo welche Antworten hingesandt werden? Wireshark kann auch sehr hilfreich sein. Dass da einer der IO-4 Nachrichten die letzten 2 Byte fehlen könnte an netcat liegen, dass dann eben nur die ersten n-2 von n Byte empfangen hat.
  2. Zu 1: Das ist dokumentiert im Packet Layout Abschnitt: Zu 2: Es reicht als Antwort ein Header. Schreibst du einen Brick-Emulator auf TCP/IP Protokolllevel? JavaLaurence hat einen Emulator auf dem Java-API-Level (begonnen?).
  3. Thema antwortete auf photrons photron in: General Discussion
    Brick Daemon 2.0.5 Avoid non-portable usage of bit fields Handle big endian byte order correctly Show UIDs in log messages in Base58 Debian i386 package now really compiled for i386 instead of i686 Downloads: Windows, Linux (amd64, i386, armhf), Mac OS X
  4. Brick Daemon 2.0.5 Nicht-portable Verwendung von Bitfelder korrigiert Big Endian Byte Order wird nun korrekt behandelt UIDs werden im Log in Base58 angezeigt Debian i386 Package wird jetzt wirklich für i386 compiliert, anstatt i686 Downloads: Windows, Linux (amd64, i386, armhf), Mac OS X
  5. Loetkolben, in beiden lsusb ausgaben ist 16d0:063d als VID:PID drin. Das ist der Brick normal gestartet, er ist nicht im Bootloader.
  6. /dev/bus/usb/002/002 ist das USB Device an sich. Das ist hier nicht richtig. Du brauchst da den seriellen Port den der Bootloader des Bricks über USB anbietet. Typischerweise taucht der als /dev/ttyACM0 oder /dev/ttyUSB0 auf.
  7. Richtig, exakt so läuft das. Denn nur so ist das kompatible zu älteren Firmwares. Die beiden genannten Dinge sind jetzt dokumentiert.
  8. Das wurde vergessen zu dokumentieren, sorry. Die TCP/IP Dokumentation ist jetzt wieder aktuell.
  9. In /usr/local/lib/python2.6/dist-packages/easy-install.pth sollte sowas wie import sys; sys.__plen = len(sys.path) ./tinkerforge.egg import sys; new=sys.path[sys.__plen:]; del sys.path[sys.__plen:]; p=getattr(sys,'__egginsert',0); sys.path[p:p]=new; sys.__egginsert = p+len(new) stehen und easy_install -m tinkerforge sollte daraus die ./tinkerforge.egg Zeile entfernen.
  10. Hier ein .deb für i386 das jetzt auch wirklich mit gcc -march=i386 gebaut wurde. Wenn ich das Problem richtig verstehe sollte das jetzt bei dir funktionieren. brickd-2.0.4_really_i386.deb
  11. easy_install hat kein wirkliches Uninstall Kommando. Man kann ein mit easy_install installiertes egg aber wie folgt wieder sauber entfernen: sudo easy_install -m tinkerforge Dies trägt tinkerforge aus der Modulliste wieder aus. Dieser Befehlt gibt die dann auch was wo das entpackte egg liegt: $ sudo easy_install -m tinkerforge Searching for tinkerforge Best match: tinkerforge 2.0.5 Processing tinkerforge.egg Removing tinkerforge 2.0.5 from easy-install.pth file Using /usr/local/lib/python2.7/dist-packages/tinkerforge.egg Dann noch dass entpackte egg manuell entfernen: sudo rm -rf /usr/local/lib/python2.7/dist-packages/tinkerforge.egg
  12. Das erste was mir gerade auffällt ist das brickd-*_i386.deb auf einem i686 Rechner compiliert wird und daher eigentlich i686 ist. Kann es sein, dass du einen CPU < i686 hast? Was gibt "uname -a" aus? Was gibt "gcc -Q -v" aus, falls du gcc installiert hast?
  13. Was du da im WIFI Fall siehst sind Enumerate Callbacks mit ENUMERATION_TYPE_CONNECTED. Diese sendet der Stack von sich aus wenn eine neu Verbindung aufgebaut wurde. Dies erlaubt es neustartende Stacks zu erkennen. Im Fall von USB siehst du diese nicht, da die USB Verbindung zwischen brickd und Stack schon längst besteht und auch durchgehend besteht. Bei WIFI stellst du direkt die Verbindung her und siehst daher die Enumerate Callbacks. Soll heißen, du kannst dich nicht darauf verlassen, dass die Daten die nach Absenden eines Request auch direkt die Antwort darauf sind. Auch kann es sein, dass du mehrere unserer Pakete in einem TCP/IP Paket bekommst. "Shell Bindings" stehen schon eine Weile auf der TODO Liste.
  14. Beides durchaus sinnvolle Vorschläge. Die nächsten Bindings werden höchstwahrscheinlich für LabVIEW sein.
  15. Ist korrigiert, danke für den Hinweis.
  16. Das nenn' ich mal einen stabilen und wetterfesten Aufbau
  17. Hab's gerade eingebaut. Qt bietet da gleich eine Option für. Ist dann in der nächsten brickv Version mit drin.
  18. Argh, irgendwie ist in dem Stück Dokumentation der Wurm drin. Sorry. Es muss natürlich "device_identifier - uint16" lauten und ist jetzt auch korrigiert. Danke für die Hinweise.
  19. Nein, das ist richtig. Auf TCP/IP Ebene sind uid und connected_uid des Enumerate Callbacks uint32, genauso wie die UID im Header jedes Packets auch uint32 ist. Die Bindings machen dann die Umwandlung zwischen Base58 und uint32, damit die UIDs auf Benutzerebene immer Base58 sind. Edit: Du hast recht, die Dokumentation passte nicht. Ich habe mich da an eine erste Version von Protokoll 2.0 erinnert, sorry. Dokumentation ist jetzt korrigiert.
  20. Wenn der IPConnection.Connect() Aufruf keine Exception wirft, dann konnte eine TCP/IP Verbindung aufgebaut werden. Dass heißt, dass da etwas auf dem Port lauscht. In dem Zuge wird auch der Connected Callback aufgerufen. Höchstwahrscheinlich lauscht dann da ein brickd. Dass heißt, aber noch nicht dass da auch ein Stack angeschlossen ist. Wenn du jetzt die UID eines der Stack Teilnehmer kennst, dann kannst du einfach für diesen einen Getter aufrufen. Zum Beispiel GetStackVoltage() oder GetIdentity(). Falls keine TimeoutException geworfen wird, dann hat der Teilnehmer geantwortet und ist somit da. Falls eine TimeoutException geworfen wird dann ist da entweder kein Brick(let) mit dieser UID, oder es ist gar kein Stack angeschlossen. Falls du keine UID kennst, dann bleibt dir nur der Enumerate Callback mit Timeout. Wenn es ein "TinkerPing" gäbe würde das genau so funktionieren.
  21. Die Libs an sich reichen zum Ausführen von brickd, aber nicht zum kompilieren. Dafür werden noch die Header Dateien benötigt, die aus *-devel Paketen kommen: sudo yum install libusb1-devel libudev-devel Außerdem fehlt dir GCC. Den kannst du mittels sudo yum groupinstall "Development Tools" installieren, dabei werden auch noch weitere nötige Pakete installiert. Jetzt sollte make alles finden und das Kompilieren funktionieren.
  22. Dir fehlt require 'tinkerforge/bricklet_lcd_20x4' daher ist BrickletLCD20x4 unbekannt.
  23. Neue Bindings funktionieren ohne Probleme mit alten brickd Versionen. Der alte brickd schickt die Disconnect-Probes an den Brick weiter und der Brick ignoriert sie. Da die Disconnect-Probes für USB keinen Sinn machen leitet brickd 2.0.4 sie nicht mehr weiter.
  24. Thema antwortete auf photrons photron in: General Discussion
    Brick Daemon 2.0.4 NSIS installer automatically installs/updates the WinUSB driver on Windows < 8 Improve callback related log messages Fix wrong log level of startup greeting on Windows Drop incoming disconnect probe requests Fix packet buffer handling in unlikely error case Downloads: Windows, Linux (amd64, i386, armhf), Mac OS X
  25. Brick Daemon 2.0.4 NSIS Installer für Windows installiert den WinUSB Treiber auf Windows < 8 Callback-bezogene Logeinträge verbessert Falsches Log-Level für die Startup-Meldung auf Windows korrigiert Eingehende Disconnect-Probes werden verworfen Packet-Buffer-Behandlung im Fehlerfall korrigiert Downloads: Windows, Linux (amd64, i386, armhf), Mac OS X

Account

Navigation

Suche

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.