Neuimplementierung von i-Telex

Fachforum für i-Telex-Entwickler
Antworten

Topic author
damarco
Rank 3
Rank 3
Beiträge: 126
Registriert: Mi 20. Sep 2023, 16:31
Hauptanschluß: 371126

Neuimplementierung von i-Telex

#71

Beitrag: # 43295Beitrag damarco »

Danke, ich hatte das schon mal in der Hand vor ein paar Monaten und dann habe ich doch wieder in den svn gesucht.

Für den Teilnehmerserver benötige ich das ja auch wenn ich die Nummer auflösen möchte..
Benutzeravatar

FredSonnenrein
Founder
Founder
Beiträge: 2320
Registriert: Fr 3. Jun 2016, 13:49
Wohnort: Braunschweig
Hauptanschluß: 8579924 hawe d

Neuimplementierung von i-Telex

#72

Beitrag: # 43296Beitrag FredSonnenrein »

Ist ja beschrieben, dass das auflösen der Nummer auch ohne Geheimzahl geht
Grüße,
Fred Sonnenrein, Braunschweig
i-Telex 952741 (Lo133), 8579924 (T100s), 781272 (T100), 792911 (T68d) oder 531072 (T.typ.72)
Bei besetzt oder gestört bitte 531002 versuchen.

Topic author
damarco
Rank 3
Rank 3
Beiträge: 126
Registriert: Mi 20. Sep 2023, 16:31
Hauptanschluß: 371126

Neuimplementierung von i-Telex

#73

Beitrag: # 43297Beitrag damarco »

08 Loopback test 1 random payload 2 to 254
09 Remote config 1 PIN + sub command + config data 3 to 254

Da hat sich der Fehler wieder eingeschlichen. Wenn der Header 2 Byte lang ist kann die Payload nur 253 Byte groß sein. Sonst läuft die Variable Länge die 1 Byte groß ist über... Besser wäre es gewesen damals die Länge gleich 2 Byte Platz zu geben so wäre die ganze MTU nutzbar. Aber ich denke man hat sich gedacht wegen dem wenigen Speicher im AVR braucht man so große Telegramme nie....
Benutzeravatar

detlef
Rank 12
Rank 12
Beiträge: 3624
Registriert: Do 28. Mär 2019, 09:10
Wohnort: Marburg
Hauptanschluß: 7822222 hael d

Neuimplementierung von i-Telex

#74

Beitrag: # 43299Beitrag detlef »

damarco hat geschrieben: Sa 23. Mär 2024, 16:35 Besser wäre es gewesen damals die Länge gleich 2 Byte Platz zu geben so wäre die ganze MTU nutzbar. Aber ich denke man hat sich gedacht wegen dem wenigen Speicher im AVR braucht man so große Telegramme nie....
Nicht nur nicht brauchen. Wegen dem beschränkten Speicher vieler Microcontroller darf man gar keine größeren Pakete verschicken. Woher sollen kleinere Controller sonst den Platz für den Pufferspeicher nehmen. Wobei man kleine Systeme auch platt bekommt, wenn man viele Pakete in einen Frame packt. Ist das eigentlich in den Specs reglementiert? Ideal fände ich, wenn nur ein i-Telex-Packet pro Ethernet-Frame erlaubt wäre.

Wenn du einem Fernschreiber 2000 1500 Zeichen schickst, dann braucht der 4 Minuten, um die auszudrucken. Da ist dann nichts mehr synchron - das ist dann der piTelex-Effekt. Ausserdem kann der Acknowlege mit solchen Datenmengen auch nicht umgehen.

Also in solchen Größenordnungen würde ich erst gar nicht denken. Es hilft nix, an jedem zweiten Absatz anzumerken, was man (vielleicht) hätte besser machen können (oder einfach nur anders). Das i-Telex-Protokoll ist halt wie es ist und es funktioniert.
Zuletzt geändert von detlef am Sa 23. Mär 2024, 20:20, insgesamt 7-mal geändert.
Gruß, Detlef

