Blog

WIFI Extension

Im Blogeintrag vom 25. Mai haben wir angekündigt, dass wir die Chibi Extension nicht weitergeführt können. Wir planten eine WIFI Extension als Alternative kurzfristig anbieten zu können. Leider haben wir einige Zeit benötigt um ein geeignetes WIFI Modul zu finden.

https://www.tinkerforge.com/static/img/_stuff/wifi_modules.jpg

Wir haben einige Demoboards gekauft und für einige Module Prototypen erstellt. Typischerweise werden diese WLAN Module für industrielle Anwendungen genutzt, so dass wir verschiedenste Probleme hatten ein geeignetes Modul zu finden.

Probleme gab es mit geringen Datenraten und hohen Latenzen (problematisch für Getter), Lieferzeiten, Verfügbarkeit der Module und Verbindungsprobleme mit nicht-”Industrie WLAN Routern”. Dazu kam die Herausforderung die SPI Schnittstelle zu nutzen. Viele Module besitzen diese Schnittstelle, sie scheint aber nicht oft benutzt zu werden. Daher ist die Schnittstelle nie sonderlich gut dokumentiert.

Nachdem wir uns erst für das Wifly Modul entschieden hatten, mussten wir nachdem die Software Implementierung so gut wie fertig war, feststellen dass dieses Modul nicht mit WLAN Routern funktioniert die im Privatbereich üblich sind (z.B. Fritz Box). Nach vielem hin und her haben wir uns nun für das GS1011MEES von Gainspan entschieden.

Dies ist nicht das günstigste Modul, hat aber einige nette Eigenschaften, z.B.:

  • 802.11b/g/n

  • WPA/WPA2 Personal und Enterprise

  • Hohe Reichweite (18dBm Sendeleistung)

https://www.tinkerforge.com/static/img/_stuff/wifi_screenshot.jpg

Wir haben am Anfang der Woche Leiterplatten für einen neuen Prototypen für dieses Modul bestellt die mit einem U.FL zu SMA Kabel ausgestattet wird. So können sowohl herkömmliche SMA Antennen an das Modul angeschlossen werden, es ist aber auch möglich direkt den U.FL Stecker zu benutzen um eine SMA Buchse anzuschließen die in einem Gehäuse sitzt! Nächste Woche erhalten wir hoffentlich die Leiterplatten und können dann das WLAN Modul in der Konfiguration testen wie es später verkauft werden soll. Wenn es alle Tests besteht werden wir sofort alles notwendige Bestellen um die Produktion zu starten.

Dies bedeutet, dass wir das ursprünglichen Veröffentlichungsdatum leider nicht einhalten können. Allerdings ist das Licht im Ende des Tunnels nun definitiv in Sichtweite!

Delphi Bindings fertig

Die Delphi Bindings sind jetzt benutzbar!

https://www.tinkerforge.com/static/img/_stuff/delphi.jpg

Falls ihr Bugs findet, bitte im generator git melden: https://github.com/Tinkerforge/generators

Viele kleine Neuerungen

In den letzten Tagen haben wir einige der am öftesten angefragten API Erweiterungen für vorhandene Bricks und Bricklets implementiert:

  • get_chip_temperature (Temperatur vom Mikrocontroller auslesen, verfügbar auf allen Bricks).

  • reset (Software Reset von Mikrocontroller und Stack, verfügbar auf allen Bricks).

  • monoflop (Dual Relay Bricklet)

  • USB Hotplug (Es ist jetzt möglich den USB Stecker in den Master eines Stacks zu stecken, während der Stack schon per Step-Down Power Supply mit Strom versorgt wird. Der Stack startet neu und registriert sich dann ganz normal am PC).

  • Minimale Periode vom Servo Brick ist jetzt 1us (war vorher 2000us).

  • Zeitbasis vom Stepper Brick ist jetzt konfigurierbar (Dies erlaubt z.B. so etwas wie “ein Schritt pro 2,5 Sekunden”).

  • get_all_data/all data Callback (Erlaubt alle wichtigen Nachrichten vom Stepper Brick auf einmal zu bekommen).

  • new_state Callback (Benachrichtigung bei Statusänderung vom Stepper Brick, es lässt sich damit z.B. herausbekommen wann der Schrittmotor seine volle Geschwindigkeit erreicht hat).

  • Und viele kleine Verbesserungen am Brick Viewer.

Alle Änderungen und Links zu den neuen Version können im Veröffentlichungs-Thread auf tinkerunity gefunden werden.

RS485 Extension

Die RS485 Extension ist jetzt verfügbar.

https://www.tinkerforge.com/de/doc/_images/Extensions/extension_rs485_tilted_600.jpg

Nach viel hin und her bei der Implementierung (wir haben das Protokoll zwei mal geändert) ist sie jetzt mit Modbus RTU als Protokoll auf der RS485 Schnittstelle implementiert. Dies ist zwar nicht das effizienteste Protokoll für unsere Datenpakete, allerdings wird dieses Protokoll vor allem in der Hausautomatisierung und in der Industrie eingesetzt. Es gibt fertige Gateways die Modbus auf TCP/IP umwandeln können usw. Dadurch ist es zum einen möglich die RS485 Extension in vorhandene Modbus Netzwerke einzubinden, vor allem ist es aber auch möglich direkt mit einem RS485 Stapel aus Bricks und Bricklets via Modbus zu kommunizieren, ähnlich wie es schon über TCP/IP möglich ist (Dokumentation dafür folgt in kürze). Dafür haben wir die Möglichkeit geschaffen Baudrate, Parität und Stopbits zu konfigurieren.

Die Standardkonfiguration sieht eine Baudrate von 2Mbit vor, damit ist die RS485 Extension schneller als die USB 1.1 Verbindung und kann dadurch im System nicht zum Flaschenhals werden! Falls es bei einem sehr großen RS485 Bus zu Timeouts kommt und der CRC Error Zähler rapide steigt, sollte die Baudrate verringert werden.

Um die Installation von vielen kleinen RS485 Stapeln so einfach wie möglich zu machen haben wir auch noch ein USB Netzteil mit in den Shop aufgenommen:

Dies ist natürlich nicht geeignet um damit Motoren zu betreiben, ist aber für kleine RS485-Slave-Stapel gut geeignet!

Neue Brick Viewer Version (1.1.0)

Wir haben einen neuen Brick Viewer veröffentlicht, damit ist es jetzt möglich nicht nur Bricklets sondern auch Bricks zu flashen und dies automatisch bei uns vom Server, ohne das die passende Firmware händisch heruntergeladen werden muss.

Damit fällt jetzt SAM-BA als notwendiges “Drittanbieter-Tool” weg. Gefühlt hat das Atmel Tool viele Probleme gemacht und es gab auch keine Mac OS X Version. Desweiteren haben wir einige Sachen neu implementiert um Abhängigkeiten loszuwerden, so gibt es jetzt keine pylab, scipy und matplotlib Abhängigkeiten mehr für den brickv, was die Installation auf embedded Geräten und obskuren Linux Distributionen einfacher machen sollte.

https://www.tinkerforge.com/de/doc/_images/Screenshots/brickv_flashing_firmware.jpg

Dokumentation dazu gibt es hier und hier