photron
Administrators
-
Benutzer seit
-
Letzter Besuch
Alle erstellten Inhalte von photron
-
Veröffentlichungen
Bindings: C/C++ 2.0.7, C# 2.0.8, Delphi 2.0.10, Java 2.0.8, PHP 2.0.8, Python 2.0.8, Ruby 2.0.8, VB.NET 2.0.4 Support für PTC Bricklet und Industrial Dual 0-20mA Bricklet hinzugefügt [alle] Workaround für GCC 4.7 Struct Packing Bug ist nur für Windows notwendig [C/C++] Strict-Aliasing Regeln werden eingehalten [C/C++] Windows Phone Support funktioniert wieder [C#] Download: C/C++, C#, Delphi, Java, PHP, Python, Ruby, VB.NET
-
WeatherStationWebsite.php gives no Temperature
I changed the example to use ° to make it less error prone.
-
Feature Wunsch für Viewer - deamon Steuerung
Der Brick Viewer benötigt keine Adminrechte. Eine Steueroption für den Brick Daemon in den Viewer einzubauen halte ich für keine gute Idee. Das wird viele Nutzer eher verwirren, u.a. weil sich das immer auf den lokale brickd beziehen würde und nicht den zu dem man gerade verbunden ist. Für Python gibt es für Service Steuerung das win32serviceutil Modul, unter der Annahme dass es hier um Windows geht. Ein Beispiel dazu. Ansonsten gibt es noch die Kommandozeilentools sc und net unter Windows: sc stop "Brick Daemon" net stop "Brick Daemon"
-
Announcements
Brick Viewer 2.0.6 Remove averaging of analog value from Distance IR Bricklet plugin Set min/max degree correctly if all servos are selected in Servo Brick plugin Support splitted LCD 20x4 Bricklet plugin Fix monoflop time update if Go button is clicked in quick succession Add plugins for PTC Bricklet and Industrial Dual 0-20mA Bricklet Downloads: Windows, Linux, Mac OS X
-
Veröffentlichungen
Brick Viewer 2.0.6 Averaging des Analogwerts aus dem Distance IR Bricklet Plugin entfernt Min/Max Winkel wird korrekt gesetzt wenn alle Servos im Servo Brick Plugin ausgewählt sind Update und Flashen des aufgeteilten LCD 20x4 Bricklet Plugins funktioniert wieder Problem mit der Aktualisierung der Monoflop-Zeit Anzeige behoben, wenn der Go Knopf schnell hintereinander geklickt wird Plugins für PTC Bricklet und Industrial Dual 0-20mA Bricklet hinzugefügt Downloads: Windows, Linux, Mac OS X
-
[C] Bitweise Übertragung an IO4 Bricklet funktioniert nicht
Dein angehängtes Programm funktioniert prinzipiell, du bist da aber in eine Falle mit dem Linker geraten. Das Problem ist, dass du eine Funktion namens send hast und es schon in der libc eine Funktion namens send gibt die die IPConnection inter verwendet. Der Linker nimmt jetzt aber deine send Funktion anstatt der aus der libc (weil die gleich heißen). Der Segfault kommt dann daher dass die falsche send Funktion aufgerufen. Die Lösung ist, deine send Funktion in sendString umzubenennen. Zusätzlich machst du am besten alle deine Funktionen (außer main) static, dann sind sie nur innerhalb der main.c sichtbar. Also statt sendByte (char c) { ... } void send(char *c) { ... } dann static void sendByte (char c) { ... } static void sendString(char *c) { ... }
-
Kombination von Masterbricks mit unterschiedl. Version
Kann ich hier nicht reproduzieren. Funktioniert es denn wenn beide Master die neuste Firmware haben?
-
Installation Brick Viewer auf Raspberry Pi
Ich habe das gerade nochmal hier getestet mit aktuellem Raspbian Image und das funktioniert alles so wie beschrieben. Am Ende habe ich im Menu von LXDE unter Other bzw. Sonstiges einen funktionierenden Brick Viewer Eintrag. Es dauert allerdings einen Moment bis brickv nach dem Klick startet, das Raspberry Pi ist nicht das schnellste Was steht denn bei dir in /usr/share/applications/brickv.desktop? Die sollte so aussehen: [Desktop Entry] Encoding=UTF-8 Name=Brick Viewer Version=1.0 Comment=Viewer for Bricks and Bricklets GenericName=Brick Viewer Terminal=false Icon=brickv-icon.png Type=Application Exec=python /usr/share/brickv/main.py Categories=Electronics;
-
Offizielles "Flash Brick Commandline Tool" - Infos, aber auch Fragen dazu.
Es reichen diese beiden Dateien plus die Pakete python-argparse und python-serial. Welche Abhängigkeiten meinst du? RouvenE fehlte python-serial, weil das in unserer Installationsanleitung nicht aufgelistet war, das ist behoben. Im brickv.deb selbst sind aber alle Abhängigkeiten richtig angegeben. Man könnte argumentieren, dass da python-argparse fehlt, wenn man flash-brick-cli.py als Teil des Pakets ansieht. Was nicht direkt so beabsichtigt war. Es wird dann ja auch noch ein eigenes .deb dafür geben, das dann python-argparse und python-serial als Abhängigkeiten haben wird.
-
Offizielles "Flash Brick Commandline Tool" - Infos, aber auch Fragen dazu.
Das brickv.deb ist natürlich nicht für Systeme ohne GUI gedacht, wie auch flash-brick-cli.py ist eigentlich so gedacht dass du dass zusammen mit samba.py dir irgendwohin kopiert un dann von da ausführst. Dass das im brickv.deb drin ist ist ehr unserer einfachen Art das .deb zu bauen geschuldet, und weniger einer Absicht. Ich gebe dir aber Recht, dass es natürlich hübscher wäre ein eigenes .deb für flash-brick-cli.py zu haben. Ich setze das mal auf die TODO Liste. Sorry, für die gestiftete Verwirrung und die späte Antwort.
-
Programmiersprache
Das "Problem" an PHP ist so ein bisschen, dass es eigentlich nicht als General Purpose Programmiersprache gedacht ist/war, sondern zur Programmierung von Webseiten gemacht ist. Wir empfehlen typischerweise Python als Sprache für Anfänger/Einsteiger.
-
Raspbian BrickViewer
Zu python-serial: Das fehlte in der Anleitung für brickv auf Raspberry Pi installieren, ist jetzt korrigiert. Zu brickd: Wenn du den aus dem .deb installiert hast, wird der automatisch beim Hochfahren mitgestartet. Zum Wetterstations Democode: Auf der Seite ist im ersten Abschnitt die Anleitung zur Installation der benötigten Python Bindings verlinkt. In Kurz: Das Zip für Python von der Downloadseite herunterladen und das .egg darin mit easy_install installieren. wget http://download.tinkerforge.com/bindings/python/tinkerforge_python_bindings_latest.zip unzip tinkerforge_python_bindings_latest.zip -d tinkerforge_python_bindings sudo easy_install tinkerforge_python_bindings/tinkerforge.egg Danach kannst du dann den Democode der am Ende der Seite verlinkt ist herunterladen und ausführen: wget https://raw.github.com/Tinkerforge/weather-station/master/write_to_lcd/python/weather_station.py python weather_station.py
-
C++ Bindings, Compile-Warnungen auf PI, g++ 4.6.3
Ah, ich hatte im Test-Compile-Script -O2 nicht an und dann gibt GCC diese Warning nicht aus. Ist jetzt im git korrigiert.
-
Verteilte Wifi Stacks
Unsere Wetterstation hier in Labor an der Wand ist über eine WIFI Extension angebunden und die läuft seit 7 Wochen durch.
-
[C/C++] JTAG und SAMICE
Laut borg ist das normal. Die ResetException() ist das was als erstes ausgeführt wird. main() wird von ResetException() ausgerufen. Du musst dann einfach im Debugger auf Continue oder so klicken denke ich.
-
C++ Bindings, Compile-Warnungen auf PI, g++ 4.6.3
Hm, gcc_struct kennt GCC nur für x86. Und ja, gcc_struct sollte auch im Header gesetzt werden, das ist aber nicht kritisch, da das Problem für das ich gcc_struct eingefügt hatte nur die .c Datei betrifft. Als kurzfristigen Workaround kannst du für nicht-Windows Systeme das gcc_struct einfach streichen. In der nächsten Bindingsversion ist dass dann behoben. Welche Warning macht denn die "length = ((PacketHeader *)pending_data)->length;" Zeile?
-
RPi und Breakout Bricklet?
Temperature und Barometer Bricklet verwenden I2C Sensoren und brauchen daher keinen externen A/D Wandler, sondern Anschluss an einen I2C Bus. Ambient Light und Humidity Bricklet verwenden Analog Sensoren und brauchen einen externen A/D Wandler. Wie das ganze anzuschließen und zu verwenden ist solltest du den Schaltplänen und dem Source Code entnehmen können. Ansonsten einfach fragen
-
RPi und Breakout Bricklet?
Das Breakout Bricklet ist eigentlich dazu gedacht an die Bricklet Pins eines Bricks zu kommen, es spricht aber nichts dagegen es an ein Bricklet anzuschließen um an dessen Pins zu kommen. Für Bricklets wie das Linear Poti oder das Ambient Light sitzt der A/D Wandler auf dem Brick, nicht auf dem Bricklet selbst. Wenn du diese per GPIO anschließen willst musst du dich schon an deren Pinbelegung halten, z.B. auch einen A/D Wandler bereitstellen. Um welches Bricklet geht es dir denn im speziellen?
-
Ethernet Extension, geplant?
Die Leiterplatten und Bauteile liegen jetzt beim Bestücker, der sie in Kürze produzieren wird.
-
Leitungslänge bei IO Bricklet
Beide Schaltzustände aktive zu treiben ist ein guter Hinweis, Loetkolben. Alternativ kann statt einem IO-4 Bricklet auch ein Industrial Digital In 4 Bricklet verwenden. Durch die Optokopplung ist das stromgesteuert, was robuster gegen Störungen ist, als die Spannungssteuerung des IO-4 Bricklets.
-
[PHP] Fehler beim Connect abfangen
Es gibt genau dafür IPConnection::getConnectionState().
-
Announcements
Plugins: IO-16 Bricklet 2.0.2 Apply debounce period on port b again Downloads: IO-16 Bricklet
-
Veröffentlichungen
Plugins: IO-16 Bricklet 2.0.2 Entprellperiode wird wieder richtig für Port B angewendet Downloads: IO-16 Bricklet
-
[VB.NET] Callbacks und Threads
Der Port Extension Chip auf der IO-16 reagiert auf Interrupts und speichert sich diese. Das Bricklet fragt dann den Zustand des Interruptregisters des Port Extension Chip periodisch ab und sendet entsprechende Callbacks. Da sollte eigentlich kein Interrupt verloren gehen. Die Standard Debounce Period sind 100ms. Zwei Interrupts zwischen denen weniger als 100ms liegen werden als einer gewertet. Wenn du schnelle Interruptfolgen mit weniger als 100ms Zeit zwischen den Interrupts erkennen willst musst du die Debounce Period kleiner stellen.
-
[VB.NET] Callbacks und Threads
Callbacks werden von einem eigenen Thread abgearbeitet. Unter normalen Umständen sollten Callbacks ohne weitere Verzögerung abgearbeitet werden.