Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - arcross88

#1
Antes que nada, perdon si estoy en la sección incorrecta. Mi objetivo es lograr que un sketch de Arduino ejecute un script php en un servidor y lea lo que este devuelve.
La idea es que el sketch mande un post con el estado de un led al servidor y que un script php lo reciba, actualice la base de datos segun el valor recibido y mande el valor de otro campo de la misma tabla.
La tabla con la que se interactua (nombrada control) tiene estos campos y entrada:




devicestatusaction
led100

El campo que se va a sobreescribir el status, mientras que el que se va a leer y devolver al arduino es action.

El script php (hardware.php) es:

require_once("connect.php");

$dev = $_POST['device'];
$value = $_POST['value'];

if ($value == "255") {
   $value = 255;
}
if ($value == "0") {
   $value = 0;
}

$db = "dbname";
mysqli_select_db($connection, $db);

$write = "UPDATE control SET status = $value WHERE device='$dev'";
$reswrite = mysqli_query($connection, $write);

$query = "SELECT * FROM control";
$result = mysqli_query($connection, $query);

while ($row = mysqli_fetch_assoc($result)) {
if($row['action'] == 0){
   echo 'a';
}
if($row['action'] == 255){
   echo 'b';
}
}

?>

El archivo incluido connect.php tiene la informacion de conexion a la base de datos y funciona correctamente.

El sketch de arduino es un ejemplo modificado:


#include <Ethernet.h>

int led1 = 8;

// assign a MAC address for the ethernet controller.
// fill in your address here:
byte mac[] = {
 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED
};
// fill in an available IP address on your network here,
// for manual configuration:
//IPAddress ip(192, 168, 1, 177);

// fill in your Domain Name Server address here:
//IPAddress myDns(1, 1, 1, 1);

// initialize the library instance:
EthernetClient client;

char server[] = "SERVERNAME";
//IPAddress server(64,131,82,241);

unsigned long lastConnectionTime = 0;             // last time you connected to the server, in milliseconds
const unsigned long postingInterval = 1000L; // delay between updates, in milliseconds
// the "L" is needed to use long type numbers

void setup() {
 // give the ethernet module time to boot up:
 delay(1000);
 // start the Ethernet connection using a fixed IP address and DNS server:
 Ethernet.begin(mac);

 pinMode(led1, OUTPUT);
 digitalWrite(led1, HIGH);
 delay(1000);
 digitalWrite(led1, LOW);
 delay(1000);
}

void loop() {
 // if there's incoming data from the net connection.
 // send it out the serial port.  This is for debugging
 // purposes only:
 if (client.available()) {
   char c = client.read();
   if(c == 'a'){
     digitalWrite(led1, LOW);
   }
   if(c == 'b'){
     digitalWrite(led1, HIGH);
   }
 }

 // if ten seconds have passed since your last connection,
 // then connect again and send data:
 if (millis() - lastConnectionTime > postingInterval) {
   httpRequest();
 }

}

// this method makes a HTTP connection to the server:
void httpRequest() {
 // close any connection before send a new request.
 // This will free the socket on the WiFi shield
 client.stop();

 String stat;
 if(digitalRead(led1) == HIGH){
   stat+="";
   stat+="255";
 }
 if(digitalRead(led1) == LOW){
   stat+="";
   stat+="0";
 }
 String data;
 data+="";
 data+="device=led1&value=" + stat;

 // if there's a successful connection:
 if (client.connect(server, 80)) {
   // send the HTTP PUT request:
   client.println("POST /php/hardware.php HTTP/1.1");
   client.println("Host: HERE-WAS-THE-SERVERNAME");
   client.println("Content-Type: application/x-www-form-urlencoded");
   client.println("Connection: close");
   client.print("Content-Length: ");
   client.println(data.length());
   client.println();
   client.print(data);
   client.println();

   // note the time that the connection was made:
   lastConnectionTime = millis();
 } else {
   // if you couldn't make a connection:
 }
}


No logre que esto funcione y no pude identificar el error. Si pudiesen ayudarme o darme alguna sugerencia, consejo o pista sobre lo que va mal, estaria agradecido.
Gracias!
#2
Gracias por responder! Solo dispongo de una tarjeta de red (wireless), por lo que no puedo descargar nada en el sistema instalado.
#3
GNU/Linux / Instalacion de Debian GNU/Linux
11 Abril 2016, 03:05 AM
Hola foro! Soy nuevo por aqui y agradeceria si me pudiesen ayudar con este problema. Necesito instalar Debian (stable o testing, me es indiferente) en mi laptop. He intentado de varias maneras distintas, pero no logro concluir la instalacion.
Mi laptop tiene una tarjeta de red wifi que necesita firmware, esa tarjeta es la Intel(R) Dual Band Wireless-AC 3165. En una particion primaria o logica FAT32 de un pendrive, en una subcarpeta "firmware" tengo el siguiente firmware:


