There are two versions of the send() function. One is meant for TCP use, the other for UDP.
The one for TCP has this signature:
conn_writer.send(datagram, connection, block=False)
With UDP, however, you have to set specify a destination host address, so the signature looks as follows:
conn_writer.send(datagram, connection, address, block=False)