hi @Matthew,
First, you should not have anything plugged in the Expansion Board, no Lopy/Fipy.
On Windows, the fact that went up to 96% and stopped, means there are USB problems(lots of retries and timeout). Try changing something, USB port, cable. We had lots of problems with poor USB cables. Maybe try to remove other USB peripherals, from your PC.
On Linux, please, check if board is in dfu mode, looking at lsusb output, 04D8:EF99 should be visible. It's not clear from dfu-util error, Cannot open DFU device 04d8:ef99, if the device is not enumerated or you don't have rights.
As wild try, maybe you should keep just RX and TX jumpers, on Expansion Board.
<later edit>: FYI, the Expansion board 3 has already the latest firmware, we released just once