Sachverhalt: A. Die Staatsanwaltschaft I des Kantons Zürich führt gegen A._ eine Strafuntersuchung wegen Drohung etc. Er wurde am 22. August 2020 verhaftet und vom Zwangsmassnahmengericht des Bezirks Zürich am 25. August 2020 in Untersuchungshaft versetzt. Am 2. Oktober 2020 stellte er ein Haftentlassungsgesuch, welches das Zwangsmassnahmengericht mit Verfügung vom 13. Oktober 2020 abwies. Dagegen gelangte er an das Obergericht des Kantons Zürich. Mit Beschluss vom 29. Oktober 2020 wies das Gericht das Rechtsmittel ab. B. Mit Beschwerde in Strafsachen vom 30. November 2020 an das Bundesgericht beantragt A._, den Entscheid des Obergerichts aufzuheben und ihn unverzüglich aus der Untersuchungshaft zu entlassen. Eventuell seien anstelle der Untersuchungshaft Ersatzmassnahmen anzuordnen, subeventuell sei die Sache zur Neubeurteilung an das Obergericht zurückzuweisen. Für das bundesgerichtliche Verfahren sei ihm weiter die unentgeltliche Rechtspflege zu gewähren. Das Obergericht hat auf eine Vernehmlassung verzichtet, die Staatsanwaltschaft hat sich nicht geäussert. A._ hat keine weitere Stellungnahme eingereicht.