Commit Graph
100 Commits
Author SHA1 Message Date
akira 95193cef8b Remove bit shifting on each get bit value and event loop 2020-03-31 19:58:35 +02:00
akira 7fd4b01b57 Protocol change on flush() 2020-03-17 20:21:31 +01:00
akira 245a5ac5cf Use struct module to pack net commands, send files with length
The struct module is more efficient than int.to_bytes.
piCtory and ReplaceIO file length in the first 4 bytes of transmission
2020-03-08 20:53:57 +01:00
akira 3f28f0ae48 Implement bytebuffer and length check to NetIO
Compatible to PyLoad before 0.9
2020-03-08 14:53:28 +01:00
akira 34f1437cac Etikett 2.4.2 zum Änderungssatz 15efb52b23cf hinzugefügt 2019-09-05 13:22:07 +02:00
akira 907d867e0d Versionsnummer angepasst 2019-09-05 13:21:55 +02:00
akira 67f89ff2f3 Mit warnings zusammenführen 2019-09-05 13:12:54 +02:00
akira 182904f3ac Mit net zusammenführen 2019-09-05 13:04:04 +02:00
akira 4b8ae9926e Nach reconnect sofort syssync ermöglichen 2019-09-04 13:38:22 +02:00
akira 56b7c252b6 Debug Parameter nimmt Werte -1, 0, 1 an.
Bei debug=-1 werden keinerlei Warnungen angezeigt
Bei debug=0 werden alle Warnungen nur ein einziges Mal angezeigt
bei debug=1 werden alle Warnungen immer angezeigt
2019-09-01 13:07:52 +02:00
akira 485aad020f Ausgabe der Warnungen optimiert
no_warn parameter aus mainloop entfernt (jetzt über debug einstellbar)
Kein Warnungsspam mehr - debug ist True als Vorbelegung
2019-08-31 16:40:36 +02:00
akira fe023a6f5c Mit default zusammenführen 2019-08-31 13:31:20 +02:00
akira ba08dab33f Doppelte Fehlerzählung bei imgwriter und modio in modio zusammengeführt 2019-08-31 11:10:57 +02:00
akira 7c279a71a1 Fehler bei NetIO im Hash load beseitigt
Core IOs geben keine Fehler mehr, wenn ein delay event draufgelegt wird
Core IOs können nicht mehr überschrieben werden, wenn .value vergessen wrid
2019-08-31 09:07:24 +02:00
akira 76cb1f57d1 Warnmeldungen überarbeitet
Warnungen erscheinen nur ein Mal, wenn debug=False ist
Filter für Warnungen werden nur für RevPiModIO verändert
2019-08-28 09:34:08 +02:00
akira 2cf0514f64 Etikett 2.4.1 zum Änderungssatz e48bb0a57dbc hinzugefügt 2019-08-26 13:10:30 +02:00
akira 4a11f01874 Mit net zusammenführen 2019-08-26 13:10:20 +02:00
akira b2ada1a58d piCtory Datei fehlerhaft bei HASH_FAIL 2019-08-26 13:10:00 +02:00
akira 35d790ec01 Wenn RevPiPyLoad falsche replace_ios Datei hat, wird Fehler geworfen
IO-Prüfung bei replace wird nicht für Selected/Driver durchgeführt
2019-08-20 14:39:58 +02:00
akira d61d76b6f3 Bugfix: prefire mit as_thread hatte Fehler bei Übergabe in Queue
Netzwerkklassen zeigen über .config_changed an, dass Neuinstanzierung nötig ist
_connect von NetFH löst ConfigChanged-Exception aus
2019-08-20 09:36:19 +02:00
akira 2d17e6f1fa Disconnect bei veränderter replace_ios Datei nur, wenn diese angefordert wrude 2019-08-19 18:10:42 +02:00
akira 21973eb7df NetFH braucht min. RevPiPyLoad 0.8.0 da hashwerte übertragen werden
NetFH wirft ConfigChanged bei geänderten piCtory oder replace_ios Dateien
2019-08-19 16:35:27 +02:00
akira 27da0c8e80 Für Export default-Werte festgelegt, die nicht exportiert werden müssen
Fehlerbehebung bei Import-Fehlermeldungen
2019-08-18 09:46:10 +02:00
akira e7c8c5f958 export_replaced_ios mit Dateinamen als default versehen (PyLoad name)
Merge-Fehler beseitigt
2019-08-17 20:36:43 +02:00
akira 925efc10fe Mit replace_ios zusammenführen
.is_set() bearbeitet
2019-08-17 19:03:23 +02:00
akira 383f9b88d0 Lock des replace_io bei Verwendung von replace_io_file entfernt 2019-08-17 18:55:05 +02:00
akira 67906338c4 Mit default zusammenführen 2019-08-17 17:53:35 +02:00
akira 2009ed9ce5 Reconnect sicherer gestaltet
Abfrage von .reconnecting eingebaut
Dirtybytes und Timeout lösen keine Exception mehr aus sondern einen Reconnect
2019-08-16 22:32:27 +02:00
akira da8f944486 Etikett 2.4.0 zum Änderungssatz ad553068ac56 hinzugefügt 2019-08-01 16:09:36 +02:00
akira c68ba1ddb0 Zusammenfassung aller Entwicklungen erledigt
Versionsnummer geändert
typos gefixt
2019-08-01 16:09:21 +02:00
akira 873c2cac2a Mit direct_io zusammenführen 2019-08-01 15:36:36 +02:00
akira 6cebdb1029 Mit dev_io_index zusammenführen 2019-08-01 15:35:36 +02:00
akira 20f79fa8e7 Mit prefire zusammenführen 2019-08-01 15:35:05 +02:00
akira 4b1b0d30e4 Mit direct_io zusammenführen 2019-07-31 21:33:27 +02:00
akira 37101b3a84 Mit default zusammenführen 2019-07-31 21:13:07 +02:00
akira 76392dd1d2 Replace_IO file hatte bei export falschen namen für bit 2019-07-31 20:51:09 +02:00
akira 9d645bec37 docstring prefire kann bei replace_io direkt mit übergeben werden 2019-07-31 20:48:59 +02:00
akira 53e3daaaf9 Mit dev_io_index zusammenführen 2019-07-25 17:02:11 +02:00
akira 1befa97117 Mit prefire zusammenführen 2019-07-25 17:01:39 +02:00
akira c6f4d20503 Fork develop 2019-07-25 17:00:53 +02:00
akira fc28e028be Bei .reg_event Parameter prefire eingefügt um Event bei Eintritt in mainloop
mit aktuellem Wert auszulösen.
Im Helper werden Event-Queues nur beim deaktiveren geleert
2019-07-25 16:44:59 +02:00
akira 23f9095d5c Indexzugriff auf IOs eines Devices 2019-07-23 09:59:24 +02:00
akira 40d7c132a5 Selected / Driver gegen nun einen DeviceNotFoundError aus, wenn nicht vorhanden
debug und replace_io_file über Namen abrufbar
2019-07-23 09:09:34 +02:00
akira 527a4aa078 direct_output in RevPiNetIO übernommen
Eindeutige erkennung des procimg (file or character)
Simulationsfunktionen für IOCTL gegen einfache Datei bei procimg Parameter
IOCTLs werden nun einfacher verarbeitet / umgelenkt
2019-07-14 18:28:42 +02:00
akira d28de43a7d direct_output zu RevPiModIO hinzugefügt
Outputs werden direkt in Processimage geschrieben
Der Puffer wird nur durch gängige Techniken aktualisiert
TODO: Umsetzung für procimg=file fehlt
2019-07-14 08:28:01 +02:00
akira ea99f3f3fe replace_io_file nimmt nun Wert :network: und läd Konfiguration über RevPiPyLoad
._configure_replace_io ist eigenständige Funktion
._get_cpreplaceio für Überschreibungen bei Vererbung hinzugefügt
2019-06-23 15:32:26 +02:00
akira 56945d607e Etikett 2.3.3 zum Änderungssatz 2c1959348dd5 hinzugefügt 2019-06-17 12:44:26 +02:00
akira 745c894566 Mit replace_ios zusammenführen 2019-06-17 12:43:35 +02:00
akira 2dbd37f2e7 Parameter replace_io_file hinzugefügt für IO replacement
Wenn replace_io_file verwendet wird, ist .replace_io gesperrt
Verarbeitung der Datei direkt beim Instanziieren
2019-06-16 13:44:59 +02:00
akira 2e802544c9 Import und Export der Dateien verbessert 2019-06-12 17:18:15 +02:00
akira a13ba75bee StructIO für export erweitert
Export und Importfunktionen für ersetzte IOs hinzugefügt
2019-06-10 22:50:29 +02:00
akira 9d78d62b31 Etikett 2.3.2 zum Änderungssatz 789ef5f59b37 hinzugefügt 2019-05-01 13:34:33 +02:00
akira 843cbf39c3 Mit errorhandling zusammenführen 2019-05-01 13:30:45 +02:00
akira 2463eb019d Parameterprüfung für Instantiierung eingeführt
Debug-Parameter für alle Vererbungen übernommen
2019-05-01 12:25:45 +02:00
akira 32c33e49b5 .replace_io mit regex für parameter frm versehen - Danke an Nicolai Buchwitz!
.reset Funktion warf Fehler bei Counter IOs 8-16
2019-05-01 08:41:19 +02:00
akira 6782e9431a Bessere Werte bei _gotioerror
Debugflag um exakte Fehlermeldungen zu bekommen
2019-03-07 12:50:35 +01:00
akira a58162282f added LICENSE.txt and README.md 2019-01-25 20:04:49 +01:00
akira 1fbdf08cf0 Etikett 2.3.1 zum Änderungssatz ce2fce1e77d5 hinzugefügt 2019-01-07 19:36:36 +01:00
akira a99203b3c9 Parameter no_warn in .mainloop eingebaut 2019-01-07 19:36:16 +01:00
akira 770f49ab2d Mit classes zusammenführen 2018-12-12 09:14:16 +01:00
akira 38ba012f38 Errortypen angepasst
NetFh.__init__ Parameterprüfung geändert
NetFh._direct_send implementiert
2018-12-12 08:49:21 +01:00
akira 325bb23bba Etikett 2.3.0 zum Änderungssatz 486b6c6e6c09 hinzugefügt 2018-12-11 11:03:18 +01:00
akira 62f2bf544f .core wird nur gesetzt, wenn gültiges Basedevice erkannt wurde
Globalen FileHandler durch Lock gesichert
IOCTL über das Netzwerk umgesetzt
2018-12-10 16:27:38 +01:00
akira fc23394298 IntIOCounter Klasse erweitert mit ioctl Aufruf
Devices erzeugen IntIOCounter-Objekt, wenn Counteradresse gefunden wird
DioModule Klasse wird für DIO / DI / DO verwendet und ermöglicht Counterreset
2018-12-08 20:29:50 +01:00
akira 1e309091e8 Neue Base Klasse eingefügt von der Core / Connect erben
Sollten neue Base-Devices von Kunbus hinzugefügt werden, wird Base verwendet
IntIOReplaceable Klasse erstellt für IOs von Gateways und virtuellen Devices
Leere IntIOCounter Klasse für Counter IOs hinzugefügt
2018-12-08 17:32:03 +01:00
akira 65a0186efb Speicherzeit der piCtory Datei wird in Klasse App verarbeitet
raise IndexError bei __getitem__
2018-12-08 12:31:28 +01:00
akira b9b17670ce Etikett 2.2.5 zum Änderungssatz a19c245f9a15 hinzugefügt 2018-09-30 19:45:53 +02:00
akira 40409a6f0f Bei Cores werden Adressen von IOs statisch festgelegt unabhängig von IO-Anzahl
Unterstützung mehrere IO Arten der Cores
Fehler bei Exportflag von Connect xin beseitigt
2018-09-30 19:02:03 +02:00
akira 2b601eac5c Etikett 2.2.4 zum Änderungssatz 35b18b1423b9 hinzugefügt 2018-09-25 19:53:24 +02:00
akira db7386c078 Export Wert von RevPiLED an a*color / wd / x2* weitergeben
IO Namen des Cores mit "core." als Präfix versehen für Eventüberwachung
2018-09-25 19:26:51 +02:00
akira 4c04cbc1c1 Etikett 2.2.3 zum Änderungssatz 004f802ab5b9 hinzugefügt 2018-09-01 22:32:42 +02:00
akira 4edcea7ba4 Mit net zusammenführen 2018-09-01 22:25:00 +02:00
akira 18fe2b0477 IP Adresse aus Hostnamen ermitteln .gethostbyname
NetFH Schreibpuffer wird bei flush immer geleert, auch bei Fehlern
__flusherr wird nach Fehler bei _connect auf False gesetzt
Start des Sync nun sofort mit Sync und dann Wait
Bei ACL Fehlern Exception auslösen
Synctimer wird auf 45% des Timeouts angepasst (Senden nur bei Leerlauf)
__set_systimout setzt auch für bestehenden Socket das Timeout
2018-08-23 15:16:01 +02:00
akira ce590cdd14 Mit slots zusammenführen 2018-08-23 09:43:03 +02:00
akira ebbdbcaceb Kleinste refresh-Zeit auf 5 ms gesetzt
Zykluszeit vom .cycleloop wird bei Aufruf auf 50 ms gesetzt
Standardrefreshzeit wird nach CPU-Anzahl bestimmt
Laufzeitüberwachung für Eventsystem eingebaut
IOBase.export gibt Wert von 'Export' in piCtory zurück
Device.get_* Parameter 'export' Filtert auf piCtory 'Export' Wert
2018-08-18 19:01:13 +02:00
akira 6ef9a55f93 Mit default zusammenführen 2018-08-14 11:40:01 +02:00
akira 61ad36840d _dict_events ist nun Threadsicher
Bei Fehler in ProcimgWriter System sauber verlassen
2018-08-14 11:38:03 +02:00
akira 70a95dcacd __slots__ für alle möglichen Klassen implementiert 2018-08-13 15:12:41 +02:00
akira c2f26bcc98 Code style 2018-08-12 18:14:22 +02:00
akira 135076c953 Etikett 2.2.2 zum Änderungssatz 3348b69ce4da hinzugefügt 2018-08-09 09:01:56 +02:00
akira 27a69488f4 Connect-Attribut watchdogtrigger in wdautotoggle umbenannt
Bei handlesignalend wird im monitoring Modus nicht mehr geschrieben
2018-08-09 08:36:18 +02:00
akira ff7cd3ce7f Etikett 2.2.1 zum Änderungssatz 7cb81c09347a hinzugefügt 2018-08-01 17:49:26 +02:00
akira 7e5787421d triggerwatchdog darf nicht in monitoring oder simulator mode verwendet werden 2018-08-01 17:49:18 +02:00
akira c9301f423d Etikett 2.2.0 zum Änderungssatz ab291911cddc hinzugefügt 2018-08-01 15:50:23 +02:00
akira 828fb7f288 Mit rpiconnect zusammenführen 2018-08-01 15:49:39 +02:00
akira e7c1f522dc watchdogtrigger in Connect-Klasse integriert (Wechselt alle 10 Sekunden)
Adressen der core/connect IOs verbessert
2018-08-01 15:49:02 +02:00
akira 5cb806bbc5 Berechnung von Bit-IOs über mehr als 2 Bytes angepasst
wd und x2out Ansteuerung verbessert
Connect Funkscheiben werden als Devices ignoriert
Alle Cores werden bei syncoutputs nicht mehr mit \x00 vorbelegt
issubclass gegen isinstance getauscht
.exitsignal-Event für den Benutzer hinzugefügt
Bei Core-Klasse a*green / a*red als echte IOs hinzugefügt
2018-08-01 12:43:49 +02:00
akira c10f36001f IO Zuordnung in Core-Klasse jetzt IOBase Objekt kein Index mehr
Watchdog und X2 in/out werden als IOBase Objekte über core angeboten
2018-07-30 12:24:12 +02:00
akira 2ab799971f Verbesserung in LED_BYTE-Berechnung
Byteorder für Core-Funktionen fest auf "little" gesetzt
Connect-Klasse von Core abgeleitet
A3 zur Connect Klasse hinzugefügt
2018-07-29 08:54:33 +02:00
akira 9882dc197a Timeouthandling für NetFH verbessert 70 prozent für Sync-Timer
IP-Adresse prüfen und ggf. auflösen
2018-07-27 14:15:10 +02:00
akira 4b8fd5a2b6 Erste Anpassungen für RevPiConnect 2018-07-27 11:30:33 +02:00
akira 03c7b7d7ea Etikett 2.1.6 zum Änderungssatz 717b1c9de1a1 hinzugefügt 2018-06-27 12:12:40 +02:00
akira 8e0d1b7455 Reihenfolge des Iterators der Devices ist nun nach Position im Prozessabbild
sortiert und nicht nach Position - Entspricht piCtory
2018-06-27 12:12:31 +02:00
akira 69a7020aac Etikett 2.1.5 zum Änderungssatz 5afbc2b0cf8f hinzugefügt 2018-04-17 13:15:47 +02:00
akira ca2a610119 _defaultvalue kann String aufnehmen muss aber über _defaultvalue erfragt werden
_defaultvalue kann niemals None sein, außer bei StructIO zur Berechnung
Fehlerabfang komischer piCtory JSON Datei für _defaultvalue ('null' statt null)
2018-04-17 13:13:12 +02:00
akira 9a1084ad7d Etikett 2.1.4 zum Änderungssatz 5310c7b68cec hinzugefügt 2018-04-05 16:04:11 +02:00
akira de8ea965b9 Zeitübergabe cycleloop() wurde nicht sofort übernommen 2018-04-05 16:02:36 +02:00
akira b4767c9713 Etikett 2.1.3 zum Änderungssatz 0864ee445b48 hinzugefügt 2018-01-11 15:51:07 +01:00
akira 2ff41cfccc StuctIO kann nun COUNTs Bytes zu einem IO zusammenfassen
Fehlermeldungen in NetFH mit warnings realisiert
2017-12-26 14:09:12 +01:00
akira 072327b330 Saubere Fehlermeldung, wenn piCtory Datei nicht lesbar (leer) ist
docstrings
2017-12-16 12:58:13 +01:00