How do I address an end device?

depends on your situation. If you’re configuring an Xbee node, you can set it’s DH/DL values to the targets SH/SL values. If you’re asking how to do this from python. It might look something like this:
from socket import *

DESTINATION=(“00:0d:6f:00:00:06:89:29!”, 0xe8, 0xc105, 0x11, 2,0)

new zigbee structure:

#(‘[00:13:a2:00:40:0a:02:95]!’, 232, 49412, 16, 2, 0)

sd = socket(AF_ZIGBEE, SOCK_DGRAM, ZBS_PROT_TRANSPORT)

sd.bind((“”, 0xe8, 0, 0))

sd.sendto(“Hello, World!”, 0, DESTINATION)