Menu
JAQForum Ver 19.10.27

Forum Index : Microcontroller and PC projects : Picocalc done properly?

   Page 3 of 4    
Posted: 06:09pm
09 Jun 2025
Copy link to clipboard
thwill
Guru


  Gadgetguy said  That is so sad. For newbie me the graphics commands are the best ones in mmbasic. But most of those amazing commands do not run on lcd screens - only on hdmi.


I must have hallucinated this then:

   https://www.youtube.com/watch?v=8bx2vpwuXoo

EDIT: Note that some LCDs you cannot BLIT from, either because they are "crap" or because their MISO pin isn't connected ... which *might* include the LCD on the PicoCalc which may be the origin of your statement.

Best wishes,

Tom
Edited 2025-06-10 04:15 by thwill
 
Posted: 06:22pm
09 Jun 2025
Copy link to clipboard
Gadgetguy
Regular Member

  thwill said  
  Gadgetguy said  That is so sad. For newbie me the graphics commands are the best ones in mmbasic. But most of those amazing commands do not run on lcd screens - only on hdmi.


I must have hallucinated this then:

   https://www.youtube.com/watch?v=8bx2vpwuXoo

EDIT: Note that some LCDs you cannot BLIT from, either because they are "crap" or because their MISO pin isn't connected ... which *might* include the LCD on the PicoCalc which may be the origin of your statement.

Best wishes,

Tom


Wow. I never realized that the gamemite is not hdmi. Would gamemite games run on the picocalc?

But even if not, the proposed new lcd based design would likely run gamemite games?

This is superb news, thank you!
Edited 2025-06-10 04:24 by Gadgetguy
 
Posted: 06:32pm
09 Jun 2025
Copy link to clipboard
thwill
Guru


  Gadgetguy said  Wow. I never realized that the gamemite is not hdmi.picocalc?


The Game*Mite uses a cheap ILI9341 320x240 LCD.

  Gadgetguy said  Would gamemite games run on the


Possibly not (especially with the RP2040), the larger display is slower to update and requires more RAM for any framebuffers (I do not believe you can create a framebuffer for just a 320x240 slice of the display). Also I'm not 100% certain but something someone (you?) said on the ClockworkPi forum makes me wonder whether the MISO pin on the display is working, and if not, then no BLIT from the display is possible which may be used by some games ... but now I think about it, maybe not. Someone did try porting the Game*Mite version of Flappy Bird and found it too slow.

  Gadgetguy said  But even if not, the proposed new lcd based design would likely run gamemite games?


I'm pretty certain it would ... though the a larger screen might need to be accounted for.

Best wishes,

Tom
 
Posted: 06:36pm
09 Jun 2025
Copy link to clipboard
Gadgetguy
Regular Member

Thank you Tom for the reply.

I am not sure  what the MISO pin is, so  it was not me posting about it.

So I will try to experiment with Game*Mite games on the picocalc, just as an experiment.

And I hope that  the concept "better Picocalc" proposed by Peter turns into something I could  buy
Edited 2025-06-10 04:56 by Gadgetguy
 
Posted: 07:12pm
09 Jun 2025
Copy link to clipboard
Mixtel90
Guru


AFAIK the ILI9341 has everything working, including the MISO pin. It supports transparent text etc. ILI9488 has problems with MISO.
 
Posted: 08:13am
11 Jun 2025
Copy link to clipboard
matherp
Guru

 
Posted: 08:43am
11 Jun 2025
Copy link to clipboard
dddns
Guru

Very nice, that you separated the keyboard!
Is there a reason, why you didn't use i2c port expanders?
 
Posted: 09:12am
11 Jun 2025
Copy link to clipboard
Mixtel90
Guru


It's cheaper not to?  :) 72 switches. 16 IO per expander. 5 expander chips and the wiring is much, much more difficult than a matrix.

Multiplexing keyboards is the time-honoured way to do things and there's no shortage of GPIO pins here.
 
Posted: 05:11pm
02 Jul 2025
Copy link to clipboard
matherp
Guru

I'm enjoying playing with this and here is the first prototype. Everything works but a few changes needed.

I think I'll call it the Palm Pico.

I'm not happy with the battery charging circuit so am going to move to a design from Great Scott
The surface mount speakers I chose are complete c..p so I need to find something better.
The RTC battery will move to the bottom of the board which gives room for a CR2032.
The audio jack will be replaced with a switching one that cuts off the amp when external audio is plugged in.
Finally the board will be shortened so that the keyboard buts up to the screen giving a final size of 160x108mm

The software will be standard PICOUSB2350 which will allow the user to plug any external USB device (devices with a hub) into the 64-pin DIL board. I've partially written a new driver for the screen using the PSRAM as a full colour framebuffer and with the screen updated by the second processor. This gives a good performance improvement (GUI TEST LCDPANEL: 335 circles/second with the new driver vs 190 before).

