Is it a GPLv3 violation for a project to charge a fee for downloading binaries? Concretely I am wondering about this case: http://moodeaudio.org/ The project is clearly licenced under GPLv3 as stated on the website and uses open source software in it. However it is not distributed freely. A fee of 10$ is charged for downloading. Furthermore I can not find any links to the source code anywhere on the website.
The GPL does not forbid you from charging money for software, nor does it require you to provide source code to the general public. What the GPL requires is that your software be free software, with "free" used in the sense of "free speech" rather than the sense of "free beer." According to the Free Software Foundation (authors of the GPL), the right of users to sell software is a requirement for it to be free software.
If you receive a GPL license for software, you can give it to whoever you want provided you also ensure that person can get the source code. You don't need to make the source code available to the public, only to the people you actually distribute the binaries to. The GPL is structured along the lines of "if you distribute the software to someone, you must give them these rights;" it is not structured along the lines of "you must distribute the software."
Of course, if users have the right to distribute copies for free, it's hard in practice to charge money (all it takes is one user distributing copies). But that doesn't mean you can't try. Some companies make substantial money selling free software through various models (e.g. Red Hat, which charges money for support). Others might bank on the fact that plenty of people are willing to pay to get it from the official site, and aren't interested in finding a free copy somewhere. It doesn't matter; as long as they license the software to you under the GPL and give purchasers access to the source code on the same terms, they're in the clear (if you want to redistribute binaries, it's your job to redistribute the source code as well).
The rules are: You can charge any amount, without limits, for the software. You can charge your reasonable cost for providing someone with the source code. You cannot charge anything for the license. So charging $10 for sending me your source code, or for downloading the source code which requires you to run a server is Ok.
If I think $10 is too much, then I still cannot sue you. Only the copyright holder can sue you, not for charging too much, but for copyright infringement. If you charged $10, it's unlikely that the copyright holder would bother, and they would probably not win. If you charged $1,000, it's a lot more likely that the copyright holder would bother, and much more likely to win in court that you $1,000 is not the reasonable cost for providing a copy, which means you are guilty of copyright infringement.
There seems to be a bit of confusion about this according to comments. Let's say I sell a router with GPL licensed software. I can charge whatever I want for the software, but if that raises the price of my router to $1,000, then I'm not going to sell any. But I may not want to give anyone, especially my competitors, access to the source code and therefore I decide to charge $1,000 for the source code. And THAT is what the GPL license doesn't allow me to do. It's entirely up to me whether I give you the software or not, or how much I charge, but IF I give the software to you, you must be able to get the source code without paying significant amounts of money.