Velleman Modules VM140 User manual

Extended USB interface card
VM140
VM140
Apracticallyuseful33I/OuniversalUSB
interfaceboard.
EXTENDED USB INTERFACE BOARD 3
UITGEBREIDE USB INTERFACEKAART 10
INTERFACE USB - VERSION ETENDUE 17
ERWEITERTE USB-SCHNITTSTELLENKARTE 24
INTERFACE USB DE GRAN EXTENSIÓN 31

Velleman Components N.V.
Velleman Components N.V.
Velleman Components N.V.
Legen Heirweg 33
Legen Heirweg 33
Legen Heirweg 33
9890 Gavere, Belgium
9890 Gavere, Belgium
9890 Gavere, Belgium
http://www.velleman
http://www.velleman
http://www.velleman-
-
-kit.com
kit.com
kit.com
Kits & Instruments Service Forum : http://forum.velleman.be
Kits & Instruments Service Forum : http://forum.velleman.be
Kits & Instruments Service Forum : http://forum.velleman.be

3
SPECIFICATIONS:
• power consumption through USB port: approx. 60mA
• up to 8 cards can be connected to PC
• power supply through adapter: 12VDC / 300mA (PS1205)
• PWM frequency: 15.6kHz
• command execution time: between 21 and 48ms
• PCB dimensions: 195 x 142 x 20mm (2.7 " x 5.6" x 0.8")
FEATURES:
8 analogue 10 bit resolution inputs: 0…5 or 10VDC / 20k ohms
8 analogue 8 bit resolution outputs: 0…5V or 10VDC / 47 ohms
8 digital inputs: open collector compatible (connection to GND=0) with on-board LED indication
8 digital open collector outputs (max. 50V/100mA) with on-board LED indication
one 10 bit PWM output: 0 to 100% open collector output (max 100mA / 40V) with on-board LED
indication
USB port: USB 1.1 & 2.0 compatible
Features & specifications
This computer interface board has a total of 33 inputs / outputs, including analogue / digital and a
PWM output.
The connection to the computer via the USB port is galvanically-optically isolated, so that damage to
the computer is impossible thus providing a high level of secure implementation.
All communication routines are contained in a Dynamic Link Library (DLL).
You may write custom Windows* Applications in Borland Delphi, Borland C++ Builder, Microsoft
Visual Basic, Microsoft VC or most other 32-bit Windows application development tool that supports
calls to a DLL.
MINIMAL SYSTEM REQUIREMENTS:
• Pentium class CPU or higher with free USB port (1.1 or higher)
• Microsoft Windows 2000 or Windows XP*
• CD-ROM player and mouse
* WinXp recommended for optimum compatibility
* Are registered trademarks of MICROSOFT CORP.

4
Connections
Connections
8
12
7
10
9
2
1
11
3
4
5
6
13
14
16
15
18
17
19
20

5
1 USB-connector Connection of the VM140 with the USB port of your PC
2 12VDC Power supply connection. Connect a 12V non-regulated adapter supplying
min. 300mA
3 Digital inputs
1, 2, 3, 4
4 Digital inputs
5, 6, 7, 8
5 Digital outputs
1, 2, 3, 4 These outputs are open collector outputs. When active, the transistors in IC4
will conduct and a “connection” will be established between GND and the
output in question. The charge you wish to feed, like a LED, relay …, must
receive an external tension. Connect the “CLAMP” connection with the + of
this external power supply so as to protect the transistor array.
6 Digital outputs
5,6,7,8
7 Analogue inputs
1,2,3,4 These are measuring points with which you can digitalize and read out an
analogue voltage through the PC. The analogue inputs expect a DC voltage
between 0 and 5V or between 0 and 10V. Select with the jumpers AD1 to AD8
(see n° 13). Attention: Supplying a voltage to the A/D inputs higher than 5 or
10V can cause irrevocable damage to the VM140 (IC10/11)!
8 Analogue inputs
5,6,7,8
9 Analogue outputs
1,2,3,4 Determination with software of the DC voltage on these outputs. Depending
on the jumpers DA1 to DA8 you can establish this voltage between 0 and 5V
or between 0 and 10V. On pin 2 of this connector (SK9) you can also find the
PWM output. The PWM output is an open collector output whose pulse width
is adjustable.
10 Analogue outputs
5,6,7,8
11 Addressing of the
selection jumpers
With the jumpers A1, A2 and A3 you can attribute a unique address to each
connected VM140. Up to 8 boards can be connected. If you have only 1
VM140, establish its address as “0”.
12 Max. A/D voltage With the jumpers AD1-AD8 you can select the voltage range for the corre-
sponding A/D inputs between 0 to 5V (closed) or 0 to 10V (open).
13 Max. D/A output
voltage With the jumpers DA1-DA8 you can select the max. voltage range for the
corresponding D/A outputs between 0 to 5V (open) or 0 tot 10V (closed)
14 PWM control LED This LED will light if the PWM output is active. The brightness of the LED is
analogous to the pulse/pause relation.
15 CPU “run mode”
LED Lights when the CPU of the VM140 (IC6) is functioning correctly.
16 CPU RC/TX LED
This LED lights in case of data exchange between the CPU and the USB
interface controller (IC3). If the LED does not light when the board is
powered, check the USB controller (IC3) or the optical separation (IC1 & 2)
for faults.
17 “POWER ON” LED
Lights in case of the presence of the 5V power supply for the USB controller.
Attention: The VM140 is powered through the USB port of your PC and does
not guarantee operation of the power supply section of the VM140’s CPU and
I/O section.
18 “USB” LED Blinks during USB connection and lights at every successful connection be-
tween the USB chip in your PC and the VM140.
19 Digital input indica-
tion
These LEDs turn out when a corresponding input goes “LOW” (connection of
the input with GND) through an external contact or an external open collector
input.
20 Digital output indi-
cation These LEDs light if a corresponding output is active, i.e. when a connection is
established between an output pin and GND (open collector output).
Inputs need to go “LOW” externally to activate (connect with the GND).
Connections

6
software installation
After assembly of the circuit, it is now time to install the software drivers and examples and to test
the VM140.
Connect a 12V power supply (non regulated 12V adapter) to the power supply connector of the
VM140 (SK2).
The control LED LD12 (RUN) should light as well as LD13 to LD20 (these are the input control
LEDs and light when the inputs are not active “LOW”).
If OK, connect the USB connector of the VM140 to your PC using the included USB cable.
LD10 (POWER) should light.
LD10 (USB) should light next in case of a data connection between the PC and the VM140.
With the first connection, you should install the USB driver of the microcontroller onto the PC first.
The location of this driver can be found on the included CD in the ‘USB_driver’ subfolder of the
VM140 software.
Refer to the figures below illustrating the driver installation (example Windows XP):
Software installation
Step 1 : New hardware detected
Local driver, don't run Windows Update
Step 2 : Select "specific location"
Screenshots may vary with
different operating system
VM140 is the builded version of K8061, software for K8061 is identical for VM140

7
software installation
Step 3 : Browse through the driver
folder on your hard disk or included CD.
Select driver : mchpusb.sys
Step 4 : Click "Continue Anyway"
Step 5 : Click "Finish"

8
A utility to check the operation of the VM140 can be found in the “DIAG8061” subfolder.
A more elaborate test application can be found in the “DEMO8061” subfolder.
The source code of the test application can be found in the “DLL examples” subfolder.
Explanation concerning the communication DLL of the VM140 can be found in the “DOC” subfolder.
software installation
Installation is successful

9
How to connect :
Connection example
1. Analog output :
GND
DAx : +
ANALOG OUTPUT VOLTAGE
0 till 5V
OR
0 till 10V
2. Analog input :
GND
ADx : +
0 ... 5V or 0 ... 10V
MAX 10V DC !
!
3. Digital output : 4. Digital input :
+V :External
power supply for
relay, LED,
Lamp.
MAX 50VDC
! OR
External transistor
"open collector" output
Switch, ...
+V
GND
Check the connections and respect limitations of the specifications
to prevent damage.

10
TECHNISCHE GEGEVENS:
• verbruik langs een USB-poort: ongeveer 60mA
• mogelijkheid om max. 8 kaarten met de pc aan te sluiten
• voeding langs de adapter: 12VDC / 300mA (PS1205)
• PWM-frequentie: 15.6kHz
• standaard uitvoeringstijd: tussen 21 en 48ms
• afmetingen PCB: 195 x 142 x 20mm
EIGENSCHAPPEN:
8 analoge ingangen met een resolutie van 10 bit: 0…5 of 10VDC / 20k ohm
8 analoge ingangen met een resolutie van 8 bit: 0…5V of 10VDC / 47 ohm
8 digitale ingangen: open collector compatibel (aansluiting met GND=0) met on-board indicatie-led
8 digitale opencollectoruitgangen (max. 50V/100mA) met on-board indicatie-led
een PWM-uitgang van 10 bit: 0 tot 100% opencollectoruitgang (max 100mA / 40V) met on-board
indicatie-led
USB-poort: USB 1.1 & 2.0 compatibel
Eigenschappen en technische gegevens
Deze geassembleerde interfacekaart bestaat uit 33 ingangen / uitgangen, inclusief analoge / digitale en
een PWM-uitgang.
De aansluiting naar de computer is galvanisch-optisch geïsoleerd om beschadiging te vermijden en zo de
implementering te beveiligen.
Allecommunicatieroutines zijn in een Dynamic Link Library (DLL) verzameld.
U kunt eigen Windows-toepassingen* schrijven in Delphi, Visual Basic, C++ Builder, Microsoft Visual
Basic, Microsoft VC en de meeste 32-bit Windows-toepassingen die callsnaar een DLL ondersteunen.
MINIMALE SYSTEEMVEREISTEN:
• Pentium of hoger met vrije USB-poort (1.1 of hoger)
• Microsoft Windows 2000 of Windows XP*
• cd-romspeler en muis
* Windows XP is een geregistreerd handelsmerk van Microsoft Corporation.
* Windows XP is aanbevolen

11
Aansluitingen
Aansluitingen
8
12
7
10
9
2
1
11
3
4
5
6
13
14
16
15
18
17
19
20

12
1 USB-connector Hier wordt de VM140 met de USB-poort van een pc verbonden.
2 12VDC Aansluiting van de voeding. Hier sluit men een 12V ongestabiliseerde adapter op
aan die minimaal 300mA kan leveren.
3 Digitale ingangen
1, 2, 3, 4
4 Digitale ingangen
5, 6, 7, 8
5 Digitale uitgangen
1, 2, 3, 4
Deze uitgangen zijn “open collector”-uitgangen, dit wil zeggen dat, als ze actief
worden gemaakt, gaan de transistors in IC4 in “geleiding” en wordt er een
“verbinding” gemaakt tussen GND en de desbetreffende uitgang. De last die u
wenst aan te sturen, zoals een LED, relais ..., moet dus een externe spanning
krijgen, de aansluiting “CLAMP” verbindt u eveneens met de + van deze externe
voeding. Dit dient om detransistor array te beschermen.
6 Digitale uitgangen
5, 6, 7, 8
7 Analoge ingangen
1, 2, 3, 4
Dit zijn meetpunten waarmee men een analoge spanning kan digitaliseren en
uitlezen via de pc. De analoge ingangen verwachten een stabiele
gelijkspanning tussen 0 en 5V of tussen 0 en 10V. Deze selectie kan gemaakt
worden met de jumpers AD1 tot AD8 (zie nr. 13). Opgelet: Een spanning
aanleggen aan de A/D-ingangen groter dan 5 of 10V kan de VM140
onherroepelijk beschadigen (IC10/11)!
8 Analoge ingangen
5, 6, 7, 8
9 Analoge uitgangen
1, 2, 3, 4 Hier kan men softwarematig de gelijkspanning bepalen die u op deze
uitgangen kan plaatsen. Afhankelijk van de stand van de jumpers DA1 tot DA8
is deze spanning in te stellen tussen 0 en 5V of tussen 0 en 10V. Op pin 2 van
deze connector (SK9) vind u ook de PWM-uitgang. De PWM-uitgang is een
“open collector”-uitgang waarvan de pulsbreedte regelbaar is.
10 Analoge uitgangen
5, 6, 7, 8
11 Adressering
selectiejumpers
Met de jumpers A1, A2 en A3 kunt u elke VM140 dat aangesloten is een uniek
adres toekennen. Er kunnen max. 8 kaarten aangesloten worden. Als u
slechts één VM140 hebt, stel deze dan in op adres “0”.
12 A/D maximale
spanning
Met de jumpers AD1-AD8 kunt u het spanningsbereik voor de
overeenkomstige A/D-ingangen selecteren tussen 0 tot 5V (gesloten) of 0 tot
10V (open).
13 D/A maximale
uitgangsspanning
Met de jumpers DA1-DA8 kunt u het maximale spannings-bereik voor de
overeenkomstige D/A-uitgangen selecteren tussen 0 tot 5V (open) of 0 tot 10V
(gesloten)
14 PWM controle-LED Deze LED licht op indien de PWM-uitgang actief is. De helderheid van deze
LED is analoog aan de puls/pauze verhouding.
15 CPU “run mode”-
LED Licht op als de CPU van de VM140 (IC6) correct functioneert.
16 CPU RC/TX-LED
Deze LED licht op als er data wordt uitgewisseld tussen de CPU en de USB
interface controller (IC3). Als deze LED niet oplicht tijdens de werking van de
kaart, is er een fout in de USB controller (IC3) of in de optische scheiding (IC1 & 2)
aanwezig.
17 "POWER ON”-LED Licht op als de 5V voeding voor de USB-controller aanwezig is. Opgelet: Deze
voeding wordt genomen uit de USB-poort van uw pc en is geen garantie voor
de werking van het voedingsgedeelte van de VM140’s CPU en I/O-gedeelte.
18 "USB”-LED Knippert tijdens USB-verbinding en licht constant op wanneer er een
geslaagde communicatie tot stand gebracht is tussen de USB-chip in uw pc
en de VM140.
19 Aanduiding
digitale ingang
Deze LEDs doven als een overeenkomstige ingang “Laag” getrokken wordt
(verbinding van ingang met GND) door een extern contact of externe “open
collector”-uitgang.
20 Aanduiding
digitale uitgang
Deze LEDs lichten op als een overeenkomstige uitgang actief wordt, dit wil
zeggen als er een verbinding ontstaat tussen een uitgangspin en GND (“open
collector”-uitgang).
Om ze te activeren dient u deze extern “LAAG” te maken (verbinden met GND).
aansluitingen

13
software installatie
Na het opbouwen van de print is het nu tijd om de software drivers en voorbeelden te installeren en
de VM140 te testen.
Verbind een 12V voeding (ongestabiliseerde 12V adapter) met de VM140 voedingsconnector (SK2).
De controle-LED LD12 (RUN) dient op te lichten alsook LD13 tot LD20 (dit zijn de controle-LEDs
van de ingangen en lichten op als de ingangen niet actief “LAAG” zijn).
Als dit o.k. is, verbindt u de meegeleverde USB-kabel met uw pc en maakt u verbinding met de
VM140 USB-connector.
LD10 (POWER) dient nu eerst op te lichten.
Vervolgens zal LD9 (USB) moeten oplichten als er werkelijk een dataverbinding is ontstaan
tussen de pc en de VM140.
De eerste maal dat u een verbinding maakt, moet eerst de USB driver van de microcontroller op
de pc worden geïnstalleerd. De locatie van deze driver bevindt zich op de meegeleverde cd in de
‘USB_driver’ subfolder van de VM140 software.
Zie de foto’s in de partlist voor het verloop van de driverinstallatie :
Software installatie
Stap 1 : Nieuwe hardware gevonden.
Selecteer voor geen windows update
"No, not this time".
Stap 2 : Seleceteer "Install from a
specific location (Advanced)"
Screenshots kunnen
verschillen afhankelijk van
het besturingssysteem
De VM140 is de gebouwde versie van de kitversie K8061.
De software voor VM140 en K8061 is dezelfde.

14
Stap 3 : Kies de gewenste locatie op je
harde schijf
selecteer driver : mchpusb.sys
Stap 4 : Selecteer "Continue Anyway"
om te bevestigen.
Stap 5 : Selecteer "Finish" om de
procedure te beëindigen.
software installatie

15
In de ‘DIAG8061’ subfolder vindt u een utility om de werking van de VM140 te controleren.
In de ‘DEMO8061’ subfolder staat een uitgebreider testapplicatie.
In de ‘DLL examples’ subfolder vindt u source code van de testapplicatie.
In de ‘DOC’ subfolder vindt u uitleg over de communicatie-DLL van de VM140.
Installatie is voltooid
software installatie

16
Hoe aansluiten? :
Aansluitvoorbeelden
1. Analoge uitgang
GND
DAx : +
ANALOGE UITGANGSPANNING
0 tot 5V
OF
0 tot 10V
2. Analoge ingang :
GND
ADx : +
0 ... 5V of 0 ... 10V
MAX 10V DC !
!
3. Digitale uitgang : 4. digitale ingang :
+V :externe
voedingsbron
voor een relais,
LED, lamp
MAX 50VDC
! OF
Externe transistor
"open collector" uitgang
Schakelaar, ...
+V
GND
Controleer alle verbindingen en respecteer de specificatielimieten
om onherroepelijke schade te voorkomen.

17
SPECIFICATIONS:
• consommation via port USB: env. 60mA
• possibilité de connecter jusqu'à 8 cartes à l'ordinateur
• alimentation à partir d'un adaptateur: 12VCC / 300mA (PS1205)
• fréquence MLI: 15.6kHz
• temps d'exécution standard: entre 21 et 48ms
• dimension du CI: 195 x 142 x 20mm
DONNEES TECHNIQUES:
8 entrées analogiques avec une résolution de 10 bit: 0…5 ou 10VCC / 20k ohms
8 entrées analogiques avec une résolution de 8 bit: 0…5V ou 10VCC / 47 ohms
8 entrées numériques: compatible avec des sorties à collecteur ouvert (connexion à GND=0)
avec indication à LED à bord
8 sorties numériques à collecteur ouvert (max. 50V/100mA) avec indication à LED à bord
une sortie MLI de 10 bit: sortie à collecteur ouvert de 0 à 100% (max. 100mA / 40V) avec
indication LED à bord
port USB: compatible USB 1.1 & 2.0
Caractéristiques et données techniques
Cette interfacecontient un total de 33 entées / sorties, y compris une sortie analogique / numérique
+ 1 sortie MLI.
La connexion vers l'ordinateur est galvaniquement-optiquement isolée afin d'éviter les
endommagements de l'ordinateur. De cette manière, une implémentation hautement sécurisée est
assurée.
Toutes les routines de communications sont rassemblées dans la Bibliothèque de Liaison
Dynamique (DLL).
Il est possible d'écrire des applications Windows* personnalisées dans Delphi, Visual Basic, C++
Builder, Microsoft Visual Basic, Microsoft VC ou la plupart d'applicationsWindows 32 bit supportant
des routines vers une DLL.
EXIGENCES MINIMALES:
• Pentium ou plus avec port USB libre (1.1 ou plus)
• Microsoft Windows 2000 ou Windows XP*
• lecteur CD-ROM et souris
* Windows XP est conseillé
*Windows XP est unemarque registrée de Microsoft Corporation.

18
Points de connexion
Points de connexion
8
12
7
10
9
2
1
11
3
4
5
6
13
14
16
15
18
17
19
20

19
1 Connexion USB Connexion de la VM140 au port USB d’un ordinateur.
2 12VCC Connexion de l’alimentation. Connectez un adaptateur 12V non régulé pouvant
fournir un courant minimal de 300mA.
3 Entrées numériques
1, 2, 3, 4
4 Entrées numériques
5, 6, 7, 8
5 Sorties numériques
1, 2, 3, 4 Sorties à collecteur ouvert. Si les sorties sont activées, le courant passera dans
lestransistors du CI4 et une connexion s’établira entre GND et la sortie en
question. Il faut donc appliquer une tension externe à la charge (LED, relais …)
que vous désirez contrôler, raccordez laconnexion "CLAMP" avec le + de cette
alimentation externe. Tout ceci sert à protéger le "transistor array"
6 Sorties numériques
5, 6, 7, 8
7 Entrées analogiques
1, 2, 3, 4
Points de mesure avec lesquels il est possible de numériser et de lire une
tension analogique depuis un ordinateur. Les entrées analogiques reçoivent
une tension CC régulée entre 0 et 5V ou entre 0 et 10V. Faites la sélection
à l’aide des jumpers AD1 à AD8 (voir n° 13). Attention : Établir une tension
sur les entrées A/N supérieure à 5 ou 10V peut irrévocablement
endommager la VM140 (IC10/11) !
8 Entrées analogiques
5, 6, 7, 8
9 Sorties analogiques
1, 2, 3, 4 Détermination par la logiciel de la tension CC que vous désirez placer sur
ces sorties. Cette tension est ajustable entre 5 et 5V ou entre 0 et 10V
selon la position des jumpers DA1 à DA8. Vous trouverez également la
sortie MLI sur broche 2 de ce connecteur (SK9). La sortie MLI est une sortie
à collecteur ouvert avec une largeur d’impulsion ajustable.
10 Sorties analogiques
5, 6, 7, 8
11 Adressage des
jumpers de
sélection
Il est possible d’attribuer une adresse unique à chaque VM140 à l’aide des
jumpers A1, A2 et A3. Connectez jusqu’à 8 cartes. Positionnez l’adresse
sur "0" si vous ne possédez qu’une seule VM140.
12 Tension max. A/N Sélectionnez la plage de tension entre 0 à 5V (fermé) ou 0 à 10V (ouvert) à
l’aide des jumpers AD1-AD8.
13 Tenson max. N/A Sélectionnez la plage de tension max. pour les sorties N/A
correspondantes entre 0 et 5V (ouvert) ou 0 et 10V (fermé) à l’aide des
jumpers DA1-DA8.
14 LED MLI Cette LED s’allume si la sortie MLI est active. La luminosité de cette LED
est analogue au rapport impulsion/pause.
15 LED "run mode" de
l’unité centrale S’allume lors du bon fonctionnement de l’unité centrale de la VM140 (IC6).
16 LED RC/TX de
l’unité centrale
Cette LED s’allume lors de l’échange de données entre l’unité centrale et le
contrôleur d’interface USB (IC3). Si la LED ne s’allume pas lorsque la carte
fonctionne, décelez une erreur dans le contrôleur USB (IC3) ou dans la
séparation optique (IC1 & 2).
17 LED "POWER ON"
S’allume en cas de présence de l’alimentation 5V pour le contrôleur USB.
Attention : La VM140 est alimenté par le port USB de votre ordinateur, ce
qui ne garantit pas le bon fonctionnement de la section d’alimentation du
CPU et la section I/O de la VM140.
18 LED "USB" Clignote lors de la connexion USB et s’allume de manière régulière lors
d’une communication avec succès entre la puce USB dans votre ordinateur
et la VM140.
19 Indication entrée
numérique
Ces LEDs s’éteignent lorsqu’une entrée correspondante passé au niveau
bas (connexion de l’entrée à GND) par un contact externe ou une sortie à
collecteur ouvert externe.
20 Indication sortie
numérique
Ces LEDs s’allument lorsqu’une entrée correspondante est active, c.à.d.
lors d’une connexion entre une broche de sortie et GND (sortie à collecteur
ouvert).
Pour pouvoir les activer, les entrées doivent passer au niveau bas
(connecter à GND).
Points de connexion

20
Installation du logiciel
Après l’assemblage de la carte, il est maintenant temps d’installer les pilotes de logiciel et les
exemples et de tester la VM140
Connectez une alimentation 12V (adaptateur 12V non régulé) au connecteur d’alimentation de la
VM140 (SK2).
La LED de contrôle LD12 (RUN) ainsi que LD13 à LD20 (les dernières sont les LEDs de contrôle
des entrées et s’allument au cas où les entrées ne sont pas activement au niveau bas) doivent
impérativement s’allumer.
Le cas échéant, raccordez le câble USB fourni à l’ordinateur et établissez la connexion avec le
connecteur USB de la VM140.
LD10 (POWER) doit s’allumer.
Ensuite, LD9 (USB) nes’allumera ques’il y a une liaison de données entre l’ordinateur et la VM140.
Lors de la première connexion, il est impératif d’installer le pilote USB du microcontrôleur sur
l’ordinateur. L’emplacement de ce pilote se trouve sur le CD (fourni) dans le sous-répertoire
"USB_driver" du logiciel de la VM140.
Consultez les illustrations ci-dessous représentant le cours de l’installation du pilote :
Installation du logiciel
Étape 1: Détection de nouveau matériel.
Ne pas sélectionner de mise à jour
windows, enfoncez "No, not this time".
Étape 2: Sélectionnez "Install from a
specific location (Advanced)"
Les captures d’écran peuvent
varier selon le système
d’exploitation.
La VM140 est la version pré-assemblée de la K8061. Les logiciels de la
K8061 et de la VM140 sont identiques
Table of contents
Languages: