The loader (whick reads the firmware) is very choosy about the stick – try one < 1gb.
I have a thery that it is something to do with the allocation table size – (the default varies under windows) but I have not tested this well. The file must be in the root folder and named exactly as indicated (including case)
Mine works fine with a 16GB stick, but strangely after prolonged use and filling it up with other stuff it stops working as a firmware updater until the stick is reformatted.