# Picoware (Open-Source Custom Firmware)

**URL:** <https://forum.clockworkpi.com/t/picoware-open-source-custom-firmware/18536>\
**Category:** PicoCalc\
**Tags:** opensource, firmware\
**Created:** [July 11, 2025, 11:06am UTC](https://forum.clockworkpi.com/t/picoware-open-source-custom-firmware/18536 "2025-07-11T11:06:49Z")\
**Posts on this page:** 20\
**Page:** 2

<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:** [July 21, 2025, 8:53pm UTC](https://forum.clockworkpi.com/t/picoware-open-source-custom-firmware/18536/21 "2025-07-21T20:53:16Z")

</div>

That was extremely helpful actually. I fixed the incorrect path and updated the libraries required. I’ll have to wait until the Calc arrives to test the screen.

---

<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:** [July 21, 2025, 11:24pm UTC](https://forum.clockworkpi.com/t/picoware-open-source-custom-firmware/18536/22 "2025-07-21T23:24:16Z")

</div>

Pico Calc just got here!

---

<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:** [July 22, 2025, 2:27am UTC](https://forum.clockworkpi.com/t/picoware-open-source-custom-firmware/18536/23 "2025-07-22T02:27:58Z")

</div>

![IMG_5926](https://canada1.discourse-cdn.com/flex029/uploads/clockworkpi/original/2X/f/f05c4ba1a9950efe8cf3e3604eba8a507f507335.jpeg)

The screen initializes but color is off. That’s the first thing I’ll fix, then I’ll add the keyboard and we should be pretty much all set

---

<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:** [July 22, 2025, 3:05am UTC](https://forum.clockworkpi.com/t/picoware-open-source-custom-firmware/18536/24 "2025-07-22T03:05:36Z")

</div>

Is this screen broken? I’m seeing tearing even with PicoMite running

 ![IMG_5932](https://canada1.discourse-cdn.com/flex029/uploads/clockworkpi/original/2X/7/789868f916fec575e8d097a30c690a3377dcc474.jpeg)

---

<div class="post-metadata">

**Author:** ![tabemann](https://avatars.discourse-cdn.com/v4/letter/t/df705f/32.png) [@tabemann](https://forum.clockworkpi.com/u/tabemann)\
**Post date:** [July 22, 2025, 3:07am UTC](https://forum.clockworkpi.com/t/picoware-open-source-custom-firmware/18536/25 "2025-07-22T03:07:52Z")

</div>

Did you tape down your screen before you screwed down the back?

Also, you should check the connection of the ribbon cable; it could be off.

---

<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:** [July 22, 2025, 3:12am UTC](https://forum.clockworkpi.com/t/picoware-open-source-custom-firmware/18536/26 "2025-07-22T03:12:38Z")

</div>

Ah it could be a loose ribbon, I’ll double check.

I did make sure to use the tape that came with it. When dismantling, do I need to use tape also? Any links to guides?

---

<div class="post-metadata">

**Author:** ![tabemann](https://avatars.discourse-cdn.com/v4/letter/t/df705f/32.png) [@tabemann](https://forum.clockworkpi.com/u/tabemann)\
**Post date:** [July 22, 2025, 3:17am UTC](https://forum.clockworkpi.com/t/picoware-open-source-custom-firmware/18536/27 "2025-07-22T03:17:27Z")

</div>

I would highly recommend taping down your screen even though it is not in the directions and you need to provide your own tape (note though that you need to make sure to not cover the electrical connections with the speakers or the light guide for the power LED’s). However, if your screen is already damaged it is too late and you will need to order a new one through Alex ([alex@clockworkpi.com](mailto:alex@clockworkpi.com)).

---

<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:** [July 22, 2025, 3:43am UTC](https://forum.clockworkpi.com/t/picoware-open-source-custom-firmware/18536/28 "2025-07-22T03:43:48Z")

</div>

Thank you. I sent Alex a message.

The good news is that I can still see the screen, so I’ll continue with development.

---

<div class="post-metadata">

**Author:** ![chaoswires](https://avatars.discourse-cdn.com/v4/letter/c/f9ae1b/32.png) [@chaoswires](https://forum.clockworkpi.com/u/chaoswires)\
**Post date:** [July 22, 2025, 9:09am UTC](https://forum.clockworkpi.com/t/picoware-open-source-custom-firmware/18536/29 "2025-07-22T09:09:37Z")

</div>

Whoa, great news!  
Thx for quick response!  
Regarding libs:  
Most of libs were easy to find during compilation, ArduinoHTTP, Adafruit libs, etc. they give errors like  
“LIBNAME.h not found”, so i just ment to Lib Manager in Arduino IDE and installed them + all dependent libs.  
As for weird screen behavior, i suggest three points to check:

1. Color inversion and init settings for display. I checked init code in mmbasic and it looks like display may require color inversion. Color coding is 565 AFAIR.
2. FFC connection: make sure display is connected reliably. I had similar issues in other projects, cleaning and reconnection helped me.
3. Display positioning: i spent quite a few minutes positioning display. Make sure the matrix itself is not squeezed anywhere by plastic parts. I totally agree with guys who adviced to use duct tape / smartphone screen tape or few drops of glue to fix the matrix in place. If it sits properly, mainboard gets in position with no efforts.

I’m interested in circuitpython more than in micropython because circuitpython has ready to use i2s libs and audio tools (todbot examples were very helpful). My goal is to connect well known 5102a DAC and use it as audio output.

---

<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:** [July 22, 2025, 12:03pm UTC](https://forum.clockworkpi.com/t/picoware-open-source-custom-firmware/18536/30 "2025-07-22T12:03:14Z")

</div>

Well I reseated/reset the ribbon, but I still have the same result. The screen was aligned when I dismantled it but it could’ve been something I did for sure. No worries on my end though. I’ve waited this long, so i’m willing to wait the process for a replacement.

In the meantime, the Calc is still very useful and I’m spending most of today adding support in Picoware for the Pico Calc.

 ![IMG_5935](https://canada1.discourse-cdn.com/flex029/uploads/clockworkpi/original/2X/7/76311c1cb02f199cec06b5ffb6d8f1c4d0c8184f.jpeg)

---

<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:** [July 22, 2025, 2:26pm UTC](https://forum.clockworkpi.com/t/picoware-open-source-custom-firmware/18536/31 "2025-07-22T14:26:51Z")

</div>

Well the good news is all of the TFT examples are working, so it’s something with my code.

---

<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:** [July 22, 2025, 2:29pm UTC](https://forum.clockworkpi.com/t/picoware-open-source-custom-firmware/18536/32 "2025-07-22T14:29:42Z")

</div>

Actually, looks like I found out what’s going on

 ![IMG_5937](https://canada1.discourse-cdn.com/flex029/uploads/clockworkpi/original/2X/5/5d54477b04730958a81f45c475706960ae51277e.jpeg)

Once I added TFT\_INVERSION\_ON to the User\_setup.h everything is correct

---

<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:** [July 22, 2025, 2:51pm UTC](https://forum.clockworkpi.com/t/picoware-open-source-custom-firmware/18536/33 "2025-07-22T14:51:27Z")

</div>

I think we’re good now

 ![IMG_5938](https://canada1.discourse-cdn.com/flex029/uploads/clockworkpi/original/2X/9/990716906e24373157d89a87760eef76a6ab14ef.jpeg)

My custom pico setup (on the top) and Pico Calc (on the bottom)

---

<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:** [July 22, 2025, 8:11pm UTC](https://forum.clockworkpi.com/t/picoware-open-source-custom-firmware/18536/34 "2025-07-22T20:11:52Z")

</div>

Thanks to Blair Leduc, I got the keyboard working!! [add keyboard input · jblanked/Picoware@0244a6f · GitHub](https://github.com/jblanked/Picoware/commit/0244a6f11fc079ede8be0b26f07849323954440c)

One last step and then I’ll push the release

---

<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:** [July 22, 2025, 9:02pm UTC](https://forum.clockworkpi.com/t/picoware-open-source-custom-firmware/18536/35 "2025-07-22T21:02:27Z")

</div>

I got it 🔥 now Pico Calc support for Picoware is complete. I’m getting the release together now

 ![IMG_5941](https://canada1.discourse-cdn.com/flex029/uploads/clockworkpi/original/2X/2/22545703248ad249f7872c493e5bc0852420fb61.jpeg)

---

<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:** [July 22, 2025, 9:26pm UTC](https://forum.clockworkpi.com/t/picoware-open-source-custom-firmware/18536/36 "2025-07-22T21:26:39Z")

</div>

Here’s the release:

> **[Release Picoware - v1.1 · jblanked/Picoware](https://github.com/jblanked/Picoware/releases/tag/v1.1)**
>
> Added (Arduino IDE) support for the Pico Calc

You can find the .uf2 within the builds folder! Let me know your thoughts, issues, concerns, etc.

I think now I’ll work on adding PSRAM, Battery Info, the SD card, and Circuit Python support

---

<div class="post-metadata">

**Author:** ![rockotiger](https://yyz1.discourse-cdn.com/flex029/user_avatar/forum.clockworkpi.com/rockotiger/32/13086_2.png) [@rockotiger](https://forum.clockworkpi.com/u/rockotiger)\
**Post date:** [July 22, 2025, 10:55pm UTC](https://forum.clockworkpi.com/t/picoware-open-source-custom-firmware/18536/37 "2025-07-22T22:55:01Z")

</div>

I gave it a try and its really cool!

---

<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:** [July 22, 2025, 11:10pm UTC](https://forum.clockworkpi.com/t/picoware-open-source-custom-firmware/18536/38 "2025-07-22T23:10:02Z")

</div>

Awesome thanks!! Any suggestions for future updates?

---

<div class="post-metadata">

**Author:** ![rockotiger](https://yyz1.discourse-cdn.com/flex029/user_avatar/forum.clockworkpi.com/rockotiger/32/13086_2.png) [@rockotiger](https://forum.clockworkpi.com/u/rockotiger)\
**Post date:** [July 23, 2025, 12:11am UTC](https://forum.clockworkpi.com/t/picoware-open-source-custom-firmware/18536/39 "2025-07-23T00:11:30Z")

</div>

RTC support? In your previous post you mentioned that you’re already working on the other things I would have suggested:

> [@jblanked](#):
>
> I think now I’ll work on adding PSRAM, Battery Info, the SD card, and Circuit Python support

---

<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:** [July 23, 2025, 1:13am UTC](https://forum.clockworkpi.com/t/picoware-open-source-custom-firmware/18536/40 "2025-07-23T01:13:02Z")

</div>

Great idea! Does the calc come with one? Currently Picoware fetches the current time on boot if your WiFi is configured

[Previous page](https://forum.clockworkpi.com/t/picoware-open-source-custom-firmware/18536.md?page=1)

[Next page](https://forum.clockworkpi.com/t/picoware-open-source-custom-firmware/18536.md?page=3)
