TODOPIC
FORO TÉCNICO => Foro Técnico => Mensaje iniciado por: jfmateos2 en 04 de Febrero de 2014, 09:02:43
-
Hola a todos,
Estaba pensando convertir un proyecto en wifi compatible.
En principio estudié el cc3000, pero no encuentro librerías para PIC, me preocupa cómo soldarlo, el diseño del PCB y el precio total sumando todos los componentes,...
de pronto me encuentro con esto HLK-RM04: http://dx.com/p/hi-link-hlk-rm04-serial-port-ethernet-wi-fi-adapter-module-blue-black-214540#.UvDTprSmWBU por unos 15€ en casa.
Me preguntaba si alguien tiene experiencia con este módulo o si podrían aconsejarme en un sentido u otro.
Gracias
-
¿Lo probaste, Juanfe?
-
Lo tengo en casa pero no lo he probado aún... aunque debe ser fácil porque justo hace un par de días estuve leyendo esto: http://rayshobby.net/?p=9592
Si te pones con él a lo mejor podemos colaborar porque es una de las cuestiones que tengo pendientes dentro de un proyecto mayor.
-
Pues ahora mismo no tengo que usarlo, pero en un proyecto reciente he implementado una conexión bluetooth por tratarse de una solución barata, pero de haber conocido esto probablemente le habría puesto wifi.
A ver si en la próxima versión del circuito convenzo al cliente y lo pruebo.
-
Si no es indiscrección, ¿qué usaste para el bluetooth?
Lo bueno que le velo al HLK es que además de cliente, puede actuar como hotspot.
-
Pues usé un modulito HC06, como este
(http://www.todavianose.com/wp-content/gallery/galeria/bluetooth-hc05-01.jpg)
Acabo de comprar un HLK-RM04 para tenerlo ahí e hincarle el diente cuando pueda.
-
Yo tengo uno similar, el HC-05, que además de cliente puede también ser maestro.
-
Hola.
Ese módulo se ve genial ... pero dice que están agotados ... :( :( :( ... esperemos a que hallan para comprarse uno y cacharrearlo.
Me apunto al hilo para aprender a usarlo.
Saludos
-
Hola.
Pues, buscando mejor los encontré y ya envié por uno de ellos para cacharrearlo ... según lo que muestran es muy fácil de usarlos y vienen por default como AP, que es lo que andaba buscando. Asi que, en cuanto llegue, será a divertirse con él :mrgreen: :mrgreen:
Saludos.
-
Hola! yo el que utilice fue el WixFi2x0, anduvo muy bien para lo que necesite. Fácil de soldar y en Github se pueden encontrar librerías para Arduino muy fácil de migrar a cualquier uC.
Saludos
-
Por 4.5 USD, tienes el ESP8266.
http://www.aliexpress.com/item/Free-shipping-ESP8266-serial-WIFI-wireless-module-wireless-transceiver/2031529724.html
(http://hackadaycom.files.wordpress.com/2014/09/esp.png?w=580)
Corresponding Interface:
SDIO 2.0, SPI, UART
32-pin QFN package
Integrated RF switch, balun, 24dBm PA, DCXO, and PMU
Integrated RISC processor, on-chip memory and external memory interfaces
Integrated MAC/baseband processors
Quality of Service management
I2S interface for high fidelity audio applications
On-chip low-dropout linear regulators for all internal supplies
Proprietary spurious-free clock generation architecture
Integrated WEP, TKIP, AES, and WAPI engines
Specification:
802.11 b/g/n
Wi-Fi Direct (P2P), soft-AP
Integrated TCP/IP protocol stack
Integrated TR switch, balun, LNA, power amplifier and matching network
Integrated PLLs, regulators, DCXO and power management units
+19.5dBm output power in 802.11b mode
Power down leakage current of <10uA
Integrated low power 32-bit CPU could be used as application processor
SDIO 1.1/2.0, SPI, UART
STBC, 1×1 MIMO, 2×1 MIMO
A-MPDU & A-MSDU aggregation & 0.4ms guard interval
Wake up and transmit packets in < 2ms
Standby power consumption of < 1.0mW (DTIM3)
-
:shock: :shock: :shock:
-
:o :o :o ... increible por ese precio!!
-
Guau. ((:-))
Ya era hora de que empiecen a aparecer productos de ese estilo. Con ese tipo de cosas es con lo que verdaderamente se pegará un salto en el iot. La pena es que parece un producto recién salido al mercado y todavía tendrán que afinarlo bastante (además de sacar la documentación en inglés)
-
Aquí un artículo comparando dos tecnologías: Bluetooth 4.0 vs WiFi Direct:
http://gtms1313.wordpress.com/2013/04/01/bluetooth4-0-vs-wi-fi-direct/
Saludos.
-
Me pedí un par de ESP8266 a los chinos, para dos unidades salen a 3.89 USD la unidad, y para 10 unidades a 3.30 USD. Una ganga, esto hay que probarlo.
El datasheet ya está traducido al inglés:
https://mega.co.nz/#!8ddCWTgK!T8I2feglSdOBG8nTpAcGgID2-w-jDHvRjYqFcVntLZ8 (https://mega.co.nz/#!8ddCWTgK!T8I2feglSdOBG8nTpAcGgID2-w-jDHvRjYqFcVntLZ8)
https://nurdspace.nl/ESP8266 (https://nurdspace.nl/ESP8266)
Comandos AT:
https://dl.dropboxusercontent.com/u/307560/ESP8266%20WIFIATCOMMANDS_English.pdf (https://dl.dropboxusercontent.com/u/307560/ESP8266%20WIFIATCOMMANDS_English.pdf)
Librería para Arduino:
https://github.com/bafeigum/ESP8266-Library (https://github.com/bafeigum/ESP8266-Library)
SDK:
http://www.seeedstudio.com/document/pdf/esp_iot_sdk_v0.6.zip (http://www.seeedstudio.com/document/pdf/esp_iot_sdk_v0.6.zip)
Foros Comunidad ESP8266:
http://www.esp8266.com/index.php (http://www.esp8266.com/index.php)
Código ejemplo con Arduino:
http://www.seeedstudio.com/wiki/WiFi_Serial_Transceiver_Module (http://www.seeedstudio.com/wiki/WiFi_Serial_Transceiver_Module)
-
Pues voy a probarlos también. Me pediré 5 unidades. ¿Alguien se apunta con otras 5 y compartimos portes?
-
Me llegaron los ESP8266 de los chinos, 4 unidades, todo perfecto, aproveché para añadir un par de cosillas más al pedido para amortizar los gastos de envío.
En cuanto tenga un rato empiezo a probarlos, parece sencillo, todo se gestiona con comandos AT. Intentaré conectar con mi modem-router y a ver si puedo acceder a una web, para capturar algún texto. Para las pruebas utilizaré un PIC32MX o el nuevo PIC32MZ que compré montado en una PIM.
Si funciona bien, tengo pensando incluirlo en mis nuevos diseños, en vez de bluetooth.
-
Muy interesante el tema.
Si los resultados son buenos, compraré un módulo para hacer pruebas.
Saludos.
-
Me llegaron los ESP8266 de los chinos, 4 unidades, todo perfecto, aproveché para añadir un par de cosillas más al pedido para amortizar los gastos de envío.
En cuanto tenga un rato empiezo a probarlos, parece sencillo, todo se gestiona con comandos AT. Intentaré conectar con mi modem-router y a ver si puedo acceder a una web, para capturar algún texto. Para las pruebas utilizaré un PIC32MX o el nuevo PIC32MZ que compré montado en una PIM.
Si funciona bien, tengo pensando incluirlo en mis nuevos diseños, en vez de bluetooth.
Solo de curioso, probarlos con un pic32 es por gusto o por que se necesita potencia de procesamiento?
Saludos!
-
Solo de curioso, probarlos con un pic32 es por gusto o por que se necesita potencia de procesamiento?
Saludos!
Puedes usar cualquier microcontrolador, incluso los de 8 bits o un Arduino, la comunicación es por SPI. Yo uso PIC32 porque es lo que tengo y lo que uso desde hace años. También tengo los ARM STM32, pero tengo muy poca experiencia, y tardaría más en programar cualquier cosa.
-
Hola jfmateos2, justo yo también estoy investigando el modulo HLK-RM04, en estos días lo pido, pero encuentro poca información de como transmitir strings con un pic 18f4550 en c de ccs.
si encaramos este modulo juntos podemos sacarnos las dudas y para todos. Gracias y espero continuidad en el tema. saludos
-
Pues bueno ... luego de un mes, ha llegado ... ahora toca sacar tiempo para leer un poco el datasheet y ponerlo a andar
(https://lh5.googleusercontent.com/-3LQsKt_pLYs/VDg3-XSQRwI/AAAAAAAAOEg/lw9dwR-amgw/w1026-h577-no/20141010_144722.jpg)
(https://lh5.googleusercontent.com/-UQKCg_t71pc/VDg89n8gpsI/AAAAAAAAOFk/i1qC25AtryU/w325-h577-no/20141010_150828.jpg)
Saludos
-
donde los pediste y cuanto fue el costo total MLO? , se ve genial
-
Hola
J, lo compre en dx por 16.16 US ... los otros que postearon estan mucho mas baratos ...
Funciona muy bien y a la primera ... unas fotitos ;-)
(https://lh5.googleusercontent.com/-wzy4LAGgxpM/VDhmVDoCZdI/AAAAAAAAOGQ/HAn8asVJ0Tw/w325-h577-no/20141010_180004.jpg)
Despues de haber configurado el modulo
(https://lh5.googleusercontent.com/-4QJ87GcyZQ4/VDhvJmcya9I/AAAAAAAAOHM/aCpqyQGMcyM/w923-h577-no/2014-10-10%2B18.43.30.png)
La pagina de configuracion del modulo, muy sencilla la interfaz pero eficiente:
(https://lh3.googleusercontent.com/--fNjWiV81ck/VDhpexnvVNI/AAAAAAAAOGs/MbTfh-gqEKY/w923-h577-no/2014-10-10-18-19-11.png)
Ahora si ... sacar algo de tiempo para el resto ...
Saludos
-
Por 4.5 USD, tienes el ESP8266.
http://www.aliexpress.com/item/Free-shipping-ESP8266-serial-WIFI-wireless-module-wireless-transceiver/2031529724.html
(http://hackadaycom.files.wordpress.com/2014/09/esp.png?w=580)
Corresponding Interface:
SDIO 2.0, SPI, UART
32-pin QFN package
Integrated RF switch, balun, 24dBm PA, DCXO, and PMU
Integrated RISC processor, on-chip memory and external memory interfaces
Integrated MAC/baseband processors
Quality of Service management
I2S interface for high fidelity audio applications
On-chip low-dropout linear regulators for all internal supplies
Proprietary spurious-free clock generation architecture
Integrated WEP, TKIP, AES, and WAPI engines
Specification:
802.11 b/g/n
Wi-Fi Direct (P2P), soft-AP
Integrated TCP/IP protocol stack
Integrated TR switch, balun, LNA, power amplifier and matching network
Integrated PLLs, regulators, DCXO and power management units
+19.5dBm output power in 802.11b mode
Power down leakage current of <10uA
Integrated low power 32-bit CPU could be used as application processor
SDIO 1.1/2.0, SPI, UART
STBC, 1×1 MIMO, 2×1 MIMO
A-MPDU & A-MSDU aggregation & 0.4ms guard interval
Wake up and transmit packets in < 2ms
Standby power consumption of < 1.0mW (DTIM3)
Wow! Gracias por toda la info planeta. Definitivamente me pediré algunos. Soy mas de pedir por Ebay, lo he visto tambien por ebay (aunque un poco más caro [6$]), pero fácil que me me animo por aliexpress también; será cuestión de probar.
Gracias de nuevo, saludos.
-
Wow! Gracias por toda la info planeta. Definitivamente me pediré algunos. Soy mas de pedir por Ebay, lo he visto tambien por ebay (aunque un poco más caro [6$]), pero fácil que me me animo por aliexpress también; será cuestión de probar.
Gracias de nuevo, saludos.
En Aliexpress, los compré a 3.89 USD para 2 unidades, y se quedan a 3.30 USD para 10 unidades, el formato de compra por Aliexpress es muy seguro, el vendedor no cobra hasta que el comprador recibe la mercancía y da el visto bueno.
Yo aún no he tenido tiempo de probarlos, a ver si entre todos conseguimos documentar su funcionamiento con PIC, y crear alguna librería, es una alternativa muy interesante a los módulos bluetooth.
Saludos
-
Yo también lo recibí, pero está guardado en un cajón en espera de un buen momento.
-
Yo aún no he tenido tiempo de probarlos, a ver si entre todos conseguimos documentar su funcionamiento con PIC, y crear alguna librería, es una alternativa muy interesante a los módulos bluetooth.
Esto lo dices porque tienen Wifi Direct verdad? Yo los prefiero para una comunicación TCP/IP.
-
Yo aún no he tenido tiempo de probarlos, a ver si entre todos conseguimos documentar su funcionamiento con PIC, y crear alguna librería, es una alternativa muy interesante a los módulos bluetooth.
Esto lo dices porque tienen Wifi Direct verdad? Yo los prefiero para una comunicación TCP/IP.
Pues no me había fijado en eso, pero resulta interesante disponer de las dos opciones, y sobre todo ver el alcance que tiene.
Me gustaría probarlo también para diseñar un sistema domótico que me ha planteado un amigo, aunque no se si para esa aplicación será mejor usar Zigbee, él ahora mismo hace instalaciones con un sistema propietario basado en Z-Wave, y me ha propuesto diseñar y fabricar nuestro propio producto.
PD: tengo tantos temas pendientes, que no se ni por donde empezar. Cada vez que veo por ahí algún chisme curioso, lo compro, pero como ando liado con otras cosas nunca encuentro el momento...
-
No te entiendo. Porque te parece entonces una buena alternativa a los módulos bluetooth?
-
No te entiendo. Porque te parece entonces una buena alternativa a los módulos bluetooth?
Se trata de probar un poco de todo, seguro que alguna aplicación le daré en cuanto tenga claro las ventajas frente a otras soluciones, por ejemplo el TCP/IP para conectar a internet a través del modem router inalámbrico, y si además puedo hacer un punto a punto con un móvil o un tablet, independientemente de TCP/IP, pues mejor. También quiero probar Zigbee.
Por ejemplo, frente a bluetooth, WIFI parece que permite conectar más nodos locales en red ( 32 vs 8 ), interesante para un sistema domótico, aunque parece que Zigbee permite muchos más.
-
Perfecto entonces.
-
Que tal buenas señores en el foro .. me uno a ustedes con el interés de diseñar utilizando comunicación wifi..... pero al parecer soy novato en esta parte de la electrónica..
tengo dos modulos Xbee Wifi al parecer los mas caros que existen :o :o :o ( ahora que veo el ESP8266 que es una ganga....)
bueno bueno.... con estos dos peueños y siguiendo las instrucciones del ejemplo de sparckfun que me ha ayudado muchisimo a entrar de cero con estos modulos --->Sparckfun dataloggin (https://learn.sparkfun.com/tutorials/internet-datalogging-with-arduino-and-xbee-wifi) he logrado hacer publicaciones en su servidor y de la manera en que ellos lo explican.... pero he aqui donde todo se ha quedado pausado.... soy novato en esto y requiero de un poco de orientación ..... Mi idea es implementar este tipo de loger pero en un servidor que rentare es un proyecto de final de semestre y el tiempo parece que vuela no he logrado avanzar aun... alguno de ustedes me podria ayudar / orientar como lograr desplegar información en la web... o que es lo que necesito para poder ver un hola mundo en una pagina.......
Por toda su atención :) :) gracias.!
-
bueno bueno.... con estos dos peueños y siguiendo las instrucciones del ejemplo de sparckfun que me ha ayudado muchisimo a entrar de cero con estos modulos --->Sparckfun dataloggin (https://learn.sparkfun.com/tutorials/internet-datalogging-with-arduino-and-xbee-wifi) he logrado hacer publicaciones en su servidor y de la manera en que ellos lo explican.... pero he aqui donde todo se ha quedado pausado.... soy novato en esto y requiero de un poco de orientación ..... Mi idea es implementar este tipo de loger pero en un servidor que rentare es un proyecto de final de semestre y el tiempo parece que vuela no he logrado avanzar aun... alguno de ustedes me podria ayudar / orientar como lograr desplegar información en la web... o que es lo que necesito para poder ver un hola mundo en una pagina.......
No tiene mayor misterio, los datos a almacenar más una clave para evitar que cualquier pueda entrar, se pasan como parámetros en la URL, por ejemplo:
http://www.tuweb_laquesea.com.com/programa.php?private_key=dqRzD2KxzMUwqN250zzG&fecha=0.83&hora=1.52&humedad=5.81&temperatura=10.11
En este ejemplo, se pasan como parámetros una clave privada (private_key), y cuatro campos de datos (fecha, hora, humedad y temperatura)
Ahora tendrás que montar en tu web un programa en un lenguaje que se ejecute en el server, yo por ejemplo trabajo con PHP, capturas esos parámetros y los metes en una base de datos MySql, y los consultas cuando quieras con otro programa en PHP que lea esa base de datos y te los muestre en pantalla formateados a tu gusto. Otra forma sería usando un formulario HTML, pero el programa tiene que ser igualmente ejecutable en el server para capturar los datos y guardarlos en una BD.
-
Gracias por la pronta respuesta..... entonces a estudiar PHP o HTLM que me recomiendas soy nuevo en ambos .... me has dado un buen inicio por donde empezar a buscarle ya que no tenia ni la minima idea de por donde empezar ... gracias Planeta 9999
-
Necesitarás ambos, porque PHP para formatear y mostrar datos utiliza HTML.
Te pongo un ejemplo en PHP que podría capturar esos datos que he puesto antes de ejemplo, y guardarlos en una base de datos MySql. En este código guardo también la IP del usuario. Tendrías que cambiar en este fuente lo referente al nombre, usuario, contraseña y nombres de campos de tu base de datos. Para mayor seguridad, podrías incluso añadir en el IF que comprueba la clave, que compruebe también la IP, para dejar que solo se puedan meter datos desde una IP concreta. Para visualizar los datos, tendrías que hacer otro programa en PHP, que lea la base de datos, formatee y visualice esos datos, es muy sencillo.
<?
/***************************************************/
/*--- Guarda datos recibidos en base de datos MySQL -------- */
/***************************************************/
$ip_usuario = $_SERVER['REMOTE_ADDR']; // capturo IP de usuario
/*-- abro conexion mysql -- */
$con = mysql_connect("localhost","usuario","clave");
if (!$con)
{
die();
}
/*-- selecciono base datos --*/
$base_datos = mysql_select_db("mi_base_de_datos", $con);
if (!$base_datos)
{
mysql_close($con);
die();
}
/*-- añado registro a BD si clave es correcta--*/
if ($private_key == "dqRzD2KxzMUwqN250zzG") {
$sql = "INSERT INTO datos (ip, fecha, hora, temperatura, humedad) VALUES ('$ip_usuario', '$fecha', '$hora', '$temperatura', '$humedad')";
if (!mysql_query($sql,$con))
{
mysql_close($con);
die();
}
}
/*-- cierro BD -- */
mysql_close($con);
?>
-
Muchas gracias de nuevo Planeta9999 me ha servido de mucha ayuda lo que has posteado.. ya que no tenia idea de por donde continuar... :( :(
ya estoy haciendo pequeños programas en php con sockets para capturar la información proveniente de mi modulo..
Gracias por la ayuda..! :) :)
-
Hola a todos , estoy retomando este post , porque me estoy volviendo loco con un esp8266 .
Tengo un php escrito en el server que funciona muy bien ...lo ejecuto de la forma http://www.host.com.ar/subfolder/programa.php?variable=1&variable=2
Hasta aca todo perfecto ...eso me retorna un echo con un resultado
El tema es el siguiente
configuro el esp 8266como cliente y me conecto a la red ...desp le envio el AT+CIPSTART =0,"TCP","host.com.ar",80
despues
AT+CIPSEND=0,40
despues
envio /subfolder/programa.php?variable=1&variable=2
me devuelve error ...he tratado de mil maneras diferentes de enviar los datos y siempre lo mismo ...
con POST , con GET y nada siempre igual ...
no me doy cuenta que estoy haciendo mal
Gracias a todos por su ayuda
saludos
Necesitarás ambos, porque PHP para formatear y mostrar datos utiliza HTML.
Te pongo un ejemplo en PHP que podría capturar esos datos que he puesto antes de ejemplo, y guardarlos en una base de datos MySql. En este código guardo también la IP del usuario. Tendrías que cambiar en este fuente lo referente al nombre, usuario, contraseña y nombres de campos de tu base de datos. Para mayor seguridad, podrías incluso añadir en el IF que comprueba la clave, que compruebe también la IP, para dejar que solo se puedan meter datos desde una IP concreta. Para visualizar los datos, tendrías que hacer otro programa en PHP, que lea la base de datos, formatee y visualice esos datos, es muy sencillo.
<?
/***************************************************/
/*--- Guarda datos recibidos en base de datos MySQL -------- */
/***************************************************/
$ip_usuario = $_SERVER['REMOTE_ADDR']; // capturo IP de usuario
/*-- abro conexion mysql -- */
$con = mysql_connect("localhost","usuario","clave");
if (!$con)
{
die();
}
/*-- selecciono base datos --*/
$base_datos = mysql_select_db("mi_base_de_datos", $con);
if (!$base_datos)
{
mysql_close($con);
die();
}
/*-- añado registro a BD si clave es correcta--*/
if ($private_key == "dqRzD2KxzMUwqN250zzG") {
$sql = "INSERT INTO datos (ip, fecha, hora, temperatura, humedad) VALUES ('$ip_usuario', '$fecha', '$hora', '$temperatura', '$humedad')";
if (!mysql_query($sql,$con))
{
mysql_close($con);
die();
}
}
/*-- cierro BD -- */
mysql_close($con);
?>
-
.
Depende de que versión de PHP instale tu servidor y como estén configuradas las variables de sistema, puedes recuperar los parámetros con $_GET o con $HTTP_GET_VARS, hasta PHP 5.2.
Por ejemplo, para recuperar una variable que hayas pasado con el nombre "fecha", sería $fecha = $_GET["fecha"], eso para un PHP 5.2 con definición de variables cortas. Si es una versión más moderna de PHP, creo que ese tipo de variables ya no funciona (register_globals) por motivos de seguridad, para evitar que se pueda inyectar código malicioso.
-
Muchas Gracias por tu repuesta planeta9999 , pero no es a lo que me refiero , quizas no entiendo bien como funciona el esp8266, y por ewso no puedo enviar el url a la pagina ....he intentado con otras paginas por ejemplo que tengan solo un idex.html y sigo con el problema , despues del AT+CIPSEND ...es como que si no envio nada se queda ahi cuando ejecuto nuevamente el send me devuelve el error , pero claro ya lo envie mal ...no entiendo bien como es el procedimiento del envio ...
Gracias
.
Depende de que versión de PHP instale tu servidor y como estén configuradas las variables de sistema, puedes recuperar los parámetros con $_GET o con $HTTP_GET_VARS, hasta PHP 5.2.
Por ejemplo, para recuperar una variable que hayas pasado con el nombre "fecha", sería $fecha = $_GET["fecha"], eso para un PHP 5.2 con definición de variables cortas. Si es una versión más moderna de PHP, creo que ese tipo de variables ya no funciona (register_globals) por motivos de seguridad, para evitar que se pueda inyectar código malicioso.