HIVE-Project

Retro Style Eigenbau Computer mit Parallax Propeller
Aktuelle Zeit: Do 22. Aug 2019, 08:31

Alle Zeiten sind UTC [ Sommerzeit ]




Ein neues Thema erstellen Auf das Thema antworten  [ 57 Beiträge ]  Gehe zu Seite 1, 2, 3, 4, 5, 6  Nächste
Autor Nachricht
 Betreff des Beitrags: TriOS mit Netzwerk
BeitragVerfasst: Mo 23. Dez 2013, 12:16 
Offline

Registriert: Fr 20. Dez 2013, 20:08
Beiträge: 123
Wohnort: Ronneburg
Wie bereits hier angedeutet, habe ich als mein erstes Software-Projekt versucht, die Netzwerk-Schnittstelle des Hive in TriOS nutzbar zu machen. Das bisherige Ergebnis ist im Anhang zu finden.

Es wird der IP-Stack von Harrison Pham in Administra integriert, Regnatix kann darauf über den Hive-Bus zugreifen. Zum Testen wurde ein einfacher FTP-Client erstellt, welcher Dateien downloaden und in der RAM-Disk ablegen kann. Genauer wird alles in der README des angehängten Archives beschrieben. Der Client wurde mit mehreren FTP-Servern getestet, es wird aber sicher etliche Server geben, welche auf Grund abweichender Implementierung nicht funktionieren. Dann bitte hier mögliche Fehlermeldungen posten. Prinzipiell funktionieren nur Server, welche passives FTP und das SIZE-Kommando unterstützen.

Die Netzwerk-Konfiguration des Hive (IP-Adresse, Mac-Adresse usw.) wird im NVRAM der RTC gespeichert. Damit soll es einmal möglich sein, den Hive ohne SD-Card zu verwenden und Programme direkt aus dem Netz zu starten. Nachteil ist natürlich, daß das Netzwerk nicht mit Hives ohne RTC funktioniert. (Ergänzung: ab Version R56-nw1.1 wird erkannt, ob eine RTC vorhanden ist. Falls nicht, erfolgt die Speicherung automatisch auf SD-Card)

FTP habe ich deswegen gewählt, weil damit Dateien im Netzwerk recht einfach sowohl gelesen als auch geschrieben werden können. Mit HTTP wäre zumindest das Schreiben wohl komplexer geworden. Und TFTP als noch einfachere Variante scheidet aus, weil es auf UDP basiert. Der IP-Stack von Harrison Pham unterstützt nur TCP.

Was kann man damit nun anfangen?
Mir schwebt als nächstes eine Integration von FTP in Regime vor, um Dateien statt von SD-Card direkt über das Netz zu laden. Damit könnte man dann wesentlich einfacher eigene Programme testen: Anstatt diese nach der Übersetzung erst am PC auf SD-Karte zu kopieren, die SD-Karte in den Hive zu stecken und dann zu testen, könnte man sich diese ganzen Umwege sparen. Das Programm wird am PC übersetzt, die Binaries landen in einem Verzeichnis, welches ein FTP-Server für den Hive freigibt. Am Hive muß man dann nur noch das Programm aufrufen.
Ansonsten würde ich mich natürlich sehr freuen, wenn es noch andere Ideen und Anwendungen zur Nutzung des Netzwerkes geben würde.

Wie gesagt handelt es sich um meine ersten Programmierversuche in SPIN und am Hive. Deswegen sind mit hoher Wahrscheinlichkeit Fehler enthalten, viele Dinge könnte man sicher besser machen. Für Verbesserungsvorschläge und Tips zur richtigen Programmierung bin ich immer offen. Die Spezialisten unter euch sollten bitte auch mal nachsehen, ob ich die Integration ins TriOS wie vorgesehen vorgenommen habe. Ich denke da speziell an die Nummerierung und Namen der in glob-con.spin sowie reg-ios.spin hinzugefügten LAN-Funktionen und an die Verwendung von CHIP_SPEC in admnet.spin. Auch die Verwendung des NVRAM könnte diskutiert werden.

Historie:

R57-nw1.5 (23.07.2014)
  • Webserver: erste Version eines Webservers für Domonstrationszwecke und eigene Experimente
  • admnet: Korrektur beim Verbindungsende, konnte zum Absturz nach Start des nächsten Programmes bit Netzwerkfunktionen führen
  • admnet: Netzwerkfunktionen nutzen nun den ABORT Trap

