AdvaBoard RPi1 Software

Webseite:http://www.advamation.de / http://www.advamation.com
Autor:Advamation, Roland Köbler <support@advamation.de>
Version: 2014-06-26
benötigte Bibliotheken:
 GLib 2, GDK-Pixbuf 2 bzw. GTK 2
unterstützte Programmiersprachen:
 C, Python 2, Python 3, Java, Shell

Software für das AdvaBoard RPi1 und die dazugehörigen TFT-Displays.

Derzeit benötigen die meisten Kommandos und Bibliotheksfunktionen root- Rechte; dies wird sich in einer der nächsten Versionen jedoch ändern.

Sollten Sie bisher eine ältere Version dieser Software verwenden, so beachten Sie bitte die in der NEWS-Datei aufgeführten Änderungen.

Bei Fragen, Problemen oder für Fehlerberichte können Sie uns unter support@advamation.de erreichen.

Dokumentation

[1]Sollten Sie eine deutschsprachige Software-Dokumentation benötigen, so kontaktieren Sie uns bitte.

enthaltene Dateien

Übersicht

Verzeichnis/Datei Inhalt
README.de diese Datei
README diese Datei in Englisch
NEWS Liste von Änderungen gegenüber älteren Versionen
LICENSE Software-Lizenz (größtenteils MIT/X11-ähnlich)
binding-java/ Java-Anbindung an die C-Bibliotheken
binding-python/ Python-Anbindung an die C-Bibliotheken
doc/ Dokumentation der Software
examples/ Beispielprogramme
include/ C-Include-Dateien
kernel/ Quellcode für Linux-Kernel-Module
locale/ Unterstützung für verschiedene Sprachen
prebuilt/ Vorkompilierte Bibliotheken und Kommandozeilenprogramme
src/ C-Quellcode der Bibliotheken und Kommandozeilenprogramme
tools/ verschiedene Hilfsprogramme, Skripte und Konfigurationsdateien

doc/: Dokumentation

Dateiname Beschreibung
index.html HTML-Startseite für die Dokumentation
README.de.html diese Datei als HTML
README.html diese Datei als HTML in Englisch
advamation.txt/.html Dokumentation der Advamation C-Bibliothek
am_rpi.txt/.html Dokumentation der Advamation Raspberry Pi-Bibliothek
am_rpi_advaboard.txt/.html Dokumentation der Advamation AdvaBoard RPi1-Bibliothek
am_rpi_tft.txt/.html Dokumentation der Advamation TFT-Display-Bibliothek
advamationfb.txt/.html Dokumentation des Advamation Framebuffer-Treibers
touchpanel.tft/.html Dokumentation des Advamation Touchpanel-Treibers
java.README.html Java-Binding-README-Datei als HTML
java.am_rpi_advaboard.txt/html Dokumentation der Java-Anbindung an am_rpi_advaboard
python.README.html Python-Binding-README-Datei als HTML
python.advamation.txt/.html Dokumentation der Advamation Python-Bibliothek
python.rpi.txt/.html Dokumentation der Python-Anbindung an am_rpi
python.advaboard.txt/.html Dokumentation der Python-Anbindung an am_rpi_advaboard
examples.README.html examples/README.txt als HTML
advaboard_gui.README.html tools/advaboard_gui/README.txt als HTML
rpc.README.html tools/rpc/README.txt als HTML
sysvinit.README.html tools/sysvinit/README.txt als HTML

prebuilt/: Bibliotheken/Programme

  • bereits kompilierte Kommandozeilen-Programme (statisch gelinkt)
  • bereits kompilierte Bibliotheken für Raspian Wheezy (7.x)
  • bereits kompilierte Framebuffer-Kernelmodule für manche Kernel
  • aus dem beiliegenden Quelltext erstellt
