CASH-Interface2
v1.09
Universal CASH Interface
CASH Interface2

Features

- Gleichzeitiger Betrieb von Münz- und Geldscheinprüfer sowie 3x Hopper.
- Anschluss am USB Port (via USB zu Seriell Wandler) oder an der seriellen Schnittstelle.
- RS232 Wannenstecker auf der Platine für die direkte Verkabelung zum Mainboard via Flachbandkabel.
- Das Interface überwacht 6 Kanäle sowie die Stromversorgung. Im BINARY Mode sind somit
  z.B. 15 verschiedene Geldscheine und 31 verschiedene Münzen gleichzeitig möglich.
- Die Geräte sind gesperrt bis die Software diese aktiviert.
- Die Steckerbelegung ist für Münzprüfer vom Typ NRI G13 - NRI G18 - EMP - RM5 - MONEY
  CONTROLS C120 - sowie Geldscheinprüfer vom Typ NV7 - NV8 - NV9 - NV10 ausgelegt.
  Wir liefern auch speziell konfektionierte Anschlusskabel für alle andere Typen, z.B. NRI G40 oder GBA HR1.
- Externe Münzweichensteuerung via Hopper Vollmeldung.
- Hopper Voll und Leermeldung.
- 2 frei verwendbare Eingänge für z.B. Anschluss von Taster oder sonstige Geber.
- 2 frei verwendbare Ausgänge für z.B. Anschluss von Lampen oder sonstigen Aktoren.
  Davon 1 Ausgang als Relaiskontakt.
- Watchdog Funktion, d.h. bei Störungen wird die Akzeptanz autom. deaktiviert.
- Die Steuerung der Geräte erfolgt über einfache Kommandos.


Unterstützte Geräte

Münzprüfer vom Typ:
RM5, NRI G13/G18, NRI G40, EMP, MARS, MONEY CONTROLS C120, AZKOYEN, FAGE, ICT

Geldscheinprüfer vom Typ:
NV4/NV7/NV8/NV9/NV10 (SMILEY), GBAI/GBAII, JCM, MEI, APEX, MATRIX, VECTOR

Es können ALLE Münz- und Geldscheinprüfer die im PARALLEL, PULS oder BINARY Modus
arbeiten angeschlossen werden.

Hopper vom Typ:
Universal Hopper MK2, MK3 und MK4, Evolution Hopper, Escendo Escalator Hopper, Excel Hopper, Compact Hopper SBB, Rode-U-Hopper, Azkoyen Hopper, Flow Hopper oder andere welche den PULSE Modus unterstützen.

Geldschein Ausgabeeinheiten vom Typ:
ICT ND-300 , ICT CVD-300 oder andere welchen den HOPPER / PULSE Mode unterstützen.

Es können ALLE Hopper bzw. Dispenser die im PULSE Modus arbeiten angeschlossen werden.


Anschluss

Verbinden Sie das CASH-Interface2 durch ein serielles Datenkabel oder via USB zu Seriell Wandler mit dem PC. Die +5 Volt und +12 Volt Stromversorgung wird an den Schraubklemmen angeschlossen. Achten Sie auf richtige Polarität! Bei der Auswahl der Stromversorgung ist zu beachten, das ein Geldscheinprüfer kurzzeitig bis zu 1500mA und ein Münzprüfer ca. 500mA Stromaufnahme haben kann. Ein Hopper kann kurzzeitig bis zu 3A und mehr Stromaufnahme haben!


Anschluss Münzprüfer

Der Anschluss des Münzprüfers (z.B. NRI G13) erfolgt mit einem 10 poligen Flachbandkabel an dem mit COIN beschrifteten Wannenstecker.

Belegung des 10 poligen Wannensteckers (NRI G13 kompatibel):

Pins10


Anschluss Geldscheinprüfer

Der Anschluss des Geldscheinprüfers (z.B. NV7/8/9/10) erfolgt mit einem 16 poligen Flachbandkabel an dem mit BILL beschrifteten Wannenstecker.

Belegung des 16 poligen Wannensteckers (NV7/8/9/10 kompatibel):

