I have been reading docs for days to find out how I can implement the following, but have not been able to find all answers reading docs or forums.
See picture here: https://objective.no/gostemp/XBee_Scematic_01.PNG
(Note: I do not have any Arduino, and I do not want one in this project)
For Noise Immunity and to cover distances I think I want to use XBee DigiMesh units T1 to T10:
T1 to T10 will be configured for Cyclic sleep for 140 sec, wake up, read I2C data
from two sensors (*) (Temp & Humidity) and send it to the XBee UART & go back to sleep.
I want each XBee to be powered from 3.6v ~2500 mAh battery that should last for >= 1 year.
(Meaning Wake Time should be <= 1 second: Preferably 0.2 sec)
(*) Using uP Board I have made (works: Used in another project). Uses ~10 nA in Sleep.
Power turned on when XBee wakes up.
I want to use API Mode on the PC (using XBee Python Library) to Read the Data over Wifi (no internet) using a ConnectPort X2 (DigiMesh to Ethernet - X2-M11-EM-W)
I need to know which XBee (T1 .. T10) the data comes from!
a) Can this be done at all using the hardware in the picture above?
Or is there a better / another hardware & software solution than what I describe here?
b) Can I use the Python Library on the PC to contact each XBee in API Mode?
Or is there another way this can be done?
c) I assume I have to use the Send / Receive IP Functions, but this raises the questions:
i) Can ConnectPort be configured to map IP Addresses to each XBee?
ii) Will Send / Receive IP work if I am only on the local Network (LAN)?
d) Will it be possible to Read data from a Sleeping XBee: Will the Data sent from the Xbee when
it wake up be cached at the ConnectPort (Controller) (2) so that it is available for read?
i) Polling for the XBee to wake up would need >= 5 sec wake time --> Power consumption would
be too high: (~15 AH battery) for one year operation.
(2) Digi Document "ZigBee RF Modules" states:
Since router and coordinator devices can buffer data for end device children up to 30 seconds...
Does this Buffering also mean that the controller will buffer data sent from End XBees for 30 sec? In this case, I can read last data from any XBee even when sleeping, if I read this data e.g. every 20 seconds from the PC.
The PC in the picture is running all the time, and the XBees could send the data to a server running there, but I have no idea how....
Thanks a lot for any help I can get: My project is stalled until I find a solution....