Category Archives: Hardware

libopencm3 bare-metal Vybrid examples

As I wrote yesterday, I’m currently hacking on libopencm3 for bare-metal Vybrid development. This effort advanced quite a bit, the GitHub repository now contains code to use the UART and GPIOs from the Cortex-M4.

The Hardware I use consists of a Toradex Colibri VF61 on a Iris Carrier Board. The code should also run fine on Freescales Vybrid Tower board (TWR-VF65GS10). Currently I use the preinstalled Linux BSP consisting of U-Boot, Linux 3.0 Kernel and a OpenEmbedded based root file system. Read more »

EXSYS USB-to-serial Adapter and stable device names

EXSYS provides multi serial-port adapters connected over USB. I recently ordered the 8-port device EX-1338HMV. From a hardware perspective, the device is made very solid, ready for industrial use. The connectors, USB as well as power, are secured by additional screws, so tensions on the cables should be an issue.

As soon as I connected the USB cable, the serial ports worked without using any external power adapter, however depending how much the connected device actually draw, external power might be needed.

The device has FTDI chips inside, which was the reason I opted for this solution. FTDI chips have a good reputation in providing high quality USB-to-serial adapters with high accuracy. The FTDI chips are connected through two internal USB hubs, as can be shown using lsusb:

/: Bus 03.Port 1: Dev 1,, Driver=xhci_hcd/4p, 480M
   |__ Port 1: Dev 14, If 0,, Driver=hub/7p, 480M
   |__ Port 1: Dev 15, If 0, Specific Class, Driver=ftdi_sio, 12M
   |__ Port 2: Dev 16, If 0, Specific Class, Driver=ftdi_sio, 12M
   |__ Port 3: Dev 17, If 0, Specific Class, Driver=ftdi_sio, 12M
   |__ Port 4: Dev 18, If 0, Specific Class, Driver=ftdi_sio, 12M
   |__ Port 5: Dev 19, If 0, Specific Class, Driver=ftdi_sio, 12M
   |__ Port 6: Dev 20, If 0, Specific Class, Driver=ftdi_sio, 12M
   |__ Port 7: Dev 21, If 0,, Driver=hub/4p, 480M
       |__ Port 1: Dev 22, If 0, Specific Class, Driver=ftdi_sio, 12M
       |__ Port 2: Dev 23, If 0, Specific Class, Driver=ftdi_sio, 12M

Read more »

Samsung Series 9 13.3″ Ultrabook (NP900X3D) Review

Samsung NP900X3D

Samsung NP900X3D

This week I got myself a Christmas gift: A shiny Samsung Series 9 Ultrabook (or Notebook, what they call it). My device came with a Sandisk SSD U100 128GB, 4GB Memory, HM75 Chipset and the Intel Core i5 3317U Processor. The device looks very nice and feels solid. I like the non reflecting screen very much, the resolution of 1600×900 feels right for the screen size (13.3″) with default DPI settings. Finger prints don’t remain on the outside of the device, but you can make them out on the keyboard. The lid shuts very well, but its a bit hard to get a grip on it to open again. The track pad is big, scrolling using multitouch gestures is very nice to use. Sometimes the track pad fires a click when I just try to move the cursor… Nevertheless, really solid hardware!

Windows 8 and some additional Software was preinstalled. After clicking through the Installer my PC was ready for the first real boot test: Boot time is really incredible, something more than 4 seconds after pressing the power button and the lock screen is visible. Well, it takes another two second to access the desktop, but still, very fast! Since I never worked with Windows 8 so far, I was happy that Samsung provided a nice Quick Start leaflets, so I know now how to access and name the new Windows 8 menues 😉 Read more »

DisplayLink under Ubuntu

DeLock Port Replicator contains DL-165

DeLock Port Replicator contains DL-165

To have some more connection options for different embedded devices I bought a port replicator. My favorite dealer offered an adequate device from DeLock: DeLock USB 2.0 Port Replicator (87503). It supports DVI (and also VGA using an adapter), powered USB and Ethernet. But according to the device description and according to DeLock the device doesn’t support Linux. I asked which graphic chip is inside this device and I get a quick response: DisplayLink’s DL-165. This chip is supported by Linux using the udlfb driver. There are other drivers needed for the rest of the functionality, so I was not sure it is really working completely with Linux. but I’m an optimist, so I ordered the device… 🙂

Now I could take a look at it: The device consists of an USB-Hub, an ASIX AX88772 USB 2.0 Ethernet adapter and the mentioned DisplayLink DL-165 adapter. All devices are being detected by my Ubuntu 11.10 (Oneiric Ocelot) without additional packages. The output of dmesg shows the detected devices. My monitor turned to the udlfb green as expected. Read more »

Building an image for BeagleBone