Pins16 Pin 1 = +12V DC
Pin 2 = 0V
Pin 3,4,5,6 = MDB (not used)
Pin 7 = Busy (act. low)
Pin 8 = Escrow (not used)
Pin 9,10,11,12 = Inhibit 1-4 (Sperrung = High, Annahme = Low)
Pin 13 = Vend 3 (Note Kanal 3, act. low)
Pin 14 = Vend 4 (Note Kanal 4, act. low)
Pin 15 = Vend 1 (Note Kanal 1, act. low)
Pin 16 = Vend 2 (Note Kanal 2, act. low)

Wenn Sie andere Geldscheinprüfer als NV7/8/9/10 anschliessen möchten müssen Sie ein Adapterkabel laut obiger Belegung fertigen. Auf Wunsch liefern wir Ihnen auch passende Kabel.


Anschluss Hopper

Der Anschluss eines Hopper bzw. Bill Dispenser erfolgt mit einem 10 poligen Flachbandkabel an dem mit HOPPER1, HOPPER2 oder HOPPER3 beschrifteten Wannenstecker.

Belegung des 10 poligen Wannensteckers (Azkoyen kompatibel):

Pins10 Pin 1,2,3 = +V (+12V DC)
Pin 4,5 = -V (GND)
Pin 6 = Vollmeldung
Pin 7 = Motor start (Pulse)
Pin 8 = (nicht benutzt)
Pin 9 = Münzsignal
Pin 10 = Leermeldung

Wenn Sie andere Hopper als Azkoyen anschliessen möchten müssen Sie ein Adapterkabel fertigen oder eine unserer Adapterplatinen verwenden. Wir führen Adapter für MK4 Hopper und ND-300 Bill Dispenser. Auf Wunsch liefern wir Ihnen auch passende Kabel.

ND-300 Adapter:

push button Unser ND-300 Bill Dispenser Adapter kann in den HOPPER Anschluss gesteckt werden. Der Adapter bietet den HOPPER Motor RUN (Ausgang) und Leermeldung (Eingang) an, somit kann sehr einfach ein ND-300 Bill Dispenser im Hopper Modus betrieben werden.

Wird kein Hopper angeschlossen, kann der Adapter auch benutzt werden um einen zusätzlichen Eingang und Ausgang bereit zu stellen. Zum Beispiel verwenden wir dies bei unserer Photo Booth Steuerung um externe beleuchtete Taster anzuschließen. Hinweis: Der Ausgang kann max. 50mA Strom schalten, bei mehr Leistung muß ein Relais zwischen Last und Ausgang geschaltet werden!

Anschluss eines beleuchteten Tasters am HOPPER Anschluß via ND-300 adapter:
push button

Geräte Einstellungen

Bei gleichzeitigem Betrieb von Münz- und Geldscheinprüfer empfehlen wir folgende Konfiguration:
Geldscheinprüfer und Münzprüfer im BINARY Mode. Die Kanäle des Münz- und Geldscheinprüfers müssen entsprechend belegt sein. Software und Kabel für die umprogrammierung erhalten Sie beim Hersteller des jeweiligen Gerätes, bzw. geben bei der Bestellung gleich die gewünschte Kanalbelegung an.

Bsp. Geldschein- und Münzprüfer (Geldscheinprüfer BINARY Mode, Münzprüfer BINARY Mode):
Kanal 1-4 = Geldscheinprüfer binär codierter Wert (bis zu 15 verschiedene Geldscheine)

Kanal 1 (1) = Geldscheinprüfer 5 Euro Schein
Kanal 2 (2) = Geldscheinprüfer 10 Euro Schein
Kanal 3 (1+2) = Geldscheinprüfer 20 Euro Schein
Kanal 4 (3) = Geldscheinprüfer 50 Euro Schein
Kanal 5 (1+3) = Geldscheinprüfer 100 Euro Schein
Kanal 6 (2+3) = Geldscheinprüfer 200 Euro Schein
Kanal 7 (1+2+3) = Geldscheinprüfer 500 Euro Schein
usw.
bis 15 Geldscheine möglich...

Kanal 1-5 + 6 = Münzprüfer binär codierter Wert (bis zu 31 verschiedene Münzen)

