May 042014
 

Gestern erhielten wir ein Paket aus China, mit einem BananaPi als Inhalt. Wie grün noch ist diese in den Markt gebrachte Banane? Reift sie genauso wie “Banana Software” erst mit der Zeit nach?

Hier ist unser erster Eindruck von der neuen Platine, die dem Raspberry Pi Konkurrenz machen möchte!

Auspacken

BananaPi-Bubble-PackageBanana-Pi-CartonBox

BananaPi-ESD-bag

Unsere Banana Pi Platine kommt dick in Luftpolsterfolie eingewickelt, einem unbeschrifteten weißen Karton (schneller Markteintritt?), und natürlich in einem antistatischen ESD Beutel verpackt.

Sobald dieser Beutel aufgerissen ist, kann man den BananaPi in Ruhe von allen Seiten betrachten:

Banana-Pi-shot

Die Banane misst 92 mm x 60 mm, was ein wenig größer ist als unsere vertraute Beere (85 x 56 mm ).

Inkompatibel mit Raspberry Pi Gehäusen

Leider wird sie durch die größere Platinengröße, und auch die zusätzlichen Anschlüsse (z.B: SATA Anschluss), inkompatibel mit den meisten Raspberry Pi Gehäusen. Abgebildet ist das TEK-BERRY Gehäuse, das wir für fast alle unsere Raspberry Pi Produkte verwenden:

BananaPi-TEKBERRY-case

 

Anschlüsse / Interfaces

Der Banana Pi hat, wie der Raspberry Pi auch, zwei USB Ports, einen micro-USB Anschluss für Power (neben dem SATA Port, NICHT an der “gewohnten” R-Pi Position!).

Für Video-Ausgabe sorgen der HDMI Port, und ein RCA Jack (NTSC / PAL). Für Audio gibt es die gewohnte 3.5 mm Klinkenbuchse. Audio kann natürlich auch über den HDMI Port ausgegeben werden.

Er wird als Raspberry Pi kompatibel vermarktet, hat daher den gewohnten GPIO Pin Header mit UART, I2C, SPI, Power. Nach eigenen Angaben pin-kompatibel, noch nicht von uns getestet.

Er hat jedoch noch einige mehr Anschlüsse, bzw. vom Pi abweichend:

  • GBit LAN Anschluss
  • IR – Empfänger
  • USB OTG Anschluss (kann auch zum “powern” des B-Pis genutzt werden)
  • SATA Anschluss (& Power Header für SATA drives)

 

  • zusätzliche Pins (GPIO Port) –> CAN bus, ADC
  • Eingebautes Mikrofon (neben dem Audio Ausgang)
  • Drei Tasten (Reset, Power Key, Uboot Key)
  • Eine Custom programmierbare LED (beim Pi kann eine LED ebenfalls umfunktioniert werden)

Was wir bei dem Banana Pi vermissen ist eingebautes WiFi & Bluetooth, was bei dem Raspi auch wirklich, wirklich fehlt. Liebe Foundation, vielleicht bei Model C? In unseren Raspberry PI Kits legen wir daher oft einen WLAN Stick bei, der jedoch einen der USB Ports gleich belegt.

BananaPi-FrontBananaPi-Back

Die Fotos zeigen den Banana Pi von vorne und von hinten. Der SoC und die beiden RAM Chips sind hinten gut erkennbar. Bei dem Raspberry Pi befindet sich der Speicher direkt über dem SoC (d.h. das ist der Chip den wir eigentlich darauf sehen).

Folienkabel – Anschlüsse:

Der BananaPi hat einen DSI Display Connector, neben dem LAN Port, und einen CSI Camera Connector. Im Vergleich zum Pi sind diese damit genau umgekehrt! Durch veränderten Pitch sind die Stecker anders als beim Pi dimensioniert – 16 mm Breite des Folienkabels beim R-Pi (Kameramodul), ca. 20,5 mm Breite der Buchse beim R-Pi. Das BananaPi hat Buchsen für ein ca. 21 mm breites Folienkabel, und die Buchsen selber sind ca. 26 mm breit.

Das Kameramodul des R-Pis und dessen Software ist auf den Broadcom SoC des Pis optimiert, um beispielsweise direkt in H.264 aufzeichnen zu können.

Ich vermute, dass es mit einem Gewaltmarsch in Software, und evtl. Hardware-Rerouting möglich wäre, das Kameramodul des Pis an den Banana Pi anzubinden. “Out of the box” scheitert es jedoch allein schon an dem Steckverbinder.

Erweiterungen

Rund um den Raspberry Pi gibt es eine Vielzahl von Erweiterungen, beispielsweise auch unser Touch Display Modul, das per GPIO Kabel angebunden wird.

