I've had the opportunity to work with a lot of remote developers. I've worked with some really great one and some pretty awful ones. A lot of people thing working remotely is exactly the same as working in an office, but you get to wear sweat pants and you get more flexible working hours. This is pretty far from true. Being an OK remote developer takes a fair amount of effort, but being a great remote developer takes a great deal of effort. Most of the really great remote developers I've worked with share the same qualities and work ethic. The apply a great deal to working in a different office than your team or when you are in the position of having to work from home more often than in the office.
You don't just need to communicate. You need to over communicate and choose the appropriate channel. We have email, IM, phones, and issue trackers at my job. If you need someone's immediate attention, don't send an email. An email can be overlooked or ignored. Be specific with your needs and ask questions when you have requests.
Let people know your schedule if you don't work the same hours as everyone else. Make sure your IM client status matches your actual status. It's pretty irritating to see someone is offline for 15 hours, it's the middle of the work day and you've seen emails and work being done. Being a stealth employee isn't cool.
Make your presence known. It's easy to forget about people you don't see you every day. Your work is just as important as someone sitting in another office and it's up to you to make sure they know that. Your coworkers may not even know your specific skill sets because they can't look over your should every once in a while. Chat up other employees when you have been thinking about something complicated or have a good idea. There is a developer that regularly hits me up whenever he has a new idea about how to utilize Grunt in our projects. This lets me know he is motivated and interested in new tech.
Video chat whenever possible. We practice continuous performance reviews and we have regular check-ins with our bosses. Video chat if you have to do these remotely. This will help them know they have your attention and vise versa. There is nothing more discouraging than to be on a call with someone about your future and you hear them pounding on their keyboard the whole time hearing "Mmmmhmmmm". Video chat also lets people know your work environment and what you look like. I worked with someone out of a different office for a year without knowing what they looked like. Their Facebook picture was a permanent throw back Thursday picture.
Up the discipline in your work. Make more specific commit messages, code comments and notes in your issue trackers. Your coworkers can't just turn to their right and ask you a quick question about simple stuff. A little extra work can go a long way.
Are these "guidelines" the definitive guide to remote work? Hell no, but hopefully these few tips will help you out.