Zeitsynchronisation + Sicherheitsfeature deaktivieren

Community-Firmware (cfw), Selbstbaucontroller (TX-Pi, ftduino, usw.), usw.
Forumsregeln
Bitte beachte die Forumsregeln!
Antworten
FischersFritz
Beiträge: 3
Registriert: 16 Jan 2018, 04:27

Zeitsynchronisation + Sicherheitsfeature deaktivieren

Beitrag von FischersFritz » 16 Jan 2018, 04:44

Hallo zusammen,

ich arbeite gerade an einem kleinen Projekt mit insgesamt 3 Txt's und einem Ubuntu Server. Auf den Txt's läuft die cfw. Alle befinden sich mit fester IP-Adressen im selben Netzwerk. Der Server ist zusätzlich über eine zweite Netzwerkkarte mit dem Internet verbunden. Ich würde nun gerne die Uhrzeit der Txt's regelmäßig aktualisieren und insbesondere synchronisieren. Ich kenne mich mit Ntp und der gleichen leider überhaupt nicht aus. Hat so was schonmal jemand gemacht und ist das mit den "Hausmitteln" der cfw überhaupt zu realisieren? Es muss nicht perfekt sein aber irgendwas würde ich schon gerne in der Richtung einbauen.

Zweite frage wäre wie bzw. ob es Möglich ist das "nach Erlaubnis fragen" bei Fernzugriff zu deaktivieren. Also die 2 Fragen die man bestätigen muss wenn man sich per SSH auf einen Txt einloggen will.

Und zum Schluss vielleicht noch die Frage ob jemand einen Algorithmus für den Farbsensor (Artnr.: 128599) in Python mal selber geschrieben hat. Ich habe in aus einem Beispiel RoboPro Programm in Python nach programmiert aber er liefert keine richtigen Ergebnisse. Vielleicht hatte ja mal jemand das selbe Problem. Der RoboPro Code liefert die Richtigen Farben obwohl alle Werte übereinstimmen. Hänge mal meinen Code an vielleicht sieht ja jemand direkt meinen Fehler.

Code: Alles auswählen

def colorDetection():
 
    min_color = 3000
    limit1 = 1160
    limit2 = 1500
 
    # Defaul: 0
    # White: 1
    # Red: 2
    # Blue: 3
    color = 0
    while i3.state() != 0:
        temp_color = i2.value()
        if min_color > temp_color:
            min_color = temp_color
    final_color = min_color
     
    if final_color > limit1:
        if final_color > limit2:
            color = 3
            print("B")
        else:
            color = 2
            print("R")
    else: 
        color = 1
        print("W")
    m1.setSpeed(0)
    return color
Vielen Dank für euren Input!

Fritz

Benutzeravatar
ski7777
Beiträge: 870
Registriert: 22 Feb 2014, 14:18
Wohnort: Saarwellingen

Re: Zeitsynchronisation + Sicherheitsfeature deaktivieren

Beitrag von ski7777 » 16 Jan 2018, 10:34

Erstmal herzlich willkommen im Forum und gut zu hören, dass jemand die CFW auf 3! TXTs nutzt! :D

1.NTP:
Normal nimmt der TXT folgende Konfiguration für den NTP Client: https://github.com/ftcommunity/ftcommun ... d.etc.conf Dieser läuft standartmäßig. Falls du einen anderen NTP Server verwenden möchtest, kannst du das in /etc/ntp/ntp.conf einstellen.

2.1. Firewall:
Lösche einfach die Datei /etc/init.d/S41netreq

2.2. PAM:
Wenn du ein Passwort für ftc setzt, kannst du dich direkt einloggen. Alternativ kannst du dich auch per Public Key einloggen.

4. Farbsensor:
Da bin ich überfragt

Raphael

Benutzeravatar
ski7777
Beiträge: 870
Registriert: 22 Feb 2014, 14:18
Wohnort: Saarwellingen

Re: Zeitsynchronisation + Sicherheitsfeature deaktivieren

Beitrag von ski7777 » 16 Jan 2018, 10:37

Statt die Firewall ganz abzuschalten kannst du auch den Server dauerhaft freischalten. Dazu musst du, beim verbinden einfach unten auf "speichern" drücken. Löschen kannst du diesen dann in der App "Netzwerk" im Menü.

Raphael

.zeuz.
Beiträge: 45
Registriert: 14 Feb 2013, 21:42
Wohnort: St. Gallen

Re: Zeitsynchronisation + Sicherheitsfeature deaktivieren

