As to me, RepRap describes its protocol clear enough (see link above). There are variations yet not so significant to make it impossible to implement. This is first. Second, when you are saying that "the problem is "Making sure that the other side understands what you mean"." -- what it has to do with USB, serial comm, WiFi, BLuetooth, Ehtenrnet etc? It still down to the fact that one piece of software cannot (and in our case, as it is clearly seen from the discussion, doesn't want to either), understand another piece of software. That's it.
Based on the problem as you've described it,