Dateiname Beschreibung
libam_rpi.so Advamation Raspberry Pi-Bibliothek
libam_rpi.a Advamation Raspberry Pi-Bibliothek, statische Version
libam_rpi_advaboard.so Advamation AdvaBoard RPi1-Bibliothek
libam_rpi_advaboard.a Advamation AdvaBoard RPi1-Bibliothek, statische Version
libam_rpi_tft.so Advamation TFT-Display-Bibliothek
libam_rpi_tft.a Advamation TFT-Display-Bibliothek, statische Version
am_rpi.jar JAR-Datei für die Advamation AdvaBoard RPi1-Bibliothek
libadvamation-jni.so Java-Binding für die Advamation C-Bibliothek
libam_rpi_advaboard-jni.so Java-Binding für die Advamation AdvaBoard RPi1-Bibliothek
am_rpi_tool Kommandozeilenprogramm für den Raspberry Pi
am_rpi_advaboard_tool Kommandozeilenprogramm für das AdvaBoard RPi1
am_rpi_tft_tool Kommandozeilenprogramm für die TFT-Displays
am_rpi_framebuffer TFT-Display-Framebuffer-Treiber (User-Space-Daemon)
am_rpi_touchpanel TFT-Touchscreen Treiber (User-Space-Daemon)
advamationfb.VERSION.ko Framebuffer-Kernel-Modul für Kernel "VERSION"
Makefile Makefile, um die Dateien im System zu installieren

src/, binding-*/: Quellcode

