Thanks! I should check Github moe often I guess.
DavidZH
@DavidZH
Best posts made by DavidZH
-
RE: [2.1 Beta] Program 'chapter' order changed since 2.0
-
RE: 💬 4-channel switcher/dimmer
I agree with the comments about the varistor, it can certainly help with spikes. But only around 10 times. After that, the varistor will fail. Violently. In Europe, Australia and North America that will not be a big problem, but in countries with a little less reliable grid that could be within a year.
When the MOV fails, it will become a short across the live and neutral, so ALWAYS put your varistor/MOV behind the primary fuse so that that will blow and stop the current across. Otherwise you'll have a nice fire inside the switchbox...little story: a friend of mine lives in the Carribean and they have a sketchy power grid there. One day the fridge was "tingly", so we start searching. Few minutes later: POOF!: magic smokes escapes from the power conditioner for the TV. OK. Something's really wrong here.
So we suspected the wiring because of the corrosive nature of the air there (warm, humid sea breeze). Switch off the power, and start opening switchboxes and outlets (all US 120V system), we start finding all sorts of weird stuff like a circuit that is spliced off, goes into the floor and exits in another box, that is also fed directly from the panel.....
So a few hours later we have checked everything, ripped out some unused wires and checked all connections and switch all back on. Still auchie on the fridge. So after a few minutes unplugging all appliances and socketstrips it was gone!It was a socket strip with net filter. The MOVS had blown and created a short to earth. And since the US system does not use RCDs on all circuits that could go on for a while.
Moral of the story: MOVs can do good. And bad. Use them wisely!
-
RE: What is the correct way to implement a WDT, for reset on a Sleeping node?
I have an idea that it still might be a low voltage situation. You say your ultrasonic sensor consumes about 60mA. When your battery voltage is at 3.8V those currents combined with the spikes caused by your radio can pull your battery down to below 3.3V.
I have an outdoor sensor with a Moteino as board and that uses a MCP1703 as voltage regulator. Same family as the MCP1700-33 of your board. When my supply voltage drops in the direction of the regulated voltage, the MCP faults into some sort of short circuit mode which draws an insane amount of power but does not output any usable voltage. And that will drain your battery quick, fast, in a hurry... (️ AvE )My sensor is being topped up by a solar panel so theoretically, it should never run out. But theory and real world are NOT the same. Your board is also capable of charging a LiIon battery with both the Vin and 5V connections. The BQ24074 will charge your batt.
Hope this helps you towards your solution.
-
RE: Complete shutdown of MySensors in code possible ?
@GertSanders I can't know where you stand pricepoint wise, but this sounds like a 2 MCU project. One to handle the clock functions, and one to communicate with MySensors. Messages between the 2 MCU's over I2C.
If the link is down, that will only clog the comms MCU. -
RE: Why I quit using MySensors for actuators
@parachutesj I can see why you chose to move away. RF will always be in the "black magic" realm. Unable to see, hear or feel it's presence. Of course with the proper tools, and knowledge of the correct use of aforementioned tools a lot can be unveiled, but those are out of reach for the average hobbyist.
I have stopped working on actuators as a safety precaution. Most lights I want to operate are fixed lights, and the in-wall-boxes where I'd have to put the actuators are just too small to be able to fit both my own design MySensors actuator and a momentary switch. One must in my system is the ability to switch the light locally for whenever the controller or network fails.
The final push for me to walk away was a fire at a family members house caused by a cheap china power supply. No one was hurt, but it took 4 weeks before the family could move back in. I just felt I was not capable of designing a safe power supply to power the node, that would fit inside the wall box.
So Z-wave it is. With a lot of compatibility issues. But I use it just for communications, not the think-work.So I will also stay here for the input part. Sensors galore.... And there will be an actuator later. A low voltage dimmer. Max 30V DC input. Let other people worry about the mains side of things. I just cant bear the thought of putting my family in jeopardy because I wanted a hobby so hard.
-
RE: Double Micro (nano) Ampere meter
Awsome!
I'd like to compare your impressive array of measurement devices against my Agilent U1273A. Actually to decide if I need a µCurrent.... Maybe in an upcoming meetup in NL or BE this summer?
-
RE: FTDI/Serial or USB?
The main question should (in my humble opinion) be: how often do you plan to update your sensor while it's in use? USB is very convenient, no doubt. But FTDI is almost just as easy when you prepare an adapter with a single connector that you slide on and program away....
Even if you plan to make more than one sensor the debugging will be longest with the first. (Hopefully!!!)Either way, good luck on the build!
-
RE: Most reliable light switch
I am working on such a node, but am still in the programming and testing stage. I will come back here when I have positive results!
-
RE: MYS Library Startup Control ? After()? OnRegistration()?
Found it! I added a
#ifndef
so I do not have to change it every time I program a node (and forget at what setting it is the next time....). -
RE: problem to code?
It might be the board you're using. I had similar issues when I was building my weather node with the same proto-board. After I switched to single sided board it worked immediately. The copper might reflect RF-energy back to the radio and your Arduino that interfere with the transmission.
Latest posts made by DavidZH
-
RE: pimatic-mysensors controller plugin
@ricardot said in pimatic-mysensors controller plugin:
Do you plan to continue to develop this plugin? I will very pleased to see a mysensors button. Thank you!
I second this. And also see if we can lose the dependency on serialport 2.0.6 so that we can use Node.js > 4.9.1
-
RE: What is the correct way to implement a WDT, for reset on a Sleeping node?
I have an idea that it still might be a low voltage situation. You say your ultrasonic sensor consumes about 60mA. When your battery voltage is at 3.8V those currents combined with the spikes caused by your radio can pull your battery down to below 3.3V.
I have an outdoor sensor with a Moteino as board and that uses a MCP1703 as voltage regulator. Same family as the MCP1700-33 of your board. When my supply voltage drops in the direction of the regulated voltage, the MCP faults into some sort of short circuit mode which draws an insane amount of power but does not output any usable voltage. And that will drain your battery quick, fast, in a hurry... (️ AvE )My sensor is being topped up by a solar panel so theoretically, it should never run out. But theory and real world are NOT the same. Your board is also capable of charging a LiIon battery with both the Vin and 5V connections. The BQ24074 will charge your batt.
Hope this helps you towards your solution.
-
RE: GY type breakout parasitic current draw.
Thanks Gohan,
there are a few reasons for me to use the BME outside. The most important: power management (and that explains my conundrum now...).
The unit contains a light sensor. That basically controls my lighting in the living room. So that needs to measure quite often to be able to control it with any accuracy. I've chosen every minute as a basis. That was also given when I found a sketch with a weather prediction function based on barometric pressure. That sketch needs to read the pressure every minute. That means that the sensor wakes up every minute. Also the radio. That's a huge load. Not really ideal for battery power. But that meant I was able to add the light sensor very easily.
So now I put them in an outdoor sensor with a solar panel to keep the battery topped up. That still means I have to watch the consumption in sleep. Here in NL we have quit a few overcast days, so the panel will not be able to keep up with the demand on those days.The solution in place now is to wake up the sensor 1 second before measurement. Power up the sensors, put the controller and radio back to sleep for one second. Then do the measurement stuff, power down the sensor and I2C bus and go into deep sleep. Average current consumption measured over 4 hrs is now 140uA. Sleep current for the whole system is 36uA. That is including the charger board and Moteino voltage regulator.
The unit is now up for 3 weeks and the panel keeps up very good. Most of those days were overcast. So when the cold hits next week with clear skies it should be full all the time.Battery level is sent every 6 hours. And next to that I have implemented a voltage measurement that signals when the battery is being charged. Energy is coming in, so I am allowed an extra data transfer...
Now see if it dies on me again end of november 2019...
-
RE: A few random questions (V_tripped vs V_armed)
Stubborn old me: I've dropped presentation() in my sketches.
But that is possible because I do not use discovery in my controller (Pimatic). All my MYS devices in Pimatic are coded so when the sensor starts it immediately shows.
Main reason: it saves a lot of battery during startup. I've made a watchdog in Pimatic with rules to keep an eye on the device to see if they stop sending. -
GY type breakout parasitic current draw.
Right now I'm really banging my head on the wall because I'm lost. I have been using an outdoor sensor unit for the last two years now. The heart is a Moteino on a perfboard carrier. Connected to the Mote are 2 GY boards; a GYBMEP with a Bosch BMP-280 and a GY-49 with a MAX44009 light sensor. The whole device is powered by a 1000mAh LiPo topped up by a small solar panel through a ADA390 solar charger (MCP73871).
See the picture for a little overview.My problem is this: when de Mote sleeps, I can't get the current consumption of the sensor boards anywhere NEAR the specced values (0,65uA for the MA44009 and 0,1uA for the BME280). I end up at about 800uA for the sensor boards alone. So first I used software to switch off the power and I2C bus to the sensors, but that does not work because the MAX44009 needs 800ms to take a measurement, and to wait almost a second every time for the sensor to finish feels kind of stupid. So powered continuously it is. Should not be a problem with the specified power consumption. I already had removed the linear regulators for both boards to be able to use lower voltages.
So next step; remove the resistors and MOSFets that protect the sensor from overvoltage from the GY boards. A bit of a fiddle because teeny tiny, but I think I succeeded. I dit get a lower current draw, about 300uA. But that's still nowhere near the 1,5uA it should be.Does anybody around here have had the same sort of phantom draw? And has that person found a way around it outside of using the bare sensor chip? I simply can't solder that stuff.
I know there are some other kinks with this board, the regulator on the Mote goes into some sort of avalanche mode when the battery voltage goes down to Vout + Vdropout. It then passes around 90mA all the time. I've had that happening twice now: a year apart to the day. And the charger board also uses 35uA whatever the state. But that should not be a problem during the day.
I really want to solve this now so that I never have to take a second look to that sensor. Hints are appreciated.
-
RE: Complete shutdown of MySensors in code possible ?
@GertSanders I can't know where you stand pricepoint wise, but this sounds like a 2 MCU project. One to handle the clock functions, and one to communicate with MySensors. Messages between the 2 MCU's over I2C.
If the link is down, that will only clog the comms MCU. -
RE: [ SOLVED ] MyS 2.2.0 - MY_DEBUG fails on certain bootloaders
Thank you for calling back! I had the same "issue" my nodes were working so well, no debug was needed, only when I started on a new type I needed to debug some stuff.
And I had also tried Alex' solution with succes, but have had no time yet to report that.
I will mark this as solved.
-
[ SOLVED ] MyS 2.2.0 - MY_DEBUG fails on certain bootloaders
I have started to update my nodes to 2.2.0. The gateway went smooth, and the first nodes were no problem either. These were simple sleeping nodes with a timer to send climate data.
The next batch were my dimmer nodes that failed to work properly because of a button that was not read anymore (actually, after pressing, the release was not detected. The solution was the PINMODE that was declared in the
before()
was cleared afterPresentation()
).When I tried to use
MY_DEBUG
, the compilation failed. That was Arduino IDE 1.6.13, and after I updated to 1.8.5 it ran once. After that it only failed every time.When I changed the board definition to Moteino (I use that for my gateway and 1 sensor) it compiled normally. When I changed back to the bootloader I use on the dimmer board it failed again.
All my boards are basically the same (except for the two mentioned):
- ATmega328p; internal 8 MHz clock; 2,7V BOD
- RFM69 radio (some HW, some W)
- bootloader by GertSanders: 32p TQFP; 2,7V; 8MHz internal; LED D5; 38k4 upload speed
I tried to compile with other bootloaders, but a mismatch in baudrate prevented me from uploading the sketch.
Here is the error log from the IDE:
In file included from /Users/David/Documents/Arduino/libraries/MySensors/MySensors.h:49:0, from /var/folders/zw/bqygd0w11qd6rb620f1pjy_w0000gn/T/arduino_modified_sketch_112637/sketch_feb06a.ino:90: /Users/David/Documents/Arduino/libraries/MySensors/core/MyTransport.cpp: In function 'void stInitUpdate()': /Users/David/Documents/Arduino/libraries/MySensors/core/MyTransport.cpp:124:45: error: expected ')' before 'PRIu8' TRANSPORT_DEBUG(PSTR("TSM:INIT:STATID=%" PRIu8 "\n"),(uint8_t)MY_NODE_ID); ^ /Users/David/Documents/Arduino/libraries/MySensors/MyConfig.h:1815:43: note: in definition of macro 'DEBUG_OUTPUT' #define DEBUG_OUTPUT(x,...) hwDebugPrint(x, ##__VA_ARGS__) //!< debug ^ /Users/David/Documents/Arduino/libraries/MySensors/core/MyTransport.cpp:124:4: note: in expansion of macro 'TRANSPORT_DEBUG' TRANSPORT_DEBUG(PSTR("TSM:INIT:STATID=%" PRIu8 "\n"),(uint8_t)MY_NODE_ID); ^ /Users/David/Documents/Arduino/libraries/MySensors/core/MyTransport.cpp: In function 'void stUplinkUpdate()': /Users/David/Documents/Arduino/libraries/MySensors/core/MyTransport.cpp:265:44: error: expected ')' before 'PRIu8' TRANSPORT_DEBUG(PSTR("TSM:UPL:DGWC,O=%" PRIu8 ",N=%" PRIu8 "\n"), _transportConfig.distanceGW, ^ /Users/David/Documents/Arduino/libraries/MySensors/MyConfig.h:1815:43: note: in definition of macro 'DEBUG_OUTPUT' #define DEBUG_OUTPUT(x,...) hwDebugPrint(x, ##__VA_ARGS__) //!< debug ^ /Users/David/Documents/Arduino/libraries/MySensors/core/MyTransport.cpp:265:4: note: in expansion of macro 'TRANSPORT_DEBUG' TRANSPORT_DEBUG(PSTR("TSM:UPL:DGWC,O=%" PRIu8 ",N=%" PRIu8 "\n"), _transportConfig.distanceGW, ^ /Users/David/Documents/Arduino/libraries/MySensors/core/MyTransport.cpp: In function 'void stReadyTransition()': /Users/David/Documents/Arduino/libraries/MySensors/core/MyTransport.cpp:292:40: error: expected ')' before 'PRIu8' TRANSPORT_DEBUG(PSTR("TSM:READY:ID=%" PRIu8 ",PAR=%" PRIu8 ",DIS=%" PRIu8 "\n"), ^ /Users/David/Documents/Arduino/libraries/MySensors/MyConfig.h:1815:43: note: in definition of macro 'DEBUG_OUTPUT' #define DEBUG_OUTPUT(x,...) hwDebugPrint(x, ##__VA_ARGS__) //!< debug ^ /Users/David/Documents/Arduino/libraries/MySensors/core/MyTransport.cpp:292:2: note: in expansion of macro 'TRANSPORT_DEBUG' TRANSPORT_DEBUG(PSTR("TSM:READY:ID=%" PRIu8 ",PAR=%" PRIu8 ",DIS=%" PRIu8 "\n"), ^ /Users/David/Documents/Arduino/libraries/MySensors/core/MyTransport.cpp: In function 'void stFailureTransition()': /Users/David/Documents/Arduino/libraries/MySensors/core/MyTransport.cpp:342:40: error: expected ')' before 'PRIu8' TRANSPORT_DEBUG(PSTR("TSM:FAIL:CNT=%" PRIu8 "\n"),_transportSM.failureCounter); ^ /Users/David/Documents/Arduino/libraries/MySensors/MyConfig.h:1815:43: note: in definition of macro 'DEBUG_OUTPUT' #define DEBUG_OUTPUT(x,...) hwDebugPrint(x, ##__VA_ARGS__) //!< debug ^ /Users/David/Documents/Arduino/libraries/MySensors/core/MyTransport.cpp:342:2: note: in expansion of macro 'TRANSPORT_DEBUG' TRANSPORT_DEBUG(PSTR("TSM:FAIL:CNT=%" PRIu8 "\n"),_transportSM.failureCounter); ^ /Users/David/Documents/Arduino/libraries/MySensors/core/MyTransport.cpp: In function 'bool transportWaitUntilReady(uint32_t)': /Users/David/Documents/Arduino/libraries/MySensors/core/MyTransport.cpp:449:38: error: expected ')' before 'PRIu32' TRANSPORT_DEBUG(PSTR("TSF:WUR:MS=%" PRIu32 "\n"), waitingMS); // timeout ^ /Users/David/Documents/Arduino/libraries/MySensors/MyConfig.h:1815:43: note: in definition of macro 'DEBUG_OUTPUT' #define DEBUG_OUTPUT(x,...) hwDebugPrint(x, ##__VA_ARGS__) //!< debug ^ /Users/David/Documents/Arduino/libraries/MySensors/core/MyTransport.cpp:449:2: note: in expansion of macro 'TRANSPORT_DEBUG' TRANSPORT_DEBUG(PSTR("TSF:WUR:MS=%" PRIu32 "\n"), waitingMS); // timeout ^ /Users/David/Documents/Arduino/libraries/MySensors/core/MyTransport.cpp: In function 'bool transportCheckUplink(bool)': /Users/David/Documents/Arduino/libraries/MySensors/core/MyTransport.cpp:485:44: error: expected ')' before 'PRIu8' TRANSPORT_DEBUG(PSTR("TSF:CKU:DGWC,O=%" PRIu8 ",N=%" PRIu8 "\n"), _transportConfig.distanceGW, ^ /Users/David/Documents/Arduino/libraries/MySensors/MyConfig.h:1815:43: note: in definition of macro 'DEBUG_OUTPUT' #define DEBUG_OUTPUT(x,...) hwDebugPrint(x, ##__VA_ARGS__) //!< debug ^ /Users/David/Documents/Arduino/libraries/MySensors/core/MyTransport.cpp:485:4: note: in expansion of macro 'TRANSPORT_DEBUG' TRANSPORT_DEBUG(PSTR("TSF:CKU:DGWC,O=%" PRIu8 ",N=%" PRIu8 "\n"), _transportConfig.distanceGW, ^ /Users/David/Documents/Arduino/libraries/MySensors/core/MyTransport.cpp: In function 'bool transportAssignNodeID(uint8_t)': /Users/David/Documents/Arduino/libraries/MySensors/core/MyTransport.cpp:504:42: error: expected ')' before 'PRIu8' TRANSPORT_DEBUG(PSTR("TSF:SID:OK,ID=%" PRIu8 "\n"),newNodeId); // Node ID assigned ^ /Users/David/Documents/Arduino/libraries/MySensors/MyConfig.h:1815:43: note: in definition of macro 'DEBUG_OUTPUT' #define DEBUG_OUTPUT(x,...) hwDebugPrint(x, ##__VA_ARGS__) //!< debug ^ /Users/David/Documents/Arduino/libraries/MySensors/core/MyTransport.cpp:504:3: note: in expansion of macro 'TRANSPORT_DEBUG' TRANSPORT_DEBUG(PSTR("TSF:SID:OK,ID=%" PRIu8 "\n"),newNodeId); // Node ID assigned ^ /Users/David/Documents/Arduino/libraries/MySensors/core/MyTransport.cpp:507:45: error: expected ')' before 'PRIu8' TRANSPORT_DEBUG(PSTR("!TSF:SID:FAIL,ID=%" PRIu8 "\n"),newNodeId); // ID is invalid, cannot assign ID ^ /Users/David/Documents/Arduino/libraries/MySensors/MyConfig.h:1815:43: note: in definition of macro 'DEBUG_OUTPUT' #define DEBUG_OUTPUT(x,...) hwDebugPrint(x, ##__VA_ARGS__) //!< debug ^ /Users/David/Documents/Arduino/libraries/MySensors/core/MyTransport.cpp:507:3: note: in expansion of macro 'TRANSPORT_DEBUG' TRANSPORT_DEBUG(PSTR("!TSF:SID:FAIL,ID=%" PRIu8 "\n"),newNodeId); // ID is invalid, cannot assign ID ^ /Users/David/Documents/Arduino/libraries/MySensors/core/MyTransport.cpp: In function 'uint8_t transportPingNode(uint8_t)': /Users/David/Documents/Arduino/libraries/MySensors/core/MyTransport.cpp:612:44: error: expected ')' before 'PRIu8' TRANSPORT_DEBUG(PSTR("TSF:PNG:SEND,TO=%" PRIu8 "\n"), targetId); ^ /Users/David/Documents/Arduino/libraries/MySensors/MyConfig.h:1815:43: note: in definition of macro 'DEBUG_OUTPUT' #define DEBUG_OUTPUT(x,...) hwDebugPrint(x, ##__VA_ARGS__) //!< debug ^ /Users/David/Documents/Arduino/libraries/MySensors/core/MyTransport.cpp:612:3: note: in expansion of macro 'TRANSPORT_DEBUG' TRANSPORT_DEBUG(PSTR("TSF:PNG:SEND,TO=%" PRIu8 "\n"), targetId); ^ /Users/David/Documents/Arduino/libraries/MySensors/core/MyTransport.cpp: In function 'void transportProcessMessage()': /Users/David/Documents/Arduino/libraries/MySensors/core/MyTransport.cpp:660:40: error: expected ')' before 'PRIu8' TRANSPORT_DEBUG(PSTR("TSF:MSG:READ,%" PRIu8 "-%" PRIu8 "-%" PRIu8 ",s=%" PRIu8 ",c=%" PRIu8 ",t=%" ^ /Users/David/Documents/Arduino/libraries/MySensors/MyConfig.h:1815:43: note: in definition of macro 'DEBUG_OUTPUT' #define DEBUG_OUTPUT(x,...) hwDebugPrint(x, ##__VA_ARGS__) //!< debug ^ /Users/David/Documents/Arduino/libraries/MySensors/core/MyTransport.cpp:660:2: note: in expansion of macro 'TRANSPORT_DEBUG' TRANSPORT_DEBUG(PSTR("TSF:MSG:READ,%" PRIu8 "-%" PRIu8 "-%" PRIu8 ",s=%" PRIu8 ",c=%" PRIu8 ",t=%" ^ /Users/David/Documents/Arduino/libraries/MySensors/core/MyTransport.cpp:669:41: error: expected ')' before 'PRIu8' TRANSPORT_DEBUG(PSTR("!TSF:MSG:LEN,%" PRIu8 "!=%" PRIu8 "\n"), payloadLength, ^ /Users/David/Documents/Arduino/libraries/MySensors/MyConfig.h:1815:43: note: in definition of macro 'DEBUG_OUTPUT' #define DEBUG_OUTPUT(x,...) hwDebugPrint(x, ##__VA_ARGS__) //!< debug ^ /Users/David/Documents/Arduino/libraries/MySensors/core/MyTransport.cpp:669:3: note: in expansion of macro 'TRANSPORT_DEBUG' TRANSPORT_DEBUG(PSTR("!TSF:MSG:LEN,%" PRIu8 "!=%" PRIu8 "\n"), payloadLength, ^ /Users/David/Documents/Arduino/libraries/MySensors/core/MyTransport.cpp:677:42: error: expected ')' before 'PRIu8' TRANSPORT_DEBUG(PSTR("!TSF:MSG:PVER,%" PRIu8 "!=%" PRIu8 "\n"), mGetVersion(_msg), ^ /Users/David/Documents/Arduino/libraries/MySensors/MyConfig.h:1815:43: note: in definition of macro 'DEBUG_OUTPUT' #define DEBUG_OUTPUT(x,...) hwDebugPrint(x, ##__VA_ARGS__) //!< debug ^ /Users/David/Documents/Arduino/libraries/MySensors/core/MyTransport.cpp:677:3: note: in expansion of macro 'TRANSPORT_DEBUG' TRANSPORT_DEBUG(PSTR("!TSF:MSG:PVER,%" PRIu8 "!=%" PRIu8 "\n"), mGetVersion(_msg), ^ /Users/David/Documents/Arduino/libraries/MySensors/core/MyTransport.cpp:762:53: error: expected ')' before 'PRIu8' TRANSPORT_DEBUG(PSTR("TSF:MSG:FPAR OK,ID=%" PRIu8 ",D=%" PRIu8 "\n"), _transportConfig.parentNodeId, ^ /Users/David/Documents/Arduino/libraries/MySensors/MyConfig.h:1815:43: note: in definition of macro 'DEBUG_OUTPUT' #define DEBUG_OUTPUT(x,...) hwDebugPrint(x, ##__VA_ARGS__) //!< debug ^ /Users/David/Documents/Arduino/libraries/MySensors/core/MyTransport.cpp:762:9: note: in expansion of macro 'TRANSPORT_DEBUG' TRANSPORT_DEBUG(PSTR("TSF:MSG:FPAR OK,ID=%" PRIu8 ",D=%" PRIu8 "\n"), _transportConfig.parentNodeId, ^ /Users/David/Documents/Arduino/libraries/MySensors/core/MyTransport.cpp:775:49: error: expected ')' before 'PRIu8' TRANSPORT_DEBUG(PSTR("TSF:MSG:PINGED,ID=%" PRIu8 ",HP=%" PRIu8 "\n"), sender, ^ /Users/David/Documents/Arduino/libraries/MySensors/MyConfig.h:1815:43: note: in definition of macro 'DEBUG_OUTPUT' #define DEBUG_OUTPUT(x,...) hwDebugPrint(x, ##__VA_ARGS__) //!< debug ^ /Users/David/Documents/Arduino/libraries/MySensors/core/MyTransport.cpp:775:6: note: in expansion of macro 'TRANSPORT_DEBUG' TRANSPORT_DEBUG(PSTR("TSF:MSG:PINGED,ID=%" PRIu8 ",HP=%" PRIu8 "\n"), sender, ^ /Users/David/Documents/Arduino/libraries/MySensors/core/MyTransport.cpp:789:53: error: expected ')' before 'PRIu8' TRANSPORT_DEBUG(PSTR("TSF:MSG:PONG RECV,HP=%" PRIu8 "\n"), ^ /Users/David/Documents/Arduino/libraries/MySensors/MyConfig.h:1815:43: note: in definition of macro 'DEBUG_OUTPUT' #define DEBUG_OUTPUT(x,...) hwDebugPrint(x, ##__VA_ARGS__) //!< debug ^ /Users/David/Documents/Arduino/libraries/MySensors/core/MyTransport.cpp:789:7: note: in expansion of macro 'TRANSPORT_DEBUG' TRANSPORT_DEBUG(PSTR("TSF:MSG:PONG RECV,HP=%" PRIu8 "\n"), ^ /Users/David/Documents/Arduino/libraries/MySensors/core/MyTransport.cpp: In function 'bool transportSendWrite(uint8_t, MyMessage&)': /Users/David/Documents/Arduino/libraries/MySensors/core/MyTransport.cpp:1001:42: error: expected ')' before 'PRIu8' TRANSPORT_DEBUG(PSTR("%sTSF:MSG:SEND,%" PRIu8 "-%" PRIu8 "-%" PRIu8 "-%" PRIu8 ",s=%" PRIu8 ",c=%" ^ /Users/David/Documents/Arduino/libraries/MySensors/MyConfig.h:1815:43: note: in definition of macro 'DEBUG_OUTPUT' #define DEBUG_OUTPUT(x,...) hwDebugPrint(x, ##__VA_ARGS__) //!< debug ^ /Users/David/Documents/Arduino/libraries/MySensors/core/MyTransport.cpp:1001:2: note: in expansion of macro 'TRANSPORT_DEBUG' TRANSPORT_DEBUG(PSTR("%sTSF:MSG:SEND,%" PRIu8 "-%" PRIu8 "-%" PRIu8 "-%" PRIu8 ",s=%" PRIu8 ",c=%" ^ /Users/David/Documents/Arduino/libraries/MySensors/core/MyTransport.cpp: In function 'int16_t transportSignalReport(char)': /Users/David/Documents/Arduino/libraries/MySensors/core/MyTransport.cpp:1174:39: error: expected ')' before 'PRIu8' TRANSPORT_DEBUG(PSTR("TSF:SIR:CMD=%" PRIu8 ",VAL=%" PRIu16 "\n"), reportCommand, result); ^ /Users/David/Documents/Arduino/libraries/MySensors/MyConfig.h:1815:43: note: in definition of macro 'DEBUG_OUTPUT' #define DEBUG_OUTPUT(x,...) hwDebugPrint(x, ##__VA_ARGS__) //!< debug ^ /Users/David/Documents/Arduino/libraries/MySensors/core/MyTransport.cpp:1174:2: note: in expansion of macro 'TRANSPORT_DEBUG' TRANSPORT_DEBUG(PSTR("TSF:SIR:CMD=%" PRIu8 ",VAL=%" PRIu16 "\n"), reportCommand, result); ^ /Users/David/Documents/Arduino/libraries/MySensors/core/MySensorsCore.cpp: In function 'void _begin()': /Users/David/Documents/Arduino/libraries/MySensors/core/MySensorsCore.cpp:171:42: error: expected ')' before 'PRIu8' CORE_DEBUG(PSTR("MCO:BGN:INIT OK,TSP=%" PRIu8 "\n"), isTransportReady()); ^ /Users/David/Documents/Arduino/libraries/MySensors/MyConfig.h:1815:43: note: in definition of macro 'DEBUG_OUTPUT' #define DEBUG_OUTPUT(x,...) hwDebugPrint(x, ##__VA_ARGS__) //!< debug ^ /Users/David/Documents/Arduino/libraries/MySensors/core/MySensorsCore.cpp:171:2: note: in expansion of macro 'CORE_DEBUG' CORE_DEBUG(PSTR("MCO:BGN:INIT OK,TSP=%" PRIu8 "\n"), isTransportReady()); ^ /Users/David/Documents/Arduino/libraries/MySensors/core/MySensorsCore.cpp: In function 'bool _processInternalMessages()': /Users/David/Documents/Arduino/libraries/MySensors/core/MySensorsCore.cpp:409:41: error: expected ')' before 'PRIu8' CORE_DEBUG(PSTR("MCO:PIM:NODE REG=%" PRIu8 "\n"), _coreConfig.nodeRegistered); // node registration ^ /Users/David/Documents/Arduino/libraries/MySensors/MyConfig.h:1815:43: note: in definition of macro 'DEBUG_OUTPUT' #define DEBUG_OUTPUT(x,...) hwDebugPrint(x, ##__VA_ARGS__) //!< debug ^ /Users/David/Documents/Arduino/libraries/MySensors/core/MySensorsCore.cpp:409:4: note: in expansion of macro 'CORE_DEBUG' CORE_DEBUG(PSTR("MCO:PIM:NODE REG=%" PRIu8 "\n"), _coreConfig.nodeRegistered); // node registration ^ /Users/David/Documents/Arduino/libraries/MySensors/core/MySensorsCore.cpp: In function 'int8_t _sleep(uint32_t, bool, uint8_t, uint8_t, uint8_t, uint8_t)': /Users/David/Documents/Arduino/libraries/MySensors/core/MySensorsCore.cpp:542:33: error: expected ')' before 'PRIu32' CORE_DEBUG(PSTR("MCO:SLP:MS=%" PRIu32 ",SMS=%" PRIu8 ",I1=%" PRIu8 ",M1=%" PRIu8 ",I2=%" PRIu8 ^ /Users/David/Documents/Arduino/libraries/MySensors/MyConfig.h:1815:43: note: in definition of macro 'DEBUG_OUTPUT' #define DEBUG_OUTPUT(x,...) hwDebugPrint(x, ##__VA_ARGS__) //!< debug ^ /Users/David/Documents/Arduino/libraries/MySensors/core/MySensorsCore.cpp:542:2: note: in expansion of macro 'CORE_DEBUG' CORE_DEBUG(PSTR("MCO:SLP:MS=%" PRIu32 ",SMS=%" PRIu8 ",I1=%" PRIu8 ",M1=%" PRIu8 ",I2=%" PRIu8 ^ /Users/David/Documents/Arduino/libraries/MySensors/core/MySensorsCore.cpp:572:35: error: expected ')' before 'PRIu32' CORE_DEBUG(PSTR("MCO:SLP:MS=%" PRIu32 "\n"), sleepingTimeMS); ^ /Users/David/Documents/Arduino/libraries/MySensors/MyConfig.h:1815:43: note: in definition of macro 'DEBUG_OUTPUT' #define DEBUG_OUTPUT(x,...) hwDebugPrint(x, ##__VA_ARGS__) //!< debug ^ /Users/David/Documents/Arduino/libraries/MySensors/core/MySensorsCore.cpp:572:4: note: in expansion of macro 'CORE_DEBUG' CORE_DEBUG(PSTR("MCO:SLP:MS=%" PRIu32 "\n"), sleepingTimeMS); ^ /Users/David/Documents/Arduino/libraries/MySensors/core/MySensorsCore.cpp:635:34: error: expected ')' before 'PRIi8' CORE_DEBUG(PSTR("MCO:SLP:WUP=%" PRIi8 "\n"), result); // sleep wake-up ^ /Users/David/Documents/Arduino/libraries/MySensors/MyConfig.h:1815:43: note: in definition of macro 'DEBUG_OUTPUT' #define DEBUG_OUTPUT(x,...) hwDebugPrint(x, ##__VA_ARGS__) //!< debug ^ /Users/David/Documents/Arduino/libraries/MySensors/core/MySensorsCore.cpp:635:2: note: in expansion of macro 'CORE_DEBUG' CORE_DEBUG(PSTR("MCO:SLP:WUP=%" PRIi8 "\n"), result); // sleep wake-up ^
I'm not sure why this only occurs with the GertSanders board definitions. I hope we can find a solution on this.