R57-nw1.4 (22.06.2014)
  • Update auf TriOS R57
  • IRC-Client: Unterstützung von /me und /ctcp

R56-nw1.3 (19.02.2014)
  • IRC-Client: Schönerer Ton bei neuen Mitteilungen (Tip von drohne235)
  • IRC-Client: Erkennung von Verbindungsabbrüchen und automatischer Reconnect (nach jeweils 1-2 Minuten)
  • IRC-Client: Prüfung beim Start, ob Administra Netzwerk-Funktionen zur Verfügung stellt. Falls nicht, wird "/system/admnet.adm" von SD-Card geladen. Mit dieser Änderung kann der IRC-Client auch vom aktuellen Plexus aus gestartet werden.
  • IRC-Client: Das Eingabefenster wird bei Eingabe einer längeren Mitteilung nun dynamisch vergrößert, die anderen Fenster entsprechend verkleinert (Anregung von drohne235)

R56-nw1.2 (05.02.2014)
  • admnet: HSS-Soundeffekte wieder eingefügt (aber keine Hintergrund-Musik)
  • admnet: statt 4 nur 2 Sockets in driver_socket.spin
  • IRC-Client: Klingeln bei jeder neuen Mitteilung

R56-nw1.1 (02.02.2014)
  • Lokalisierung aller Netzwerk-Programme (z.Z deutsch und englisch)
  • #define __DEBUG zur Aktivierung von Debug-Ausgaben, weniger Ausgaben der Programme, wenn nicht aktiviert
  • automatische Erkennung, ob RTC/NVRAM vorhanden ist (falls nicht, wird Konfiguration auf SD-Card in /system/nvram.sav geschrieben)
  • IRC-Client: private Mitteilungen besser erkennbar
  • IRC-Client: besseres Timing für Auto-Join

R56-nw1.0 (27.01.2014)
  • IRC-Client: erste Release-Version mit vollem Funktionsumfang

R56-nw0.3 (07.01.2014)
  • alle Programme (ipconfig, ftp) prüfen, ob Administra Netzwerk-Funktionen zur Verfügung stellt (admnet geladen)
  • ipconfig: Konfiguration wird nur noch nach Angabe des Parameters /l angezeigt (nicht mehrfach bei Angabe mehrerer Parameter)
  • ipconfig: konfigurierte Parameter werden sofort aktiviert (IP-Stack wird gestoppt und wieder gestartet)
  • ftp: Parameter für FTP-Server von /s in /f geändert
  • ftp: direktes Speichern auf SD-Card (Parameter /s)
  • ftp: Benutzername und Paßwort kann angegeben werden
  • ftp: anonymous-Login mit und ohne Paßwort (je nach Server)
  • ftp: verbessertes Timing (Kompatibilität mit verschiedenen Servern)
  • ftp: verschiedene Default-Werte hinterlegt:
    - FTP-Server: mittels ipconfig eingetragener Boot-Server
    - Verzeichnis: /hive/sdcard/system
    - Benutzer: anonymous
    - Paßwort: anonymous@hive<hive-id>
  • IRC-Client (Proof of Concept)
  • neue Administra-Funktionen lan_rxbyte und lan_isconnected
    (für IRC-Client benötigt)

R56-nw0.2 (23.12.2013)
  • erste veröffentlichte Version, basierend auf TriOS R56


Dateianhänge:
Dateikommentar: Netzwerk-Ergänzungen zu TriOS R57, IRC- und FTP-Client, Webserver (Archiv mit Quellen zum Selbstcompilieren)
HIVE-TriOS-R57-Network-1.5-src.zip [487.75 KiB]
303-mal heruntergeladen
Dateikommentar: Netzwerk-Ergänzungen zu TriOS R57, IRC- und FTP-Client, Webserver (Archiv mit Binärdateien)
HIVE-TriOS-R57-Network-1.5-bin.zip [227.46 KiB]
338-mal heruntergeladen

_________________
Viele Grüße

Jörg


Zuletzt geändert von joergd am Mi 23. Jul 2014, 13:28, insgesamt 8-mal geändert.
Nach oben
 Profil  
 
 Betreff des Beitrags: Re: TriOS mit Netzwerk
BeitragVerfasst: Mo 23. Dez 2013, 13:34 
Offline
Benutzeravatar

Registriert: Fr 30. Sep 2011, 13:08
Beiträge: 2552
:DAUMENHOCH

Ein FTP-Client ist schon was tolles.

