I'm trying to configure my raspberry pi to act as a DHCP server to so that any device that connects to eth0 or wlan0 will get an IP and be able to communicate with devices connected to the other interface. None of the devices will have internet access. I setup a bridge (br0) which seems to be working, but I'm not having any luck getting a DHCP server to listen on br0. My question is: Am I setting this all up correctly, or am I going down the wrong road completely?
I don't know what you have configured. But what you want is a stand alone access point with a bridge.
You can find an example at Setting up a Raspberry Pi as an access point - the easy way.
Just follow section Setting up an access point with a bridge. Instead of the router at the wired line in that example use your devices. Instead of the file
/etc/systemd/network/12-br0_up.network use this one:
rpi ~$ sudo -Es # if not already done rpi ~# cat > /etc/systemd/network/12-br0_up.network <<EOF [Match] Name=br0 [Network] MulticastDNS=yes Address=192.168.50.1/24 DHCPServer=yes EOF