Transferencia de archivo entre arduino y servidor usando ethernet shield

Saludos a todos.

Quiero usar la ethernet shield de arduino + SD card para transmitir archivos ".txt" a un servidor, para ser almacenado ahi. USare el Ubuntu server. Al ser generado el archivo en el arduino corra una rutina para mandar los arvhivos al hdd del servidor y que ahi esten disponibles para su uso en una pagina web.

Pero no se si es posible transferir archivos con la ethernet? y de ser posible me podrían brindar la ayuda para guiarme en el camino. Con algún código o link para aprender mas al respecto??

Lo mas simple es que hagas un sencillo código php que reciba parámetros: www.tuserver.com/script.php?datos=hola mundo&archivo=a.txt&checksum=22

y en php usas file_put_contents, $_GET['datos'], $_GET['archivo'], etc. Procurando que el nombre de archivo no contenga / ' " y otros caracteres para evitar problemas futuros. El checksum que añadí es simplemente algún numero, por ejemplo largo de los datos +1*2 (para evitar que robots de buscadores dejen basura a futuro)

Entonces tu arduino solo "abre" esa página.

... El checksum que añadí es simplemente algún numero, por ejemplo largo de los datos +1*2 (para evitar que robots de buscadores dejen basura a futuro)

No entiendo esta parte, ¿es para que no te indexen los buscadores?

flico:

... El checksum que añadí es simplemente algún numero, por ejemplo largo de los datos +1*2 (para evitar que robots de buscadores dejen basura a futuro)

No entiendo esta parte, ¿es para que no te indexen los buscadores?

Es un simple checksum. En mi sitio tenía un sistema de votaciones hace muchos años del tipo votar.php?voto=4 y me di cuenta que a veces los robots de buscadores (de alguna forma u otra) a veces le aciertan a algo válido, un checksum es como el último dígito de tu identificación de ciudadano. Es opcional.

Gracias eried por la ayuda.

Entiendo lo que me dices, peros tienes alguna idea de como acceder al directorio donde el arduino a guardado los archivos ".txt" ?? Tienes algun codigo de ejemplo?

¿Te refieres a la parte de php?

La forma más sencilla es un archivo recibir.php:

<?php file_put_contents($_GET['archivo'], $_GET['datos']) ?>

Y con el shield eternet abres:

tuservidor/recibir.php?archivo=hola.txt&datos=hola mundo

Esto necesita trabajo por si miras alguien malicioso podría dañar otros archivos con archivo=…/mispasswords.txt por ejemplo, pero el archivo creado sería hola.txt

Pero, dentro del código en C que debo cargar en el arduino, como especifico la locación del archivo?

rodezn:
Pero, dentro del código en C que debo cargar en el arduino, como especifico la locación del archivo?

tuservidor/recibir.php?archivo=hola.txt&datos=hola mundo ← hola.txt ?

A muchas gracias. Lo probare y te cuento los resultados eh.