|
Forum Index : Microcontroller and PC projects : PicoCalc problem and ChatGPT
| Author | Message | ||||
| Frank N. Furter Guru Joined: 28/05/2012 Location: GermanyPosts: 1138 |
Perhaps my report here will be useful to other PicoCalc users as well. Some of you may have noticed my issues with the PicoCalc. After I installed newer beta versions, the device would only turn on sporadically. At first, at least the V22 seemed to run stably (coincidence?). I had equipped my PicoCalc with a Pico2. After I replaced it, the problems seemed to disappear for a short time. But then even the V22 stopped working. Frustrated, I set the device aside for the time being and checked it with an oscilloscope yesterday. Okay, after turning it on, the voltage at VSYS fluctuated a bit, but it was still within normal limits. To me, all the signals looked the same during both a successful and an unsuccessful boot attempt. So I asked ChatGPT about my problem. Since my PicoCalc has been working fine for about half a year now and I haven't made any changes to it, ChatGPT also suggested that something on the circuit board might have aged. ChatGPT suggested that I trigger the QSPI CLK signal at power-on. In fact, no signal was present there during a failed boot attempt. ChatGPT concluded from this that the firmware couldn’t possibly be involved at that point and that the error was likely due to the power supply. ChatGPT says that the RP2350 is more sensitive to voltage dips than the RP2040, and even small glitches can cause the Pico to hang during bootup. ChatGPT says that these glitches can be so brief that it would be difficult to see them with my oscilloscope. ChatGPT told me to remove the display and the CF card. In fact, the device often turned on successfully when the CF card was removed. Now I was supposed to solder a 22-47 µF capacitor between VSYS and GND on the Pico. I had a 22 µF electrolytic capacitor on hand. After I soldered it in, my problems were gone! The PicoCalc started up 25 times in a row without any trouble. I'd already had the feeling that Clockworkpi had skimped on the capacitance on the board. It does indeed seem that the device was built very tightly to spec. Either a capacitor has actually aged, or it has sustained some other kind of damage. The fact is that the PicoCalc is currently running stably with the additional electrolytic capacitor, and I haven't had any problems with the current release version either. Without ChatGPT, I wouldn't have found a solution so easily. It remains to be seen whether this capacitor will actually solve the problem in the long run, or whether there is some other damage somewhere that is causing this capacitor to be necessary in the first place. Frank |
||||
| robert.rozee Guru Joined: 31/12/2012 Location: New ZealandPosts: 2537 |
electrolytic capacitors are messy things, containing a liquid electrolyte and depending upon rubber seals to keep it inside. as a result, they have a finite lifespan that under non-ideal conditions can be quite limited. and while other types of capacitor are much better, they can also have issues; tantalums can explode, chip ceramics can get mechanically stressed and damaged by even moderate temperature cycling. for the product designer, it is quite the minefield out there! cheers, rob :-) |
||||
| mikeb Senior Member Joined: 10/04/2016 Location: AustraliaPosts: 180 |
Great feedback Frank. Thankyou. Unfortunately, just because a component is new doesn't mean anything these days. Everything is built to cost. I wish they wouldn't. Just supply a quality product at a fair price. There are many of us in the world who are prepared to pay a premium for quality and reliability. Also, unfortunately, Geoff, Peter, Glen, and others expend much effort providing a community with a wonderful resource only to be brought down by a 2 cent part. I remember a quote by an astronaut (can't remember who) that my concern is "The cheapest price got the job". Edited 2026-07-07 07:43 by mikeb There are 10 kinds of people in the world. Those that understand binary and those that don't. |
||||
| zeitfest Guru Joined: 31/07/2019 Location: AustraliaPosts: 685 |
Even PC motherboard manufacturers have had their problems with capacitors, a while back there were rashes of failures as the capacitors failed. Now many use chip ceramics but it is still a concern. I have had at least one fail with bad electros, visibly expanded . Microchip recommended ceramics but they were hard to obtain at the start. The micros are getting fussier with start up times too. Too fast and the IC can gasp or lock up, a faulty capacitor may cause that or let spikes through I guess. |
||||
| phil99 Guru Joined: 11/02/2018 Location: AustraliaPosts: 3309 |
Delaying startup till after the supply has stabilized may also help. A voltage monitor chip connected to the Run / Reset pin is the proper way to do it but just a 1µF cap. from Run to ⏚ may also provide a suitable delay. |
||||
| Frank N. Furter Guru Joined: 28/05/2012 Location: GermanyPosts: 1138 |
You're right! But that was the one I had on hand. ChatGPT recommended using a 100nF capacitor with a 47µF one as a permanent solution. That probably won't help. My understanding is that the Pico2's logic starts to go haywire even before the RESET pin is enabled... Frank |
||||
| Mixtel90 Guru Joined: 05/10/2019 Location: United KingdomPosts: 8927 |
The correct way to do it is to use a proper reset chip. This will hold the Pico RUN pin low until the supply to the system (and the reset chip) has been above a preset level for several ms. At this point it will raise RUN and allow the Pico to boot. Adding capacitors isn't necessarily the right technique as you will see if you watch the charging waveform across them. You need a low impedance power supply. If the impedance is too high then the capacitors will merely make things worse, the larger the cap the slower the ramp and the worse the boot process. Even a single 18650 is a low impedance power supply. It doesn't need any help! A small capacitor next to the load helps with stability issues, but the Pico module is pretty much self-sufficient. They work nicely just dangled on a 1m flaky USB lead and using their switcher to get 3V3 from VBUS. I can't see why there should be a problem in booting unless it's a dry joint. The PicoCalc appears to accept the 3V7 from parallel 18650s and use the Pico 2's on-board switcher to get 3V3. That system has always been pretty robust in the past. I've run ordinary Pico modules from 2x AA cells and never had any trouble. That's a very good little buck converter chip. The RPnnnn is quite capable of booting from it using its internal boot logic normally. I don't have the PicoCalc schematic, but if they power the backlight from the 3V3 output from the Pico 2 then that's a very bad idea and will not help at all. For anything approaching stability it should come from the battery output in some way. Mick Zilog Inside! nascom.info for Nascom & Gemini Preliminary MMBasic docs & my PCB designs |
||||
| dddns Guru Joined: 20/09/2024 Location: GermanyPosts: 858 |
I looked for it, but couldn't find a schematic. Isn't this supposed to be open source? Anyway, I still think it's caused by a voltage drop when powering on via the battery, but not via USB, because USB is capable of supplying a higher current than the battery's control circuitry. It must be a very brief current spike that can be compensated for by a 22µF capacitor. This could be caused, for example, by the SD card or the RTC. It sounds silly, but maybe try removing the RTC’s battery and testing it? |
||||
| Frank N. Furter Guru Joined: 28/05/2012 Location: GermanyPosts: 1138 |
Here is the link: https://github.com/clockworkpi/PicoCalc/blob/master/clockwork_Mainboard_V2.0_Schematic.pdf The problem also occurs when I power the PicoCalc via USB-C. When I power it via USB-Micro on the Pico, the Pico starts up without any problems. During my experiments, I had also completely disconnected the RTC and had it connected for half a year. It had no effect... @Mixtel90: Please explain to me why I didn't have any problems for about half a year? Frank Edited 2026-07-07 19:53 by Frank N. Furter |
||||
| Mixtel90 Guru Joined: 05/10/2019 Location: United KingdomPosts: 8927 |
An 18650 can supply enough current to weld by. That's not an issue. The battery discharge protection chip should be set for something safe for the cell - it's not there to protect external circuits. Over an amp is common. SD cards are not all the same and the current drawn varies. Guess at about 30mA read / 100mA write. With SDCS high though (and it should be), it could be just a few uA. That signal doesn't go low until well after the RPnnnn boot though. I've no idea whatsoever what they did with the RTC. It will be on a I2C bus though and it's battery only feeds that chip (there may be diode stuff happening). Contact cleaner on the switch? No, I couldn't find a schematic either, even though it says it's open source and on the Github. Mick Zilog Inside! nascom.info for Nascom & Gemini Preliminary MMBasic docs & my PCB designs |
||||
| JohnS Guru Joined: 18/11/2011 Location: United KingdomPosts: 4340 |
Mick, Direct link from Frank's post PDF here John |
||||
| Frank N. Furter Guru Joined: 28/05/2012 Location: GermanyPosts: 1138 |
It's a electronic switch WAS4603. Frank Edited 2026-07-07 21:26 by Frank N. Furter |
||||
| Mixtel90 Guru Joined: 05/10/2019 Location: United KingdomPosts: 8927 |
U101 is the main power management chip. It provides a power output on pin 36 (VMID) to U102. U102 is a current limiter with an enable input and a very low voltage drop, inked to VSYS on the Pico. The limit is programmed by R104 (3K4) to 2A Ioc = 6K8/Rset. The backlight is on its own switcher. Good. :) The SD card CS signal isn't pulled up by a resistor. I'd like to have seen that as it ensures that it gives minimum load when not needed. You could try pulling GP17 up to 3V3 using anything from 10K to 100K. Mick Zilog Inside! nascom.info for Nascom & Gemini Preliminary MMBasic docs & my PCB designs |
||||
| Mixtel90 Guru Joined: 05/10/2019 Location: United KingdomPosts: 8927 |
No, the switch I mean is SW701. It produces signals that control the USB routing via U701. This routes DP and DN on the main USB-C to either U702 (CH340) or TP4/TP6 on the Pico (USB). I assume those are pogo pins? Mick Zilog Inside! nascom.info for Nascom & Gemini Preliminary MMBasic docs & my PCB designs |
||||
| robert.rozee Guru Joined: 31/12/2012 Location: New ZealandPosts: 2537 |
see attached PDF, containing a portion of the schematic with annotations added: clockwork pi 2 PSU design.pdf i would suggest you check that good power is getting all the way from the battery +ve terminal to VSYS (pin 39) on the pico board, and likewise all the way from the battery -ve terminal to GND (pin 38) on the pico board. how things seem to work: battery power (3.7v) is connected to pin 33 on U101 via the BLUE wire i've added to the schematic (net VBAT). when the power button is pressed (at some point) an internal MOSFET turns on and shorts between pin 33 and pin 34, thereby livening up pin 34. from pin 34 power then flows through the IPS net (RED wires) to pin 5 on U102. U102 is, as far as i can see, mostly there to act as a current limiting device, although it also has an on/off pin that is controlled by the keyboard/LCD controller. once U102 has been turned on, pin 1 of U102 supplies power to the pico's pin 39 via the PURPLE wire (net PICO_VSYS). the functionality contained within U101 is only partially used. it (1) has a buck/boost regulator that converts the 3.7v from the battery to a regulated 3.3v that then feeds the keyboard/LCD controller and pretty much all of the other electronics except for the pico. U101 also handles the power button and generates a reset pulse to the keyboard/LCD controller. finally, it (3) controls the Li-Ion battery charging by regulating the USB-C power input down to a safe voltage/current with suitable timed charge termination. this last function is likely performed under instruction from the keyboard/LCD controller over a TWSI(Two Wire Serial Interface) bus. it is all, in my humble opinion, excessively convoluted! cheers, rob :-) |
||||
| Mixtel90 Guru Joined: 05/10/2019 Location: United KingdomPosts: 8927 |
I thought that. :) Mick Zilog Inside! nascom.info for Nascom & Gemini Preliminary MMBasic docs & my PCB designs |
||||
| The Back Shed's forum code is written, and hosted, in Australia. | © JAQ Software 2026 |