xbee = DeviceOpen["Serial", {"COM8", "BaudRate" -> 9600}]
RemoveScheduledTask /@ ScheduledTasks[];
lista1 = lista2 = {};
counter = 0;
(* getPoll should include code for the interface error management *)
getPoll[char_, int_] :=
(DeviceWriteBuffer[int, char];
{Join[DateList[], {FromCharacterCode[ DeviceReadBuffer[int, "ReadTerminator" -> "\n"]]}]})
(* generalizing for n Arduinos could be easier if each Arduino answers to a
numeric polling address *)
RunScheduledTask[
AppendTo[lista1, getPoll["#", xbee]];