Hide minor edits - Show changes to markup
As of version 0.3, here's what you can do:
x10(int strLength) - initialize an instance of the X10 library on two digital pins. e.g.
x10 myHouse = x10(9, 10); // initializes X10 on pins 9 (zero crossing pin) and 10 (data pin)
void write(byte houseCode, byte numberCode, int numRepeats) - Send an X10 message, e.g.
Para la versión 0.3, aquí tienes lo que puedes hacer:
x10(int strLength) - Inicia una instancia de la librería X10 en dos pines digitales. Ejemplo:
x10 myHouse = x10(9, 10); // Inicia X10 con los pines 9 (pin cruce por cero) y 10 (pin de datos)
void write(byte houseCode, byte numberCode, int numRepeats) - Envía un mensaje X10, ejemplo
myHouse.write(A, ALL_LIGHTS_ON, 1); // Turns on all lights in house code A
myHouse.write(A, ALL_LIGHTS_ON, 1); // Enciende todas las luces del código A de la casa.
version(void) - get the library version. Since there will be more functions added, printing the version is a useful debugging tool when you get an error from a given function. Perhaps you're using an earlier version that doesn't feature the version you need! e.g.
version(void) - Obtiene la versión de la librería. Debido a que se añadirán más funciones, imprimir la versión de la librería será una útil herramienta de depuración cuando tengas algún problema con una determinada función. Por ejemplo si estás usando una versión anterior que no tiene la característica que necesitas!! e.g.
Serial.println(myHouse.version()); // prints the version of the library
Serial.println(myHouse.version()); // Muestra la versión de la librería
There are a number of constants added to make X10 easier. They are as follows:
Hay un número de constantes añadidas para que X10 resulte más sencillo. Son las siguientes:
Para conectar un Arduino a uno de estos módulos, coge un cable telefónico con un conector RJ-11, y corta uno de sus extremos. Luego cablea los pines como se indica a continuación:
Para conectar un Arduino a uno de estos módulos, coge un cable telefónico con un conector RJ-11, y corta uno de sus extremos. Luego cablea los pines de esta manera:
To use, unzip it and copy the resulting folder, called TextString, into the lib/targets/libraries directory of your arduino application folder. Then re-start the Arduino application.
When you restart, you'll see a few warning messages in the debugger pane at the bottom of the program. You can ignore them.
Para usarla, descomprime y copia la carpeta resultante, llamada TextString, en la carpeta lib/targets/libraries de la carpeta de tu aplicación arduino. Luego reinicia la aplicación Arduino.
Cuando reinicie, verás unos cuantos mensajes de aviso en al panel de depuración en la parte inferior del programa. Ignóralos.
Version 0.3 is compatible with Arduino 0012.
For a full explanation of X10 and these codes, see this technote
La version 0.3 es compatible con Arduino 0012.
Para una completa explicación de X10 y sus códigos, écha un vistazo a esta nota técnica.
If anyone's interested in helping to develop this library further, please contact me at tom.igoe at gmail.com
Si estás interesado en contribuir a desarrollar esta librería, por favor contacta conmigo tom.igoe [en] gmail.com
Esta librería te permite enviar y recibir comandos X10 desde un módulo Arduino. X10 es un protocolo serie síncrono a través de las líneas eléctricas de corriente alterna (AC), sending a bit every time the AC power crosses zero volts. Se usa en la automatización del hogar. Puedes encontrar controladores y dispositivos X10 en http://www.x10.com, http://www.smarthome.com, y en otros muchos sitios.
This library has been tested using the PL513 one-way X10 controller, and the TW523 two-way X10 controller. Both of these are essentially X10 modems, converting the 5V output of the Arduino into AC signals on the zero crossing.
To connect an Arduino to one of these modules, get a phone cable with an RJ-11 connector, and cut one end off. Then wire the pins as follows:
Esta librería te permite enviar y recibir comandos X10 desde un módulo Arduino. X10 es un protocolo serie síncrono que viaja a través de las líneas eléctricas de alimentación de corriente alterna (AC), envía un bit cada vez que la señal de potencia AC cruza los cero voltios. Se usa en la automatización del hogar. Puedes encontrar controladores y dispositivos X10 en http://www.x10.com, http://www.smarthome.com, y en otros muchos sitios.
Esta librería ha sido probada utilizando el controlador X10 unidireccional PL513, y el controlador X10 bidireccional TW523. Estos dos controladores son esencialmente unos modems X10, que convierten la salida de 5V del Arduino a señales AC a su cruce por el cero.
Para conectar un Arduino a uno de estos módulos, coge un cable telefónico con un conector RJ-11, y corta uno de sus extremos. Luego cablea los pines como se indica a continuación:
This library enables you to send and receive X10 commands from an Arduino module. X10 is a synchronous serial protocol that travels over AC power lines, sending a bit every time the AC power crosses zero volts. It's used in home automation. You can find X10 controllers and devices at http://www.x10.com, http://www.smarthome.com, and more.
Esta librería te permite enviar y recibir comandos X10 desde un módulo Arduino. X10 es un protocolo serie síncrono a través de las líneas eléctricas de corriente alterna (AC), sending a bit every time the AC power crosses zero volts. Se usa en la automatización del hogar. Puedes encontrar controladores y dispositivos X10 en http://www.x10.com, http://www.smarthome.com, y en otros muchos sitios.
Version 3 is compatible with Arduino 0012.
Version 0.3 is compatible with Arduino 0012.
Download: X10.zip
As of version 0.2, here's what you can do:
As of version 0.3, here's what you can do:
Version 3 is compatible with Arduino 0012.
X10(int strLength) - initialize an instance of the X10 library on two digital pins. e.g.
X10 myHouse = X10(9, 10); // initializes X10 on pins 9 (zero crossing pin) and 10 (data pin)
x10(int strLength) - initialize an instance of the X10 library on two digital pins. e.g.
x10 myHouse = x10(9, 10); // initializes X10 on pins 9 (zero crossing pin) and 10 (data pin)
version(void) - get the library version. Since there will be more functions added, printing the version is a useful debugging tool when you get an error from a given function. Perhaps you're using an earlier version that doesn't feature the version you need! e.g.
Serial.println(myHouse.version()); // prints the version of the library
version(void) - get the library version. Since there will be more functions added, printing the version is a useful debugging tool when you get an error from a given function. Perhaps you're using an earlier version that doesn't feature the version you need! e.g.
Serial.println(myHouse.version()); // prints the version of the library
Attach: X10-schematic.jpg