amd64-microcode_2.20160316.1_amd64.deb
amd64-microcode_2.20160316.1_i386.deb
amd64-microcode_2.20160316.1~deb8u1_amd64.deb
amd64-microcode_2.20160316.1~deb8u1_i386.deb
atmel-firmware_1.3-4_all.deb
bluez-firmware_1.2-3_all.deb
dahdi-firmware-nonfree_2.10.0-1_all.deb
firmware-adi_0.43_all.deb
firmware-amd-graphics_20160110-1_all.deb
firmware-atheros_0.43_all.deb
firmware-atheros_20160110-1_all.deb
firmware-b43-installer_019-2_all.deb
firmware-b43legacy-installer_019-2_all.deb
firmware-bnx2x_0.43_all.deb
firmware-bnx2x_20160110-1_all.deb
firmware-bnx2_0.43_all.deb
firmware-bnx2_20160110-1_all.deb
firmware-brcm80211_0.43_all.deb
firmware-brcm80211_20160110-1_all.deb
firmware-cavium_20160110-1_all.deb
firmware-crystalhd_0.0~git20120110.fdd2f19-1_all.deb
firmware-intel-sound_20160110-1_all.deb
firmware-intelwimax_0.43_all.deb
firmware-intelwimax_20160110-1_all.deb
firmware-ipw2x00_0.43_all.deb
firmware-ipw2x00_20160110-1_all.deb
firmware-ivtv_0.43_all.deb
firmware-ivtv_20160110-1_all.deb
firmware-iwlwifi_0.43_all.deb
firmware-iwlwifi_20160110-1_all.deb
firmware-libertas_0.43_all.deb
firmware-libertas_20160110-1_all.deb
firmware-linux-free_3.3_all.deb
firmware-linux-free_3.4_all.deb
firmware-linux-nonfree_0.43_all.deb
firmware-misc-nonfree_20160110-1_all.deb
firmware-myricom_0.43_all.deb
firmware-myricom_20160110-1_all.deb
firmware-netxen_0.43_all.deb
firmware-netxen_20160110-1_all.deb
firmware-qlogic_0.43_all.deb
firmware-qlogic_20160110-1_all.deb
firmware-ralink_0.43_all.deb
firmware-realtek_0.43_all.deb
firmware-realtek_20160110-1_all.deb
firmware-samsung_0.43_all.deb
firmware-samsung_20160110-1_all.deb
firmware-siano_20160110-1_all.deb
firmware-ti-connectivity_0.43_all.deb
firmware-ti-connectivity_20160110-1_all.deb
firmware-zd1211_1.5-3_all.deb
firmware-zd1211_3.0.0.56-3_all.deb
intel-microcode_3.20151106.1_amd64.deb
intel-microcode_3.20151106.1_i386.deb
intel-microcode_3.20151106.1~deb8u1_amd64.deb
intel-microcode_3.20151106.1~deb8u1_i386.deb
iwlwifi-3160-10.ucode
iwlwifi-3160-12.ucode
iwlwifi-3160-13(1).ucode
iwlwifi-3160-13.ucode
iwlwifi-3160-14(1).ucode
iwlwifi-3160-14.ucode
iwlwifi-3160-15(1).ucode
iwlwifi-3160-15.ucode
iwlwifi-3160-16.ucode
iwlwifi-3160-17.ucode
iwlwifi-3160-9.ucode
iwlwifi-3168-21.ucode
iwlwifi-7260-10(1).ucode
iwlwifi-7260-10.ucode
iwlwifi-7260-12(1).ucode
iwlwifi-7260-12.ucode
iwlwifi-7260-13(1).ucode
iwlwifi-7260-13(2).ucode
iwlwifi-7260-13.ucode
iwlwifi-7260-14(1).ucode
iwlwifi-7260-14.ucode
iwlwifi-7260-15(1).ucode
iwlwifi-7260-15.ucode
iwlwifi-7260-16(1).ucode
iwlwifi-7260-16.ucode
iwlwifi-7260-17.ucode
iwlwifi-7260-7(1).ucode
iwlwifi-7260-7.ucode
iwlwifi-7260-8(1).ucode
iwlwifi-7260-8.ucode
iwlwifi-7260-9(1).ucode
iwlwifi-7260-9.ucode
iwlwifi-7265-10(1).ucode
iwlwifi-7265-10.ucode
iwlwifi-7265-12(1).ucode
iwlwifi-7265-12.ucode
iwlwifi-7265-13(1).ucode
iwlwifi-7265-13.ucode
iwlwifi-7265-14(1).ucode
iwlwifi-7265-14(2).ucode
iwlwifi-7265-14(3).ucode
iwlwifi-7265-14.ucode
iwlwifi-7265-15(1).ucode
iwlwifi-7265-15.ucode
iwlwifi-7265-16(1).ucode
iwlwifi-7265-16.ucode
iwlwifi-7265-17.ucode
iwlwifi-7265-8(1).ucode
iwlwifi-7265-8.ucode
iwlwifi-7265-9(1).ucode
iwlwifi-7265-9.ucode
iwlwifi-7265D-10(1).ucode
iwlwifi-7265D-10.ucode
iwlwifi-7265D-12(1).ucode
iwlwifi-7265D-12.ucode
iwlwifi-7265D-13(1).ucode
iwlwifi-7265D-13.ucode
iwlwifi-7265D-14(1).ucode
iwlwifi-7265D-14(2).ucode
iwlwifi-7265D-14(3).ucode
iwlwifi-7265D-14.ucode
iwlwifi-7265D-15(1).ucode
iwlwifi-7265D-15.ucode
iwlwifi-7265D-16(1).ucode
iwlwifi-7265D-16.ucode
iwlwifi-7265D-17.ucode
iwlwifi-7265D-18.ucode
iwlwifi-7265D-19.ucode
iwlwifi-7265D-20.ucode
iwlwifi-7265D-21.ucode
iwlwifi-8000C-13(1).ucode
iwlwifi-8000C-13(2).ucode
iwlwifi-8000C-13.ucode
iwlwifi-8000C-14.ucode
iwlwifi-8000C-15(1).ucode
iwlwifi-8000C-15.ucode
iwlwifi-8000C-16(1).ucode
iwlwifi-8000C-16.ucode
iwlwifi-8000C-17.ucode
iwlwifi-8000C-18.ucode
iwlwifi-8000C-19.ucode
iwlwifi-8000C-20.ucode
iwlwifi-8000C-21.ucode
iwlwifi-8265-21.ucode
ixp4xx-microcode_2.4-3_armel.deb
libertas-firmware_9.70.7.p0.0-2_all.deb
prism2-usb-firmware-installer_0.2.9+dfsg-5+b1_armhf.deb
prism2-usb-firmware-installer_0.2.9+dfsg-5_amd64.deb
prism2-usb-firmware-installer_0.2.9+dfsg-5_armel.deb
prism2-usb-firmware-installer_0.2.9+dfsg-5_armhf.deb
prism2-usb-firmware-installer_0.2.9+dfsg-5_i386.deb
prism2-usb-firmware-installer_0.2.9+dfsg-5_powerpc.deb


