Blog

Zwei neue Bricklets: CAN und RGB LED

Wir haben zwei neue Bricklets im Programm: Das CAN Bricklet und das RGB LED Bricklet.

https://www.tinkerforge.com/en/doc/_images/Bricklets/bricklet_can_tilted_600.jpg

Mit dem CAN Bricklet ist es möglich Frames eines CAN-Bus zu empfangen und zu senden. CAN wird oft in Autos sowie in industriellen Sensoren und anderen industriellen Bauteilen eingesetzt. Wir planen in Kürze ein Tutorial zum verwenden des CAN Bricklets zusammen mit CANopen Geräten zu veröffentlichen. Das Bricklet hat eine konfigurierbare Baudrate zwischen 10kbit/s und 1Mbit/s. Es ist möglich Filter anzuwenden um nur Frames mit einem spezifischen Identifier zu empfangen.

Das CAN Bricklet ist Verfügbar für 19,99€ inkl. MwSt.

https://www.tinkerforge.com/en/doc/_images/Bricklets/bricklet_rgb_led_tilted_600.jpg

Das RGB LED Bricklet ist mit einer einzelnen einstellbaren RGB LED ausgestattet. Jeder Farbkanal (rot, grün, blau) hat eine Auflösung von 8 bit.

Während des Designs des RGB LED Bricklets hat sich ein etwas peinlicher Fehler eingeschlichen. Wir haben versucht die LED auf einem Bricklet mit einer Breite von 15mm unterzubringen, dies hat leider nicht gepasst. Beim vergrößern der Leiterplatte haben wir es dann ausversehen auf eine Breite von 17,5mm vergrößert. Mit dieser Breite ist das Bricklet nicht in unserem Standard 5mm-Raster, welches alle Bricks und Bricklets haben. Wir werden in Hardware Version 1.1 weitere 2,5mm hinzufügen um eine Breite von 20mm zu erreichen. In der Zwischenzeit ist das RGB LED Bricklet mit Hardware Version 1.0 zum halben Preis bei uns im Shop erhältlich (3,49€ statt 6,99€).

Wir haben lediglich 250 Stück von Hardware Version 1.0 auf Lager. Daher erwarten wir, dass Hardware Version 1.1 mit dem korrekten Lochabstand relativ zügig zur Verfügung stehen wird!

Brick Daemon Beta für Windows 10 IoT Core (Teil 1/2)

Vor einer Weile hat Microsoft Windows 10 IoT Core veröffentlicht, dass auf verschiedenen Embedded Boards, wie z.B. dem Raspberry Pi läuft. Der normale Brick Daemon für Windows läuft allerdings nicht auf Windows 10 IoT Core. Wir haben aber jetzt eine Beta Version des Brick Daemons, die auch auf die auf Windows 10 IoT Core läuft.

Installation

Diese Brick Daemon Version wurde auf einem Raspberry Pi 2 Model B mit den Windows 10 IoT Core Versionen 10.0.10586, 10.0.14295 und 10.0.14376 getestet.

Im Moment kann Brick Daemon für Windows 10 IoT Core nur aus dem Quelltext kompiliert und installiert werden. Dazu muss Visual Studio 2015 für Windows 10 IoT Entwicklung installiert sein. Falls dies noch nicht der Fall ist gibt es hier eine Installationsanleitung von Microsoft dazu.

Als nächstes muss der benötigte Quelltext für Brick Daemon und die daemonlib von GitHub heruntergeladen werden. Der daemonlib Quelltext muss ins src\daemonlib Verzeichnis im Brick Daemon Quelltext Verzeichnis entpackt werden:

brickd-2.2.2-uwp-beta1
-> src
   -> brickd
      -> client.c
      -> ...
   -> daemonlib
      -> daemon.c
      -> ...

Zuletzt src\brickd\brickd_uwp.sln in Visual Studio 2015 öffnen und das Projekt kompilieren und starten. Brick Daemon sollte jetzt auf Windows 10 IoT Core laufen.

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

Beta-Status

Dies ist eine Beta Version, da momentan noch ein größeres Problem vorhanden ist: die automatische Erkennung von USB Geräten funktioniert nicht für alle Bricks korrekt.

Die Windows.Devices API für den Zugriff auf USB Geräte setzt voraus, das jedes USB Gerät eine DeviceInterfaceGUID zugewiesen hat. Normalerweise funktioniert dies von sich aus für alle Bricks, aber Windows 10 IoT Core (zumindest Versionen 10.0.10586, 10.0.14295 und 10.0.14376) scheinen einen Bug zu haben, der dies für alle Bricks außer dem RED Brick behindert. Es ist nicht klar, warum der RED Brick von diesem Problem nicht betroffen ist.

Daher ist für alle Bricks außer dem RED Brick ein manueller Eingriff in die Windows Registry nötig, damit sie von der Windows.Devices API erkannt werden. Folgenden Schritte müssen für jeden Brick einmal ausgeführt werden:

Als ersts den Brick per USB anschließen, dann mit Power Shell eine Verbindung zu Windows 10 IoT herstellen und den folgenden Befehl anpassen und ausführen:

reg add "HKLM\System\CurrentControlSet\Enum\USB\VID_16D0&PID_063D\6K9mW5\Device Parameters" /v DeviceInterfaceGUIDs /t REG_MULTI_SZ /d "{870013DD-FB1D-4BD7-A96C-1F0B7D31AF41}"

Dies fügt die fehlenden DeviceInterfaceGUID für einen Brick mit der UID 6K9mW5 hinzu. Um die DeviceInterfaceGUID für deinen Brick hinzuzufügen muss im Befehl 6K9mW5 durch die UID deines Bricks ersetzt werden.

Nach einem Reset des Bricks sollte Brick Daemon ihn jetzt finden. Es kann allerdings vorkommen, dass der reg add Befehl aus unbekanntem Grund hängt. Falls dies passiert muss Windows 10 IoT Core neugestartet und der Befehl erneut ausgeführt werden.

In unserem Forum gibt es einen Thread zu diesem Thema.

Der zweite Teil befasst sich dann mehr mit den technischen Details und den Problemen Brick Daemon für Windows 10 IoT Core zu portieren.