Download the free trial version
Basic4android Video
Features
Tutorials and manuals
Showcase
Screenshots

Go Back   Android Development Forum - Basic4android > Foreign Languages > Spanish Forum
Documentation Wiki Register Members List B4P Search Today's Posts Mark Forums Read

Problema empezando a programar envio/recepcion TCP/IP Socket

Reply
 
LinkBack Thread Tools Display Modes
  #1 (permalink)  
Old 01-26-2012, 03:06 PM
Knows the basics
 
Join Date: Jul 2011
Posts: 89
Default Problema empezando a programar envio/recepcion TCP/IP Socket

Hola compañeros, pues vereis en mi segunda aplicacion que estoy haciendo pretendo controlar desde un Galaxy Note una tarjeta de control TCP/IP, por si alguno tuviera curiosidad es esta concretamente.

Denkovi Assembly Electronics ltd: Wi-Fi IEEE 802.11 b/g Data Acquisition I/O Module

Bueno, el caso es que usando Astream, si he logrado enviarle Sockets para que active los reles, aunque he de decir que no siempre responde rapido, y se que no es un tema de la tarjeta.

Mi dilema es que esta tarjeta cada vez que le envio un Socket, ella responde con el estado, algo asi como un ACK.

Ejemplo:

Set all relays (Whole PortA) ON. Actually all the DO are in high level.
Send: 00ASG=FFFF;
Receive: 00AS0=0;

Si alguien fuera tan amable de indicarme donde encontrar un ejemplo claro donde se vea como enviar/recibir estos datos. Ademas esta tarjeta tiene la posibilidad de usar RC4 como metodo de encriptacio, a ver si alguien me dice si es posible usarlo en b4a.

Un saludo y mil gracias por adelantado.

Last edited by psdos : 01-26-2012 at 10:56 PM.
Reply With Quote
  #2 (permalink)  
Old 01-26-2012, 10:40 PM
Knows the basics
 
Join Date: Jul 2011
Posts: 89
Default

Aqui teneis la solucion al problema que habia planteado, por si alguien mas se anima ha hacer algo con Sockets.

http://www.basic4ppc.com/forum/basic...html#post81658

Por cierto, sigo necesitando ayuda con la encriptacion RC4 para el envio/recepcion de estos sockets, ya que esta placa admite esa codificacion.

Se agradeceria cualquier aporte señores.


Un saludo.
Reply With Quote
  #3 (permalink)  
Old 01-26-2012, 10:54 PM
Knows the basics
 
Join Date: Jul 2011
Posts: 89
Default

He encontrado el codigo para usar RC4 en VB.NET, si algun usuario con mucha experiencia fuera tan amable de indicarme los ajustes y cambios para pasarlo a B4A, le estaria eternamente agradecido.

Code:
Imports System.Text