Descargo la imagen netinstall de stable o testing y la quemo a un pendrive formateado en FAT32 con unetbootin o win32diskimager. Reinicio y configuro el boot order desde la BIOS.
Inicio la instalacion, todo normal hasta la deteccion del hardware de red. Si la imagen es de debian testing quemada con unetbootin, suele pedirme varios archivos ucode. Inserto el pendrive con el firmware, lo detecta correctamente y carga el firmware. Luego, vuelve a pedirme otro archivo ucode (que ya me lo habia pedido antes pero al parecer no lo habia detectado) y le doy a cargar firmware desde usb (devuelta) y empieza la configuracion de red. Eso SOLO sucede con imagen testing quemada con unetbootin, quemando la imagen con otro programa o usando win32diskimager no detecta el firmware y sale "unidad usb dañada o ningun firmware detectado".
Si sigo la instalacion de testing con unetbootin, todo sale normalmente hasta el punto de seleccionar e instalar software, paso que falla indefectiblemente sin dar mayores explicaciones de cual fue el error. Al iniciar la consola y hacer ping a un servidor, responde correctamente. Puedo, aun asi, instalar grub y el sistema base, el cual inicia y funciona correctamente pero sin conexion a la red ni deteccion del hardware de red.
Como podria solucionar este problema? Realmente necesito linux. Espero haber dado suficiente informacion. Gracias por su atencion!