![]() |
Forum Index : Microcontroller and PC projects : PicoMite...I've done a big boo boo
Author | Message | ||||
Namaman3000 Newbie ![]() Joined: 21/05/2022 Location: New ZealandPosts: 7 |
Hi all, Firstly I'm very new to the world of microcontrollers...and it's only taken me two days to destroy two Picos...I'm here seeking help from super smart people like yourself. So a friend lent me his Pi Pico and recommend I use PicoMite as I do know a little about programming in BASIC. I also happened to have a 2x16 LCD display and a PCF8574 8 bit I2C Port Expander from another project, and after some searching I found this code for the Micromite: https://www.thebackshed.com/forum/ViewTopic.php?TID=6715 With the simple addition of 'SetPin gp0, gp1, i2c', I had the program up and running on my 2x16 LCD display. I even wrote a small program to move a character around the screen by pushing direction keys. Yay!!! My friend then lent me his pico Backpack and his LCD color screen attachment. Unfortunately it didn't work and the screen backlight was fully lit and I could not make anything appear on his LCD screen. I tried typing in. the following to initialise it: OPTION reset OPTION SYSTEM SPI GP18,GP19,GP16 OPTION LCDPANEL ILI9341, LANDSCAPE,GP14,GP13,GP12,gp20 OPTION TOUCH GP15,GP17 Backlight 40 Text 10,10,"hello world" ...but every time I typed the 'OPTION' command the USB serial link to the pico would crash, and I would need to log back in. Thinking this was a faulty pico my friend lent me his other pico and as soon as I plugged it in to the Backpack the new pico and color LCD worked perfectly. I played with it for a little bit then plugged my I2C 2x16 LCD display and a PCF8574 setup back in and ran my little 'control a character' program. After that I then tried to run the code for the large LCD color screen and I noticed that the backlight was full on and AGAIN I could not enter any 'OPTION' command without the pico dropping the USP serial connection. So now I seem to have partially bricked two of my friends picos...feeling real bad. I have tried using the flash_nuke.uf2 program to reset everything, but that doesn't change my situation. I have also tried doing a CLOSE i2C, which also didn't change anything...So I'm really stuck. Any help or advice would be greatly appreciated. Would love to figure out how to get these two pics up and running again. Cheers! |
||||
thwill![]() Guru ![]() Joined: 16/09/2019 Location: United KingdomPosts: 4311 |
Fear not, the PicoMite always restarts and thus drops the serial connection when you use most/all permanent OPTION commands (they still take effect when the Pico restarts), it is a bl**dy nuisance but it's just how it works. I believe some terminal programs cope better than others with the link dropping. What are you using TeraTerm? PuTTY? Best wishes, Tom Edited 2022-05-21 17:38 by thwill MMBasic for Linux, Game*Mite, CMM2 Welcome Tape, Creaky old text adventures |
||||
Grogster![]() Admin Group ![]() Joined: 31/12/2012 Location: New ZealandPosts: 9610 |
Welcome, fellow kiwi. ![]() This is very interesting. There is no reason I can think of, for this to be happening, OTHER then the fact that the PCF8574 modules. Are you running the 8574 modules from 5v? Probably. If that is the case, the output from the module - being 5v - might be killing your PicoMite modules, as they CANNOT tolerate anything higher then 3.6v absolute maximum. On ANY I/O pin. So, IF....you are using the 8574 module connected to 5v, with it's I/O(SCL and SDA) connected to the PicoMite WITHOUT a level-shifting module between the 8574 and the PicoMite, you might be killing the PicoMite that way. basically, anything that is happy at 3v3 can be directly interfaced, but a series resistor is recommended. If you try to connect ANYTHING that has a 5v logic level, and you DON'T use a level-shifter, you can kill the PicoMite module, as it simply does not have any 5v tolerant I/O pins. Smoke makes things work. When the smoke gets out, it stops! |
||||
matherp Guru ![]() Joined: 11/12/2012 Location: United KingdomPosts: 10315 |
When you type in an OPTION command that sets up something permanent the firmware restarts. This causes the USB link to drop and then re-establish. If you use a terminal program like teraterm this will happen automatically. What you are seeing is not a problem just the way things work. Can't help with the backpack unless you tell us which version |
||||
Namaman3000 Newbie ![]() Joined: 21/05/2022 Location: New ZealandPosts: 7 |
Hi Tom, Thanks for the reply. I've used PuTTY, Teraterm, Terminal in OS X, and presently using MacWise on OS X. I didn't have any issues using the OPTION command dropping the link before running that Micromite code for the 2x16 LCD. :-( |
||||
thwill![]() Guru ![]() Joined: 16/09/2019 Location: United KingdomPosts: 4311 |
See my answer first, I think Grogster has looked for a hardware answer to a software problem ;-) ... or maybe not. Edited 2022-05-21 17:47 by thwill MMBasic for Linux, Game*Mite, CMM2 Welcome Tape, Creaky old text adventures |
||||
Namaman3000 Newbie ![]() Joined: 21/05/2022 Location: New ZealandPosts: 7 |
Errrr...bummer. I had the 8574 module powered from the V-SYS pin. |
||||
Namaman3000 Newbie ![]() Joined: 21/05/2022 Location: New ZealandPosts: 7 |
It's a revC from 'Silicon Chip" http://www.siliconchip.com.au/Shop/8/4025 |
||||
matherp Guru ![]() Joined: 11/12/2012 Location: United KingdomPosts: 10315 |
In which case, there are no open source docs or details so only those with a magazine can help. With the Pico go back to basics. Test the pins with an LED (SETPIN n,dout:PIN(n)=1 etc.). Then if OK test them as inputs by linking a known good output to each other pin in turn and see if you can read OK Edited 2022-05-21 17:55 by matherp |
||||
Namaman3000 Newbie ![]() Joined: 21/05/2022 Location: New ZealandPosts: 7 |
I'll give that a go. Thanks Edited 2022-05-21 18:45 by Namaman3000 |
||||
Namaman3000 Newbie ![]() Joined: 21/05/2022 Location: New ZealandPosts: 7 |
It does seem odd that both GP0 and GP1 (the pins connected to the 8574) seem to still function fine, but potentially other I/O pins not directly connected to the 8574 are dead...maybe this is just the way it goes??? Cheers |
||||
thwill![]() Guru ![]() Joined: 16/09/2019 Location: United KingdomPosts: 4311 |
Don't assume it's a hardware fault; I'm completely cack-handed and I've yet to kill one. Much more likely is software or user error. Provide a detailed description of what you are doing and seeing from first powering on the PicoMite and I'm sure someone here will have a "Eureka" moment. Best wishes, Tom Edited 2022-05-21 19:24 by thwill MMBasic for Linux, Game*Mite, CMM2 Welcome Tape, Creaky old text adventures |
||||
Namaman3000 Newbie ![]() Joined: 21/05/2022 Location: New ZealandPosts: 7 |
I just found this vid of a guy hooking up his screen exactly the same way I did: https://www.youtube.com/watch?v=LFpukhptDac there are also some comments talking about 5V vs 3.3V potential issues Cheers Phil Edited 2022-05-22 20:10 by Namaman3000 |
||||
Volhout Guru ![]() Joined: 05/03/2018 Location: NetherlandsPosts: 5090 |
You have set the option for system spi. And you have an option for the lcd panel set for differen pins. Normally system spi is the set of pins that you use to connect lcd and sd card to. PicomiteVGA PETSCII ROBOTS |
||||
![]() |
![]() |
The Back Shed's forum code is written, and hosted, in Australia. | © JAQ Software 2025 |