Part of my motivation is learning something new so the risk to me isn't is big as might seem - I would get to apply my expertise in the embedded world instead of just desktop applications. The stuff I learn on this project will be applicable to future projects. But agree, speculative work is risky.
The flip side of risk is that the last thing I want to do is take this contract without absolutely knowing that I can solve their problem. The only way to do that is to actually solve the problem.
These guys really can't afford to miss their deadline. The last thing I want to do is be in the position of being blamed for them missing their deadline. Delivering a solution that saves their big project, saves them money and helps me put food on the table is win-win by my calculus.
I truly consider myself a partner with my clients. I sincerely want them to be successful. I also see nothing wrong with capturing some of the value I generate.
If you partnered up with someone, would you tell them "Nah, you keep the equity. Just tell your friends what a good job I did."? I know if I leave money on the table they are not going to turn around and pass the savings on to their customer or donate it to charity. Instead they will simply add my "gift" to their bottom line. (And there is nothing wrong with that.)
I think a lot of people are conditioned to be "workers" who sell hours of labor. A business sells value and I'm a businessman.