Kanal 1 (1+6) = Münzprüfer 1 Cent Münze
Kanal 2 (2+6) = Münzprüfer 2 Cent Münze
Kanal 3 (1+2+6) = Münzprüfer 5 Cent Münze
Kanal 4 (3+6) = Münzprüfer 10 Cent Münze
Kanal 5 (1+3+6) = Münzprüfer 20 Cent Münze
Kanal 6 (2+3+6) = Münzprüfer 50 Cent Münze
Kanal 7 (1+2+3+6) = Münzprüfer 1 Euro Münze
Kanal 8 (4+6) = Münzprüfer 2 Euro Münze
Kanal 9 (1+4+6) = Münzprüfer Token
usw.
bis 31 Münzen möglich...

Bsp. Geldschein- und Münzprüfer (PARALLEL Mode):
Kanal 1 = Geldscheinprüfer 5 Euro Schein
Kanal 2 = Geldscheinprüfer 10 Euro Schein
Kanal 3 = Geldscheinprüfer 20 Euro Schein
Kanal 4 = Geldscheinprüfer 50 Euro Schein
Kanal 5 = Münzprüfer 1 Euro Münze
Kanal 6 = Münzprüfer 2 Euro Münze


Programmierung

Die Software-Einbindung in eigene Projekte erfolgt über standard COM Port Befehle oder mit Hilfe der kostenlosen CASH-Interface2 Software (CI2.EXE). Der Quellcode der CI2.EXE liegt als Delphi Projekt im entsprechenden Unterverzeichnis vor.

ci2.exe
ci2.exe

Eine weitere Möglichkeit das CASH-Interface in eigene Projekte einzubinden ist das Demo Projekt zu benutzen. Die CI2.EXE sendet bei jedem Ereignis eine WM_CopyData Message im Format ID,DATE,TIME,CHANNEL,VALUE welche Sie mit Ihrer Software empfangen können. Zusätzlich wird ein Logfile LOG.TXT im selben Format mitgeschrieben, welches Sie extern auswerten können.

Um die CI2.EXE beim Systemstart zu laden fügen Sie eine Verknüpfung im Autostart ein. Damit das Programm unsichtbar im Hintergrund läuft aktivieren Sie einfach die Checkbox HIDE.


Einstellungen und Werte für Münzen und Geldscheine ändern

Wenn die Verbindung zum CASH-Interface2 besteht, also Com Port ist geöffnet, wurden alle Einstellungen beim öffnen des Com Ports von der CASH-Interface2 Platine gelesen und in der Software angezeigt. Nun können die Werte für Münzen (COIN VALIDATOR) und Geldscheine (BILL VALIDATOR) beliebig eingestellt werden.
Hinweis: Im PARALLEL Modus wird nur COIN 1-6 verwendet, das wird auch bei den Einstellungen angezeigt!

Beim entsprechenden Kanal nun einfach den Wert der Münze bzw. vom Geldschein einstellen.
Beispiel: Der Münzprüfer ist wie folgt belegt, #1 - 10 Cent, #2 - 20 Cent, #3 - 50 Cent, #4 - 1 Euro, #5 - 2 Euro, dann wird bei #1: 10 eingetragen, bei #2: 20, bei #3: 50, bei #4: 100 und bei #5: 200. Abschließend müssen die kompletten Einstellungen mit dem "Write settings" Button auf die Platine übertragen werden.

Um zu überprüfen ob die neuen Einstellungen auch wirklich auf dem CASH-Interface2 gespeichert wurden, einfach den Befehl CASH_READSETTINGS via "Send command" Button absetzen, das CASH-Interface2 gibt dann alle gespeicherten Einstellungen aus. Wurde "Log all events" aktiviert wird dies im Log angezeigt. Alternativ kann auch der Com Port geschlossen und wieder geöffnet werden, bei aktivierten "Read settings on port open" werden die Einstellungen vom CASH-Interface2 abgerufen.


Befehle

Befehle zum CASH-Interface2 müssen mit "Carriage Return" abgeschlossen werden. Im ASCII-Zeichensatz, dem am weitesten verbreiteten und meistgenutzten Zeichensatz weltweit, wurde z. B. das Zeichen hexadezimal 0D bzw. dezimal 13 dafür vorgesehen. Das CASH-Interface2 erkennt also ein Byte mit dem Wert #13 ($0D) als Ende eines Befehls.

Beispiel: CASH_READSETTINGS$0D

Daten vom CASH-Interface2 sind mit "Carriage Return" und "Line Feed" abgeschlossen (Enter). Somit kann das Ende der Daten erkannt werden. Wird am PC die Bytefolge $0D$0A erkannt, wurden alle Daten empfangen und der empfangene String kann weiter verarbeitet werden.

