I suggest you take a look at the following video
DIY Oscilloscope Kit (20$) VS Regular DS Oscilloscope (400$) – 05:45
— GreatScott!
Its "almost" the same
I suggest you take a look at the following video
DIY Oscilloscope Kit (20$) VS Regular DS Oscilloscope (400$) – 05:45
— GreatScott!
Its "almost" the same
Hi all,
Did anyone manage to use mysensors & domoticz to get a IR RGBW led stip working?
I can address then my color and such, however the tutorial is NOT based on IR.
I would like to send out the commands by IR instead of fiddling with custom hardware.
Is there a script that someone is willing to share for this?
Again, im running DOMOTICZ, using My Sensors and i use an IR RGBW led strip
Thx in advance
for some reason the value was always "1" untill i "pushed the button" => then i got "0"
however ive added an 10K resistors between the pin and gnd, and now it works fine
maybe because its not an official UNO board?
Dont forget to add a 10K resistor between GND and your PIN (in this example pin3)
Hi all,
Iam looking for a pice of code that can read the correct values of an dixell PTC probe
The code below does not match the values i need
double ThermistorC(int RawADC) {
double Temp;
Temp = log(10000.0*((1024.0/RawADC-1)));
Temp = 1 / (0.001129148 + (0.000234125 + (0.0000000876741 * Temp * Temp ))* Temp );
Temp = Temp - 273.15;
return Temp;
}
Is there a lib or a tutorial on reading these correctly?
Probe in question
http://www.dixell.co.il/product_datasheet.php?prod=S6.S&lang=_l1&code=590
Not much can be found on them
Thx in advance
Ive checked the RFM69 and ive decided that iam not going to try it
But instead, if i read it correctly i can use an Arduino + (official) Ethernet shield as a gateway.
Domoticz supports multiple gateways, so i should be able to place an Ethernet shield on each floor and use the NRF's to each gateway
ill how that works out
BTW: this is an W5100 right?
My wifi station is based on the ground floor, in the heating room, this is also the place for my main electrical box, so that's allot of wires that interfere with it
its a router / modem from Telenet, those are crap anyway, standing 1 meter from the device with no wall in between and you already loose 1 bar
i can try with those 433mhz wall socket things, but i notice a small delay between commands, its acceptable
ill just order a few Ethernet shields and some powerline things or maybe create a gateway for each floor (ethernet gateway)
that MAY work
do they have to be run in a loop(each other)? or can they be connected each one to a (one)gateway?
I have a few of those POWER-LINE Ethernet things, its a rented house so i cannot make allot of holes
Hi,
Iam looking for an alternative way to use mysensors without any WIFI / nrf24l01+ / wireless communication.
The reason for that is: i have setup a gateway at my attic and 3 nodes on the floors below.
I have it setup like this:
Gateway (attic) -> Node 1 (work room, 1st floor) -> node 2 (kitchen, ground floor) -> Node 3 (living room, ground floor)
So basically if node 1 craps out on me, node 2 & 3 will go down as wel, since they rely on node 1 to pass the info to the gateway. Ive tried different antenna's but there is too much electrical wires and concrete in the way for a good signal. There is not allot of room for different locations, so i have to see if i can do it by running UTP cables.
WIFI is also crap, even 1 floor takes 90% of the signal
So is there a way for mysensors to connect via UTP / LAN cables?
Otherwise i have to refer to Ethernet shields and aREST lib
Greetz
Take a look at this, works pretty good for me
// Enable debug prints to serial monitor
#define MY_DEBUG
// Enable and select radio type attached
#define MY_RADIO_NRF24
// Enable repeater functionality for this node
//#define MY_REPEATER_FEATURE
#include <SPI.h>
#include <MySensors.h>
#include <RCSwitch.h>
RCSwitch mySwitch = RCSwitch();
#define RELAY_1 1 // Arduino Digital I/O pin number for first relay (second on pin+1 etc)
#define NUMBER_OF_RELAYS 18 // Total number of attached relays
#define SLEEP_BETWEEN_ALL_ON 100
#define SLEEP_BETWEEN_ALL_OFF 100
void before()
{
for (int sensor=1, pin=RELAY_1; sensor<=NUMBER_OF_RELAYS;sensor++, pin++) {
// Then set relay pins in output mode
//-----------pinMode(pin, OUTPUT);
// Set relay to last known state (using eeprom storage)
//-----------digitalWrite(pin, loadState(sensor)?RELAY_ON:RELAY_OFF);
}
}
void setup()
{
// Transmitter is connected to Arduino Pin #10
mySwitch.enableTransmit(8);
// Optional set pulse length.
// mySwitch.setPulseLength(320);
}
void presentation()
{
// Send the sketch version information to the gateway and Controller
sendSketchInfo("RF 433Mhz", "1.0");
for (int sensor=1, pin=RELAY_1; sensor<=NUMBER_OF_RELAYS;sensor++, pin++) {
// Register all sensors to gw (they will be created as child devices)
present(sensor, S_BINARY);
}
}
void loop()
{
}
void receive(const MyMessage &message)
{
// We only expect one type of message from controller. But we better check anyway.
if (message.type==V_STATUS)
{
// Switch on:
// The first parameter represents the setting of the first rotary switch.
// In this example it's switched to "1" or "A" or "I".
//
// The second parameter represents the setting of the second rotary switch.
// In this example it's switched to "4" or "D" or "IV".
// 1 = channel A
// 2 = channel B
// 3 = channel C
// 4 = channel D
switch (message.sensor-1+RELAY_1)
{
case 1:
if(message.getBool() == 1){mySwitch.switchOn(1, 1);}else{mySwitch.switchOff(1, 1);}
break;
case 2:
if(message.getBool() == 1){mySwitch.switchOn(1, 2);}else{mySwitch.switchOff(1, 2);}
break;
case 3:
if(message.getBool() == 1){mySwitch.switchOn(1, 3);}else{mySwitch.switchOff(1, 3);}
break;
case 4:
if(message.getBool() == 1){mySwitch.switchOn(1, 4);}else{mySwitch.switchOff(1, 4);}
break;
case 5:
if(message.getBool() == 1){mySwitch.switchOn(2, 1);}else{mySwitch.switchOff(2, 1);}
break;
case 6:
if(message.getBool() == 1){mySwitch.switchOn(2, 2);}else{mySwitch.switchOff(2, 2);}
break;
case 7:
if(message.getBool() == 1){mySwitch.switchOn(2, 3);}else{mySwitch.switchOff(2, 3);}
break;
case 8:
if(message.getBool() == 1){mySwitch.switchOn(2, 4);}else{mySwitch.switchOff(2, 4);}
break;
case 9:
if(message.getBool() == 1){mySwitch.switchOn(3, 1);}else{mySwitch.switchOff(3, 1);}
break;
case 10:
if(message.getBool() == 1){mySwitch.switchOn(3, 2);}else{mySwitch.switchOff(3, 2);}
break;
case 11:
if(message.getBool() == 1){mySwitch.switchOn(3, 3);}else{mySwitch.switchOff(3, 3);}
break;
case 12:
if(message.getBool() == 1){mySwitch.switchOn(3, 4);}else{mySwitch.switchOff(3, 4);}
break;
case 13:
if(message.getBool() == 1){mySwitch.switchOn(4, 1);}else{mySwitch.switchOff(4, 1);}
break;
case 14:
if(message.getBool() == 1){mySwitch.switchOn(4, 2);}else{mySwitch.switchOff(4, 2);}
break;
case 15:
if(message.getBool() == 1){mySwitch.switchOn(4, 3);}else{mySwitch.switchOff(4, 3);}
break;
case 16:
if(message.getBool() == 1){mySwitch.switchOn(4, 4);}else{mySwitch.switchOff(4, 4);}
break;
// ALL ON
case 17:
mySwitch.switchOff(1, 1);
delay(SLEEP_BETWEEN_ALL_OFF);
mySwitch.switchOff(1, 2);
delay(SLEEP_BETWEEN_ALL_OFF);
mySwitch.switchOff(1, 3);
delay(SLEEP_BETWEEN_ALL_OFF);
mySwitch.switchOff(1, 4);
delay(SLEEP_BETWEEN_ALL_OFF);
mySwitch.switchOff(2, 1);
delay(SLEEP_BETWEEN_ALL_OFF);
mySwitch.switchOff(2, 2);
delay(SLEEP_BETWEEN_ALL_OFF);
mySwitch.switchOff(2, 3);
delay(SLEEP_BETWEEN_ALL_OFF);
mySwitch.switchOff(2, 4);
delay(SLEEP_BETWEEN_ALL_OFF);
mySwitch.switchOff(3, 1);
delay(SLEEP_BETWEEN_ALL_OFF);
mySwitch.switchOff(3, 2);
delay(SLEEP_BETWEEN_ALL_OFF);
mySwitch.switchOff(3, 3);
delay(SLEEP_BETWEEN_ALL_OFF);
mySwitch.switchOff(3, 4);
delay(SLEEP_BETWEEN_ALL_OFF);
mySwitch.switchOff(4, 1);
delay(SLEEP_BETWEEN_ALL_OFF);
mySwitch.switchOff(4, 2);
delay(SLEEP_BETWEEN_ALL_OFF);
mySwitch.switchOff(4, 3);
delay(SLEEP_BETWEEN_ALL_OFF);
mySwitch.switchOff(4, 4);
break;
// ALL OFF
case 18:
mySwitch.switchOn(1, 1);
delay(SLEEP_BETWEEN_ALL_ON);
mySwitch.switchOn(1, 2);
delay(SLEEP_BETWEEN_ALL_ON);
mySwitch.switchOn(1, 3);
delay(SLEEP_BETWEEN_ALL_ON);
mySwitch.switchOn(1, 4);
delay(SLEEP_BETWEEN_ALL_ON);
mySwitch.switchOn(2, 1);
delay(SLEEP_BETWEEN_ALL_ON);
mySwitch.switchOn(2, 2);
delay(SLEEP_BETWEEN_ALL_ON);
mySwitch.switchOn(2, 3);
delay(SLEEP_BETWEEN_ALL_ON);
mySwitch.switchOn(2, 4);
delay(SLEEP_BETWEEN_ALL_ON);
mySwitch.switchOn(3, 1);
delay(SLEEP_BETWEEN_ALL_ON);
mySwitch.switchOn(3, 2);
delay(SLEEP_BETWEEN_ALL_ON);
mySwitch.switchOn(3, 3);
delay(SLEEP_BETWEEN_ALL_ON);
mySwitch.switchOn(3, 4);
delay(SLEEP_BETWEEN_ALL_ON);
mySwitch.switchOn(4, 1);
delay(SLEEP_BETWEEN_ALL_ON);
mySwitch.switchOn(4, 2);
delay(SLEEP_BETWEEN_ALL_ON);
mySwitch.switchOn(4, 3);
delay(SLEEP_BETWEEN_ALL_ON);
mySwitch.switchOn(4, 4);
break;
default:
Serial.println("Unknown Status");
break;
}
saveState(message.sensor, message.getBool());
// Write some debug info
Serial.print("Incoming change for binary switch: ");
Serial.print(message.sensor);
Serial.print(", New status: ");
Serial.println(message.getBool());
}
}