]> cvs.zerfleddert.de Git - proxmark3-svn/blobdiff - client/uart.c
ADD: 'LF VISA2000' added one checksum test when demod / clone / sim
[proxmark3-svn] / client / uart.c
index 4b2fee994f533d0044c729f36ce01690c113a8aa..5870ebaeeade8b3503d6735620d2e85ef6b26e4d 100644 (file)
@@ -119,7 +119,12 @@ void uart_close(const serial_port sp) {
   fl.l_start  = 0;
   fl.l_len    = 0;
   fl.l_pid    = getpid();
-  fcntl(spu->fd, F_SETLK, &fl);
+
+  // Does the system allows us to place a lock on this file descriptor
+  int err = fcntl(spu->fd, F_SETLK, &fl);
+  if ( err == -1) {
+     //perror("fcntl");
+  }  
   close(spu->fd);
   free(sp);
 }
@@ -369,10 +374,10 @@ serial_port uart_open(const char* pcPortName) {
   // Prepare the device control
   memset(&sp->dcb, 0, sizeof(DCB));
   sp->dcb.DCBlength = sizeof(DCB);
-  if(!BuildCommDCBA("baud=9600 data=8 parity=N stop=1",&sp->dcb)) {
-    uart_close(sp);
-    return INVALID_SERIAL_PORT;
-  }
+  if(!BuildCommDCBA("baud=115200 parity=N data=8 stop=1",&sp->dcb)) {
+               uart_close(sp);
+               return INVALID_SERIAL_PORT;
+       }
   
   // Update the active serial port
   if(!SetCommState(sp->hPort,&sp->dcb)) {
@@ -380,10 +385,10 @@ serial_port uart_open(const char* pcPortName) {
     return INVALID_SERIAL_PORT;
   }
   
-  sp->ct.ReadIntervalTimeout         = 0;
-  sp->ct.ReadTotalTimeoutMultiplier  = 0;
+  sp->ct.ReadIntervalTimeout         = 1;
+  sp->ct.ReadTotalTimeoutMultiplier  = 1;
   sp->ct.ReadTotalTimeoutConstant    = 30;
-  sp->ct.WriteTotalTimeoutMultiplier = 0;
+  sp->ct.WriteTotalTimeoutMultiplier = 1;
   sp->ct.WriteTotalTimeoutConstant   = 30;
   
   if(!SetCommTimeouts(sp->hPort,&sp->ct)) {
Impressum, Datenschutz