Sachverhalt: A. A._ (geb. 1988), kosovarischer Staatsangehöriger, heiratete am 15. Januar 2009 im Kosovo eine in der Schweiz niederlassungsberechtigte Landsfrau. Nach der Einreise in die Schweiz am 6. Mai 2009 erhielt er gestützt auf die Ehe eine Aufenthaltsbewilligung; diese wurde in der Folge mehrmals verlängert. Am 25. Oktober 2009 kam die Tochter B._ zur Welt. Die Ehegatten trennten sich am 31. Juli 2012. Mit Urteil des Bezirksgerichts March vom 10. Februar 2014 wurde die Ehe geschieden. B. Am 8. Oktober 2014 beantragte das Amt für Migration des Kantons Luzern beim Staatssekretariat für Migration (SEM) die Zustimmung zur Verlängerung der Aufenthaltsbewilligung von A._. Das SEM teilte A._ am 4. November 2014 mit, es beabsichtige die Zustimmung zu verweigern, und gab ihm Gelegenheit zur Stellungnahme. A._ äusserte sich mit schriftlicher Eingabe vom 6. Januar 2015 zum vorgesehenen Entscheid. Am 17. April 2015 verweigerte das SEM die Zustimmung zur Verlängerung der Aufenthaltsbewilligung und wies A._ aus der Schweiz weg. Die dagegen erhobene Beschwerde wies das Bundesverwaltungsgericht mit Urteil vom 21. Juli 2016 ab. C. A._ erhebt am 12. September 2016 Beschwerde beim Bundesgericht mit dem Antrag, das angefochtene Urteil aufzuheben und das SEM anzuweisen, der Verlängerung der Aufenthaltsbewilligung durch die kantonale Migrationsbehörde die Zustimmung zu erteilen. Zudem ersucht er um Gewährung der unentgeltlichen Prozessführung mit seinem Rechtsvertreter als unentgeltlichem Rechtsbeistand. Das Bundesverwaltungsgericht hat auf Vernehmlassung verzichtet. Das SEM schliesst auf Abweisung der Beschwerde. Mit Präsidialverfügung vom 13. September 2016 ist der Beschwerde antragsgemäss aufschiebende Wirkung zuerkannt worden.