As a FW engineer, my software has released the magic smoke a lot.
That's why firmware is often considered a separate category from software even though technically it's the same thing. Software is code that expects the hardware to works as specified, firmware is what achieves that.