For a full explanation of X10 and these codes, see this technote
For a full explanation of X10 and these codes, see this technote
Attach: X10.png
Attach: X10-schematic.jpg
For a full explanation of X10 and these codes, see
For a full explanation of X10 and these codes, see this technote
This library enables you to send and receive X10 commands from an Arduino module.
This library enables you to send and receive X10 commands from an Arduino module. X10 is a synchronous serial protocol that travels over AC power lines, sending a bit every time the AC power crosses zero volts. It's used in home automation. You can find X10 controllers and devices at http://www.x10.com, http://www.smarthome.com, and more.
This library has been tested using the PL513 one-way X10 controller, and the TW523 two-way X10 controller. Both of these are essentially X10 modems, converting the 5V output of the Arduino into AC signals on the zero crossing.
To connect an Arduino to one of these modules, get a phone cable with an RJ-11 connector, and cut one end off. Then wire the pins as follows:
Attach: X10.png
For a full explanation of X10 and these codes, see
This library enables you to send and receive X10 commands from an Arduino module.
Download: X10.zip
To use, unzip it and copy the resulting folder, called TextString, into the lib/targets/libraries directory of your arduino application folder. Then re-start the Arduino application.
When you restart, you'll see a few warning messages in the debugger pane at the bottom of the program. You can ignore them.
As of version 0.2, here's what you can do:
X10(int strLength) - initialize an instance of the X10 library on two digital pins. e.g.
X10 myHouse = X10(9, 10); // initializes X10 on pins 9 (zero crossing pin) and 10 (data pin)
void write(byte houseCode, byte numberCode, int numRepeats) - Send an X10 message, e.g.
myHouse.write(A, ALL_LIGHTS_ON, 1); // Turns on all lights in house code A
There are a number of constants added to make X10 easier. They are as follows:
version(void) - get the library version. Since there will be more functions added, printing the version is a useful debugging tool when you get an error from a given function. Perhaps you're using an earlier version that doesn't feature the version you need! e.g.
Serial.println(myHouse.version()); // prints the version of the library
If anyone's interested in helping to develop this library further, please contact me at tom.igoe at gmail.com