I have discovered a method used by the Acer 640BU (Benq 640 BU) scanner to report the status of the front panel buttons.
The 640BU send some specific packets from its 3rd backend, when a button is pressed:
(252, 6, 0, 0, 0, 0, 0, 1) - for the 1st button
(252, 6, 0, 0, 0, 0, 0, 8) - for the 2nd button
(252, 6, 0, 0, 0, 0, 0, 32) - for the 3rd button
Sometimes also (252, 6, 0, 0, 0, 0, 0, 4) packet is sent (it seems, that it is generated, when you press a button while scanner is still busy).
I think, that this info may be useful to add button support for this scanner.
As a demonstration, I have also prepared (and attached) a simple utility in Python, based on python-sane and pyusb extensions, which automatically scans documents and saves them to the consecutively numbered files, after pressing of the left button.