Dateiname Beschreibung
src/CMakeLists.txt CMake-Makefile
src/Find_simple.cmake CMake-Datei
src/advamation.h Advamation C-Bibliothek, Header-Datei
src/advamation.c Advamation C-Bibliothek, Quellcode
src/am_rpi.h Advamation Raspberry Pi-Bibliothek, Header-Datei
src/am_rpi.c Advamation Raspberry Pi-Bibliothek, Quellcode
src/am_rpi_delay_nop.asm Advamation Raspberry Pi-Bibliothek, Quellcode
src/am_rpi_advaboard.h Advamation AdvaBoard RPi1-Bibliothek, Header-Datei
src/am_rpi_advaboard.c Advamation AdvaBoard RPi1-Bibliothek, Quellcode
src/am_rpi_tft.h Advamation TFT-Display-Bibliothek, Header-Datei
src/am_rpi_tft.c Advamation TFT-Display-Bibliothek, Quellcode
src/am_rpi_tool.c Kommandozeilenprogramm für die Raspberry Pi-Bibliothek
src/am_rpi_advaboard_tool.c Kommandozeilenprogramm für die AdvaBoard RPi1-Bibliothek
src/am_rpi_tft_tool.c Kommandozeilenprogramm für die TFT-Display-Bibliothek
src/am_rpi_framebuffer.c TFT-Display-Framebuffer, User-Space-Programm
src/am_rpi_touchpanel.c Touchpanel Treiber
binding-java/README.txt Java-Binding: README-Datei
binding-java/c/* Java-Binding: C Code
binding-java/am_rpi/* Java-Binding: Java Code
binding-java/Makefile Java-Binding: Makefile
binding-python/README.txt Python-Binding: README-Datei
binding-python/am_rpi/ Python-Binding: Python Module
binding-python/am_rpi/setup.py Python-Binding: Setup-Skript

examples/: Beispiel-Programme

Dateiname Beschreibung
examples/README.txt README-Datei inkl. Informationen zu allen Beispielen
examples/c/* Beispielprogramme in C
examples/java/* Beispielprogramme in Java
examples/python/* Beispielprogramme in Python
examples/sh/* Beispielprogramme als Shell-Skript

Zusätzlich können die Kommandozeilenprogramme (src/am_*_tool.c) als komplexere C-Beispiele dienen.

kernel/: Linux-Kernel-Module

Dateiname Beschreibung
advamationfb/Makefile Makefile für das Framebuffer-Kernel-Modul
advamationfb/advamationfb.c Quellcode des Framebuffer-Kernel-Moduls

tools/: Hilfsprogramme, Skripte und Konfigurationsdateien

Dateiname Beschreibung
advaboard_rpi1_setup/* Software-Setup-Skript und Konfigurationsdateien
advaboard_gui/* AdvaBoard GUI: grafische Benutzeroberfläche
rpc/* Remote Procedure Call für die AdvaBoard-Bibliotheken
sysvinit/README.txt README-Datei für die SysVinit-Skripte
sysvinit/am_rpi_framebuffer.sh SysVinit-Skript für den TFT-Display-Framebuffer
sysvinit/am_rpi_framebuffer Konfigurationsdatei für am_rpi_framebuffer.sh
sysvinit/am_rpi_touchpanel.sh SysVinit-Skript für den TFT-Display-Touchscreen
sysvinit/am_rpi_power.sh SysVinit-Skript zum Ein-/Ausschalten des Raspberry Pi
sysvinit/am_rpi_power Konfigurationsdatei für sysvinit/am_rpi_power.sh
sysvinit/am_rpi_shutdownbutton.sh SysVinit-Skript zum Starten des Shutdownbutton-Daemons
sysvinit/am_rpi_shutdownbutton Konfigurationsdatei für sysvinit/am_rpi_shutdownbutton.sh
am_rpi_shutdownbutton.sh Daemon zur Überwachung des Shutdown-Tasters
xorg.conf X.org-Konfigurationsdatei für die TFT-Displays

Installation

  1. Software auf den Raspberry Pi (bzw. dessen SD-Karte) kopieren und entpacken (VERSION muss durch die passende Versionsnummer ersetzt werden):

    tar -xzf advaboard_rpi-VERSION.tar.gz
    
  2. Software installieren:

    • Setup-Skript auf dem Raspberry Pi ausführen und alle Fragen beantworten:

      cd advaboard_rpi-VERSION
      cd tools/advaboard_rpi1_setup
      ./advaboard_rpi1_setup.sh
      
      # bzw. ./advaboard_rpi1_setup.de.sh
      

      Alternativ können bereits alle Antworten mit Standardwerten für Raspbian vorbelegt werden:

      ./advaboard_rpi1_setup.sh -i advaboard_rpi1_setup.default
      
      # bzw. ./advaboard_rpi1_setup.de.sh -i advaboard_rpi1_setup.default
      
    • Alternativ kann die Software auch manuell übersetzt und installiert werden:, you can compile and install the C-libraries manually:

      1. Notwendige Software (glib-2.0-dev, gdk-pixbuf-2.0-dev, cmake >=2.6, gcc) installieren, z.B. für Debian/Raspbian:

        sudo apt-get update
        sudo apt-get install libglib2.0-dev libgdk-pixbuf2.0-dev cmake
        
      2. Kompilieren der Bibliotheken und Kommandozeilenprogramme:

        make
        
      3. Installation der Bibliotheken, Kommandozeilenprogramme, Java-/Python-Anbindungen usw.:

        make install
        make install_sysvinit
        

        Danach können per make clean die kompilierten Dateien wieder gelöscht werden. Soll die Software später wieder deinstalliert werden, so kann hierfür make uninstall verwendet werden.

      4. Informationen zur Installation und Konfiguration der SysVinit-Skripte, des Framebuffer- und des Touchpanel-Treibers sind in den entsprechenden README-Dateien bzw. Dokumentationsseiten enthalten.

  3. Software testen (falls noch nicht mit dem Setup-Skript erledigt):

    • Erster Test mit angestecktem AdvaBoard RPi1:

      sudo am_rpi_advaboard_tool -m init
      sudo am_rpi_advaboard_tool -m info
      
    • Nun können die Kommandozeilenprogramme verwendet werden, z.B.:

      sudo am_rpi_advaboard_tool -m LED 2
      

      um die LED des AdvaBoard RPi1 blinken zu lassen.

    • Für erste Tests empfehlen sich außerdem:

      • die AdvaBoard GUI in tools/advaboard_gui/
      • die Shell-Beispielprogramme in examples/sh/
  4. Software nutzen:

    Nun können die Bibliotheken in eigene Programme eingebunden werden. Die mitgelieferten Beispielprogramme sowie der Quellcode der Kommandozeilenprogramme können hierbei als Ausgangspunkt für eigene Programme dienen.

    Sollte ein Programm die Advamation-Bibliotheken nicht finden, so können Sie den Suchpfad manuell setzen:

    export LD_LIBRARY_PATH=/usr/local/lib/