In diesem Fall (und falls der Header wirklich Pin-kompatibel ist, wie behauptet) hängt die Nutzung nur von der Software ab, die für den Banana Pi neu geschrieben werden muss. Unser Display ist beispielsweise noch nicht kompatibel mit dem Banana Pi, da es ein besonderes Kernel-Modul, das für den R-Pi Kernel kompiliert wurde, benötigt. Da dieser Kernel wiederum für den R-Pi ist, dürfte er auf dem Banana Pi nicht starten, oder es könnte Unterstützung für diverse Hardware fehlen.

BananaPi-Ribbon-Cable

Viele der Erweiterungen werden allerdings speziell für den Formfaktor des Raspberry Pis hergestellt. Beispielsweise sieht man in den folgenden zwei Bildern das beliebte PiFace. Links auf dem Banana Pi, rechts auf dem Raspberry Pi:

BananaPi-PiFaceRaspberry-Pi-Piface

Wie man auf dem linken Bild erkennen kann blockiert der anders angebrachte LAN Port des Banana Pis das erfolgreiche Einstecken des PiFaces! Dieses kann jetzt nur noch über spezielle Adapterplatinen, wie bspw. Farnell’s Multi-breakout Board angeschlossen werden.

Das ist wichtig zu wissen, bevor man den Banana Pi kauft.

Auch Erweiterungen die einen wesentlich kleineren Footprint haben können problematisch sein:

BananaPi-RasClock

Die RasClock, Realtime Clock für den Raspberry Pi, lässt sich gut stecken. Mit dem Batteriehalter, und damit +3V berührt sie jedoch einen der Pins des BananaPis! Das ist auf dem Foto bei genauem Hinschauen zu erkennen.

Die Entfernung zwischen Composite Port und GPIO Header ist ebenfalls eine andere, dadurch sind weitere Erweiterungsplatinen inkompatibel. Raspi.TV hat ein Foto.

Hardware & Software

Der Banana Pi hat im Vergleich zum Raspberry Pi einen deutlich leistungsfähigeren, Dual-Core AllWinner A20 SoC – ARM Cortex A7 basierend.

1 GB DDR3 SDRAM im Vergleich zum R-Pi sind ein schöner Sprung, es gibt jedoch bereits Embedded-Boards mit noch mehr RAM.

Die Mali 400 GPU des BananaPis (ARM Mali400MP2) ist OpenGL ES 2.0/1.1 fähig.

In den SD/MMC Slot können bis zu 64 GB Karten eingesteckt werden, und bis zu (angeblich) 2 TB Festplatten an den SATA Anschluss angeschlossen werden. Ich vermute, dass auch größere Festplatten möglich sein sollten.

Die zwei USB Ports sind direkt an den AllWinner SoC angebunden, dadurch ist natürlich der Gesamtdurchsatz je Port im Vergleich zum Pi erhöht. (Der Pi bindet LAN, und beide USB Ports über einen einzigen tatsächlichen USB Port des SoCs an.)

Strom erhält der Banana Pi über einen oder beide Mikro-USB Ports. Er benötigt 1,7 A im Vergleich zu dem deutlich genügsameren R-Pi mit 750 mA. Wir haben mit einem 2 A Netzteil getestet.

Gebootet wird der Banana Pi genauso wie der Raspberry Pi von der SD Karte.

Nicht kompatibel mit SD Karten für den Raspberry Pi

Mein erster Versuch war, direkt von einer für den Raspi bespielten SD Karte zu booten. Fehlanzeige – der Bildschirm blieb dunkel, nur eine LED leuchtete.

Es müssen speziell für das System erstellte Images heruntergeladen werden. Es gibt ein auf Raspbian basierendes Image, das sogar die Raspbian Repositories für Software-Installation nutzt.

Es ist jedoch eigentlich sinnvoller, falls man nicht auf die Raspbian – Ökosphäre angewiesen ist, ARMv7 – Repositories / Software zu nutzen. Beispielsweise wird dank ARMv7 Ubuntu unterstützt, oder nach eigenen Angaben auch Android 4.4.

Für Android gibt es momentan allerdings nur ein Android 4.2 Image zum Download.

BananaPi-and-Picard

Mit unserer half-size SD Karte pi.card ist der Banana Pi kompatibel. Die Karte lässt sich nicht ganz so leicht wie bei dem Raspberry Pi entfernen, schließt jedoch bei dem Banana Pi bündig mit dem Rand ab.

pi.card wird also mit allen für den Banana Pi erscheinenden Gehäusen kompatibel sein. Mit den passenden Images für den Banana Pi kann man pi.card mit unserem beiliegenden SMILE SD Reader an jedem Rechner bespielen.

Raspbian auf dem Banana Pi Board

