Really good read, and great tips on how to run an internal hackathon. 100% agree on having a theme open to interpretation, prize categories, and kinds of prizes you are giving. :)
Are you guys running it quarterly already? How much time have you guys waited in between hackathons? Also, you say "every engineer who was present was expected to participate". Were the other departments allowed/expected to participate as well? This is something really positive for improving internal relations.