Cyberdecks!

Kharzette

Watcher of Overs
5,851
5,841
I got the debuggery to work!
blinku.gif


One pico plugs into the compy via usb, and you flash it with debugprobe_on_pico.uf2. The other one uses pin power and you wire the opposite end up to some pins on the compy-plugged-in one and it acts like a serial debuggerererereerer.

This helped me out though it is a bit outdated: areed.me | Setting up Raspberry Pi Pico development with picoprobe in VSCode on Arch Linux

There's this openocd that the vscode pico extension tries to run but there's assgoblinry with it needing sudo. It behaves about like a console devkit. You can step and see variables and such in the debugger. It occasionally screws up but usually works next try so there's usually no need for any unplug /replug stuff.

I figured out how to use my multimeter so I sat at a table and just kept at the solderizing until all the pins worked properly. Some got shorted together and that took me awhile to figure out how to fix that. I've got this little spring loaded sucker thing that zaps away big blobs of silvery stuff when you put too much or need to just start over.
 
  • 2Like
Reactions: 1 users

Kharzette

Watcher of Overs
5,851
5,841
I made all that sound so easy. I rebooted to do some vrchat, and when I got back to linux land nothing worked again :emoji_laughing:

Took many many many hours of searches, re-solders, and rewiring strategy to get it going again.

My best guess at what happened was some kind of grounding problem. I had read that sometimes if you are connected thru usb and use another power supply for the second pico, wierd spikes can happen and fry stuff. Luckily nothing was fried, but I never could get any sort of debuggery going for many hours.

What ended up working for me was just USB powering the debugger pico, then wiring the 3.3 volt out from that onto the power rail of the breadboard, and the ground to the ground rail. Then the second pico uses that for power, and the little oled screen too.

The oled I never got anything out of. It seems completely dead, but they are like 3 for 10 dollars so I ordered another batch.

I dunno what I will end up doing with this. Maybe some kind of little weather device or or or audio display thing or or something. There are 2 i2c "channels" so maybe you can only have 2 screens running, but there are like 5 sets of pins usable for channel 0, and 6 for channel 1. Dunno if available pins or channels are the limiter. Or cpu power?
 

Kharzette

Watcher of Overs
5,851
5,841
The other batch of screens arrived during my Dune binge but I finally got around to trying one while my human squeezins machine was turning dead people into water. I had screwed up alot of the code trying to get the original one to work (which appears to be dead), but I eventually just reset everything back to defaults and it started working.
blorto.gif
 
  • 1Like
Reactions: 1 user

Kharzette

Watcher of Overs
5,851
5,841
Was watching one of the many roll-you-own cpu vids out on youtube and came across this solder method I'd never seen.

He designed and ordered a PCB, and it came with this stencil that you put over the PCB and slather "solder paste" through. You just line it up and squish the stuff through the holes with a spatula.



Then later he just waggles a hot air gun over it and it melts and shrinks up. Amazing!

 
  • 1Like
Reactions: 1 user

Kharzette

Watcher of Overs
5,851
5,841
I got back to my pico project a few days ago, and discovered that it is really difficult to talk to the target pico that is being debuggerized.

When the project is done I wanted to have just a single pico I could talk to from a PC and put stuff on the connected little screen. If a pico is just plugged in you can talk to it via usb, but I couldn't get either to work if it is being debugged.

I thought maybe I could rig up something with my pc serial port (remember those?) but there's some kind of voltage difference so you need a converter to go from serial pins to pico pins. The goog on this is massively polluted with USB related stuff so it was very difficult to find any decent information on this.

So I figured out what I needed and went to buy the bits on amazon and it was going to be like fifteen bucks, and for that I could just get a new pico with wireless. I've done loads of tcpip coding in the past so I figured I could just use sockets to talk to it.

So I bought a pico 2 w and replaced the 2nd pico with that. It is a bit odd. It has the usual 2 cores of arm, but also I think 1 core of some kind of riscv thing.

I decided to build for the riscv and had alot of trouble. First the RP2350 is kinda new so my installed distro version of OpenOCD didn't support it so I had to go build it.

Then when I got that going, the vscode side got very confused and was sending arm commands to the riscv GDB debugger, which would get very angy and disconnect me.

So yea, the riscv stuff I'd say isn't really ready to be used yet. I read about some people having a little success using manual gdb commands but screw that.

I guess the way to go is compile for arm mode, then when everything is working well and a debugger is no longer needed, riscv could be tried.
 

Kharzette

Watcher of Overs
5,851
5,841
I got back to my pico project a few days ago, and discovered that it is really difficult to talk to the target pico that is being debuggerized.

When the project is done I wanted to have just a single pico I could talk to from a PC and put stuff on the connected little screen. If a pico is just plugged in you can talk to it via usb, but I couldn't get either to work if it is being debugged.

I thought maybe I could rig up something with my pc serial port (remember those?) but there's some kind of voltage difference so you need a converter to go from serial pins to pico pins. The goog on this is massively polluted with USB related stuff so it was very difficult to find any decent information on this.

So I figured out what I needed and went to buy the bits on amazon and it was going to be like fifteen bucks, and for that I could just get a new pico with wireless. I've done loads of tcpip coding in the past so I figured I could just use sockets to talk to it.

So I bought a pico 2 w and replaced the 2nd pico with that. It is a bit odd. It has the usual 2 cores of arm, but also I think 1 core of some kind of riscv thing.

I decided to build for the riscv and had alot of trouble. First the RP2350 is kinda new so my installed distro version of OpenOCD didn't support it so I had to go build it.

Then when I got that going, the vscode side got very confused and was sending arm commands to the riscv GDB debugger, which would get very angy and disconnect me.

So yea, the riscv stuff I'd say isn't really ready to be used yet. I read about some people having a little success using manual gdb commands but screw that.

I guess the way to go is compile for arm mode, then when everything is working well and a debugger is no longer needed, riscv could be tried.
That pico2w I ordered seems to have everything working apart from the wireless chip. It can scan and show all the wifi networks, though it is a bit inconsistent, but actually getting on a network and getting an IP and stuff don't work. I think maybe it can send but not receive.

Strangely though, the serial stuff that wouldn't work on the pico I replaced, does work on the pico2. I don't know why that would be any different. So I might just use that to talk to the pc instead of sockets.
 

Hekotat

FoH nuclear response team
12,760
12,762
I was working on designing one of these when I worked at a CNC company. I was going to make it obnoxious as fuck and try to sell it for ludicrous amounts of money to some hipster. I had even planned on adding a massive pull out antenna like from devices from the 80s for the Wifi.

I planned on just setting up shop in a coffee shop until some retarded hipster couldn't control himself and had to have that massive attention seeking antenna.
 
  • 1Worf
Reactions: 1 user