i-Telex: 7822222 (T1000), 114288 (F1300), 211230 (T100Z), 96868 (T37), 24394 (T68d)
Konf.-Dienst: 11160/11161, Rundsender: 11162/11163 , Baudot-Bilder: 11166, Chat-GPT: 11168
Mail-/Fax-Dienst: 11170/11171, hist. Ausk.: 40140, Wetter: 717171
Benutzeravatar

FredSonnenrein
Founder
Founder
Beiträge: 2320
Registriert: Fr 3. Jun 2016, 13:49
Wohnort: Braunschweig
Hauptanschluß: 8579924 hawe d

Neuimplementierung von i-Telex

#75

Beitrag: # 43302Beitrag FredSonnenrein »

Hallo Marco,

irgendwie habe ich noch ein Verständnisproblem, bitte entschuldige dass die Antwort so lange gedauert hat.
damarco hat geschrieben: Sa 23. Mär 2024, 16:35 08 Loopback test 1 random payload 2 to 254
09 Remote config 1 PIN + sub command + config data 3 to 254

Da hat sich der Fehler wieder eingeschlichen. Wenn der Header 2 Byte lang ist kann die Payload nur 253 Byte groß sein. Sonst läuft die Variable Länge die 1 Byte groß ist über...
Das verstehe ich nicht. Beispiel payload hat (theoretisch) 254 Byte Länge im "Loopback" test (was völlig nutzlos wäre, aber egal).

Dann wäre der Telegramminhalt irgendwas mit (hex)
08 FE xx xx ... xx xx
damarco hat geschrieben: Sa 23. Mär 2024, 16:35 Besser wäre es gewesen damals die Länge gleich 2 Byte Platz zu geben so wäre die ganze MTU nutzbar. Aber ich denke man hat sich gedacht wegen dem wenigen Speicher im AVR braucht man so große Telegramme nie....
MTU? Motoren und Turbinen Union?
Grüße,
Fred Sonnenrein, Braunschweig
i-Telex 952741 (Lo133), 8579924 (T100s), 781272 (T100), 792911 (T68d) oder 531072 (T.typ.72)
Bei besetzt oder gestört bitte 531002 versuchen.
Benutzeravatar

obrecht
Rank 6
Rank 6
Beiträge: 510
Registriert: Fr 26. Jun 2020, 18:53
Wohnort: Aachen
Hauptanschluß: 833539 fili d

Neuimplementierung von i-Telex

#76

Beitrag: # 43305Beitrag obrecht »

detlef hat geschrieben: Sa 23. Mär 2024, 19:26 Wenn du einem Fernschreiber 2000 Zeichen schickst, dann braucht der 5 Minuten, um die auszudrucken. Da ist dann nichts mehr synchron - das ist dann der piTelex-Effekt.
Wieso ist das der "piTelex - Effekt"?
Braucht ein Fernschreiber am i-telex kürzer oder länger?
50Bd sind doch 50Bd, oder?
Viele Grüße,
Rolf

833538 obrac d  24/7  (FS220)
833539 fili d   24/7  (T100a)
833540 rowo d   24/7  (T100/R) 
71920 actelex d 24/7  (T68d)
833541 obby d   24/7  (T37h)
833142 rolf d   24/7  (Lo15A)

Topic author
damarco
Rank 3
Rank 3
Beiträge: 126
Registriert: Mi 20. Sep 2023, 16:31
Hauptanschluß: 371126

Neuimplementierung von i-Telex

#77

Beitrag: # 43307Beitrag damarco »

Die Angabe der Länge bezieht sich auf die Länge der Payload korrekt und nicht wie ich dachte auf die Länge des Telegramms?

MTU - Maximum Transfer Unit ist beim Ethernet üblicherweise 1500 Byte groß, die Payload ist durch IP Header, TCP/IP Header aber geringer.

https://www.elektronik-kompendium.de/si ... 812211.htm

@detlef daher https://de.wikipedia.org/wiki/TCP_Receive_Window es geht gar nicht darum es besser zu machen sondern es zu verstehen weshalb es nun mal so ist.

