# A small issue with micropython

**URL:** <https://forum.clockworkpi.com/t/a-small-issue-with-micropython/23234>\
**Category:** PicoCalc\
**Tags:** micropython, bootloader\
**Created:** [August 28, 2026, 3:16am UTC](https://forum.clockworkpi.com/t/a-small-issue-with-micropython/23234 "2026-08-28T03:16:28Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![Qiset](https://yyz1.discourse-cdn.com/flex029/user_avatar/forum.clockworkpi.com/qiset/32/17107_2.png) [@Qiset](https://forum.clockworkpi.com/u/Qiset)\
**Post date:** [August 28, 2026, 3:16am UTC](https://forum.clockworkpi.com/t/a-small-issue-with-micropython/23234/1 "2026-08-28T03:16:28Z")

</div>

I’ve been trying to use bootloader\_pico2.uf2 firmware. It works mostly for me. I’ve got PicoMite\_PICORP2350\_V6.00.02RC23.uf2 and Picoware-PicoCalcPico2W.uf2 working. And micropython\_pico2w.uf2 mostly works. Well, it actually all works except for one annoying issue. When I choose the micropython from the loader menu, the cursor is invisible. No vt100 codes help. I can go back to mmbasic or picoware and there it is. But not for micropython. I figure I’m not using a firmware that is completely compatible with the bootloader. So what micropython firmware should I use? Hopefully not much different than the one I’m using now.

---

<div class="post-metadata">

**Author:** ![jblanked](https://yyz1.discourse-cdn.com/flex029/user_avatar/forum.clockworkpi.com/jblanked/32/17438_2.png) [@jblanked](https://forum.clockworkpi.com/u/jblanked)\
**Post date:** [August 28, 2026, 1:32pm UTC](https://forum.clockworkpi.com/t/a-small-issue-with-micropython/23234/2 "2026-08-28T13:32:35Z")

</div>

I recommend that you use Picoware, which is a fork of MicroPython. I plan on supporting this project for months to come.

---

<div class="post-metadata">

**Author:** ![Qiset](https://yyz1.discourse-cdn.com/flex029/user_avatar/forum.clockworkpi.com/qiset/32/17107_2.png) [@Qiset](https://forum.clockworkpi.com/u/Qiset)\
**Post date:** [August 29, 2026, 2:12am UTC](https://forum.clockworkpi.com/t/a-small-issue-with-micropython/23234/3 "2026-08-29T02:12:31Z")

</div>

No offense as your program system is quite fantastic, but the python editor and repl don’t respond to commands the same way that Micropython stand-alone does. I’m working of framebuffer display overlays and it’s just enough different to throw me off. Besides, If I have to spend 10 to 15 seconds reflashing the beastie, so be it. As I tell folks, I’m retired. Time is most all I have!

---

<div class="post-metadata">

**Author:** ![jblanked](https://yyz1.discourse-cdn.com/flex029/user_avatar/forum.clockworkpi.com/jblanked/32/17438_2.png) [@jblanked](https://forum.clockworkpi.com/u/jblanked)\
**Post date:** [August 29, 2026, 12:21pm UTC](https://forum.clockworkpi.com/t/a-small-issue-with-micropython/23234/4 "2026-08-29T12:21:27Z")

</div>

No offense taken! I am curious about what you meant by:

> [@Qiset](#):
>
> but the python editor and repl don’t respond to commands the same way that Micropython stand-alone does.

I can fix those issues for the upcoming release.

> [@Qiset](#):
>
> I’m working of framebuffer display overlays and it’s just enough different to throw me off.

This, and a few of your other posts, is why I mentioned to use Picoware. As frame buffers, keyboard input/parsing, and a few other things you mentioned (in other posts) are working/have been added in Picoware.

> [@Qiset](#):
>
> Besides, If I have to spend 10 to 15 seconds reflashing the beastie, so be it. As I tell folks, I’m retired. Time is most all I have!

Congrats on your retirement! I am all for tinkering and having fun 🔥 feel free to reach out if you need anything

---

<div class="post-metadata">

**Author:** ![Qiset](https://yyz1.discourse-cdn.com/flex029/user_avatar/forum.clockworkpi.com/qiset/32/17107_2.png) [@Qiset](https://forum.clockworkpi.com/u/Qiset)\
**Post date:** [August 29, 2026, 2:07pm UTC](https://forum.clockworkpi.com/t/a-small-issue-with-micropython/23234/5 "2026-08-29T14:07:31Z")

</div>

I’ll put together a list of what differences I’ve found. That would be great.

Especially since Picoware works with the bootloader and micropython doesn’t.

---

<div class="post-metadata">

**Author:** ![Qiset](https://yyz1.discourse-cdn.com/flex029/user_avatar/forum.clockworkpi.com/qiset/32/17107_2.png) [@Qiset](https://forum.clockworkpi.com/u/Qiset)\
**Post date:** [August 29, 2026, 3:12pm UTC](https://forum.clockworkpi.com/t/a-small-issue-with-micropython/23234/6 "2026-08-29T15:12:58Z")

</div>

Here’s what I put together:

picoware issues:  
REPL:  
the arrow keys don’t show command history  
import os doesn’t work (how can I find the equivalent?)  
where is the chdir() function?  
run doesn’t work.  
how do I run a program?  
Editor:  
This is a personal issue but hitting the back key  
takes me out of the editor instead of moving the cursor  
It even takes me out of the file and the list of files.  
Even while trying to figure out how to use the editor, not  
knowing the commands to manuver makes it difficult.  
(especially the equivalent of the back key)  
The ctrl-s and other such keys don’t work. A tutorial on it’s  
use would help.

with these issues, I just haven’t used it enough to find ways around  
them. It just turns out to be easier to use Micropython.

---

<div class="post-metadata">

**Author:** ![jblanked](https://yyz1.discourse-cdn.com/flex029/user_avatar/forum.clockworkpi.com/jblanked/32/17438_2.png) [@jblanked](https://forum.clockworkpi.com/u/jblanked)\
**Post date:** [August 29, 2026, 3:58pm UTC](https://forum.clockworkpi.com/t/a-small-issue-with-micropython/23234/7 "2026-08-29T15:58:33Z")

</div>

Thanks for putting together a list. Let me address each of these

> [@Qiset](#):
>
> the arrow keys don’t show command history

This wasn’t something I thought of when working on the REPL 😅 I’ll add it in the next release

> [@Qiset](#):
>
> import os doesn’t work (how can I find the equivalent?)  
> where is the chdir() function?

Both the `os` library and `os.chdir()` are accessible but you need to mount the vfs in order to use it. The easiest solution would be for me to mount it before the REPL is started (which I’ll add in the upcoming release)

As an alternate (and recommended) approach, you could use the `Storage` class, which uses C directly. It has very similar syntax to the `os` library and has some awesome helpers for reading, writing, and decoding/encoding.

Here’s an example/test: [Picoware/tests/sd.py at main · jblanked/Picoware · GitHub](https://github.com/jblanked/Picoware/blob/main/tests/sd.py)

> [@Qiset](#):
>
> run doesn’t work.  
> how do I run a program?

You cannot run programs directly from the REPL, but you can add them in `picoware/apps` on your SD card and run them inside of Picoware in `Library -> Applications`.

There are lifecycle functions that are required, and I know some do not like that, but what other contributors have done is added their script inside of `start`, if its a one-time script, or inside of `run`, if its a loop. The biggest bonus of the lifecycle is not having to import commonly used classes since the `ViewManager` has an instance of most of them.

> [@Qiset](#):
>
> This is a personal issue but hitting the back key  
> takes me out of the editor instead of moving the cursor  
> It even takes me out of the file and the list of files.  
> Even while trying to figure out how to use the editor, not  
> knowing the commands to manuver makes it difficult.  
> (especially the equivalent of the back key)

You can use the `Del` key to delete a character. Optionally, you can open the settings (`Library -> System -> Settings`) and click `Exit Button`. Then change the option from `<-Back`, which is the default, to `Esc`. That will make the `Esc` button exit/leave views and the `<-Back` button backspace.

> [@Qiset](#):
>
> The ctrl-s and other such keys don’t work.

When you exit the app and there are changes made, it will prompt you to save. By default it has `Y` (for yes), and you can just click `Enter` (when the prompt appears) and it will save your file and exit the app. If you do not wish to save, you can backspace the `Y` and put `n`.

> [@Qiset](#):
>
> A tutorial on it’s  
> use would help.

I don’t have a recent tutorial on the Editor specifically, but our tutorials are here → [Picoware/guides/Tutorials.md at main · jblanked/Picoware · GitHub](https://github.com/jblanked/Picoware/blob/main/guides/Tutorials.md)

The `guides` cover almost everything in Picoware → [Picoware/guides at main · jblanked/Picoware · GitHub](https://github.com/jblanked/Picoware/tree/main/guides)

And there are API docs that cover all of the libraries → [picoware](https://www.jblanked.com/picoware/api-docs/index.html)
