Can there only be one ofxUDPManager per program?

I have four devices I’m trying to communicate with via UDP (all on different IP’s) like so…

ofxUDPManager udpConnection;
ofxUDPManager udpConnection2;
ofxUDPManager udpConnection3;
ofxUDPManager udpConnection4;

udpConnection.Create();
udpConnection.Connect("192.168.1.1",8888);

udpConnection2.Create();
udpConnection2.Connect("192.168.1.2",8888);

udpConnection3.Create();
udpConnection3.Connect("192.168.1.3",8888);

udpConnection4.Create();
udpConnection4.Connect("192.168.1.4",8888);

In update():

    udpConnection.Send(message1, msgSize);
    udpConnection.Send(message2, msgSize);
    udpConnection.Send(message3, msgSize);
    udpConnection.Send(message4, msgSize);
    
    udpConnection2.Send(message1, msgSize);
    udpConnection2.Send(message2, msgSize);
    udpConnection2.Send(message3, msgSize);
    udpConnection2.Send(message4, msgSize);
     
    udpConnection3.Send(message1, msgSize);
    udpConnection3.Send(message2, msgSize);
    udpConnection3.Send(message3, msgSize);
    udpConnection3.Send(message4, msgSize);
    
    udpConnection4.Send(message1, msgSize);
    udpConnection4.Send(message2, msgSize);
    udpConnection4.Send(message3, msgSize);
    udpConnection4.Send(message4, msgSize);

This doesn’t work like I thought it would, only one device ends up reading the data. Why is this so? How can I target different IPs?