MySensors 1.5.2 Released
-
How do you mean 'via shell'? Using avrdude it is possible to flash the built hex file via a shell yes. But I don't know the exact arguments for that.
-
Well, that is up to you. It depends on the HW you have used for your GW. The library is just software and how you choose to download that SW to your HW is entirely up to you :) This is a SW release, so you can flash it exactly as you flashed it before, or in a new way if you prefer that. But the method of flashing is totally decoupled from the contents of release 1.5.2.
And when it comes to OTA updates, there are no changes in this release compared to 1.5.1 so you can expect the same featureset with respect to OTA functionality. -
How can I do the following on this Library version?
#define MY_NODE_ID 12 #define RF24_CE_PIN 4 #define RF24_CS_PIN 10 #define RF24_PA_LEVEL RF24_PA_MAX MyTransportNRF24 transport(RF24_CE_PIN, RF24_CS_PIN, RF24_PA_LEVEL); MySensor (transport); void setup() { gw.begin(NULL, MY_NODE_ID);Cant seem to wrap my head around this. btw, I'm using Codebender.
-
There is no difference in how you write your sketch in 1.5.2 compared to 1.5.1. So I am not sure I understand your question.
-
Whell a sketch used to compile just fine using 1.5 but now I get:
In file included from (sketch file) MultiTemp.ino:39:
(personal library file) MySensors/MySensor.h:158:70: error: unknown type name 'MyHwDriver'
MySensor(MyTransport &radio =*new MyTransportNRF24(), MyHw &hw=*new MyHwDriver()
^
(sketch file) MultiTemp.ino:71:10: error: redefinition of 'transport' with a different type: 'MySensor' vs 'MyTransportNRF24'
MySensor(transport);
^
(sketch file) MultiTemp.ino:69:18: note: previous definition is here
MyTransportNRF24 transport(RF24_CE_PIN, RF24_CS_PIN, RF24_PA_LEVEL); -
Btw, I just upload the MySensor folder from the library as a .zip to codebender. Do I need anything outside this folder?
-
Tried to get the Lib again but it does not seem to be any different:
Trying to compile the sketch (coodiebender.something/sketch:213307) unchanged results in this:
In file included from (sketch file) MultiTemp.ino:35: (personal library file) MySensors/MySensor.h:158:70: error: unknown type name 'MyHwDriver' MySensor(MyTransport &radio =*new MyTransportNRF24(), MyHw &hw=*new MyHwDriver() ^ (sketch file) MultiTemp.ino:63:10: error: no matching constructor for initialization of 'MySensor' MySensor gw(transport);So I remove the "gw" but it stil complains:
(personal library file) MySensors/MySensor.h:158:70: error: unknown type name 'MyHwDriver' MySensor(MyTransport &radio =*new MyTransportNRF24(), MyHw &hw=*new MyHwDriver() ^ (sketch file) MultiTemp.ino:63:11: error: redefinition of 'transport' with a different type: 'MySensor' vs 'MyTransportNRF24' MySensor (transport);I'm just not doing it right that is all, but how should it be done?
-
Have you looked at one of the existing examples as a reference? For example the DallasTemperatureSensor.ino
-
The examples do not include a transport definition
-
Is there "SOMETHING" missing like this??
MySensor gw(transport, SOMETHING);candidate constructor not viable: requires 2 arguments, but 1 was provided MySensor(MyTransport &radio =*new MyTransportNRF24(), MyHw &hw=*new MyHwDriver()How do I define "MyHwDriver"??
-
Thanks for the example @Anticimex now I know how but it is stil not working when using codebender.
(personal library file) MySensors/MySensor.h:158:70: error: unknown type name 'MyHwDriver' MySensor(MyTransport &radio =*new MyTransportNRF24(), MyHw &hw=*new MyHwDriver() ^ (sketch file) MultiTemp.ino:66:1: error: unknown type name 'MyHwATMega328' MyHwATMega328 hw; // Select AtMega328 hardware profileI tested now with Arduino IDE 1.6.5 and my sketch compiles just fine.
-
Sorry, I am not very familiar with codebender. It looks to me that the library you try to build with is very out if date if it lacks those hw definitions. I don't know how the library ends up at codebender. Perhaps @hek has some communication with them to support it.
-
Hello,
I tried to compile with 1.5.2 and got these errors:
/Users/carlierd/Arduino/libraries/MySensors/MySensor.cpp: In member function 'boolean MySensor::sendRoute(MyMessage&)': /Users/carlierd/Arduino/libraries/MySensors/MySensor.cpp:27:25: error: '_doSign' was not declared in this scope #define DO_SIGN(node) (~_doSign[node>>3]&(1<<(node%8))) ^ /Users/carlierd/Arduino/libraries/MySensors/MySensor.cpp:356:6: note: in expansion of macro 'DO_SIGN' if (DO_SIGN(message.destination) && message.sender == nc.nodeId && !mGetAck(message) && mGetLength(message) && ^ /Users/carlierd/Arduino/libraries/MySensors/MySensor.cpp: In member function 'boolean MySensor::process()': /Users/carlierd/Arduino/libraries/MySensors/MySensor.cpp:28:25: error: '_doSign' was not declared in this scope #define SET_SIGN(node) (_doSign[node>>3]&=~(1<<(node%8))) ^ /Users/carlierd/Arduino/libraries/MySensors/MySensor.cpp:670:6: note: in expansion of macro 'SET_SIGN' SET_SIGN(msg.sender); ^ /Users/carlierd/Arduino/libraries/MySensors/MySensor.cpp:29:27: error: '_doSign' was not declared in this scope #define CLEAR_SIGN(node) (_doSign[node>>3]|=(1<<(node%8))) ^ /Users/carlierd/Arduino/libraries/MySensors/MySensor.cpp:673:6: note: in expansion of macro 'CLEAR_SIGN' CLEAR_SIGN(msg.sender); ^ /Users/carlierd/Arduino/libraries/MySensors/MySensor.cpp:27:25: error: '_doSign' was not declared in this scope #define DO_SIGN(node) (~_doSign[node>>3]&(1<<(node%8))) ^ /Users/carlierd/Arduino/libraries/MySensors/MySensor.cpp:682:40: note: in expansion of macro 'DO_SIGN' if (signer.requestSignatures() && DO_SIGN(msg.sender)) ^ Erreur lors de la compilation.No compilation issue with 1.5. And everything is working perfectly.
David.
-
Hello,
I tried to compile with 1.5.2 and got these errors:
/Users/carlierd/Arduino/libraries/MySensors/MySensor.cpp: In member function 'boolean MySensor::sendRoute(MyMessage&)': /Users/carlierd/Arduino/libraries/MySensors/MySensor.cpp:27:25: error: '_doSign' was not declared in this scope #define DO_SIGN(node) (~_doSign[node>>3]&(1<<(node%8))) ^ /Users/carlierd/Arduino/libraries/MySensors/MySensor.cpp:356:6: note: in expansion of macro 'DO_SIGN' if (DO_SIGN(message.destination) && message.sender == nc.nodeId && !mGetAck(message) && mGetLength(message) && ^ /Users/carlierd/Arduino/libraries/MySensors/MySensor.cpp: In member function 'boolean MySensor::process()': /Users/carlierd/Arduino/libraries/MySensors/MySensor.cpp:28:25: error: '_doSign' was not declared in this scope #define SET_SIGN(node) (_doSign[node>>3]&=~(1<<(node%8))) ^ /Users/carlierd/Arduino/libraries/MySensors/MySensor.cpp:670:6: note: in expansion of macro 'SET_SIGN' SET_SIGN(msg.sender); ^ /Users/carlierd/Arduino/libraries/MySensors/MySensor.cpp:29:27: error: '_doSign' was not declared in this scope #define CLEAR_SIGN(node) (_doSign[node>>3]|=(1<<(node%8))) ^ /Users/carlierd/Arduino/libraries/MySensors/MySensor.cpp:673:6: note: in expansion of macro 'CLEAR_SIGN' CLEAR_SIGN(msg.sender); ^ /Users/carlierd/Arduino/libraries/MySensors/MySensor.cpp:27:25: error: '_doSign' was not declared in this scope #define DO_SIGN(node) (~_doSign[node>>3]&(1<<(node%8))) ^ /Users/carlierd/Arduino/libraries/MySensors/MySensor.cpp:682:40: note: in expansion of macro 'DO_SIGN' if (signer.requestSignatures() && DO_SIGN(msg.sender)) ^ Erreur lors de la compilation.No compilation issue with 1.5. And everything is working perfectly.
David.
-
@carlierd I found a problem there. I have to make a new release. Sorry for the inconvenience!
@Anticimex No problem !! Thanks for the support :)