Beitrag von .zeuz. » 16 Jan 2018, 10:42

Hallo Fritz

Ergänzend zu 1. kannst du auf dem Ubuntu Server einen ntp Server einrichten und von den TXTs aus dann diesen verwenden.

Grüsse, Norbert

Torsten
Beiträge: 308
Registriert: 29 Jun 2015, 23:08
Wohnort: Gernsheim (Rhein-Main-Region)

Re: Zeitsynchronisation + Sicherheitsfeature deaktivieren

Beitrag von Torsten » 16 Jan 2018, 21:45

Hallo Fritz,

zum Farbsensor:

als Erstes solltest Du sicherstellen, dass Du die ftrobopy-Version 1.84 verwendest. Die Versionen davor hatten im 'direct'-Modus einen Bug bei der Bestimmung von analogen Werten auf den Eingängen I2-I7 (I1 und I8 waren ok). Falls Du ftrobopy im Online-Modus verwendest, gibt es kein Problem (auch bei älteren Versionen nicht).

ftrobopy hat selbst ein Eingabe-Objekt 'colorsensor', das ausser dem analogen Messwert auch die Farbe zurückliefern kann:

Code: Alles auswählen

>>> farbsensor = txt.colorsensor(2)
>>> print("Der Farbwert ist      : ", farbsensor.value())
>>> print("Die erkannte Farbe ist: ", farbsensor.color())
Die analogen Werte, die ich damals (durch Ausprobieren) bestimmt habe weichen von den ROBOPro-Werten ab. Hier ist die entsprechende ftrobopy-Funktion:

Code: Alles auswählen

      def color(self):
        c = self._outer.getCurrentInput(num-1)
        if c < 200:
          return 'weiss'
        elif c < 1000:
          return 'rot'
        else:
          return 'blau'
Viele Grüße
Torsten

FischersFritz
Beiträge: 3
Registriert: 16 Jan 2018, 04:27

Re: Zeitsynchronisation + Sicherheitsfeature deaktivieren

Beitrag von FischersFritz » 23 Jan 2018, 19:38

Hallo zusammen,

der ntp läuft mittlerweile perfekt mit meinen 5! Txts.

Was die Sicherheit angeht habe ich die /etc/init.d/S41netreq umbenannt aber das hatte keinen Effekt. Hier bräuchte ich also noch etwas Hilfe. ich hätte gerne eine "Totschlaglösung" um einfach alles abzustellen. Muss leider sonst auch bei jedem RPC etc auf dem Txt den Zugriff bestätigen.

Habe immer noch Probleme mit meinem Farbsensor. Torsten ich glaube ich falle genau in den von dir beschriebenen Fehlerfall. Immer wenn ich color() abfrage kommt blau raus egal was ich mache. Werde dann wohl gleich mal alles neu aufspielen und hoffen das es wirklich an der Version lag. Kann irgendwie nicht meine Version bestimmen. Ich habe mal einen kleinen Ausschnitt für euch:

Code: Alles auswählen

>>> print(txt.getVersionNumber())
67175680
>>> print(hex(txt.getVersionNumber()))
0x4010500
>>> name , version = txt.queryStatus()
>>> name
'TXT direct'
>>> version
67175680
>>> print(hex(txt.getVersionNumber()))
0x4010500
>>> print(txt.getFirmwareVersion)
<bound method ftTXT.getFirmwareVersion of <ftrobopy.ftrobopy object at 0xb6bbef70>>
>>> print(txt.getFirmwareVersion())
firmware version not detected
>>> 

Vielen Dank für euren Input! Wirklich super wie ihr euch engagiert!

Benutzeravatar
ski7777
Beiträge: 870
Registriert: 22 Feb 2014, 14:18
Wohnort: Saarwellingen

Re: Zeitsynchronisation + Sicherheitsfeature deaktivieren

Beitrag von ski7777 » 23 Jan 2018, 19:52

Du musst die Datei einfach löschen. Dann ist die Firewall tot.

Raphael

FischersFritz
Beiträge: 3
Registriert: 16 Jan 2018, 04:27

Re: Zeitsynchronisation + Sicherheitsfeature deaktivieren

Beitrag von FischersFritz » 24 Jan 2018, 20:48

Muss mal wohl tatsächlich löschen :) Jetzt geht es bzw. jetzt geht es nicht mehr.

Mein Farbsensorproblem wurde durch ein Update von ftrobopy gelöst. Habe jetzt "Weekly release for wk.1801" laufen. Bisher keine Fehler!

Danke euch!

Antworten