Public Shared Function rc4(ByVal message 
As String, ByVal password As StringAs String

        
Dim i As Integer = 0
        
Dim j As Integer = 0
        
Dim cipher As New StringBuilder
        
Dim returnCipher As String = String.Empty

        
Dim sbox As Integer() = New Integer(256) {}
        
Dim key As Integer() = New Integer(256) {}

        
Dim intLength As Integer = password.Length

        
Dim a As Integer = 0
        
While a <= 255

            
Dim ctmp As Char = (password.Substring((a Mod intLength), 1).ToCharArray()(0))

            key(a) = Microsoft.VisualBasic.Strings.Asc(ctmp)
            sbox(a) = a
            System.Math.Max(System.Threading.Interlocked.Increment(a), a - 
1)
        
End While

        
Dim x As Integer = 0

        
Dim b As Integer = 0
        
While b <= 255
            x = (x + sbox(b) + key(b)) 
Mod 256
            
Dim tempSwap As Integer = sbox(b)
            sbox(b) = sbox(x)
            sbox(x) = tempSwap
            System.Math.Max(System.Threading.Interlocked.Increment(b), b - 
1)
        
End While

        a = 
1

        
While a <= message.Length

            
Dim itmp As Integer = 0

            i = (i + 
1Mod 256
            j = (j + sbox(i)) 
Mod 256
            itmp = sbox(i)
            sbox(i) = sbox(j)
            sbox(j) = itmp

            
Dim k As Integer = sbox((sbox(i) + sbox(j)) Mod 256)

            
Dim ctmp As Char = message.Substring(a - 11).ToCharArray()(0)

            itmp = 
Asc(ctmp)

            
Dim cipherby As Integer = itmp Xor k

            
cipher.Append(Chr(cipherby))
            System.Math.Max(System.Threading.Interlocked.Increment(a), a - 
1)
        
End While

        returnCipher = 
cipher.ToString
        
cipher.Length = 0

        
Return returnCipher

    
End Function







How 
to use source:

rc4(
"Text","password")

Last edited by psdos : 01-27-2012 at 07:48 AM.
Reply With Quote
  #4 (permalink)  
Old 01-27-2012, 09:54 AM
JorgeMC's Avatar
Knows the basics
 
Join Date: Nov 2011
Location: Madrid (ESPAÑA)
Posts: 56
Default

Me alegra que lo encontraras. Tengo ganas yo de trastear con estos cacharros
__________________
Mi blog: www.historiasdeuncazique.com
Reply With Quote
  #5 (permalink)  
Old 01-27-2012, 10:04 AM
Knows the basics
 
Join Date: Jul 2011
Posts: 89
Default

La verdad es que poder controlar algo a distancia, desde la otra parte del mundo si hace falta, cuando poco, mola jeje. Ahora JorgeMC me gustaria sacarle el maximo partido, a ver si esa rutina de uso de RC4 en VB.NET la podemos pasar a B4A, ya que esta placa controladora da esa opcion tambien, pero al parecer la libreria que hay de encriptacion no soporta RC4.

Un saludo.

Last edited by psdos : 01-27-2012 at 10:13 AM.
Reply With Quote
  #6 (permalink)  
Old 01-27-2012, 09:33 PM
Newbie
 
Join Date: Dec 2011
Posts: 6
Default

Quote:
Originally Posted by psdos View Post
...tarjeta de control TCP/IP, por si alguno tuviera curiosidad es esta concretamente.
Denkovi Assembly Electronics ltd: Wi-Fi IEEE 802.11 b/g Data Acquisition I/O Module
Interesante
Yo estoy buscando algo similar, pero para el standard X10, así no hace falta llenar la casa de cables para controlar cosas.
Si alguien sabe de algún modulo que pueda recibir y enviar los comandos X10 que recibe por tcp/ip, le agradecería la info sobre donde comprarlo (que envíen a España)
Reply With Quote
  #7 (permalink)  
Old 01-28-2012, 07:01 PM
Knows the basics
 
Join Date: Jul 2011
Posts: 89
Default

Caronte, lo que tu andas buscando es un control domotico de una vivienda. Hay varias marcas que trabajan con estas cosas, el problema es que usan softwares propios, y nada baratos dicho sea de paso.

Te paso algunas de las webs que yo recopile en su dia y comentarte que en el mundo de la domotica la marca KNX es una de las mejores, miratela.

MANDO 8 EN 1 CON CONTROL X10
iDôm, nueva aplicación de domótica para el iPad-freeDom Ingenieria Domotica y Telecomunicaciones
DomoPrac - Domotica practica paso a paso
CASADOMO | El Portal del Hogar y Edificio Digital
Domótica - Domotica365.com
Control Systems for Home Automation, Campus & Building Control by Crestron Electronics
Quality Recorders -* Shipped overnight!* Free Trial!
8-Channel Web Enabled DIN Relay from $119!* Ships now, free trial.

Un saludo.
Reply With Quote
  #8 (permalink)  
Old 01-29-2012, 01:49 AM
Knows the basics
 
Join Date: Jul 2011
Posts: 89
Default

Problema resulto, aqui posteo el código para usar codificacion RC4 pasado de VB.NET a B4A.

Code:

Sub rc4(message As String, password As StringAs String

       
Dim i As Int
        i = 
0
        
Dim j As Int
        j = 
0
        
Dim cipher As StringBuilder
        
cipher.Initialize
        
Dim returnCipher As String
        returnCipher = 
""
        
        
Dim sbox(256As Int
        
Dim key(256As Int

        
Dim intLength As Int
        intLength = password.Length

        
Dim a As Int
        a = 
0
        
Do While a <= 255

            
Dim ctmp As Char
            ctmp = password.SubString(a 
Mod intLength)
            key(a) = 
Asc(ctmp)
            sbox(a) = a
            a = a + 
1
        
Loop

        
Dim x As Int
        x = 
0

        
Dim b As Int
        b = 
0
        
Do While b <= 255
            x = (x + sbox(b) + key(b)) 
Mod 256
            
Dim tempSwap As Int
            tempSwap = sbox(b)
            sbox(b) = sbox(x)
            sbox(x) = tempSwap
            b = b + 
1
           
Loop

        a = 
1

        
Do While a <= message.Length

            
Dim itmp As Int
            itmp = 
0

            i = (i + 
1Mod 256
            j = (j + sbox(i)) 
Mod 256
            itmp = sbox(i)
            sbox(i) = sbox(j)
            sbox(j) = itmp

            
Dim k As Int
            k = sbox((sbox(i) + sbox(j)) 
Mod 256)

            
Dim ctmp As Char
            ctmp = message.Substring(a - 
1)

            itmp = 
Asc(ctmp)

            
Dim cipherby As Int
            cipherby = 
Bit.Xor(itmp, k)

            
cipher.Append(Chr(cipherby))
            a = a + 
1
        
Loop

        returnCipher = 
cipher.ToString
       
        
Return returnCipher

    
End Sub

Un saludo y que lo disfruteis quienes lo usen.
Reply With Quote
  #9 (permalink)  
Old 01-29-2012, 05:16 PM
Newbie
 
Join Date: Dec 2011
Posts: 6
Default

Muchas gracias por los links.
Igual no me he explicado bien... Sé lo que es la domótica, el problema no es ese, ni tampoco que el soft para el usuario final sea caro, porque el soft no lo pienso usar, sino que lo pretendo programar yo (je, je, de eso va este foro ¿no?), el problema es encontrar un emisor/receptor de señales X10 que acepte ordenes a través de tcp/ip (no por USB/etc…) porque lo que pretendo es conectar el módulo directamente a un router para no tener el ordenador siempre en marcha, ya que no me sirven las macros preprogramadas, porque mi soft estará en el móvil y necesito acceso en tiempo real en cualquier momento y lugar.

Pues eso, voy a echar un vistazo a esos links, que alguno no lo conocía, a ver si hay suerte.

Thanks again
Reply With Quote
  #10 (permalink)  
Old 01-29-2012, 11:24 PM
Knows the basics
 
Join Date: Jul 2011
Posts: 89
Default

Te he entendido perfectamente Caronte, lo que si te digo es una cosa, X10 esta ya muy desfasada. Intenta buscar otra alternativa, por ejemplo equipos que usen tecnologia PCL.

Aqui te dejo un link donde te explican brevemente las diferencias que hay entre los 3 mas extendidos, entre los que esta el X10 que tu quieres usar.

Diferencias entre sistemas de domótica KNX, X10 y PLC

Un saludo.
Reply With Quote
Reply


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are Off
Refbacks are On

Similar Threads
Thread Thread Starter Forum Replies Last Post
Problema SQLlite manu Spanish Forum 2 08-22-2011 11:46 AM
Duda sobre el envio de Mail samperizal Spanish Forum 0 08-05-2011 06:50 PM
Ayuda problema al compilar miguelrprey Spanish Forum 1 04-22-2009 05:48 PM
Problema con openDB sul device corrado Italian Forum 2 02-26-2009 12:30 PM
Problema con la registrazione di basic4ppc henry1311 Italian Forum 4 11-15-2008 11:12 AM


All times are GMT. The time now is 01:18 PM.


Powered by vBulletin® Version 3.6.12
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.3.0