Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
anleitungen:bauanleitungen:locoturn_v10:150_locoturn_parameter [2024/09/27 14:50] – [LocoTurn V1.1 / V1.2] domapi | anleitungen:bauanleitungen:locoturn_v10:150_locoturn_parameter [2024/11/09 16:20] (aktuell) – [Parameter zur Einstellung der Drehscheibe] domapi | ||
---|---|---|---|
Zeile 3: | Zeile 3: | ||
Aus der Vielzahl der Konfigurationsvariablen (#defines) hier ein paar wesentliche: | Aus der Vielzahl der Konfigurationsvariablen (#defines) hier ein paar wesentliche: | ||
- | * Einige #defines wie **USE_DCC**, | + | * Einige #defines wie **USE_DCC**, |
* Das #define **USE_POTI** muss auf 0 gesetzt werden, wenn kein Poti angeschlossen ist, sonst kann es sein, dass die Drehscheibe nach dem ersten Kalibrieren und Anfahren des ersten Ports " | * Das #define **USE_POTI** muss auf 0 gesetzt werden, wenn kein Poti angeschlossen ist, sonst kann es sein, dass die Drehscheibe nach dem ersten Kalibrieren und Anfahren des ersten Ports " | ||
Zeile 9: | Zeile 9: | ||
* Zentrale Parameter sind die Anzahl der benötigten Ports #define **PORT_CNT** bzw. #define **PARTLY_USED_PORTS** (falls nicht alle angefahren werden sollen) und #define **PARTLY_USED_PORTS_TAB** (Tabelle der Ports, die angefahren werden können). | * Zentrale Parameter sind die Anzahl der benötigten Ports #define **PORT_CNT** bzw. #define **PARTLY_USED_PORTS** (falls nicht alle angefahren werden sollen) und #define **PARTLY_USED_PORTS_TAB** (Tabelle der Ports, die angefahren werden können). | ||
| | ||
- | * Die erste verwendete DCC Adresse ist einzugeben, wenn man von dem im Programm vorgegebenen DCC-Adressraum abweichen will: #define **FIRST_USED_DCC_ADDR**. | + | * Das #define **DCC_MAERKLIN_7687_COMPATIBLE** muss für die Verwendung |
+ | |||
+ | * Über das #define **DCC_OFFSET** kann ein Offset eingestellt werden, damit LocoTurn auf andere DCC-Adressbereiche reagiert. Der Offset wird auf die jeweiligen DCC-Adressen addiert. Bei manchen Zentralen muss z.B. der Roco-Offset von „-4“ hier eingestellt werden, damit LocoTurn die Adressen richtig interpretiert. | ||
| | ||
- | * Ebenso ist die letzte verwendete DCC Adresse | + | * Ebenso ist die letzte verwendete DCC Adresse |
| | ||
* Liste der DCC-Adressen für die Ports anpassen: #define **DCC_PORT_ADDR_LIST**. Die Liste muss **PORT_CNT**-Einträge enthalten. Wenn der Märklin-Modus (**DCC_MAERKLIN_7687_COMPATIBLE**) verwendet wird, reichen PORT_CNT / 2 Einträge. | * Liste der DCC-Adressen für die Ports anpassen: #define **DCC_PORT_ADDR_LIST**. Die Liste muss **PORT_CNT**-Einträge enthalten. Wenn der Märklin-Modus (**DCC_MAERKLIN_7687_COMPATIBLE**) verwendet wird, reichen PORT_CNT / 2 Einträge. | ||
Zeile 61: | Zeile 63: | ||
- | ====== | + | ====== |
- | ==== LocoTurn V1.0 ==== | + | |
- | Hier stehen alle wichtigen Parameter für den Betrieb einer Fleischmann-Drehscheibe mit einem Direktantrieb über einen 400 Step Motor. Genutzt werden 26 von 48 Ports. Am einfachsten orientiert man sich an diesem Beispiel und nimmt ggf. Änderungen vor: | + | |
- | < | + | Ab der Version |
- | // | + | |
- | // Benutzer-spezifische Parameter | + | |
- | // | + | |
- | /* | + | |
- | Die Parameter hier dominieren diejenigen aus dem Hauptprogramm " | + | |
- | Falls ein bestimmter Parameter hier nicht definiert wurde, wird ein default-Wert aus dem Hauptsketch verwendet! | + | |
- | Hier stehen nur die wichtigsten Parameter, die am häufigsten benutzerindividuell eingestellt werden müssen. | + | |
- | + | ||
- | Intention: Bei eine neuen Version des Hauptprogrammes bleiben die Einstellungen aus diesem Reiter erhalten! | + | |
- | */ | + | |
- | + | ||
- | + | ||
- | // | + | |
- | // Parameterset 1: Wantai-Stepper oder StepperOnline-Stepper ohne Getriebe, 400 Steps pro Umdrehung, 6400 Micro-Steps | + | |
- | // 26 Gleisabgänge (= Ports) domapi-Anlage | + | |
- | // | + | |
- | + | ||
- | // | + | |
- | // Zentrale #defines zum Ein-/ | + | |
- | // | + | |
- | + | ||
- | #define USE_DCC | + | |
- | + | ||
- | #define USE_SOUND | + | |
- | + | ||
- | #define USE_SERIAL_INPUT | + | |
- | #define USE_VERBOSE | + | |
- | + | ||
- | #define USE_OLED | + | |
- | #define USE_BUTTONS | + | |
- | + | ||
- | #define SHOW_STATUS | + | |
- | + | ||
- | #define USE_POTI | + | |
- | | + | |
- | + | ||
- | // | + | |
- | // *** Debugging*** | + | |
- | // | + | |
- | #define ENABLE_DPRINTF | + | |
- | + | ||
- | + | ||
- | // Typische Konfigurationen: | + | |
- | // ========================= | + | |
- | // Normalbetrieb auf der Anlage | + | |
- | // | + | |
- | //#define USE_DCC | + | |
- | //#define USE_SOUND | + | |
- | //#define USE_SERIAL_INPUT | + | |
- | //#define USE_VERBOSE | + | |
- | //#define SHOW_STATUS | + | |
- | //#define ENABLE_DPRINTF | + | |
- | + | ||
- | // Test der Steuerung und Einstellung der DS | + | |
- | // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | + | |
- | //#define USE_DCC | + | |
- | //#define USE_SOUND | + | |
- | //#define USE_SERIAL_INPUT | + | |
- | //#define USE_VERBOSE | + | |
- | //#define SHOW_STATUS | + | |
- | //#define ENABLE_DPRINTF | + | |
- | + | ||
- | + | ||
- | // | + | |
- | // Steuerung Beleuchtungseffekte | + | |
- | // | + | |
- | #define LEDS_ON_BOARD | + | |
- | #define WS281X_BOARD | + | |
- | #define MOBALEDLIB | + | |
- | + | ||
- | #define LIGHT_CONTROL | + | |
- | + | ||
- | #define HOUSE_LIGHT_MODUS | + | |
- | + | ||
- | // | + | |
- | // *** Turntable *** | + | |
- | // | + | |
- | + | ||
- | /* - Die Anzahl verwendeter Ports muss bei PORT_CNT, die Portnummern bei PARTLY_USED_PORTS_TAB eingetragen werden | + | |
- | - Weiterhin pro Port 0 oder 1 bei der Signalsteuerung PORT_TYPE. | + | |
- | - Die letzte genutzte DCC-Adresse wird automatisch über eine Formel anhand der Anzahl Pors berechnet (LAST_USED_DCC_ADDR). | + | |
- | - Und die Polarisierung muss unten eingestellt werden. POLARISATION_CHANGE_PORT oder POLARISATION_RELAIS_LIST. | + | |
- | */ | + | |
- | + | ||
- | #define PORT_CNT | + | |
- | #define PARTLY_USED_PORTS | + | |
- | + | ||
- | #if PARTLY_USED_PORTS | + | |
- | #define PARTLY_USED_PORTS_REFERENCE | + | |
- | # | + | |
- | #define PORT_CNT | + | |
- | + | ||
- | // Gleis 1 = 9: | + | |
- | #define PARTLY_USED_PORTS_TAB | + | |
- | + | ||
- | #endif | + | |
- | + | ||
- | #define CIRCUMFERENCE | + | |
- | + | ||
- | + | ||
- | #define OFFSET_PORT_POSITION | + | |
- | #define OFFSET_PORT_POSITION_U_TURN | + | |
- | + | ||
- | + | ||
- | /* | + | |
- | Tipp: | + | |
- | ----- | + | |
- | + | ||
- | Man kann das Raster, in dem die Ports initial angelegt werden auch kleiner machen, z.B. 0,1 Grad genau. Hierzu muss man folgendes eintragen: | + | |
- | + | ||
- | #define PORT_CNT | + | |
- | #define PARTLY_USED_PORTS | + | |
- | + | ||
- | #if PARTLY_USED_PORTS | + | |
- | # | + | |
- | # | + | |
- | # | + | |
- | # | + | |
- | #endif | + | |
- | + | ||
- | Im Prinzip teilt das den Vollkreis in 3600 Ports/ | + | |
- | + | ||
- | Grad | + | |
- | 30° 1 | + | |
- | 135° " | + | |
- | 210° 7 | + | |
- | 315° " | + | |
- | */ | + | |
- | + | ||
- | + | ||
- | // | + | |
- | // *** Signalsteuerung *** | + | |
- | // | + | |
- | #define ADVANCED_SIGNAL_CONTROL | + | |
- | + | ||
- | // Gleisabgang | + | |
- | #define PORT_TYPE | + | |
- | // als Beispiel hier: bei 26 Ports sind einige | + | |
- | + | ||
- | + | ||
- | // | + | |
- | // *** Polarization relays *** | + | |
- | // | + | |
- | #define POLARISATION_RELAIS_PIN | + | |
- | #define POLARISATION_RELAIS_INVERS | + | |
- | + | ||
- | #define POLARISATION_CHANGE_PORT_START | + | |
- | #define POLARISATION_CHANGE_PORT_END | + | |
- | + | ||
- | /* Teilt die Drehscheibe für die Polarisierung quasi in 2 Hälften. | + | |
- | Ab dem hier definierten START-Port (externe Nummerierung wie OLED-Anzeige) wird das Polarisationsrelais bis zum i.d.R. gegenüberliegenden END-Port eingeschaltet. | + | |
- | | + | |
- | Die eine Hälfte der Scheibe ist Polung 1, die andere Polung 2. | + | |
- | Spart einige Bytes ;-) | + | |
- | -1 = Polarisation gemäß der unten stehenden Liste | + | |
- | */ | + | |
- | + | ||
- | //#define POLARISATION_RELAIS_LIST | + | |
- | + | ||
- | + | ||
- | // | + | |
- | // *** Direction and control settings *** | + | |
- | // | + | |
- | #define ROTATIONSWITCH_DIRECTION | + | |
- | -1 = Drehen nach rechts höhere Port-Nr.; links = niedrigere Port-Nr.*/ | + | |
- | + | ||
- | #define USE_ROTARY_ENCODER_MOVEMENT | + | |
- | + | ||
- | #define SPEED_POTI_DIRECTION | + | |
- | + | ||
- | #define ROTATIONSWITCH_MENU_DIR | + | |
- | #define TURNTABLE_DIRECTION | + | |
- | + | ||
- | + | ||
- | #define ENCODER_LOGIC | + | |
- | - Bewegung wird erst gestartet, wenn Encoder-Taste gedrückt wird | + | |
- | - während der Bewegung kann die anzufahrende Portnummer nicht mehr geändert werden | + | |
- | - Taste während Bewegung ruft das Menü auf und stoppt die Bewegung | + | |
- | 0 = Encoder startet Bewegung, während Bewegung kann weiter gedreht werden*/ | + | |
- | + | ||
- | #define DIRECTION_CHANGE_POSSIBLE | + | |
- | + | ||
- | #define MOVE_STATUS_INVERS | + | |
- | 1 = Invert the level of the S88_MOVING_PIN: | + | |
- | - 1 and turntable moving = Optokoppler sperrt. | + | |
- | - 1 + Stillstand: OK steuert durch und erzeugt eine Rückmeldung. | + | |
- | Viele Steuerungssoftwarepakete erwarten ein Signal, wenn die DS steht (d.h. angekommen | + | |
- | + | ||
- | // | + | |
- | // *** Schrittmotor *** | + | |
- | // | + | |
- | #define FIXED_STEPS_PER_ROUND | + | |
- | + | ||
- | #define FIXED_STEPS_HAS_CONTACT | + | |
- | + | ||
- | #define NOT_ENABLE_PIN | + | |
- | The pin of the module must be left open (std 6) | + | |
- | Use Pin 6 for TMC2208 */ | + | |
- | #define ENABLE_ALWAYS_ON | + | |
- | | + | |
- | Set to 1 for a powerful stepper without gearbox because the magnetic field will change the position when powered of | + | |
- | If a stepper driver like the TMC2100 is used it's better to disable the NOT_ENABLE_PIN (-1) to activate the automatic power saving mode instead. | + | |
- | Bei Einsatz TMC2208 sollte man den Wert 1 verwenden! */ | + | |
- | + | ||
- | #define STEPPER_RAMP_LENGTH | + | |
- | Set to 50 if 1/16 steps are used (MS1 - MS3 connected do +5V)*/ | + | |
- | + | ||
- | #define MOVE_SPEED1 | + | |
- | #define TURNBACK_SPEED | + | |
- | + | ||
- | #define USE_TURNBACK | + | |
- | + | ||
- | #define MOVE_SPEED2 | + | |
- | #define MOVE_SPEED3 | + | |
- | #define MOVE_SPEED4 | + | |
- | + | ||
- | #define CLEARANCE_TEST_SPEED | + | |
- | #define CALIBRATE_SPEED_FAST | + | |
- | #define CALIBRATE_SPEED_SLOW | + | |
- | #define ZERO_DETECTION_OFFSET | + | |
- | + | ||
- | #define MIN_STEPS_HAS_CONTACT | + | |
- | | + | |
- | is below this value. Set to 0 to disable the check (Always move fast to the contact point) | + | |
- | | + | |
- | 0 = kein Anfahrruckler | + | |
- | TODO: evtl. muss die Routine, die das Getriebespiel " | + | |
- | + | ||
- | #define ALWAYS_CALIBRATE_AT_START | + | |
- | + | ||
- | #define ADVANCED_REFERENCE_DETECTION | + | |
- | + | ||
- | + | ||
- | // | + | |
- | // *** OLED *** | + | |
- | // | + | |
- | #define OLED_TYP | + | |
- | #define USE_u8x8 | + | |
- | #define SHOW_POSITION_MAINSCREEN | + | |
- | + | ||
- | // | + | |
- | // ** Flashing & light setup *** | + | |
- | // | + | |
- | #define MOVING_FLASH_INVERS | + | |
- | #define MOVING_FLASH_MODE | + | |
- | #define HOUSE_BRIGHTNESS | + | |
- | + | ||
- | // | + | |
- | // *** sketch internal parameters *** | + | |
- | // | + | |
- | #define BITSCHIEBER | + | |
- | #define SPEED_POTI_MID_RANGE | + | |
- | #define SPEED_POTI_CENTER | + | |
- | + | ||
- | #define ANALOG_SPEED_DIVISOR | + | |
- | #define MIN_ANALOG_SPEED | + | |
- | + | ||
- | #define ALWAYS_CHECK_STEPS_ONE_TURN | + | |
- | + | ||
- | #define ASK_TO_UPDATE_ALL | + | |
- | + | ||
- | #define ALWAYS_SET_ZERO_IN_POS_DIR | + | |
- | + | ||
- | + | ||
- | // | + | |
- | // *** Sound Setup *** | + | |
- | // | + | |
- | #define USE_JQ6500_SERIAL | + | |
- | #define JQ6500_VOLUME | + | |
- | #define DELAY_TURN_START_SOUND | + | |
- | #define SOUND1_FILENR | + | |
- | #define SOUND2_FILENR | + | |
- | + | ||
- | // | + | |
- | // *** Pins *** | + | |
- | // | + | |
- | + | ||
- | // n/a --> alle aus dem Hauptsketch verwenden! | + | |
- | + | ||
- | + | ||
- | // | + | |
- | // *** DCC *** | + | |
- | // | + | |
- | + | ||
- | #define DCC_OFFSET | + | |
- | + | ||
- | #define DCC_WAITING_TIME | + | |
- | + | ||
- | #define DCC_MAERKLIN_7687_COMPATIBLE | + | |
- | + | ||
- | #if DCC_MAERKLIN_7687_COMPATIBLE == 1 | + | |
- | #define LAST_USED_DCC_ADDR | + | |
- | #else | + | |
- | #define LAST_USED_DCC_ADDR | + | |
- | #endif | + | |
- | + | ||
- | // Momentan 26 (von 48) genutzte Ports = { 1, 2, 3, 5, 6, 8, 11, 13, 15, 17, 19, 21, 23, 25, 26, 27, 29, 30, 32, 35, 37, 39, 41, 43, 45, 47 } | + | |
- | + | ||
- | #if DCC_MAERKLIN_7687_COMPATIBLE == 1 | + | |
- | // Es werden nur für die Ports im ersten Halbkreis DCC-Adressen benötigt | + | |
- | // Bei 26 Ports braucht man hier also 13 DCC-Adressen (= 13 Zeilen) | + | |
- | + | ||
- | #define DCC_PORT_ADDR_LIST | + | |
- | DCC_PORT_ADDR(2, | + | |
- | DCC_PORT_ADDR(3, | + | |
- | DCC_PORT_ADDR(4, | + | |
- | DCC_PORT_ADDR(5, | + | |
- | DCC_PORT_ADDR(6, | + | |
- | DCC_PORT_ADDR(7, | + | |
- | DCC_PORT_ADDR(8, | + | |
- | DCC_PORT_ADDR(9, | + | |
- | DCC_PORT_ADDR(10, | + | |
- | DCC_PORT_ADDR(11, | + | |
- | DCC_PORT_ADDR(12, | + | |
- | DCC_PORT_ADDR(13, | + | |
- | + | ||
- | #else | + | |
- | // DCC-Adressen für den kompletten Vollkreis notwendig! | + | |
- | // Bei 26 Ports braucht man hier auch 26 DCC-Adressen (= 26 Zeilen) | + | |
- | + | ||
- | #define DCC_PORT_ADDR_LIST | + | |
- | DCC_PORT_ADDR(2, | + | |
- | DCC_PORT_ADDR(3, | + | |
- | DCC_PORT_ADDR(4, | + | |
- | DCC_PORT_ADDR(5, | + | |
- | DCC_PORT_ADDR(6, | + | |
- | DCC_PORT_ADDR(7, | + | |
- | DCC_PORT_ADDR(8, | + | |
- | DCC_PORT_ADDR(9, | + | |
- | DCC_PORT_ADDR(10, | + | |
- | DCC_PORT_ADDR(11, | + | |
- | DCC_PORT_ADDR(12, | + | |
- | DCC_PORT_ADDR(13, | + | |
- | DCC_PORT_ADDR(14, | + | |
- | DCC_PORT_ADDR(15, | + | |
- | DCC_PORT_ADDR(16, | + | |
- | DCC_PORT_ADDR(17, | + | |
- | DCC_PORT_ADDR(18, | + | |
- | DCC_PORT_ADDR(19, | + | |
- | DCC_PORT_ADDR(20, | + | |
- | DCC_PORT_ADDR(21, | + | |
- | DCC_PORT_ADDR(22, | + | |
- | DCC_PORT_ADDR(23, | + | |
- | DCC_PORT_ADDR(24, | + | |
- | DCC_PORT_ADDR(25, | + | |
- | DCC_PORT_ADDR(26, | + | |
- | + | ||
- | // Bei mehr als 41 Einträgen/ | + | |
- | // Workaround: dann müssen die zusätzlichen Zeilen in das # | + | |
- | + | ||
- | //#define DCC_PORT_ADDR_LIST_2 | + | |
- | // DCC_PORT_ADDR(28, | + | |
- | // DCC_PORT_ADDR(29, | + | |
- | // DCC_PORT_ADDR(30, | + | |
- | // DCC_PORT_ADDR(31, | + | |
- | // DCC_PORT_ADDR(32, | + | |
- | // DCC_PORT_ADDR(33, | + | |
- | // DCC_PORT_ADDR(34, | + | |
- | // DCC_PORT_ADDR(35, | + | |
- | // DCC_PORT_ADDR(36, | + | |
- | // DCC_PORT_ADDR(37, | + | |
- | // DCC_PORT_ADDR(38, | + | |
- | // DCC_PORT_ADDR(39, | + | |
- | // DCC_PORT_ADDR(40, | + | |
- | // DCC_PORT_ADDR(41, | + | |
- | // DCC_PORT_ADDR(42, | + | |
- | // DCC_PORT_ADDR(43, | + | |
- | // DCC_PORT_ADDR(44, | + | |
- | // DCC_PORT_ADDR(45, | + | |
- | // DCC_PORT_ADDR(46, | + | |
- | // DCC_PORT_ADDR(47, | + | |
- | // DCC_PORT_ADDR(48, | + | |
- | + | ||
- | + | ||
- | #endif | + | |
- | + | ||
- | // ggf. hier weitere Zeilen ergänzen, wenn zusätzliche DCC-Befehle für weitere Ports benötigt werden | + | |
- | // die letzte DCC-Adresse (hier 241) muss sich oben aus der # | + | |
- | + | ||
- | + | ||
- | // | + | |
- | // *** Tastenauswertung *** | + | |
- | // | + | |
- | + | ||
- | // Das #define definiert die 4 Schwellwerte für die 4 Taster auf der Panelplatine hier in der Config-Datei | + | |
- | // Bei Änderungen | + | |
- | + | ||
- | #define BUTTON_THRESHOLDS | + | |
- | {327, 284, 310, 319}, \ | + | |
- | {696, 670, 284, 622}, \ | + | |
- | {872, 831, 310, 622} | + | |
- | + | ||
- | #define HOME_RUN_PORT 8 // wird bei der Tastersteuerung verwendet, bei einem entsprechenden Tastendruck fährt die DS zum angegebenen Port | + | |
- | + | ||
- | /* folgende Aktionen stehen für die Taster zur Verfügung: | + | |
- | | + | |
- | B_Toggle_House() | + | |
- | B_Toggle_Sound() | + | |
- | B_Toggle_Signal_House() | + | |
- | B_Toggle_Signal_Opposite() | + | |
- | B_Signal_House_red() | + | |
- | B_Signal_House_white() | + | |
- | B_Signal_Opp_red() | + | |
- | B_Signal_Opp_white() | + | |
- | B_U_Turn_CW() | + | |
- | B_Home_Run() | + | |
- | B_Toggle_Flash() | + | |
- | Play_Sound(n) | + | |
- | */ | + | |
- | + | ||
- | // Hier den Tastern die Aktion zuordnen (kann man auch mehrfach machen, dann ";" | + | |
- | + | ||
- | #define BUTTON_1 | + | |
- | #define BUTTON_2 | + | |
- | #define BUTTON_3 | + | |
- | #define BUTTON_4 | + | |
- | + | ||
- | </ | + | |
- | ==== LocoTurn V1.1 / V1.2 ==== | + | Am besten man orientiert sich an den Einstellungen unten und passt alles an die eigene Drehscheibe an. Zu den meisten Parametern gibt es eine Erläuterung, |
- | In der Version V1.1 sind einige #defines dazugekommen oder wurden umbenannt. Die folgende Turntable_config.h ist nur mit der entsprechenden ino-Version (1.1 oder 1.2) lauffähig. | ||
< | < | ||
// | // | ||
- | // Benutzer-spezifische Parameter | + | // Benutzer-spezifische Parameter |
// | // | ||
/* | /* | ||
Zeile 564: | Zeile 145: | ||
#define HOUSE_LIGHT_MODUS | #define HOUSE_LIGHT_MODUS | ||
+ | |||
+ | #define WS2811_R_G_OUTPUT_SWAPPED | ||
// | // | ||
Zeile 832: | Zeile 415: | ||
// Es werden nur für die Ports im ersten Halbkreis DCC-Adressen benötigt | // Es werden nur für die Ports im ersten Halbkreis DCC-Adressen benötigt | ||
// Bei 24 Ports braucht man hier also 12 DCC-Adressen (= 12 Zeilen) | // Bei 24 Ports braucht man hier also 12 DCC-Adressen (= 12 Zeilen) | ||
- | // Die erste Zahl in der Klammer ist immer fortlaufend und startet bei 1. Sie hat nichts mit der Portnummer oben zu tun (die kann nicht fortlaufend sein). | + | // Die erste Zahl in der Klammer ist immer fortlaufend und startet bei 1. Sie hat nichts mit der Portnummer oben zu tun (die kann nicht-fortlaufend sein). |
// Pro DCC-Adresse gibt es 2 Befehle bzw. Richtungen: RED und GRN | // Pro DCC-Adresse gibt es 2 Befehle bzw. Richtungen: RED und GRN | ||