Die Kommunikation zum und vom CASH-Interface2 kann mit einem Terminalprogramm getestet werden.
COM Port Einstellungen: Baud 19200, Data bits 8, Parity none, Stop bits 1, Handshaking none
COMMANDS:

- CASH_READ
    read state of all channels + NV busy signal
    Example: "CASH_READ"
    Returns: "CASH_READ=n"
    bit 0 = channel 1
    bit 1 = channel 2
    bit 2 = channel 3
    bit 3 = channel 4
    bit 4 = channel 5
    bit 5 = channel 6 or coin validator binary line
    bit 6 = NV busy
    bit 7 = power supply ok

- CASH_SENSOR 0|1
    activate external sensor on input IN1
    CASH_SENSOR=1 does send cash IN commands only if sensor signals coin or bill
    "CASH_SENSOR 0"
    "CASH_SENSOR 1"
    Example: "CASH_SENSOR 0" or "CASH_SENSOR 1"
    Returns: "CASH_SENSOR=n". On Error "ERROR".

- CASH_TOTALBLOCKING 0|1
    set the totalblocking line to enable or disable acceptance of cash
    "CASH_TOTALBLOCKING 0" enables acceptance of cash
    "CASH_TOTALBLOCKING 1" disables acceptance of cash
    Example: "CASH_TOTALBLOCKING 0" or "CASH_TOTALBLOCKING 1"
    Returns: "CASH_TOTALBLOCKING=n". On Error "ERROR".

- CASH_BINARY 0|1
    sets the protocol of the connected coin and bill validator
    "CASH_BINARY 0" the coin and bill validator work with PARALLEL protocol
    "CASH_BINARY 1" the coin and bill validator work with BINARY protocol
    Example: "CASH_BINARY 0" or "CASH_BINARY 1"
    Returns: "CASH_BINARY=n". On Error "ERROR".

- CASH_IN1
    read state of external input IN1
    Example: "CASH_IN1"
    Returns: "CASH_IN1=n" state of the external input IN1
    0 = IN1 is LOW
    1 = IN1 is HIGH

- CASH_IN2
    read state of external input IN2
    Example: "CASH_IN2"
    Returns: "CASH_IN2=n" state of the external input IN2
    0 = IN2 is LOW
    1 = IN2 is HIGH

- CASH_OUT1 0|1
    set state of output OUT1
    Example: "CASH_OUT1 0" set OUT1 to LOW
    Example: "CASH_OUT1 1" set OUT1 to HIGH
    Returns: "CASH_OUT1=n". On Error "ERROR".

- CASH_OUT2 0|1
    set state of output OUT2
    Example: "CASH_OUT2 0" set OUT2 to LOW
    Example: "CASH_OUT2 1" set OUT2 to HIGH
    Returns: "CASH_OUT2=n". On Error "ERROR".

- CASH_READSETTINGS
    read all settings from the CASH-Interface2
    Example: "CASH_READSETTINGS"
    Returns: all stored settings

    #############################
    CASH-Interface2 v1.09g
    http://www.casino-software.de
    #############################
    CASH_SENSOR=1
    CASH_BINARY=0
    CASH_WATCHDOG=0
    HOPPER_PULSE=50
    COIN1=1
    COIN2=2
    COIN3=5
    COIN4=10
    COIN5=20
    COIN6=50
    COIN7=100
    COIN8=200
    COIN9=0
    COIN10=0
    COIN11=0
    COIN12=0
    COIN13=0
    COIN14=0
    COIN15=0
    BILL1=500
    BILL2=1000
    BILL3=2000
    BILL4=5000
    BILL5=10000
    BILL6=20000
    BILL7=0
    BILL8=0
    BILL9=0
    BILL10=0
    BILL11=0
    BILL12=0
    BILL13=0
    BILL14=0
    BILL15=0
    #############################

- HOPPER <hopper number> <coins>
    pay out a coin with specific hopper
    "HOPPER 1 1" pay out 1 coin with hopper 1
    "HOPPER 1 5" pay out 5 coins with hopper 1
    "HOPPER 2 1" pay out 1 coin with hopper 2
    "HOPPER 2 5" pay out 5 coins with hopper 2
    "HOPPER 3 1" pay out 1 coin with hopper 3
    "HOPPER 3 5" pay out 5 coins with hopper 3
    Example: "HOPPER 1 1"
    Returns: "HOPPER_n=x". On Error "ERROR".