Das Image kann man von http://www.lemaker.org herunterladen (Google Drive Mirror). Raspi.TV hat in ihrem Review darauf hingewiesen, dass das Image für manche 8 GB Karten zu groß ist, daher habe ich es nach dem Entpacken gleich auf eine 16 GB Karte gespielt.

Das System startet direkt nach dem Boot in den Desktop (kurze Wartezeit mit dunklem Bildschirm inklusive).

Wie bereits beschrieben ist die Raspbian Repository eingebunden, und Pakete können wie gewohnt mit aptitude install installiert werden, z.B. aptitude install chromium

Chromium funktioniert, ebenso wie Midori.

Alles, inklusive den Browsern, und der Paketinstallation läuft spürbar schneller als auf dem Pi, jedoch für meine (vielleicht sehr anspruchsvollen?) Surf-Bedürfnisse immer noch ZU langsam (Seitenaufbau, Reaktionszeiten).

Das gleiche gilt auch für raspi-config, mit dem man z.B: die Tastatur konfigurieren kann. Ich bezweifle dass Übertakten, etc. aus raspi-config heraus funktionieren wird, ausprobiert habe ich es jedoch noch nicht.

Bei unserem Test hatte der HDMI Ausgang nach einem Time-Out ausgeschaltet. Auch durch Tastaturdruck / Mausbewegung konnte der Bildschirm nicht reaktiviert werden. Vielleicht eine Einstellungssache?

omxplayer

omxplayer ist zwar installiert, beendet sich aber mit der Fehlermeldung

“* failed to open vchiq instance”

egal ob man ihn als root oder user pi ausführt.

Das war nicht anders zu erwarten, ist doch omxplayer für OpenMAX, und insbesondere den VideoCore IV, die GPU des Raspberry Pi SoCs entwickelt worden. Die Mali GPU des Banana Pis muss anders angesprochen werden!

vlc

vlc konnten wir leider nicht testen, da es sich nicht installieren ließ. Das könnte mit den benötigten Reboots zusammenhängen (siehe oben: HDMI Time-Out)

Noch keine Unterstützung für WiringPi, RPi.GPIO

Gemäß Raspi.TV hat der Banana Pi (dort liebevoll ‘nana genannt) noch keine High-Level Unterstützung der GPIO Ports für Python, etc. Das wird sich bestimmt mit der Zeit ändern (Kernel-Unterstützung), hängt jedoch auch sehr von der Community-Größe ab. Hier hat der Pi die Nase eindeutig vorne.

Für GPIO-Interfacing sind darüber hinaus die Prozessor / Netzwerk Fähigkeiten des Pis vollkommen ausreichend – wenn man die Daten aufwendig weiterverarbeiten möchte währe eventuell ein zusätzlicher Server, beispielsweise eine virtuelle Maschine, aktuell eine interessantere Wahl als die Banane.

Android auf der Banana

Das Android Image von lemaker.org kann NICHT mit Win32DiskImager geschrieben werden. Es muss ein Tool von Allwinner dazu genutzt werden (PhoenixCard). Wir haben es aufgrund von Sicherheitsbedenken nicht getestet, da dieses Tool leider nicht direkt auf der Allwinner Seite herunterzuladen war.

Hier ist die benötigte Anleitung.

Fazit

Der Banana Pi ist eine gute Idee, jedoch steckt der Teufel in den Details:

  • Viele Raspberry Pi Erweiterungen mechanisch inkompatibel
  • Gehäuse inkompatibel
  • Software muss neu erstellt und angepasst werden (z.B. Kernel-Treiber)
  • Leistungssprung relativ gesehen nicht “sensationell”, potentiell schlechtere Grafik-Performance / Hardware Encoding / Decoding (noch zu wenig Infos darüber verfügbar)

Für Bastler, die nur den GPIO Port mit Python, etc., nutzen wollen, ist der Raspberry Pi nach wie vor erste Wahl. Hierbei spielt der langsame Prozessor keine solche große Rolle. Je nach eigenen Fähigkeiten sind auch Arduino-kompatible Boards sehr, sehr interessant. Ich sehe hier für den BananaPi nicht den Schlüsselmarkt.

Für NAS / … Anwendungen kann man entweder auf dedizierte Hardware zurückgreifen (die preislich mit Gehäuse etwa gleich liegt), oder auf einen leistungsfähigen Intel Atom SoC / bald auch auf einen AMD ARM64 setzen. Intel’s Minnowboard Max bietet z.B:

  • 64 bit Intel Atom SoC, auch als dual-Core erhältlich
  • 2 GB DDR RAM
  • einen USB 3.0 port (!)
  • PCI Express Gen 2.0 Lane

Es ist zwar natürlich teurer als der Raspberry Pi, und als der Banana Pi – aber auch deutlich leistungsfähiger und zukunftssicherer dank USB 3.0!