Deswegen sagte ich auch im W5500 muss man sich nicht darum kümmern, da der IP Stack das macht. Man müsste schauen ob im verwendeten IP-Stack die Fenstergröße eine Rolle spielt.
Zuletzt geändert von damarco am Sa 23. Mär 2024, 21:37, insgesamt 1-mal geändert.
Benutzeravatar

detlef
Rank 12
Rank 12
Beiträge: 3624
Registriert: Do 28. Mär 2019, 09:10
Wohnort: Marburg
Hauptanschluß: 7822222 hael d

Neuimplementierung von i-Telex

#78

Beitrag: # 43310Beitrag detlef »

damarco hat geschrieben: Sa 23. Mär 2024, 21:09 Die Angabe der Länge bezieht sich auf die Länge der Payload korrekt? Die Länge ist im Header 1 Byte groß und wenn der Header 2 Byte groß ist ( 1 Byte command_type + 1 Byte Länge ) kann die Länge der Payload nicht 254 Byte sein. Dann wäre das ganze Telegramm 256 Byte lang -> Überlauf unsigniert char.
Verstehe ich auch gerade nicht. Warum darf das ganze Paket (Telegramm) nicht 256 Byte lang sein? Welcher unsigned char läuft da über?
Gruß, Detlef

i-Telex: 7822222 (T1000), 114288 (F1300), 211230 (T100Z), 96868 (T37), 24394 (T68d)
Konf.-Dienst: 11160/11161, Rundsender: 11162/11163 , Baudot-Bilder: 11166, Chat-GPT: 11168
Mail-/Fax-Dienst: 11170/11171, hist. Ausk.: 40140, Wetter: 717171

Topic author
damarco
Rank 3
Rank 3
Beiträge: 126
Registriert: Mi 20. Sep 2023, 16:31
Hauptanschluß: 371126

Neuimplementierung von i-Telex

#79

Beitrag: # 43311Beitrag damarco »

Habe nochmal nachgedacht siehe oben. Ich dachte die Länge bezieht sich auf das gesamte Telegramm. Header(2 Byte) + Daten(254 Byte) das passt dann nicht mehr in ein unsigniert char. Aber die Länge bezieht sich auf die Länge der Daten und die können dann maximal 255 Byte groß sein.

Also alles korrekt! Bitte keine Aufregung :rofl:

@obrecht detlef seine Forderung war Buffer zu vermeiden, es soll so sein das wenn er eine Taste drückt diese auch unmittelbar übertragen wird.
Benutzeravatar

FredSonnenrein
Founder
Founder
Beiträge: 2320
Registriert: Fr 3. Jun 2016, 13:49
Wohnort: Braunschweig
Hauptanschluß: 8579924 hawe d

Neuimplementierung von i-Telex

#80

Beitrag: # 43312Beitrag FredSonnenrein »

Hallo Marco,
damarco hat geschrieben: Sa 23. Mär 2024, 21:09 Die Angabe der Länge bezieht sich auf die Länge der Payload korrekt und nicht wie ich dachte auf die Länge des Telegramms?
Ich fände es unlogisch, in der Aussgage "bitte 1 Byte drucken" (und das ist in 95% der Situationen der Fall) die Zahl 1 in Form einer 3 zu codieren.
damarco hat geschrieben: Sa 23. Mär 2024, 21:09 @detlef daher https://de.wikipedia.org/wiki/TCP_Receive_Window es geht gar nicht darum es besser zu machen sondern es zu verstehen weshalb es nun mal so ist.
Ketzer-Modus: Man muss nicht verstehen, weshalb estwas so ist wie es ist, man muss akzeptieren DASS es so ist, sofern man das Ziel einer Kompatibilität hat.
Folgende Benutzer bedankten sich beim Autor FredSonnenrein für den Beitrag:
M1ECY
Grüße,
Fred Sonnenrein, Braunschweig
i-Telex 952741 (Lo133), 8579924 (T100s), 781272 (T100), 792911 (T68d) oder 531072 (T.typ.72)
Bei besetzt oder gestört bitte 531002 versuchen.
Antworten

Zurück zu „i-Telex Dev“