#PicoCalc

1 messages · Page 1 of 1 (latest)

rugged crystal
#

If you install regular CircuitPython (not the Picoware version) on whatever Pi Pico you are (using the proper version), you could test whether that bug fix works via:

import busio
i2c = busio.I2C(scl=board.<proper SCL pin>, sda=board.<proper SDA pin>)  # I don’t know the pins needed
i2c.try_lock()
i2c.scan()
#

this is what apparently didn't work for people previously, but I don't know if it now works with the latest firmware on the keyboard board on the PicoCalc. I am not going to spend a lot of time on this, especially because it's so difficult to get a PicoCalc, but would be interested in what the test above shows

winged rock
#

Im busy until later today but I will try that out for you later!

winged rock
#

i2c scan returns 31

#

This is with the latest bios 1.6

rugged crystal
# winged rock i2c scan returns 31

the earlier complaints were that the kbd was not detected. looking at some doc, 31 (0x16) is the address for the keyboard, so that's a really good sing

#

but someone would still need to write a driver for the keyboard in CircuitPython. Picoware does that in C, not Python.

winged rock
#

Thats beyond what im capable of, but its still a good sign

rugged crystal
#

let me know if this runs at all. Press keys on the PicoCalc kbd to get it to respond

winged rock
#

Sure ill give it a go, cheers

rugged crystal
#

If it doesn't work, try removing the , frequency=10000 in the busio.I2C line. I think that may be an LLM misinterpretation of the keyboard scan rate

winged rock
#

Unedited file responds to keyboard presses

#

This is pretty exciting!

rugged crystal
winged rock
#

Can do!

#

Yep still seems to work

rugged crystal
winged rock
#

I bet thats true

#

and its no problem, this testing helps me too! I might not be able to write the appropriate drivers (including screen) but the fact the keyboard DOES work should encourage other people who might have that skillset to try it

rugged crystal
winged rock
#

I appreciate the help you have given, I may look into getting the screen working and the keyboard and see if I can write up some basic programs, it was essentially my aim to use the device as a place to practice some circuitpython

rugged crystal
#

there's some implication in the forums that it's harder to deal with the REPL due to how USB is set up on the PicoCalc, and whether CircuitPython supports REPL over UART or not (which it doesn't right now on those boards without a custom build).

winged rock
#

I managed fine connecting it to thonny and using the REPL through that but worst case scenario I can deal with just dropping new code.py into it every time haha

#

Im not urgently after using the device itself to program...itself

winged rock
#

Display be working, this is using someone elses test code and a driver written by someone else, but at least its working!

winged rock
#

Bitmap display works, colours inverted so ill look into that

#

Anyway, huge thanks @rugged crystal if it wasnt for your help I probably would have given up entirely but now I see a way forward towards actually getting some circuitpython fun using this!

rugged crystal
#

you're welcome!

winged rock
#

correct me if im wrong, circuitpython has some degree of support for keyboard matrices and such?

rugged crystal
winged rock
#

allright np

#

its i2c and there are drivers that exist so i guess ill do some looking

rugged crystal
#

the test program I gave you talks to it fine. You just need to interpret what it receives. There are other functions over I2C available. Not sure where the documentation is. I pointed to something above but it is an AI distillation of the documentaiton.

winged rock
#

assuming there is any documentation, clockwork is kind of notorious for their documentation to be spotty, its very much a "if you want it to do it im sure youll work it out" kind of device

winged rock
#

oh, lofifren to the rescue

rugged crystal
winged rock
#

Yeah, i have recommended my friend grab the cardputer maybe if they want a cheaper alternative to messing around with