Für CloudComputing – Anwendungen ist der Formfaktor des Rpis / des BPis uninteressant, da nicht platzoptimiert, auch die Leistung per € / $ ist zu niedrig.

Summa summarum wirkt der Banana Pi auf uns momentan noch sehr unreif – wir empfehlen zu warten, bis die Plattform reifer wird, oder zu einer Alternative zu greifen.

Gute Alternative: HummingBoard

Wer von dem Banana Pi nicht ganz überzeugt ist:

Eine weitere Raspberry Pi “look-alike” Plattform, HummingBoard von SolidRun steht schon in den Startlöchern. Falls die Abmessungen der Platine, und deren Konnektoren kompatibler zum R-Pi sind, wäre schon viel gewonnen.

SolidRun geht beim Aufbau der Plattform und Community auf jeden Fall geschickter vor – die Platine befindet sich jetzt erstmal in den Händen von Entwicklern, auch für OpenELEC / Raspbmc Unterstützung wurde von Anfang an gesorgt. Wer auf den Raspi-Formfaktor verzichten kann, kann bereits jetzt bei SolidRun einen Computer in Form eines kompakten, passiv gekühlten Würfels bestellen.

Leider hat auch das HummingBoard keinen WiFi on-board support. Bei den anderen SolidRun Modellen ist WiFi teilweise eingebaut.

Momentan ist das HummingBoard noch nicht verfügbar. Bei entsprechender Nachfrage (bitte um Kontakt) werden wir uns überlegen, es auch in unser Sortiment als “Highend Raspi” aufzunehmen.

Referenz & further reading:

May 082013
 

This is a short summary of the German article I have posted yesterday. Have a look at it, if you want to see photos how to distinguish Version 1.0 from Version 2.0 of this TP-Link TL-WN725 N Nano WiFi USB dongle.

Update

We have released a package in our repository to install this driver in the most easy fashion possible. Head on over to our new blog-post to read all about it!

What is this about?

TP-Link changed the chip driving it’s TL-WN725N Nano WiFi stick. Whereas v1.0 would work out of the box with the newest Raspbian (02-09-13) v2.0 does not work unless you install a custom driver.

Driver installation procedure (legacy)

If possible, you should use the instructions to install the driver from our repository – it is more convenient for you. The remainder of this article is here for historical purposes.

MrEngman from the Raspberry Pi Forum has compiled a driver for v2.0 (which uses the 8188eu chip), including modifications for making the blue LED work and less debug output (thus making it faster).

Here are his installation instructions, quoted from this forum post on the Raspberry Pi Forum:

wget https://dl.dropboxusercontent.com/u/80256631/8188eu-20130209.tar.gz
tar -zxvf 8188eu-20130209.tar.gz
sudo install -p -m 644 8188eu.ko /lib/modules/3.6.11+/kernel/drivers/net/wireless

Once you have installed the driver you should activate it:

sudo depmod -a
sudo modprobe 8188eu

The first command will update the kernel module settings – on the next reboot, the new driver should be included automatically. The second command allows you to load the driver immediately. Now you can try ifconfig to see wlan0 – it should be available now.

Raspbian Image with driver

We have bundled the driver with a fresh Raspbian image, based on Raspbian 2013-02-09.

Additionally we have updated the apt cache, and installed all currently available updates to the default packages. This should save you some bandwidth and – more importantly – time.

This image will be 4 GB in size when you decompress it (use 7-zip), and should be installed by the usual method of image writing to SD cards. Please note that we have not expanded the image to fit the whole (4 GB) SD card, you still need to run sudo raspi-config to finish the set-up.

The original tar.gz file from MrEngman is in the folder /home/pi/wlan-fix – just in case you should ever need it, it is already installed and activated for you in this image.

download-tp-link-wlan-fix-image[4]Download raspbian-wifi-fix130523.7z (532 MB)

 

Update

I have updated the image today (31.05.2013). It has all updates as of the 23rd of may of a stock Raspbian install. Also I have resized the image to the real size the partitions need initially.

Please note, if you run updates the driver may become disabled. Simply use

sudo depmod -a
sudo modprobe 8188eu

to fix this after the updates.

 

Simple WiFi network setup

In the simple case of the Raspberry Pi being used with WLAN only, a DHCP access point / router, and no roaming is required, you should be fine with the followíng /etc/network/interfaces file

auto lo

iface lo inet loopback
#iface eth0 inet dhcp

allow-hotplug wlan0
auto wlan0
iface wlan0 inet dhcp
        wpa-ssid "your-ssid"
        wpa-psk "your-password"
#wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf
iface default inet dhcp

Change your-ssid and your-password, but please keep the quotation marks around them. As you see in the setup above, the wpa_supplicant.conf is commented out.

Optimization WordPress Plugins & Solutions by W3 EDGE