Hardware RNG
You should definitely use it if you have it, and push for it if you have any choice as to which hardware is going to be used. A hardware RNG doesn't have to be expensive — the Raspberry Pi has one, as does every smartcard.
Beware that most hardware RNGs are based on oscillators which take a while to become random after power is applied. You may need to wait, or to draw a certain amount of bytes before entropy becomes sufficient.
Entropy injection during manufacturing
If you don't have an RNG on your platform, but you have at least a little persistent storage other than ROM, then you can inject some entropy during production.
If the device's storage is internal, this means that you need to power it up once during the production process and communicate a few hundred bytes to it. Prepare the code image on your device so that it's ready to accept entropy injection at the first boot. Any PC on the production chain would be able to produce .
If the device's storage is manufactured separately, you can inject the entropy in the code or data image that the storage is initialized with.
If you have very little capacity, either due to communication bandwidth or due to storage constraints, the source of entropy can double as a private or secret key. Anything that is unique to the device and is secret will do.
Entropy injection via the network
If there is no way to inject entropy during the manufacturing phase, but the device has network access when put into production, you can inject entropy on the first boot — make the device request entropy from a trusted server. However this process is vulnerable to an active or passive man-in-the-middle attack. The device can authenticate the entropy server (hard-code a public key), but there is no way to protect the communication from eavesdropping since the eavesdropper can reproduce all computation on the device.
Therefore, if you have no way to inject entropy at the manufacturing stage, you need to involve the device users in the entropy injection, when they deploy the device. For example, you may require that the device be connected to a trusted PC where the user would run software that you provide to inject entropy (either generated from the PC or obtained from your server, it wouldn't matter much). After that point the device would only be as trustworthy as the PC where the entropy was generated.