I have a very simple rule for difficult to by for people at xmas.
get THEM to write out a list of stuff they want. at least 10 items on it.
make THEM do the hard work.
then pick the stuff of it you can get them/want to get them.
that way they get what they want without you sweating it, but they STILL get a "surprise" as they don't know how you will interoperate the list - plus there is always next year to get more stuff from the list
as they say, simples.