diff --git a/firmware/common/ui_widget.cpp b/firmware/common/ui_widget.cpp
index c4c035a63481289625a1bf78bbf0c44d469d09d8..01639e0c5ec3cd5eaf4dac6e3c8aad389f7a80ff 100644
--- a/firmware/common/ui_widget.cpp
+++ b/firmware/common/ui_widget.cpp
@@ -570,7 +570,10 @@ Console::Console(
 {
 }
 
-void Console::clear() {
+void Console::clear(bool clear_buffer = false) {
+	if(clear_buffer)
+		buffer.clear();
+		
 	display.fill_rectangle(
 		screen_rect(),
 		Color::black()
@@ -595,10 +598,7 @@ void Console::write(std::string message) {
 					pen_color = s.foreground;
 				escape = false;
 			} else {
-				if (c=='\f') {	//Add FORM FEED (clear screen)
- 					clear();
- 					buffer.clear();
- 				} else if (c == '\n') {
+				if (c == '\n') {
 					crlf();
 				} else if (c == '\x1B') {
 					escape = true;
diff --git a/firmware/common/ui_widget.hpp b/firmware/common/ui_widget.hpp
index e4b8533bfec607deff8f0bf3787be9f4807d68de..61ffeb7258125103085e40dbb03f4cd8e8cb192c 100644
--- a/firmware/common/ui_widget.hpp
+++ b/firmware/common/ui_widget.hpp
@@ -312,7 +312,7 @@ class Console : public Widget {
 public:
 	Console(Rect parent_rect);
 	
-	void clear();
+	void clear(bool clear_buffer);
 	void write(std::string message);
 	void writeln(std::string message);