Well, you resources being exhausted does not necessarily mean a lost passion, what I want to say is that most probably they lost their passion elsewhere, and not because they're working hard.
Have you thought about how you manage your project yourself? Are you giving virtual ownership of the tasks to your team members or are you micromanaging them (doing things always your way may very well deteriorate their passion for the project)? Here are some tips to restore passion in your project so that your team members can be happier (which will increase productivity):
- Never micormanage: micromanaging is the worst thing a project manager can do to his team, they are paid and happy to to do their job, they don't expect you and they don't want you to do it for them.
- Avoid overtime, even if it's paid. Overtime will reduce productivity on the long run, and will make team members frustrated and unhappy, and they will start loathing the project if overtimes are becoming more of a norm rather than the exception.
- Do not randomly assign tasks to people, but rather assign tasks based on their skills (do not assign a very hard programming task to an entry level programmer)
- Do not ask them every hour about the status of their tasks
- Only help team members when they ask for help, or when you feel that the task is delayed
- Do not make your team members feel that they are stupid
- Allow your team to be creative and develop their own solution to a problem they're facing
- Have a team lead
- Consider the feedback you're receiving from team members when creating the project schedule (for example, if they say the task will take 5 days, do not put it as 2 days just because you think it can take less)
- Allow your team members to feel that they are part of the project, and the project will never be finished without them. Everyone should feel ownership of the project, that he can affect the outcome of the project, and the outcome of the project can affect him.
...and, most importantly:
- Control your change requests: If you allow every change request to go through then (trust me) you will reach a situation where you will be "introducing changes to previous changes that were changed before" (if you get what I mean). Only allow meaningful change requests that are necessary to the project, otherwise move the change requests to a phase II, or just don't process them (of course after successfully convincing the client and/or the stakeholders)...