Isn't open source with a paywall for those who're going to use it commercially so they have to pay a fee? I've read that on apps like Team Viewer and such so this shouldn't be any different.
Short version. No, not at all and most things that fall under the banner of open source are anything but a paywall for commercial use. Likewise teamviewer is not open source in any capacity that I have ever seen.
Long version... well we would be here all week. I will go for the slightly condensed version
Owing to various well known problems (most notably things like the
halting problem) computer programs can be written and have you not easily figure out how does what it does. The way this happens is when something is written in a high level language and is converted (compiled) into machine code. The code in the high level language is known as source code.
As programs count as copyrighted works you can then have a program distributed to do a task but not be edited/dissected easily. You then get to charge for updates, versions with more features, versions that work on other types of computer, versions that work with newer types of format/data.... all that stuff you are used to with upgrades and different versions.
Open source is when a program has its source released, however it goes somewhat further than that and this is where it gets contentious as various groups have various opinions on what counts and what does not. For instance Microsoft recently released the source code to earlier versions of MS DOS (
http://gbatemp.net/threads/microsof...rce-code-also-word-for-windows-source.363749/ ), however the license associated with it is very restrictive if you want to comply with it (
http://www.computerhistory.org/atchm/microsoft-research-license-agreement-msdos-v1-1-v2-0/ ). Other projects that get called open source have all sorts of different things attached to them, almost all of them will allow use of the software for free in any capacity, where it gets tricky is when you modify the source code released, use some of the source code in a library to do a task in your other program* and what you have to do in those cases.
Some open source licenses will see me have to make available the changes I make if I want to distribute my changed version publicly (if I keep it within my company or for myself I do not have to do a thing, I may even be able to put my modded version on a web server and not have to do a thing but allow the public to access that), others will not have that restriction and I can release whatever I want and not have to share my changes, in all cases I can charge for the software, however if it is open source then it is kind of pointless to charge** for the software in a similar model to how I might charge for closed source (someone else can get the code, compile it and distribute that for everybody else) so I instead might charge for support for the software/provide support with the paid version.
*programs interacting with each other can also be fun to work through. For instance me calling a program via the command line probably does not count as me using open source code, me taking said code and making a library from it and using that in my program probably does and it only gets odder from there. Knowing this the GPL license family (one of the main ones to try to force code changes to be released) made the lesser GPL (aka LGPL) which several projects will license or dual license their libraries under.
**several companies still do charge for software, most notably things like SUSE linux though it also then has things like opensuse made from it, also things like CentOS which aims to be compatible with the paid for distribution known as RHEL (Red Hat Enterprise Linux).
Open source also does not mean you, as a developer, surrender your rights to the program either. To that end if I developed an open source program (say under the GPL license) I could still say you can use it under the GPL, or if that is too restrictive then call me up and I will allow you to buy the rights to use it under some other license.
Finally if you think this is tricky I advise you never look at Microsoft's licensing agreements.... not all that large companies may well have a person with a full time job to ensure license compliance with just Microsoft software. As a sneak peak their licenses may vary depending upon how many CPUs you have in your system, how many people are accessing it at once (and this number can be as low as 10 for something as basic as SMB file shares --
http://msdn.microsoft.com/en-us/library/bb147520(v=winembedded.5).aspx ). And if you think Microsoft is bad never look at Cisco and definitely never look at Oracle databases. Oh and there are no software patents in several countries so you might also have that to deal with (or indeed ignore if you live in a place that lacks them).