Posts by Kellermann66

    Sofern ich das richtig sehe aktualisiert du einfach _alles_ auch wenn sich an der jeweiligen Row nichts geändert hat? Das wäre dann etwas suboptimal

    Ne, eigentlich nicht. Die Funktion wird immer aufgerufen, wenn ich vom Raspberry Pi eine Nachricht mit dem neuen Frame bekommen habe. Aus diesen Daten wird die Row erstellt und dann entweder ans Ende oder an den Anfang der Tabelle eingefügt.

    Da ich dazu bisher nichts gelesen habe: Wie aktualisierst du die Zellen deiner Tabelle - oder allgemein: Wie aktualisierst du deine Tabelle?


    Beitrag#5 habe ich gelesen, auch das bzgl. Websockets. Trotzdessen die Frage. Bitte Code-schnippel zeigen.

    Das ist meine Funktion, die eine neue Tabellenzeile erzeugt. Allerdings können zwei Tabellen damit aktualisiert werden. Ich hoffe, dass es nicht ganz so schlecht geschrieben ist, denn das ist bisher mein zweites Projekt mit Javascript und musste es mir halt selber beibringen... Für Tipps bin ich deswegen immer sehr dankbar!


    Ich habe es auch mal getestet. Bei ca. 8000 Einträgen bekommt der Browser Probleme...

    Die Webseite wird nicht bei jedem neuen Eintrag neu aufgebaut... Die Daten werden mittels jquery in die Tabelle eingefügt.


    außerdem spielt hier auch die Ausführungsgeschwindigkeit (der JS Engine) und die Geschwindigkeit der Netzwerkschnittstelle ein Rolle. Bei beidem ist der Raspi ja keine "Raket"...

    Wie viele Daten hälst du den im Speicher? Wie wie groß ist ein Datensatz? Wenn das OS anfangen sollten zu swappen, dann wird's richtig langsame.

    An dem Raspi wird es nicht liegen. Wenn ich mir die Daten über Putty ausgeben lasse, funktioniert alles. Der Browser auf dem Desktop-PC / Laptop macht irgendwann schlapp... Ich glaube, dass dem irgendwann die Daten zu viel werden.

    Erstmal danke für eure Antworten!


    wie definierst du "Tabelle" in deinem Kontext - ist das die DB-Tabelle oder eine Darstellung auf der Webseite?

    Bei der "Tabelle" geht es um die Darstellung auf der Webseite.


    Erfolgt der Eintrag von neuen Werten via Browser oder direkt serverseitig und der Browser holt "nur" die Daten ab?

    Also die Daten werden momentan nicht in der DB gespeichert. Wenn ein neuer Datensatz verfügbar ist, wird dieser direkt im JSON-Format vom Raspberry Pi mithilfe eines WebSockets zum Browser geschickt und dort in Javascript verarbeitet und und in die Tabelle geladen.

    Vielleicht kannst du mal den Hintergrund dieser Anwendung erläutern. ich glaube, dass dein Ansatz grundsätzlich nicht zur Aufgabe passt.

    Der Raspberry Pi hat zwei CAN-Kontroller die alle CAN-Botschaften mitlesen sollen. Wenn dann ein neuer Frame eingelesen wurde, wird dieser verarbeitet, zum Browser geschickt und dort angezeigt.


    Wenn die Tabelle alle paar ms aktualisiert wird, rauschen die neuen Einträge seitenweise über den Bildschirm - schneller als man sie lesen kann... Was bringt das?

    Bei 25 ms hast du 40 Einträge in der Sekunde. Macht in 24 Stunden 3,5 Mio Einträge.

    Das macht in diesem Fall nichts. Es kann eine Aufzeichnung gestartet sowie gestoppt werden. Ist die Aufzeichnung gestoppt, wird die Tabelle nicht aktualisiert. Hierbei heißt es auch nicht, dass alle paar Millisekunden, 24 Stunden lang Daten empfangen werden. Es sind immer nur kleine Zeiträume. Allerdings, wenn man mal paar Minuten aufzeichnet, bekommt man recht viele Daten. Damit hat der Browser dann Probleme...

    Hallo zusammen,


    ich hätte mal eine Frage zur effektiven Datenverarbeitung bei vielen Tabelleneinträgen... Die Tabelle auf meiner Webseite kann alle paar Millisekunden aktualisiert werden. Dabei wird jeder neue Datensatz in der ersten Zeile eingefügt und der rest dementsprechend nach unten geschoben. Wenn die Tabelle allerdings sehr viele Einträge hat, merkt man, dass der Browser mit der Datenverarbeitung nicht mehr hinterher kommt und es passiert so gut wie gar nichts mehr.


    Deshalb wollte ich mal hier fragen, wie ihr das so gelöst habt?!


    In diesem Projekt arbeite ich mit html, javascript, php und mit der Datenbank sqlite.


    Gruß Kellermann66

    Danke erstmal für eure Antworten!

    Gibt es das Verzeichnis /home/pi/scripts ???

    Ach ja, der Ordner scripts fehlt noch... Das hatte ich total vergessen.:rolleyes:

    Hast du alle Befehle von Hand getestet??

    Das sollte man wirklich mal machen... Das könnte doch helfen.

    Also ich habe das Skript mit Notepad geschrieben und dann auf den Raspi kopiert. Scheint wohl dann nicht geklappt zu haben...

    Hallo zusammen,


    ich wollte mir ein setup-Skript für mein Projekt auf dem Raspberr Pi schreiben. Damit ich nicht immer alles selber installieren muss. Allerdings funktioniert dabei so ziemlich gar nichts und die Fehlermeldungen verstehe ich auch nicht so wirklich :/ Ich muss dazu sagen, dass ich bisher noch nicht wirklich viel mit Shell-Scripts gearbeitet habe.


    Ich wäre dankbar, wenn mir hier jemand helfen könnte!!



    Hier ist die Ausgabe zu dem Skript:


    Gruß Kilian

    Vielen Dank für eure Hilfe!

    Ich habe es jetzt auch hinbekommen. Habe jetzt zum größte Teil das Besipiel hier verwendet...


    Code
    file /home/pi/projects/can_converter/bin/ARM/Debug/can_converter.out
    /home/pi/projects/can_converter/bin/ARM/Debug/can_converter.out: ELF 32-bit LSB executable, ARM, EABI5 version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-armhf.so.3, for GNU/Linux 2.6.32, BuildID[sha1]=b8801af334a7b946b3a0605e0041f392fe0b49e3, not stripped


    Hallo alle miteinander,


    ich hoffe erstmal, dass ich mit meiner Frage in diesem Unterordner richtig bin.


    Zurzeit entwickel ich ein C-Programm für den Raspberry Pi mit Jessie als OS. Das Programm wird mittels Cross-Compile auf den Raspberry geladen und dadurch bekomme ich dann eine ausführbare .out Datei. Meine Frage ist jetzt, wie ich mein Programm systemweit verfügbar machen kann wie es z.B. bei apache der Fall ist???

    Bisher habe ich ein Skript in /etc/init.d erstellt, allerdings funktioniert das nicht so wirklich...

    Ich habe dafür das Besipiel hier verwendet und ein wenig angepasst.

    Kann es vielleicht sein, dass ich aus meinem Programm noch ein Daemon oder so machen muss???


    Es wäre echt super wenn mir einer helfen könnte!


    MfG

    Guten morgen zusammen,
    ich hoffe ich bin hier erstmal mit meinem Problem in dem richtigen Ordner. Wenn nicht kann es gerne verschoben werden...


    Ich habe ein kleines Problem mit einer CAN-Erweiterungsplatine. Als Vorlage diente dieses Borad:
    http://www.industrialberry.com/canberrydual-iso-v2-1/
    Außenrum wurde es etwas erweitert, allerdings dürfte das nicht das Problem sein... Das einzige was etwas verändert wurde, ist die Beschaltung der 2. MCP2515. In dem Bild müsste man die Beschaltung sehen.


    Mein Problem ist jetzt, dass ein MCP2515 Chip nicht initialisiert werden kann...

    Code
    [ 4.518293] mcp251x spi0.1: Cannot initialize MCP2515. Wrong wiring?
    [ 4.529758] mcp251x spi0.0 can0: MCP2515 successfully initialized.


    Es ist aber alles richtig angeschlossen und verbunden. Deswegen weiß ich gerade nicht wirklich weiter...


    Hier noch meine Konfiguration:
    (/boot/config.txt)

    Code
    # Enable CAN-Bus
    dtoverlay=mcp2515-can0,oscillator=16000000,interrupt=22
    dtoverlay=mcp2515-can1,oscillator=16000000,interrupt=25
    dtoverlay=spi-bcm2835


    (can-start.sh)

    Code
    #!/bin/pi/
    #CAN
    ip link set can0 up type can bitrate 1000000 loopback on
    ip link set can1 up type can bitrate 1000000 loopback on


    Wäre echt nett, wenn mir hier jemand helfen könnte! Ich bedanke mich auch schon mal für jede Hilfe!!!


    Gruß Kilian

    Ich habe es jetzt mal auf

    Code
    -rwxrwxr-x 1 pi pi 39936 Jul 3 18:14 Wetterstation.db


    geändert aber jetzt bekomme ich diese Fehlermeldung:

    Code
    Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[HY000]: General error: 14 unable to open database file' in /var/www/html/php/functions.php:28 Stack trace: #0 /var/www/html/php/functions.php(28): PDO->query('INSERT INTO Kon...') #1 /var/www/html/php/addConfig.php(37): db_query('INSERT INTO Kon...') #2 {main} thrown in /var/www/html/php/functions.php on line 28

    Hallo zusammen,


    ich habe leider ein kleines Problem. Ich möchte gerne mit einem PHP-Skript Daten in eine Datenbank schreiben. Allerdings bekomme ich immer die folgenden Fehlermeldung:

    Code
    Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[HY000]: General error: 8 attempt to write a readonly database' in /var/www/html/php/functions.php:28 Stack trace: #0 /var/www/html/php/functions.php(28): PDO->query('INSERT INTO Kon...') #1 /var/www/html/php/addConfig.php(37): db_query('INSERT INTO Kon...') #2 {main} thrown in /var/www/html/php/functions.php on line 28


    Und hier noch meinen Code dazu:


    Wäre echt gut, wenn mir hier jemand helfen könnte... Ich bedanke mich auch schon mal für jede Hilfe!


    Gruß Kilian

    Das habe ich auch schon versucht, allerdings bekomme ich dann die folgende Fehlermeldung:

    Code
    Warning: explode() expects parameter 2 to be string, array given in /var/www/html/functions.php on line 46


    An einer anderen Stelle nutze ich das auch mit implode aber da splitte ich mit einem Punkt und nicht wie in diesem Fall mit einem Komma :-/

    Hallo zusammen,


    ich habe leider ein kleines Problem mit meinem PHP-Code und komme nicht weiter.
    Hier zunächst der Code:

    Code
    while($result = $query->fetch(PDO::FETCH_ASSOC)){
    $array = explode(',', implode($result));
    debug_to_console($result);
    debug_to_console($array[0]);
    debug_to_console($array[1]);
    $TEMP[$i] = $array[0];
    $DATE[$i] = $array[1];
    $i++;
    }


    Ich versuche hier einen String mit Hilfe von explode zu splitten, allerdings klappt das leider nicht-.- Meine Ausgaben, die ich dann bekommen sind:

    Code
    [Log] Debug Objects $result: 22.6039186962,2017-06-22 (index.php, line 17)
    [Log] Debug Objects $array[0]: 22.60391869622017-06-22 (index.php, line 17)
    [Log] Debug Objects $array[1]: (index.php, line 19)


    Es wird einfach nur das Komma aus dem String gelöscht anstatt diesen zu splitten.
    Ich habe es mal mit einem Punkt versucht und dann wurde der String gesplittet...


    Hätte jemand vielleicht eine Idee warum das mit ',' nicht klappt???


    Danke schon mal für die Hilfe.

    Hallo zusammen,


    ich habe leider ein ähnliches Problem... Ich kann weder mit

    Code
    sudo apt-get update


    den Pi updaten noch mit

    Code
    sudo apt-get install XYZ


    irgendwas installieren -.-


    Ich bekomme dann immer diese Fehlermeldungen:


    Ich habe auch schon mal die Befehle ausprobiert, die hier erwähnt wurden und das sind die Ausgaben:


    In dem Ordner /etc/apt/apt.conf.d habe ich noch eine weitere Datei 10proxy hinzugefügt, da der RPI über einen Proxy ins Internet gehen soll... Soweit kann ich auch darüber alle Webseiten z.B. pingen. Nur halt etwas downloaden und installieren geht halt nicht :-/


    Es wäre echt cool wenn mir hier jemand helfen könnte!!


    MfG