Brother DCP-L2520DW

Download files from the brother printer support page.
Use either the install tool(will complain about missing ia32-libs but works fine) or install the packages manually.
Assign a static ip address to the device and add the printer with CUPS. The device should appear with proper name and abilities.
Do not install the generic packages(named ‘Generic LPR printer driver, Generic CUPSwrapper printer driver’).

For scanning functionality, use brsaneconfig4. Run brsaneconfig4 -q and confirm that the line 39 "DCP-L2520DW" appears. Then run brsaneconfig4 -a name='Friendly Name' model='DCP-L2520DW' ip=192.168...
Or use nodename=printerhostname where printerhostname might be something like, use nmap -sn to find out.
Use simple-scan and select the device, then run a test scan. DPI can be set to up to 2400.

Edit /lib/udev/rules.d/60-libsane.rules and add:

# Brother scanners
ATTRS{idVendor}=="04f9", ENV{libsane_matched}="yes"

For scankey support run brscankey-skey -l. Should it not display anything, killing it with brscankey -t and re-running the previous command might help. (Haven’t gotten it to work yet, and I do not see a use for this.)