Sending a heartbeat to recieve MAVlink messages?

Does a MAVLink device, such as an OSD need to send a Heartbeat before it can receive MAVlink messages?

I am not fully sure, but I would say it is not needed. To start receiving messages you only need to request the type of parameter requested and the rate.

I am currently building a light controller based on an Arduino Nano, I can check if you want (it will take some time).