Ich habe mir das Teil kurz angeschaut. Es dürfte sicher seine Einsatzgebiete haben, aber den Begriff "Drop-in Replacement" finde ich etwas gar gewagt dafür. Das Interface erweckt nicht einmal den Anschein, kompatibel zu sein. Ich sehe die Library als eine Minimal-Variante für die Ansteuerung der (ersten) Hardware-Serial-Schnittstelle der meisten AVR-Boards (alle anderen Arduinos können sie nicht verwenden). Sie hat keine Pufferung, praktisch keine Komfort-Funktionen und vor allem: sie blockiert, man wartet also bis das gewünschte Zeichen gesendet oder empfangen wurde. Dies dürfte für den durchschnittlichen Benutzer der wichtigste Unterschied sein, denn ein Get()-Aufruf wartet notfalls für immer, wenn von der Gegenseite keine Übertragung kommt.
Für die Anbindung eines seriellen Geräts mit festem Protokoll kann die Bibliothek als Platz und Arbeitsspeicher sparende Minimalvariante genutzt werden, als Ersatz der HardwareSerial-Klasse der Arduino-IDE taugt sie nicht ansatzweise.
Vorausgesetzt, man ist gewillt, ein komplett anderes API zu verwenden und das Blockieren ist in der Anwendung akzeptabel, bleibt meiner Meinung nach ein grosses Problem: man muss genau wissen, wann ein Zeichen zu erwarten ist. Es gibt keinen Interrupt, der ein empfangenes Zeichen erst mal speichert, es gibt auch keine Funktion, um zu schauen, ob ein Zeichen empfangen wurde (ohne zu blockieren bis das Zeichen wirklich empfangen wurde). Klar, der technikversierte Anwender kann das selbst mit Registerchecks machen, das kann dieser aber grundsätzlich mit der ganzen seriellen Funktionalität machen.
Die Möglichkeiten der Ausgabe von Zahlenwerten sind interessant, aber eine Ergänzung bzw. ein Ersatz der Print-Klasse wäre für viele Anwender sinnvoller gewesen, da sie eher Nutzen daraus hätten ziehen können.