wysyłam dane w taki oto sposób:

  idUDPClient1.Broadcast('lol',idUDPClient1.Port);

właściwości komponentu mam ustawione:
broadcastenabled:true
port:8090
receivetimeout:0
reszta bez zmian

procedura odczytująca na serwerze wygląda tak:

procedure TUDPMainForm.UDPServerUDPRead(Sender: TObject; AData: TStream; ABinding: TIdSocketHandle);
var
  DataStringStream: TStringStream;
  s: String;
begin
  DataStringStream := TStringStream.Create('');
  try
    DataStringStream.CopyFrom(AData, AData.Size);
    UDPMemo.Lines.Add('Received "' + DataStringStream.DataString + '" from ' + ABinding.PeerIP + ' on port ' + IntToStr(ABinding.PeerPort));
    s := 'Replied from ' + UDPServer.LocalName + ' to "' + DataStringStream.DataString + '"';
    ABinding.SendTo(ABinding.PeerIP, ABinding.PeerPort, s[1], Length(s));
  finally
    DataStringStream.Free;
  end;
end;

właściwości ustawione tak:
broadcastenabled:true
port:8090
reszta bez zmian

gdy wysyłam wiadomość linijką na zamej górze to ona nie dochodzi, co jest źle ? Dodam, że sampel pochodzi z Demosów Indy