La dimostrata capacità di atterraggio del booster di SpaceX non è il risultato di una svolta, ma piuttosto di una serie di piccoli miglioramenti incrementali. Il limite principale è stato il finanziamento e la volontà di realizzarlo.
Nel 1966, un veicolo spaziale senza pilota è atterrato sulla Luna sotto la potenza di un missile nel programma Surveyor. Utilizzava (IIRC) tre propulsori a posizione fissa, pulsati, per controllare l'assetto e la velocità di discesa. Questa era una navicella spaziale relativamente piccola (alta circa 3 metri e con una massa di 300 kg), il che rende le cose più facili; le sue gambe di atterraggio erano larghe in modo che potesse rimanere stabile se atterrava con l'assetto sbagliato. Sotto la minore gravità della luna, i tempi di risposta sono un po 'meno critici, quindi può essere considerata una "modalità facile" per atterraggi autonomi di razzi. Tuttavia, dimostra che un altimetro radar di base, una piattaforma inerziale per determinare l'assetto del veicolo spaziale e un semplice circuito di controllo sono sufficienti per atterrare.
Nel programma Apollo, la fase di discesa del LM era solo un po 'più sofisticata; un motore a farfalla su un supporto cardanico è stato utilizzato per controllare la direzione e la velocità di discesa e propulsori più piccoli utilizzati per controllare l'assetto. Il pilota umano poteva, in linea di principio, designare un punto di atterraggio e poi lasciare che il computer facesse il resto del volo fino all'atterraggio, ma in pratica ogni comandante dell'Apollo prendeva il controllo in modalità semi-manuale a circa 150 m di altitudine, controllando il atteggiamento della nave e velocità di discesa. Il limite principale a questo punto era che il sistema autonomo non aveva modo di sapere se stava scendendo su un terreno pianeggiante o su un mucchio di massi; l'altimetro radar era una singola sonda a bassa risoluzione.
L'atterraggio di un razzo sulla Terra, con una gravità sei volte superiore, richiede una risposta di controllo più rapida: non necessariamente un computer molto più veloce (puoi gestire solo poche migliaia di operazioni al secondo; le equazioni non sono così complesse), ma cose come valvole a farfalla veloci e precise. Non so molto della storia lì, ma immagino che questo genere di cose fosse disponibile anche negli anni '60. D'altra parte, quando si atterra sulla Terra, è molto più facile organizzare una vasta area pianeggiante su cui atterrare!
Come menzionato da @Dragongeek, l'URSS ha pilotato lo space shuttle Buran nel 1988; il suo unico volo era un lancio senza equipaggio per orbitare e tornare sulla Terra. È atterrato in volo orizzontale alato, quindi non è direttamente paragonabile al Falcon 9, sebbene i problemi di guida e controllo siano simili per complessità.
Nel 1993, il progetto DC-X ha dimostrato l'atterraggio verticale autonomo, a razzo, di un veicolo alto 12 metri da un'altitudine di 3 km. Il DC-X ha avuto alcuni problemi, certo, e alla fine è stato cancellato per mancanza di fondi, ma non ci sono state scoperte da fare. Come il Falcon 9, DC-X utilizzava motori multipli, con sospensione cardanica, a regolazione profonda come controllo di volo principale, aumentati con superfici aerodinamiche e propulsori di controllo dell'assetto e utilizzava il GPS nel suo sistema di guida e controllo.
Il GPS è stato di grande aiuto per atterraggi di precisione, ovviamente; il primo stadio Falcon conosce la propria posizione tramite GPS e si guida verso un punto specifico nello spazio assoluto: il centro di una piattaforma di atterraggio o ASDS. Senza il GPS, che è stato utilizzato per la prima volta alla fine degli anni '80, sarebbe stato possibile posizionare un radiofaro al punto di atterraggio e puntare su quello.
Probabilmente, la chiave del successo di SpaceX è stata che un lanciatore riutilizzabile fallito può ancora essere un lanciatore sacrificabile di successo. Realizzando un lanciatore orbitale commerciale pratico da pilotare in modalità sacrificabile e sperimentando atterraggi sulla moneta da dieci centesimi del cliente, hanno sostanzialmente compensato i costi di atterraggio di R&D.
I moderni algoritmi di visione artificiale renderebbero possibile trovare e indirizzare un sito di atterraggio piatto su un altro pianeta o luna, cosa che SpaceX potrebbe dover fare per i loro primi atterraggi sulla Luna o su Marte. Questa tecnologia è uno sviluppo più recente. Richiede una potenza di calcolo abbastanza moderna per ricavare una mappa del terreno dalle viste della telecamera in tempo reale, ma ciò non è necessario per ciò che SpaceX sta facendo oggi.