“And it came to pass at midnight.” Here the record changes from instruction to historical event. Exodus 12:1-28 had occurred before the 10th of Nisan (the first month) and were instructions of what Israel was to do: select a lamb or goat on the 10th (Exod. 12:3, 5), kill it on the 14th and put the blood on the doorposts (Exod. 12:6-7), and Yahweh would pass through on the 15th (Exod. 12:12; the 15th started at sunset). Exodus 12:29 switches to the 15th of Nisan and Yahweh moving powerfully against Egypt.
“midnight.” The Passover Lamb was killed on the 14th of Nisan, and at sunset the 14th changed to the 15th, (the Jewish day started at sunset, in most of the Western World the day starts at midnight) so the Israelites left Egypt on the 15th of Nisan. The 15th of the lunar month was always a full moon, so the Israelites had plenty of light to travel by when they left that night.