pico-coder / sigrok-pico

Use a raspberry pi pico (rp2040) as a logic analyzer and oscilloscope with sigrok
727 stars 83 forks source link

Update README.md #6

Closed nkruzan closed 2 years ago

nkruzan commented 2 years ago

I got a working build of PulseView, too ;)

Screenshot_2022-03-03_21-16-05

tony1tf commented 2 years ago

I want to build for MacOS, but get this error - I don't have enough knowledge about QT versions etc. I have Python and Python 3 , but what is Python 2? Error: No available formula with the name "qt@5.5" Error: No available formula with the name "python@2"

nkruzan commented 2 years ago

@tony1tf here are some instructions that may help you https://sigrok.org/wiki/Mac_OS_X

you will want to edit the file cross-compile/macosx/sigrok-native-macosx before running to enable @pico-coder repository like so https://github.com/nkruzan/sigrok-util/blob/145b6fba1bcd14f685719a9827a856783e97f5c1/cross-compile/macosx/sigrok-native-macosx#L91

nkruzan commented 2 years ago

i did get a linux appimage built that runs for me but idk if it will work for others. anyone want to test? is first time i try to make appimage.. https://github.com/nkruzan/sigrok-util/blob/raspberrypi-pico/cross-compile/appimage/out/PulseView-NIGHTLY-x86_64.AppImage

tony1tf commented 2 years ago

@nkruzan I was already using the instructions on the wiki and that was what is giving me the error messages. I tried to editing the cross-compile script to try and match my versions of QT and python, but I don't really know what I am doing and it still gives error messages. I'm a naive user who just wants to use PulseView with pico-coder's Pico hardware.

nkruzan commented 2 years ago

@tony1tf for example if you are using python3.8 you would edit the PYPATH=$PREFIX/lib/python2.7/site-packages to read PYPATH=$PREFIX/lib/python3.8/site-packages , perhaps just remove python@2 as so for FORMULA in libffi python@3 "$QTVER"; do might get you going there. also will want to edit the QTVER=qt@5.5 as appropriate (you said you already changing this), I don't have mac to test, but you might give it another shot if you didnt try those changes yet. also make sure to change the libsigrok repo path to $GIT_CLONE https://github.com/pico-coder/libsigrok.git so the pico is enabled in libsigrok

nkruzan commented 2 years ago

I make a quick prototype pcb, going to mill on cnc and give it a test. If all works, will share on my github and can be added to project here.

Screenshot_2022-03-04_20-02-30

tony1tf commented 2 years ago

Hi Nick

Well done on advancing the project.

That pcb of yours would be very useful for my application if you had pull down resistors on the Pico data inputs. The reason is that I am using logic analysers like this for looking at higher level signals, and need to attenuate them. The pull down resistors would need to go to a common rail to supply a possible negative offset, so not ground.

Cheers Tony

On Sat, 5 Mar 2022 02:05 Nicholas (Nick) Kruzan, @.***> wrote:

I make a quick prototype pcb, going to mill on cnc and give it a test. If all works, will share on my github and can be added to project here.

[image: Screenshot_2022-03-04_20-02-30] https://user-images.githubusercontent.com/1158316/156863470-3e1df1a5-f133-4e32-a913-f66e972a80d4.png

— Reply to this email directly, view it on GitHub https://github.com/pico-coder/sigrok-pico/pull/6#issuecomment-1059650331, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABJKGTUXKC6NZU3RQ4WYA2LU6K6OZANCNFSM5P4MCF4A . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

You are receiving this because you were mentioned.Message ID: @.***>

nkruzan commented 2 years ago

I'm relatively new to pcb design, did I misunderstand the inline resistors should really be pull downs? Or are you saying pull downs instead of inline would be useful in your application?

tony1tf commented 2 years ago

Hi Nick

Sorry if I wasn't clear. I need your series resistors and a set of pull down resistors on the Pico end, so that a signal input of 0 to 25V can be attenuated to 0 to 3.3V. However, some of the low signals on the input might be quite high (8V or more), so the common side of the pulldowns shouldn't go to ground, but to a pin that I can feed a negative bias in to. I hope this isn't too complicated - don't worry about it, but in any case, in many applications there might be 5V signals to look at, so attenuators are good.

Tony

On Sat, 5 Mar 2022 at 12:34, Nicholas (Nick) Kruzan < @.***> wrote:

I'm relatively new to pcb design, did I misunderstand the inline resistors should really be pull downs? Or are you saying pull downs instead of inline would be useful in your application?

— Reply to this email directly, view it on GitHub https://github.com/pico-coder/sigrok-pico/pull/6#issuecomment-1059755963, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABJKGTXYMU5QQVQTZLCJLD3U6NIEHANCNFSM5P4MCF4A . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

You are receiving this because you were mentioned.Message ID: @.***>

nkruzan commented 2 years ago

Tony, Would this work or would it kill the pico? Is pretty busy, but I only make single sided thru-hole boards myself. For fun.

Screenshot_2022-03-05_16-10-13

tony1tf commented 2 years ago

Wow Nick, you certainly work fast! That looks great - exactly what I was looking for. I have access to a Modela milling m/c where I could make a board with your CAD file if you are happy to make it available. I was at the National Museum of Computing at Bletchley Park today for the 10th anniversary of R Pi exhibition. Had the pleasure of showing Eben Upton around the EDSAC replica I need the logic analyser for. Tony

On Sat, 5 Mar 2022, 22:16 Nicholas (Nick) Kruzan, @.***> wrote:

Tony, Would this work or would it kill the pico? Is pretty busy, but I only make single sided thru-hole boards myself. For fun.

[image: Screenshot_2022-03-05_16-10-13] https://user-images.githubusercontent.com/1158316/156901445-40a221cf-5c3f-4baa-bcfd-e786caa81663.png

— Reply to this email directly, view it on GitHub https://github.com/pico-coder/sigrok-pico/pull/6#issuecomment-1059840305, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABJKGTSS25OZOMZZXRHBEPDU6PMNRANCNFSM5P4MCF4A . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

You are receiving this because you were mentioned.Message ID: @.***>

nkruzan commented 2 years ago

Hi Tony, I have shared it here https://github.com/nkruzan/pico-logic-analyzer-hw

pico-coder commented 2 years ago

Nick, More than you ever wanted to know about RP2040 board design here: https://datasheets.raspberrypi.com/rp2040/hardware-design-with-rp2040.pdf For the analog signals it looks like you route the traces right under the USB traces which could create cross talk (the pico board likely has a ground plane there, but I wouldn't push it).

The ADC has a dedicated ground that you might want to route to for analog, and you usually shouldn't tie digital and analog grounds together.

You might consider just keeping all the analog pins on the right side to minimize coupling/route length etc. unless you have a need to get them on the same header.

As for terminations, if you ask 100 people you'll get 100 answers. Definitely inline resistors go a long way, but anyone wanting to measure signals below 3.3V might need space for level shifters of various kinds. For the analog pins having some kind of pads for opamps might be useful, though finding opamps with high enough slew rate to support 500ksps might take some looking.

But take it all with a grain of salt, I'll probably do most of my testing on a breadboard. So if works for you, go with that :)!.

nkruzan commented 2 years ago

Thanks for your feedback, I will review that document and edit the design.

nkruzan commented 2 years ago

I did get one built finally.

Screenshot_2022-03-16_20-01-18

tony1tf commented 2 years ago

Excellent! As you see in the other thread, I'm having discussions about whether the Pico can do what I need at EDSAC before rushing into a build..