Bluetooth serial port incoming or outgoing?

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

  • Maxxi
  • Registratie: Mei 2004
  • Laatst online: 19-04 19:18
Situatie:
Op mijn werk wordt software geschreven om een bluetooth apparaat aan te spreken.
Als men geen drivers installeert voor de bluetoothdongel dan worden die van Microsoft gebruikt.
Deze driver maakt voor ons apparaat een incoming en een outgoing seriele poort aan.

We hebben nu een COM1 (input) en een COM2 (output).

Nu zijn we alleen geïnteresseerd in de outgoing.
Ik had ontdekt dat de output alleen "Clear to Send" true heeft (logisch).

Is er ergens in Windows terug te vinden dat deze poort werkelijk outgoing is? Mijn collega is van mening dat "Clear to Send" geen waterdichte methode is.

Nu werk ik met C# i.c.m WMI:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
ManagementObjectSearcher searcher = new ManagementObjectSearcher("Select * from Win32_PnpEntity");
    foreach (ManagementObject devices in searcher.Get())
    {
        string name = devices.GetPropertyValue("Name").ToString();
        if (name.Contains("(COM"))
        {
            string comportNr = Regex.Match(name, "COM[0-9]{1,3}").ToString();
            try
            {
                SerialPort port = new SerialPort(comportNr);
                port.Open();
                if (port.CtsHolding) // IS DE POORT Clear to Send
                {


Verder heb ik nog handmatig in de eigenschappen van de COM-poorten lopen zoeken (Device Manager). Maar daar is eigenlijk niks te vinden.

Heeft iemand nog een beter idee?

[ Voor 12% gewijzigd door Maxxi op 03-06-2009 10:06 ]


Acties:
  • 0 Henk 'm!

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Psst; code tags ;)

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Acties:
  • 0 Henk 'm!

  • Hydra
  • Registratie: September 2000
  • Laatst online: 21-08 17:09
Klopt dat verhaal van aparte incoming en outgoing compoorten wel? Vroegah kon je nl. via een compoort prima beiden doen :)

https://niels.nu


Acties:
  • 0 Henk 'm!

  • Maxxi
  • Registratie: Mei 2004
  • Laatst online: 19-04 19:18
Inderaad kan het wel, maar de standaard Bluetooth driver van Microsoft maakt twee poorten aan.
Misschien voor asynchrone data transfers.

Acties:
  • 0 Henk 'm!

  • Maxxi
  • Registratie: Mei 2004
  • Laatst online: 19-04 19:18
Ik heb nog iets ondekt:
De DeviceID's van beide poorten:
code:
1
2
BTHENUM\{00001101-0000-1000-8000-00805F9B34FB}\7&8BF8BE7&0&000000000000_00000000
BTHENUM\{00001101-0000-1000-8000-00805F9B34FB}\7&8BF8BE7&0&0024AB000C46_C00000000


Wat opvalt is dat laatste waarde van het DeviceID bij de incoming port altijd 000000000000 is.

Nu heb ik dat in C# zo gefixt, de echte applicatie maakt geen gebruik van .NET en is volledig C++.

Is er een makkelijke manier om deze waarden uit te lezen? Overal waar ik Google wordt gesproken over .NET libs.

Acties:
  • 0 Henk 'm!

  • Maxxi
  • Registratie: Mei 2004
  • Laatst online: 19-04 19:18
Schopje :)

Acties:
  • 0 Henk 'm!

  • Jaap-Jan
  • Registratie: Februari 2001
  • Laatst online: 16:56
Het verschil tussen incoming en outgoing is welk apparaat de verbinding initialiseert. Bij incoming is het het andere apparaat wat de verbinding initialiseert en bij outgoing is het de computer die de verbinding tot stand brengt. Beide typen poorten zijn gewoon bi-directioneel.

Voor mijn Holux GPSlim 236 moet ik gewoon een 'Outgoing port' instellen, omdat mijn telefoon verbinding maakt met het GPS device. Andersom is het natuurlijk wel mijn GPS device wat coordinaten naar mijn telefoon stuurt, maar dat gaat gewoon over die 'outgoing' verbinding.

Je hebt dus in principe geen twee com- poorten nodig. :)

[ Voor 4% gewijzigd door Jaap-Jan op 04-06-2009 14:40 ]

| Last.fm | "Mr Bent liked counting. You could trust numbers, except perhaps for pi, but he was working on that in his spare time and it was bound to give in sooner or later." -Terry Pratchett


Acties:
  • 0 Henk 'm!

  • Maxxi
  • Registratie: Mei 2004
  • Laatst online: 19-04 19:18
@Jaap

Duidelijk verhaal.
Maar als je goed leest is dat ook niet de vraag.

Er worden standaard door Windows 2 poorten aangemaakt.
In de applicatie wordt alleen de outgoing gebruikt. Maar om deze automatisch te selecteren zoek ik een selectie methode.

In de eigenschappen van de poorten is namelijk niks terug te vinden. Zelf dacht ik aan flow control, maar ook dit staat standaard uit.

Acties:
  • 0 Henk 'm!

  • alienfruit
  • Registratie: Maart 2003
  • Laatst online: 01:32

alienfruit

the alien you never expected

Kan je het niet vinden in de SDP van de bluetooth device?

Acties:
  • 0 Henk 'm!

  • farlane
  • Registratie: Maart 2000
  • Laatst online: 17:02
Proberen op beide een verbinding te maken, dat zal waarschijnlijk op maar 1 lukken

Somniferous whisperings of scarlet fields. Sleep calling me and in my dreams i wander. My reality is abandoned (I traverse afar). Not a care if I never everwake.

Pagina: 1