I'm still to write the full keyboard driver but I have already modified the KEYPAD command to optionally allow any number of columns and rows AND give the user the ability to specify for each matrix position the code that is returned

KEYPAD codes%(cols, rows),vret%, interrupt, colstartpin, ncols, rowstartpin, nrows

This will be generally useful in MMBasic allowing much more flexibility in using simple keypads as input devices.

The layout of the keyboard allows a commercial overlay to be used - bit expensive but saves any custom work before everything is finished.

The screen is 320x320 and because the Pico has PSRAM any 320x240 code will work with no modification without hitting any memory limitations (PETSCII tested)

Overall spec:
RP2350B, 16MB flash, 8MB PSRAM, 320x320 4" IPS screen, SDcard, DS3231 RTC with CR2032 battery, I2S DAC based audio with line level output and volume controlled stereo amplifiers/speakers, USB host capable, serial console using CH340, External I2C port, powered by standard 18650 lipos using readily available battery holder. ESP8266 port connected to COM1 for WIFI connectivity.

AND, of course, completely open source and fully supported by stock MMBasic firmware.









Edited 2025-07-03 03:30 by matherp
 
Posted: 05:43pm
02 Jul 2025
Copy link to clipboard
WhiteWizzard
Guru

Absolutely BRILLIANT!
 
Posted: 03:03pm
03 Jul 2025
Copy link to clipboard
PilotPirx
Regular Member


Great idea!!!  
A Palm Pico is a "must have".
Where can I buy this keyboard overlay?
 
Posted: 08:25pm
03 Jul 2025
Copy link to clipboard
Bleep
Guru

Hi Peter,
Looks really good, I can feel another purchase coming on. :-( the screen especially looks very crisp and bright & the keyboard big enough to be useful. :-)
 
Posted: 10:06pm
03 Jul 2025
Copy link to clipboard
matherp
Guru

Long way to go yet. Definitely one, if not two more H/W prototypes to get it right physically and more work needed on the new graphics driver. I haven't even started yet on the keyboard driver.
The screen is definitely excellent.
 
Posted: 01:17am
04 Jul 2025
Copy link to clipboard
vegipete
Guru


Looks pretty cool. Is there any easy way to push the keyboard right up to the edge of the screen?
 
Posted: 01:29am
04 Jul 2025
Copy link to clipboard
phil99
Guru


  matherp said  Finally the board will be shortened so that the keyboard buts up to the screen giving a final size of 160x108mm
 
Posted: 04:17pm
05 Jul 2025
Copy link to clipboard
matherp
Guru

Software support is finished

The driver for the display is finished as is the driver for the keyboard. Full support for all the usual stuff, auto key repeat, caps lock etc.
The screen driver is new and uses the PSRAM as a full colour framebuffer with actual updates done on the second cpu. The interface between the two is a blocking FIFO so the physical screen can never get too far behind but the main CPU is free to pre-calculate changes without having to wait for the slow SPI channel (although I am running the SPI at 90MHZ!).
Everything is standard MMBasic with the device configured simply using
OPTION RESET PALM PICO

Note the sophisticated way the keyboard overlay is attached.

Now I need to concentrate on getting the motherboard design right (shrunk) and then I can start designing a box.

 
Posted: 01:02am
06 Jul 2025
Copy link to clipboard
toml_12953
Guru

  matherp said  Software support is finished

The driver for the display is finished as is the driver for the keyboard. Full support for all the usual stuff, auto key repeat, caps lock etc.
The screen driver is new and uses the PSRAM as a full colour framebuffer with actual updates done on the second cpu. The interface between the two is a blocking FIFO so the physical screen can never get too far behind but the main CPU is free to pre-calculate changes without having to wait for the slow SPI channel (although I am running the SPI at 90MHZ!).
Everything is standard MMBasic with the device configured simply using
OPTION RESET PALM PICO

Note the sophisticated way the keyboard overlay is attached.

Now I need to concentrate on getting the motherboard design right (shrunk) and then I can start designing a box.



It doesn't look like the GPIO pins are accessible externally other than maybe those for COM2. Will any others be available?
 
Posted: 07:27am
06 Jul 2025
Copy link to clipboard
Mixtel90
Guru


How many do you want? Stick another Pico or two on as a remote IO device and serial connect via COM2. ;-)
 
Posted: 07:58am
06 Jul 2025
Copy link to clipboard
matherp
Guru

It has an external I2C port on the left hand side of the display. This allows you to connect anything you want.
 
Posted: 09:35am
06 Jul 2025
Copy link to clipboard
Mixtel90
Guru


So it does... That was a good idea. :)
 
   Page 3 of 4    
The Back Shed's forum code is written, and hosted, in Australia.
© JAQ Software 2025