Why do you need it?
At this stage you have an idea for a new device that could (and probably
will, if well conceived) make you millions of dollars. Alternatively, you
might have a device that is not working, because you tried to get the programming
done quickly and cheaply -- and now it doesn't work..
In either case, what you need is knowledgeable expert programming of special chips that integrate with your new invention, and which link
to the mechanical parts of your new invention -- to make it work correctly,
exactly as you conceived it.
That is firmware. If you do not get firmware to work correctly, as you
intended, or as marketing demands dictate -- then your invention is a total
failure. It could have been a money-making success with the right programming, but without
it, your invention fails to work correctly.
Firmware is the least expensive part of the development cycle for almost all new hardware devices
and inventions. Making the prototypes, promoting the product, and manufacturing
the hardware, are almost always 90% of the expense of any new commercial
venture.
Many companies try to economize on firmware -- they try to get it done
as cheap as possible, hiring inexperienced programmers who offer a less-than-realistic
bid. Time and time again, these programmers actually cost 2x to 3x more
than what it should have cost to do the programming right the first time.
We are often asked to fix other people's failed attempts at firmware. It
may cost more to fix it than for us to redesign the firmware correctly
anew. Fixing other's design flaws takes time. Get it done right the first
time - it costs less that way !