I am trying to enable serial communication between an arduino and beaglebone black, for a home automation system.
I got it working once(the beaglebone printed data it was receiving) but hasn’t worked since. I followed this guide. My only thought is maybe somehow the Serial4 pins became damaged? If so, how could I test the Beaglebones RX. Using another serial port is an option, although I don’t know how to use them.
This might not be your problem, but it’s important that both boards share a common ground. The picture shown on the link you’ve given is missing a wire. The two blue wires shown at the end of the breadboard are meant to be connecting the two ground rails but don’t as there is no wire bridging the gap in the middle of the breadboard. You can bridge that gap or just use a longer wire that goes from ground rail to ground rail (or arduino gnd to beagle gnd directly). Many protocols (like rs-422, rs-485, ethernet, usb, etc.) use a differential signal to allow communication even if grounds are floating relative to each other but ordinary uarts and spi are completely unreliable without tying ground potential together.