I've been looking through the forum to help with a discount query, but have drawn a blank.

(1) I want customers to get a free product (eBook) with the purchase of a specific product
(2) I want them to be able to choose from 21 different eBooks and select the one they would like for free
(3) All 21 eBooks are in a particular category and are available to buy individually

Does anybody know if this is possible - or even which of the discount 'types' I should choose to make a start? They are listed in the BP discount manager system as:

Create qualifying thresholds
Change prices by percentage
Buy all in set for discount
Buy X of these for ŁY
Buy X of these get cheapest free
Buy X of these get cheapest Y% off
Buy X of this get another free
Buy X of this get another Y% off

There's also an 'optional setting' when setting up a new discount - free product SKU. Maybe this is what I need to activate?

Any ideas much appreciated. Thanks