Applying a beacon to a machine requires it to have module_specification and allowed_effects defined.
On an assembling machine, the module_specification can be size 0 and it will work, but not for a furnace. The furnace must have at least size one.
What's with this weird inconsistent behavior?
Found with Spaceblock https://mods.factorio.com/mod/spaceblock
[0.18.21] Inconsistent beacon behavior
Re: [0.18.21] Inconsistent beacon behavior
Chiming in. Confirming that it's strictly limited to furnaces, and not due to burner being the energy source (tested with burner assemblers and furnaces). Neither speed modules nor efficiency modules can supply effects unless the module inventory >= 1. No errors, warnings, or log messages... it just doesn't work.
I have mods! I guess!
Link
Link
Re: [0.18.21] Inconsistent beacon behavior
Thanks for the report. It's now fixed for the next release.
If you want to get ahold of me I'm almost always on Discord.