Da währe ein Mini FTP-Server der nur auf Administra läuft schon in greif barer ferne.:D

Weiter so und viel Erfolg.

_________________
Gruß
PIC18F2550

drone265/278
Barbarus hic ergo sum, quia non intellegor ulli.
Ein Barbar bin ich hier, da ich von keinem verstanden werde.


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: TriOS mit Netzwerk
BeitragVerfasst: Mo 23. Dez 2013, 13:40 
Offline
Administrator
Benutzeravatar

Registriert: So 24. Mai 2009, 10:35
Beiträge: 2272
Wohnort: Lutherstadt Wittenberg
Super Arbeit! Freue mich schon darauf an den Feiertagen damit ein wenig zu experimentieren.

_________________
"Ob Sie denken, dass Sie es können, oder ob Sie denken, dass Sie es nicht können - in beiden Fällen haben Sie recht." Henry Ford


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: TriOS mit Netzwerk
BeitragVerfasst: Mo 23. Dez 2013, 17:25 
Offline

Registriert: So 24. Mai 2009, 11:24
Beiträge: 586
genial wärs noch, wenn der ftp client auf die sd-card schreiben kann... amsonsten 1a idee, teste ich demnächst mal.


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: TriOS mit Netzwerk
BeitragVerfasst: Mo 23. Dez 2013, 18:22 
Offline
Benutzeravatar

Registriert: Sa 24. Mär 2012, 21:45
Beiträge: 791
Wohnort: Merseburg
na das nenne ich mal ne Neuigkeit!

Da werd ich meinen Hive dann umgehend mit ner Netzwerkbuchse (und einem Kühlkörper für den Spannungsregler!) ausrüsten, um an dieser Innovation teilhaben zu können.

Vielen herzlichen Dank an Jörg für dieses tolle Weihnachtsgeschenk!!!

Gibt derzeit so viele neue Sachen für den Hive, dass man kaum nachkommt mit Ausprobieren :-)

_________________
Also vonder Sache här tätch jetz ma behaupten "Mischn ägomplischd" un so...


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: TriOS mit Netzwerk
BeitragVerfasst: Mi 25. Dez 2013, 01:04 
Offline
Benutzeravatar

Registriert: Fr 30. Sep 2011, 13:08
Beiträge: 2552
Ich hab es nicht mehr ausgehalten und gleich mal getestet.

mit IP-Config die werte gesetzt
Code:
IP 192.168.1.201/255.255.255.0
Ga 192.168.1.1
DN 192.168.1.1
Bo 0.0.0.0
Hi 265
Ich hoffe das ich das richtig gemacht habe.

