I attached my current circuit. I think this helps the discussion
1. What voltage are you boosting to?
I'm not sure what you mean here. Do you mean that you'll run the processor and radio at 2.0volts? I have no experience with this but I doubt you'll get full power out of the radio at this power.
I mean, would it not be better for the efficiency of the voltage booster to reduce the output boost voltage to 2 V instead of 3.3V.
The components RFM69, Atmega328p would work with 2V as well. Or is the power consumption still the same due to higher currents?
2. Which power pin are you driving with the boosted voltage?
AREF should not be tied to a power pin. Unless you are configuring for External Reference, AREF would be an output and should just have a filter cap on it.
See pdf attached...
3. When you say 'AtMega' running at 8MHz, what processor, exactly are you using? What fuse settings are you using?
high_fuse = 0xDA is a problem. You're selecting the wrong boot start address ($3C00). Moteino with the DualOptibootLoader would use 0xDC ($3E00).
I do have the standard bootloader, without OTA flashing....But I guess it is not an issue because the 0xDC is just a bootloader size of 512 and I have 1024 with 0xDA. To safe memory I could of course also use your 0xDC, do not I?
4. Which RFM69 are you using W or HW?
If you're using the ATC library then I'd recommend that you use a value of 32, rather than 0. 0 will not change the PA settings and, depending on how those are set up, you may be driving more power than you think. The ATC library purposefully left the range from 0-31 pretty much as the original RFM69 library did so existing code wouldn't be affected by the changes in the new library. 32 will give you the Minimum power output available on an HW.
I use the functions enclosed in the powerFkt.cpp file
Would really give me a value of 32 the minimum output power?
5. How is the COM pin on the ULN2003 powered? What is the interface to the IR diode?
Ok, so the node wakes up SOMETIME during the Gateway's burst (duration could be max), waits for quiet RSSI, and then sends to the Gateway? Does the Gateway receive the packet using receiveDone() or as an Ack to sendwithRetry()? Potentially the node's radio could be awake for the entire duration of the Gateway's burst, correct? How often does the Gateway send - I'm talking about the interval between bursts?
Absolutely right!
I receive the burst message like the following
* poll() {
receiveDone() // I changed the receive done to set the RFM to MODE_SLEEP instead of MODE_STANDBY if a msg is available in the buffer
"add received Command to a RingBuffer which will be executed in the next poll circle"
"add sendACK command to a RingBuffer which will be executed in the next poll circle"
}
* "sendACK will be executed in the poll with the standard moteino RFM send(..) command"
* send(...) {
.....
while (!canSend() && (TIMING::millis()-now) < RF69_CSMA_LIMIT_MS) receiveDone();
.....
sendFrame(...)
}
I hope I described it well enough.