I worked full time remote for 12 years doing driver / kernel / firmware work for an IHV. What I missed most about working in an office (and what I liked most about going to work at an office again 2 years ago) is the sense of separation and decompression that a commute gives you. If you're not careful, you can easily wind up always working all the time since your "office" is right in your living space.
I've been working at home for the last 5. Doing iOS, android, desktop apps and firmware. I find the firmware the most frustrating, probably because I'm the least experienced at it. Trying to debug things by sharing screenshot of a USB scope is a pain. Having to drive in every time I need a mod done. Even worse is driving in and whatever piece of equipment I wanted is at somebody else's house (or forgotten at mine). I…
By the time I had hardware access, we always had jtag or more advanced access methods working.
A big frustration was using tools like PCIe logic analyzers remotely. Luckily, these were mostly controlled by PCs, and we could access them via an IP KVM solution (but again, we had to wait for on-site labstaff to hook up physical connections).