Da ich lokal keinen FTP mit ano Zugang habe habe ich mal die IP von "ftp.propeller-chip.com" als genommen.
:( leider keinen zugang erhalten.

Danach habe ich eine nicht vorhandene locale IP genommen.
:shock: ADM-LED blinkt und der HIVE steht. nach 5Minuten Reset betätigt.

Verwende ich eine externe IP kehrt das FTP in die Commandozeile zurück.

Trotz der nicht erfolgreichen Verbindung binn ich trotzdem zufrieden und voller zuversicht, da ich davon ausgehe, das ich etwas falsch verstanden habe.
Vieleicht hilft dir meine Beschreibung weiter.

_________________
Gruß
PIC18F2550

drone265/278
Barbarus hic ergo sum, quia non intellegor ulli.
Ein Barbar bin ich hier, da ich von keinem verstanden werde.


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: TriOS mit Netzwerk
BeitragVerfasst: Mi 25. Dez 2013, 12:05 
Offline

Registriert: Fr 20. Dez 2013, 20:08
Beiträge: 123
Wohnort: Ronneburg
PIC18F2550 hat geschrieben:
:Da währe ein Mini FTP-Server der nur auf Administra läuft schon in greif barer ferne.:D
Das wäre eigentlich zu einfach. Und auch Platzverschwendung im Administra. Ich hoffe, daß man dort noch so viel optimieren kann, daß wenigstens etwas vom Sound wieder reinpaßt. Sinnvoller würde ich einen FTP-Server in Regnatix finden.

BorgKönig hat geschrieben:
genial wärs noch, wenn der ftp client auf die sd-card schreiben kann...
Ist ja jetzt schon mit Umweg über die RAM-Disk kein Problem (s. unten).

PIC18F2550 hat geschrieben:
Ich hab es nicht mehr ausgehalten und gleich mal getestet.
Die IP-Konfiguration sieht erstmal vernünftig aus (ohne Deine genaue Umgebung zu kennen). Dein Beispiel mit "ftp.propeller-chip.com" funktioniert hier leider auch nicht. Dieser Server antwortet wohl irgendwie komisch (ist ein Microsoft FTP Service...). Muß ich mir später mal genauer ansehen.

Da es sicher noch viele andere FTP-Server gibt, welche auf Grund von Implementierungs-Unterschieden nicht funktionieren, habe ich mal schnell einen eigenen FTP-Server unter ftp.bitquell.de (88.198.147.76) aufgesetzt. Damit sollte es in jedem Fall funktionieren. Beispiel:
Code:
∞ admnet
 ok
∞ ftp /h 88.198.147.76 /d hive /f hallo.bin
[viel Text]
 ok
∞ xsave hallo.bin
Datei schreiben...
 ok
∞ hallo
Wir sind Borg. Widerstand ist zwecklos.
 ok
Damit wird also der Netzwerk-Code in Administra geladen (falls dieser nicht im Flash gespeichert wurde), "hallo.bin" aus dem Verzeichnis "hive" des FTP-Servers in die RAM-Disk geladen, anschließend auf der SD-Card gespeichert und gestartet.

Wenn das bei Dir nicht funktioniert, bitte mal die letzte Ausgabe des FTP-Clients posten. Übrigens bleibt bei mir der Hive auch nicht hängen, wenn ich eine nicht vorhandene interne IP als FTP-Server angebe.

(Edit: FTP-Parameter im Beispiel an neue Version angepaßt)

_________________
Viele Grüße

Jörg


Zuletzt geändert von joergd am So 2. Feb 2014, 19:00, insgesamt 2-mal geändert.

Nach oben
 Profil  
 
 Betreff des Beitrags: Re: TriOS mit Netzwerk
BeitragVerfasst: Mi 25. Dez 2013, 12:31 
Offline
Benutzeravatar

Registriert: Fr 30. Sep 2011, 13:08
Beiträge: 2552
Danke und hier mein Ergebnis:
Dateianhang:
2013-12-25_12-27-35_690.jpg
2013-12-25_12-27-35_690.jpg [ 1.37 MiB | 12068-mal betrachtet ]

_________________
Gruß
PIC18F2550

drone265/278
Barbarus hic ergo sum, quia non intellegor ulli.
Ein Barbar bin ich hier, da ich von keinem verstanden werde.


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: TriOS mit Netzwerk
BeitragVerfasst: Mi 25. Dez 2013, 16:59 
Offline

Registriert: Fr 20. Dez 2013, 20:08
Beiträge: 123
Wohnort: Ronneburg
"Keine oder falsche Antwort vom FTP-Server erhalten" am Ende der Übertragung macht nichts (die Ursache muß ich aber noch ergründen). An der Ausgabe "226..." des FTP-Servers erkennt man die erfolgreiche Übertragung.
Da Du die heruntergeladene Datei noch nicht auf der SD-Karte gespeichert hast (mit xsave, s. mein obiges Beispiel), kannst Du sie auf dieser mittels "dir" auch nicht sehen. Es ist also soweit alles in Ordnung.

_________________
Viele Grüße

Jörg


Nach oben
 Profil  
 
BeitragVerfasst: Mi 25. Dez 2013, 19:04 
Offline
Benutzeravatar

Registriert: Sa 24. Mär 2012, 21:45
Beiträge: 791
Wohnort: Merseburg
etwas off-topic, aber vielleicht bin ich nicht der einzige für den die Beantwortung folgender Frage von Interesse wär:

Bei meinen Hives sind bisher die Drossel L1 und die Netzwerkbuchse ENC unbestückt. Gab hier über die Jahre soviel Diskussionen im Forum, ich hab den Überblick verloren welche Teile geeignet und wo bestellbar. Wär furchtbar nett wenn einer von den Durchblickern hier mal in kompakter Form Teilenummern und mögliche Händler benennen könnte.

Ansonsten muss ich mich wohl mal nach nem Stück Blech zum Draufschrauben auf den Spannungsregler umsehen...

_________________
Also vonder Sache här tätch jetz ma behaupten "Mischn ägomplischd" un so...


Nach oben
 Profil  
 
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 57 Beiträge ]  Gehe zu Seite 1, 2, 3, 4, 5, 6  Nächste

Alle Zeiten sind UTC [ Sommerzeit ]


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast


Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.
Du darfst keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu:  
cron
Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de