Generating power from waste heat