A few day’s ago TI anaounced a new BeagleBoard: BeagleBone. It’s a stripped down BeagleBoard which basically only has a USB slave-client (providing a serial console, a JTAG debugger and an USB connection to the processor) an USB host controller, an ethernet port and a lot of I/O’s on the PIN-Headers for $89. It’s a bit inspired by the popular Arduino boards. I always thought about buying a BeagleBoard, but it was a too expensive and too functional to use it for my electronic projects…

So in my case, TI’s strategy worked: I want some more power, I want Linux, but it souldn’t be too expensive. I’m going to buy the BeagleBone, i’m just not yet sure about the quantity 😉 But it’s not here yet, in the meanwhile I looked at the software a bit: How can I create root images for the BeagleBone? Read more »

Building my own LightScythe

Pacman made with LightScythe

Pacman made with LightScythe

Last week I got a link from a friend of mine linking to the LightScythe project of Gavin Smith. I was immediately sold of it. I experimented already with long time exposure photography and additional, man-made, light, but I connected with some electronic hardware makes it even more fun. 🙂

By using a full programmable 2 meter LED stripe one can write something into the air while the camera is take the photography (the sensor is exposed). The LED stripe changes its pixel according to a predefined scheme while walking. The sensor get this very bright LED light which ends in showing it bright on the photography. This way you can write something frozen in air which looks very unreal, but not faked in any way! Read more »

ISO-Dateien Booten

Vor kurzem habe ich bei meinem Laptop eine Intel SSD Harddisk eingebaut, und deswegen mein CD-Rom ausgebaut. Dies hab ich ohnehin selten bebraucht, aber es gibt Situationen, in denen es wirklich praktisch ist, zum Beispiel um CD’s zu booten. Ubuntu hat dafür ein Tool, um Ubuntu-CD’s auf USB-Sticks zu schreiben. Dies brauche ich auch öfters und funktioniert ganz ordentlich. Jedoch gibts manchmal auch andere ISO-Dateien die ich booten möchte. Dafür hab ich nun eine Lösung gefunden: Es wird ein Linux mit einem angepassten GRUB-Bootloader auf einen Memorystick geschrieben. Dieser Bootloader kann dan die ISO-Datei direkt vom USB-Stick booten. Wirklich sehr praktisch, allerdings funktioniert die Anleitung nur unter Windows…

Logitech diNovo Mini and Ubuntu

Seit einigen Tagen bin ich nun im besitzt dieser edlen Logitech Tastatur, die Logitech diNovo Mini! Ich muss sagen, sie ist noch kleiner als ich erwartet hätte! Aber das handling ist wirklich hervorragend. Man kann natürlich nicht soviel erwarten wie von einer normalen Maus und einer vollständigen Tastatur, aber für einen Multimedia-Computer ist sie wirklich optimal.

Um sie komplett unter Linux zum laufen zu bringen habe ich etwa 30 Minuten benötigt. Diese Webseite sowie diesen Forumeintrag haben mich vorallem weitergebracht. Bei der Tastatur ist bereits ein USB-Bluetooth-Dongle enthalten. Dieser funktioniert allerdings nicht als Bluetoothdevice unter Linux, sonder als USB-HID-device. Ob es eine Möglichkeit gibt die Bluetooth Funktion zu nutzen habe ich nicht herausgefunden. Read more »

Ubuntu & Wiimote

Die neuste Nintendo Konsole Wii verwendet Bluetooth um mit den Controllern (bekannt unter dem Namen Wiimote) Wireless zu kommunizieren. Dabei wird das herkömmliche Protokoll für Eingabegeräte verwendet, HID. Um die Wiimote als Mausersatz oder als Fernbedienung unter Linux zu verwenden, gibt es ein Projekt mit dem Namen cwiid. In den Ubuntu Quellen steht dieses Tool bereits vorkompiliert zur Verfügung, mit ein paar wenigen Befehlen funktioniert die Wiimote somit auf einem Ubuntu Linux Betriebsystem:
$ sudo aptitude install wminput
$ sudo vi /etc/udev/rules.d/65-persistent-input.rules
Hier muss nun die Berechtigung für das Device uinput gesetzt werden. Dieses Device wird vom Userspacetool wminput verwendet. Am Ende der Datei muss dafür die Zeile KERNEL==”uinput”, GROUP=”admin” hinzugefügt werden. Read more »

USB G-Gloves für warme Hände

In der aktullen Computerworld habe ich ein interessantes USB-Gadgets für alle Computerfreaks welche USB G-Glovesauch ein hohes Schreibtemmpo in den klalten Wintermonate haben möchte: Handschuhe welche geheizt werden über den USB-Anschluss. Angeboten werden diese in einer hermkömmlichen Version und in der Ausführung USB G-Gloves für Frauen, welche trendiger sein sollen.