- HOPPER1_EMPTY
    read state of hopper1 empty detection
    Example: "HOPPER1_EMPTY"
    Returns: "HOPPER1_EMPTY=n" state of the hopper1 empty signal
    0 = no hopper1 empty signal detected, hopper is not empty
    1 = hopper1 empty signal detected, hopper is empty

- HOPPER2_EMPTY
    read state of hopper2 empty detection
    Example: "HOPPER2_EMPTY"
    Returns: "HOPPER2_EMPTY=n" state of the hopper2 empty signal
    0 = no hopper2 empty signal detected, hopper is not empty
    1 = hopper2 empty signal detected, hopper is empty

- HOPPER3_EMPTY
    read state of hopper3 empty detection
    Example: "HOPPER3_EMPTY"
    Returns: "HOPPER3_EMPTY=n" state of the hopper3 empty signal
    0 = no hopper3 empty signal detected, hopper is not empty
    1 = hopper3 empty signal detected, hopper is empty

- HOPPER_FULL
    read state of hopper full detection
    Example: "HOPPER_FULL"
    Returns: "HOPPER_FULL=n" state of the hopper full signal
    0 = no hopper full signal detected, hopper is not full
    1 = hopper full signal detected, hopper is full
    Hint: The hopper full signal is normally used to control the coin sorter
          via coin #5 line. To activate this the jumper JP1.1 must be set.

- HOPPER_PULSE <pulse length in ms>
    sets the hopper pulse length in milli seconds. Default is 100.
    Example: "HOPPER_PULSE 100"
    Returns: "HOPPER_PULSE=n". On Error "ERROR".

- HOPPER1_ON <Optocoupler 1 ON>
    sets the optocoupler 1. Pin7 is GND.
    If you do not use a hopper you can use this as an output.
    The optocoupler is able to switch 80mA current.
    Example: "HOPPER1_ON"
    Returns: "HOPPER1_ON". On Error "ERROR".

- HOPPER1_OFF <Optocoupler 1 OFF>
    resets the optocoupler 1. Pin7 is not GND.
    Example: "HOPPER1_OFF"
    Returns: "HOPPER1_OFF". On Error "ERROR".

- HOPPER2_ON <Optocoupler 2 ON>
    sets the optocoupler 2. Pin7 is GND.
    If you do not use a hopper you can use this as an output.
    The optocoupler is able to switch 80mA current.
    Example: "HOPPER2_ON"
    Returns: "HOPPER2_ON". On Error "ERROR".

- HOPPER2_OFF <Optocoupler 2 OFF>
    resets the optocoupler 2. Pin7 is not GND.
    Example: "HOPPER2_OFF"
    Returns: "HOPPER2_OFF". On Error "ERROR".

- HOPPER3_ON <Optocoupler 3 ON>
    sets the optocoupler 3. Pin7 is GND.
    If you do not use a hopper you can use this as an output.
    The optocoupler is able to switch 80mA current.
    Example: "HOPPER3_ON"
    Returns: "HOPPER3_ON". On Error "ERROR".

- HOPPER3_OFF <Optocoupler 3 OFF>
    resets the optocoupler 3. Pin7 is not GND.
    Example: "HOPPER3_OFF"
    Returns: "HOPPER3_OFF". On Error "ERROR".

- CASH_COIN <channel> <value>
    sets the channel value for a coin
    "CASH_COIN 1 1" sets coin1 to 1
    "CASH_COIN 1 10" sets coin1 to 10
    "CASH_COIN 2 1" sets coin2 to 1
    "CASH_COIN 2 10" sets coin2 to 10
    Example: "CASH_COIN 1 1"
    Returns: "CASH_COIN_n=x". On Error "ERROR".

- CASH_BILL <channel> <value>
    sets the channel value for a bill
    "CASH_BILL 1 1" sets bill1 to 1
    "CASH_BILL 1 10" sets bill1 to 10
    "CASH_BILL 2 1" sets bill2 to 1
    "CASH_BILL 2 10" sets bill2 to 10
    Example: "CASH_BILL 1 1"
    Returns: "CASH_BILL_n=x". On Error "ERROR".

