Beiträge von Superhobel

    Hallo,

    mir ist das grundsätzlich klar,wenn ich unter Windows arbeite. Verbindung aufbauen und der Rest passiert im Hintergrund. Browser aufmachen und surfen. Dem PC ist es egal, der sieht nur ein tty Modem über das er was senden und holen kann.

    Hier ist eine riesige Doku über GPRS Verbindungen von Modems:
    http://www.fortito.mx/wp-content/upl…nce%20Guide.pdf

    Was ich aber nicht sehe ist was das Modem an Daten bekommt vom Browser, von der ftp Anwendung usw. Das muss ich ja in meinem Script oder C Programm alles selbst erzeugen.
    Ist es nun so, dass ich manuell alles selbst RICHTIG erzeugen muss, was der PC mir sonst durch seine Treiber und den TCP/IP Stack abnimmt?

    Beispiel einer möglichen Anwendung:

    1. Modem öffnen, Provider anwählen, Verbindung herstellen. Ist noch ziemlich easy sowas.

    zb: enfach mal rauskopiert
    AT +CGDCONT=1, "IP", "internet"; +GCDCONT=2, "IP","APN"
    ATD*99***1#

    2. Verbindung steht, der RPi kriegt ne IP verpasst im Netz, das Modem ist ein /dev/tty.... Device und kann Daten entgegennehmen

    Was jetzt fehlt ist die Schicht, die Daten schreibt und holt.

    Wie kriege ich jetzt zb proftpd dazu, dass es über diese Verbindung kommuniziert? Wäre ja sehr einfach ein ftp Programm zu verwenden um irgendwo
    im Netz Daten abzulegen.

    Hallo,

    das konnten die Modems auch vor 10 Jahren schon, eine GPRS Verbindung aufbauen. Nur habe ich überhaupt keine Ahnung
    wie das vonstellen gehen soll. Mein Tracker baut eine Verbinung zu einer Homepage auf, die seine Lage in einer Karte
    darstellt. Irgendwie muss das ja verarbeitet werden. Ist das so als hätte ich ein Patchkabel zwischen den beiden? Also
    den Pi ganz normal über eine IP per ssh ansprechen? Der AT Satz enthält jedenfalls nichts dergleichen meine ich.

    Moin und Frohes Neues!

    Ich habe da ein Projekt angefangen, zumindets in der Planung. Ich habe einen TK02 GPS Tracker, der mit
    Hilfe eines GSM Modems eine Internetverbindung aufbauen kann und sowas möchte ich mit dem Pi auch
    machen. Er soll an meinem neuen Wohnort im Schwarzwald mit einem Solarmodul betrieben werden und
    bei Bedarf Daten auf meinen PC übertragen können.

    GSM Modems werden mit AT Befehlen gesteuert, soweit klar. Ich hatte mal eines von Wavecom vor
    10 Jahren, ein PIC versandte sms damit. Ist es denkbar, dass der PI ein zweites Modem an meinem PC
    anruft und an dieses Daten überträgt, die der PC darstellt? Ich würde dazu in Visual Basic eine Anwenudung
    schreiben und mit einer RS232 COMM Library einlesen.

    Hat das schonmal jemand gemacht und könnte mir ein wenig darüber schreiben?

    Gruss,
    Christian

    Bohhh..... da ist aber einer jetzt unfair..... bin doch froh dass ich es nicht selbst schreiben
    muss. :bravo2:

    Muss jetzt nur noch etwas Basteln.... damit das alles so ausschaut später. Wie findeste meinen
    Infrarot Sendemast? :blush: Der soll mal mit meinem Freak-Barometer "reden" (normale Leute packen
    sich sowas ja nicht an die Wand...)

    Hallo,

    ok.... dachte nur jemand hätte da zb Source Code Debugger, nette Tips ein Makefile zu umgehen *würg*. Wie ich sehe gibt es da zwei Libs

    1. WiringPi von Gordon
    2. BCM2835 von McCauley

    http://www.airspayce.com/mikem/bcm2835/

    auf git.

    Tun die sich was? Bestehen da Erfahrungen? Ich muss ja noch die recht komplexe Kalibrierung und Umrechung des BMP085 portieren ohne das Rad neu erfinden zu wollen. WirinPi schient mir aber schon fertige Libs zu haben für bestimmte Bausteine.

    Moin!

    Da ich meine beiden Pi's ohne X Server betreibe, der ohnehin nicht flüssig läuft suche ich eine Möglichkeit diesem verfl.... neumodischen "Python" aus dem Weg zu gehen. Die Beispiele sehen ja unleserlich aus, die ich so gesehen habe.

    Ziel: Mit den GPIOs spielen, I2C, SPI, Ein/Aus der Pins, das sollte reichen.

    Erstes Projekt: Den Arduino BM085 Sensor ans Laufen zu bekommen, C++ Code aus der
    bestehenden Library nehmen.

    Wer hat sowas schon im Terminal gemacht und hat sich Tools rausgesucht um im Terminal kleine Programme zu entwickeln?

    Die Kernel Interfaces der GPIOS nehmen oder lieber wiring Pi?


    Grüße,
    Chris

    Hallo,

    ich habe mich heute den Tag über etwas in die Materie eingelesen, bevor die Arbeit bald wieder ruft und die zeit knapp
    wird. Da ich nur 5h-6h schlafen muss ist das ganz praktisch auch nachts zu arbeiten :)

    Kernels and Hardware anpassen ist nur etwas für "Kernel-Hacker" und davon gibt es nicht viele und die meisten sind das
    auch hauptberuflich bei irgendwelchen Distributoren. An der Uni wo der RP entwickelt wurde sind genug Experten zusammen
    die das können. Den Kernel von kernel. org braucht man gar nicht erst anzufassen für den RP, funktioniert nicht, zumindest
    nicht ohne tausend Einstellungen. Die Raspberry CPU ist j keine reine ARM CPU, die gibt es nämlich gar nicht. sondern der ARM
    ist nur ein Softcore der lizensiert wird und meist wird er an etwas drangepappt, hier zb die GBU, die von Broadcom entwickelt wurde
    und deren Leistungsfähigkeit weit über der des ARM liegt. Die würde sogar reichen um Bitcoins zu minen :)
    Dazu noch I2C Interfaces, SPI, Timer, IRQ Controller, L1, L2 Cache usw. usw. Erst so entsteht ein SoC System. Nur muss der Kernel es ja
    wissen, womit er zusammen arbeiten muss. Wo liegt die I2C Schnittstelle, welches sind ihre Register usw usw.

    Was bleibt und was machbar ist, ist den RP Kernel neu zu komplieren und durch die vielen Fragen Funktionen zu entfernen
    oder dazu zu basteln. Zb ein Touchdisplay. Dazu gibt es kernel Konfiguratoren mit GUI. Auch das Kompiliren auf einem PC
    ist keine Hexerei, wenn man weiss wie man die Einstellungen für den Cross Compiler machen muss. Ich installiere bisher mit
    modprobe das nach was ich brauche aber es wird eben dann erst geladen und ist nicht im Kernel mit drin. Funktionen wie
    I2Cdetect (ein I2C Sniffer) können so einfach mit dazu kommen, mit modprobe [font="Helvetica Neue, Arial, sans-serif"]i2c-bcm2708 installiert man den Low Level
    Treiber für den ARM Core in den Kernel und der Kernel erzeugt dann die /dev's.[/font]

    Belassen wir es also bei dem was zur Verfügung gestellt wird, ändern es ab, benutzen es. Das ist schon komplex genug.

    Im Übrigen lief der kompilierte Kernel bis zu einer gewissen Stelle, dann hängte er sich auf. Für das allererste Mal immerhin
    hat er gebootet, bevor ich die SD karte wie mit dem Backup-Image plattgemacht habe.

    Hallo,

    ich habe mir das nur mal so stillschweigend durchgelesen ...... :stumm:

    Mal ganz ehrlich: Ist das hier ein "Jugend Forscht" Forum? Ich meine, wenn man nicht mal ein Relais (1/0) Bauteil mit
    einem Portpin (1/0) ansteuern kann und bei 2 Massen und einem Koppler ins Schleudern kommt....

    Zu den RPI Pins: Es ist grundsätzlich ein Level Shifter (ideal mit Optokoppler) als Treiber dazwischen zu schalten!
    Hier, den Burschen kenne ich der das verkauft, das passt, die grüne Platine meine ich. Birektional.

    http://www.ebay.de/itm/Arduino-SD…=item1c3820369f

    Immer ! Im einfachsten Fall unidirektionale TTL Treiber Gatter da die Spec High bei > 2V spezifiziert. Einfach weil der Pi nicht
    reparierbar ist und auf dem Basteltisch schnell was passiert und der Basteltisch mit TTL Level besser fährt als mit 3.3V.
    Es kann mit NPN Transistoren a la BC 547 funktionieren, da 0,7V die Basis durchschalten aber zieht das Relais 100mA
    so muss auch die Basis genug Strom bekommen und der Pi hat was dagegen wenn man seine Pins auf 0,7V runterdrückt,
    High ist 2.5 - 3,3V und das muss es auch bleiben. Das muss und kann man vorher berechnen indem man das Ersatzschaltbild
    zeichnet und aus den Datenblätter die notwendigen Angaben holt. Transistoren sind Stromverstärker, keine Spannungswandler!

    Moin und Fr.We !

    Ich habe mir spasseshalber mal einen 3.10..... Kernel im Source geholt und diesen ohne weitere Sachkenntnis kompiliert. Dauert ca 5h wie ich merkte auf dem Pi. Auch mal in die Sourcen reingeschaut und gestaunt was manche so draufhaben an Programmierung. Der Pi Kernel scheint mir ein Sammelsurium diverser Firmen zu sein, u,a, finden sich dort Sourcen bekannter Firmen wie der Chipschmiede Broadcom, Sound Blaster, Nvidia usw. Ist schon Wahnsinn!

    Nun weiter mit der Logik eines Ingenieurs, der neu bei Linux ist aber schon den 8051 1987 programmierte:

    1. Ich habe eine Hardware, den Pi: CPU, GBU, IO's. Wie jeder Rechner hat auch dieser eine Memmap, d.h. die Hardware wird an bestimmte Adressen über den Bus gemapped, wurde zumindest vor 10 Jahren noch so gemacht. Es gibt RAM, einen SD Slot usw. Der ARM hat den AMBA Bus (sowas wie die North/South) Bridge bei Intel, er hat einen Thumb Befehlssatz.
    Ich zumindest muss einem Linker alle diese Infos mitteilen, wo liegt das RAM, wo die IO Hardware usw. Woher soll der das auch wissen?

    Hier mal ein Schema eines embedded systems:

    http://www.cnx-software.com/wp-content/upl…y-Map-Large.png

    Kurz: Der GCC Compiler / Linker MUSS die komplette Architektur des Systems kennen, nicht nur die Mnemonics des Maschinen codes. GCC kann für dverse CPUs Code erzeugen.

    Nun meine Fragen:

    1. Ist der Kernel des RPI speziell für diesen erstellt worden, d.h findet sich darin anderer Sourcecode als in der der offiziellen Linuxversion, die maschinenunabhängig ist? Wenn ja ,muss sich ja jemand der Origkernel genommen haben, der absolut Ahnug hat und diesen auf den RPI angepasst haben. Hätte der RPI 2 Gigs RAM müsste das ja irgendwo stehen, es sei denn Linux findet sowas selbst heraus. Treiber sind einfacher, es gibt nur Block und Zeichentreiber mit genormter Schnittstelle, alles dahinter muss nicht bekannt sein, eine Harddisk wird wie eine SD karte angesprochen aus Sicht des PI, ein UMTS Stick oder ein klappriges Analogmodem..... kein Unterschied. AT Befehle haben sie alle. Das erledigt der spezielle Treiber.

    2. Wenn das RPI Projekt eingestellt wird, weil es morgen etwas schnelleres, besseres usw gibt, ist dann logischerweise auch der Support durch apt-get update und upgrade am Ende?

    3. Wo steht es beschrieben, was die tausend Fragen bedeuten, die während der Kernelkonfiguration gestellt werden? Es funktioniert nicht die alte config.gz einfach in .config auszupacken und umzubenennen, es werden bei make und auch make oldconfig trotzdem alle Fragen nochmal gestellt, die ich einfach mit Return bestätigt habe, keine Ahnung was dann passiert. Er kompiliert durch und eine vmlinuz entsteht nach 5h.

    4. Was passiert bei make oldconfig? Ich möchte eigentlich die aktuelle Konfigration verwenden, weil diese ja passt? Wieso dann wieder die tausend Fragen?

    Vielleicht ha ja mal jemand Zeit etwas darüber zu schreiben, so dass die Basics verständlicher werden und ich vielleicht irgendwann in der Lage bin einen ganz eigenen Kernel zu bauen.

    PS: Übrigens habe ich es geschafft einen Huwai UMTS Stick am PI zum Laufen zu kriegen, mobiles Surfen mit Browser ist möglich.

    Gruss,
    Christian

    Hallo,

    das kann ich dir jetzt nicht mehr sagen, da die karte grad mit dd.... bearbeitet wird :D Sobald ich
    die Laufwerke einschaltete kamen jede Menge Meldungen und dass er sie nicht einhängen könne.
    Dann eine Endlosschleife einen Prozess zu killen. Um sowas herauszufinden fehlen mir derzeit noch
    die Kenntnisse.

    Es mag sportlicher Ehrgeiz sein den minmalen Kernel zu erzeugen aber dieser ist dann auch nur
    noch minimal einsetzbar und hier scheint es als wäre es ohne externe Laufwerke geplant gewesen.
    sudo war weg, nur noch root login usw. Und manche Dienste erwarten, dass das logfile da ist wo
    sie es angelegt haben und meckern wenn es weg ist.

    Ich strip das System schrittweise runter, das Löschen der X Shell hat locker 500MB freigemacht.

    In deinem Beispiel oben kann man mit data_writeback noch mehr performance rausholen aber
    zum preis des stromausfalls => zerschossene platte.

    Tja, nicht benutztbar.... da stimmt was nicht mit den USB Treibern für die beiden
    Platten. Und ich verstehe nicht genug davon, um das rauszutüfteln. Er hängt sich
    auf sobald die Platten dran sind..... komm vergiss es ... ich spiele meine raspi
    Version zurück, ob 500MA oder 1,2 GB ohne x server ist doch wumpe.
    Hauptsache es läuft wieder.

    Moment..... wieso ro ? Kann er seine log Files, Konfigurationen etc nicht auf der SD speichern?
    Man muss das Image ja auch anpassen und dabei werden natürlich auch Daten geschrieben.
    Wo liegt denn dann Home?

    Installiere grad das Minimal wheey ....

    ps: grad den neuen RP von ebay bekommen: Tot! Keine Reaktion. Der übliche B-Ware Schrott aus dem Wunderland......

    Hallo,

    das Problem scheint gelöst zu sein, es lag an den Check Zyklen der eingebundenen Platten.
    Nach x mal rebooten werden diese ja geprüft. Das habe ich auf 0 gesetzt, da es sich um
    einen unbeaufichtigten 24h Server handelt, der zu laufen hat und nicht checken soll.
    Und das scheint ausgerechnet das x te Mal gewesen zu sein. das neue Upgrade zieht sich 80
    MB runter und ich habe keinen X Server mehr auf dem Raspi nur das Terminal.

    Leider weiss ich noch nicht wie man das 1GB der SD Karte freigeben kann, wo der Re Install
    liegt. Macht man dies auf einem PC mit GParted lässt sich der RP nicht mehr booten, auch wenn
    ich die Boot Partition nicht angefasst habe.

    Falls jemand ein Image hat wo kein X Server mehr drauf ist und nur noch eine Partition wäre
    ich dankbar.

    Hallo,

    mir scheint das neue Upgrade seit gestern hat es in sich: Danach bootete der Raspi nicht mehr
    weil er behauptete, es lägen Fehler auf seiner Partition vor. Samba wird neu installiert, will die alte
    Konfig überschreiben, da ist so einiges was runtergeladen wird. Jede Menge Kernelkram.
    Jedenfalls hängt er sich beim Booten komplett auf. karte raus, in den PC rein, alles ok, Filesystem
    ist ok.

    Image zurückgespielt von vor 3 Tagen .... alles lief wieder.

    Muss man damit rechnen? Ich bin da recht sorglos..... zumindest bis jetzt :denker:

    Never touch a running system? :wallbash:
    [/quote]


    cron finde ich einen guten Ansatz...

    beispiel aus meiner crontab:
    @reboot ntpdate -s 0.pool.ntp.org

    Der prozess wird aber auch wieder verlassen den Zeitserver aufzurufen......

    Unter /etc/init.d stehen jede Menge Scripte, auf die ein Hardlink im jweiligen Runlevel zeigt, soviel ist klar.
    Die Scripte sind alle nach einem Schema aufgebaut (ich bin der Scriptsprache aber nicht mächtig) die in skeleton steht.
    Kann doch nicht so schwer da da irgendwo einen Befehl einzuschmuggeln, dasss er vor dem Login Prompt ein Script
    ausführt? Menno....

    Hallo,

    ich möchte folgende Anwendung bauen:

    Ein Kassenmonitor mit HDMI Anschluss, dahinter klebt der Pi. Es soll eine USB
    Schnittstelle verwendet werden, um die laufenden Debug Ausgabe eines Arduino
    als scrollender Text darzustellen und zu protokollieren. Der RP geht über einen
    USB Stick ans Netz, so dass ich ihn mit ssh erreichen kann.

    Als RS232 Terminal möchte ich minicom verwenden.

    Wie baue ich das Start Script jetzt in den Raspi so ein, dass es zuletzt beim Booten
    den minicom aufruft? Ich bin da glaube ich immer noch zu blöde für da ich den Runlevels
    nicht klarkomme und welche ID die haben müssen, Hardlinnks usw.

    Oder reicht es einfach bei /root ein Script zu hinterlegen, was über einen Cron Job aufgerufen
    wird, der beim Booten startet? Der Cron Job wird allerdings dann nicht mehr verlassen.

    Idee? Bitte langsam für Anfänger.