A datalogger can be programmed to initiate data transfer by using the SendVariables() or ModemCallback() instruction in CRBasic.