- CASH_WATCHDOG 0|1
    disable acceptance of cash if there is no command received
    within 60sec
    "CASH_WATCHDOG 0" disables the watchdog
    "CASH_WATCHDOG 1" enables the watchdog
    Example: "CASH_WATCHDOG 0" or "CASH_WATCHDOG 1"
    Returns: "CASH_WATCHDOG=n". On Error "ERROR".

- Wrong command
    Returns: "UNKNOWN_COMMAND="


OUT2 Anschluss

OUT 2 bietet einen +12V Ausgang der wie folgt ausgelegt ist:
OUT2


CI2 Abmessungen

SIZE


Inbetriebnahme / Test

Schliessen Sie das CASH-Interface2 über das 9pol. COM Kabel am seriellen Anschluss des PCs an. Es kann auch ein USB zu Seriell Wandler verwendet werden. Schliessen Sie Münz - bzw. Geldscheinprüfer über das Flachbandkabel an das CASH-Interface2 an. Schliessen Sie die +5V und +12V Versorgungsspannung an. Bei Anschluss an ein PC Netzteil verwenden Sie das ROTE Kabel für 5V, das GELBE Kabel für +12V und die beiden SCHWARZEN Kabel als 0V. Auf richtige Polarität achten!

Bei Verwendung eines externen Netzteiles sollte das Netzteil für den Geldscheinprüfer min. 12V/1,5A Strom liefern. Für einen Münzprüfer sollte das Netzteil 12V/0,5A Strom liefern. Für beide Geräte wird also ein Netzteil mit 12V/2A benötigt. Am CASH-Interface2 leuchtet dann die grüne LED und signalisiert die Versorgungsspannung.

Um das CASH-Interface2 zu testen benutzen Sie bitte das Delphi Beispielprogramm ci2.exe. Das Beispielprogramm befindet sich im Verzeichnis /delphi/example/ci2.exe bzw. ein Link im Windows Startmenu, Programme, CI2, Example.

Starten Sie nun das Beispielprogramm und stellen Sie den richtigen COM Port ein. Aktivieren Sie dann die "Open" Auswahlbox. Die Verbindung zum CASH-Interface2 ist nun geöffnet und es können Kommandos gesendet und empfangen werden. Wählen Sie das Kommando "CASH_READSETTINGS" aus und senden Sie es an das CASH-Interface2 mittels dem "Send command" button. Das CASH-Interface2 Antwortet auf diesen Befehl mit der Ausgabe aller gespeicherten Einstellungen.

Nun werfen Sie eine Münze ein bzw. geben einen Geldschein ein. Das CASH-Interface2 sendet für jede Münze bzw. Geldschein der akzeptiert wurde einen String im Format: IN=n

Um Manipulationen via EMP Impulsen vorzubeugen kann ein externer SENSOR am Eingang IN1 angeschlossen werden (CASH_SENSOR=1). Nur wenn der SENSOR ein Geldschein oder Münze signalisiert wird das IN=x Kommando gesendet.


Probleme

Wenn der COM Port geöffnet wird muss im Log die Antwort mit allen Einstellungen erscheinen, ansonsten ist die Verbindung zum CASH-Interface2 nicht in Ordnung, oder einfach der falsche COM Port eingestellt. Prüfen Sie festen Sitz aller Kabel und ob die Stromversorgung richtig angeschlossen wurde. Bei einem USB zu Seriell Konverter finden Sie die COM Port Nummer im Windows Geräte Manager.

Wir hatten Kunden welche einen seriellen Touch-Screen benutzen, dessen serieller Treiber stört alle anderen Com Port Anschlüsse, wodurch eine fehlerhafte Kommunikation zum CASH-Interface2 entsteht. Versuchen Sie einen USB Touch Screen Controller zu verwenden und löschen Sie die seriellen Touch Screen Treiber. Besuchen Sie die Webseite des Touch Screen Herstellers, und laden Sie den aktuellsten Treiber herunter. Bei der Installation die seriellen Treiber nicht installieren, bzw. dann wieder unter Software löschen. Einen funktionierenden 3M Treiber können Sie hier herunterladen: 3M touch screen driver win32-64


Support

Für Ihre Anfrage benutzen Sie bitte das E-Mail Formular auf unserer Webseite.


Copyright © by bksoft