Porównaj commity

...

4 Commity

Autor SHA1 Wiadomość Data
fhdm-dev b54f93629f initial commit 2024-03-06 16:20:20 +11:00
fhdm-dev a13b328936 initial commit 2024-03-06 16:15:02 +11:00
fhdm-dev 47706141b8 Merge branch 'main' of https://github.com/fhdm-dev/scoppy 2024-03-05 17:30:30 +11:00
fhdm-dev 08ca60a6b5 initial commit 2024-03-05 17:30:14 +11:00
18 zmienionych plików z 208 dodań i 27 usunięć

Wyświetl plik

@ -22,6 +22,7 @@ title: App Help Index
* [Wi-Fi Connection Settings](../app-help/WiFi-Connection-Settings)
* [Scoppy Firmware Settings](../app-help/Firmware-Settings)
* [Voltage Ranges](../app-help/Voltage-Ranges)
* [RP2040 Settings (incl. max sample rate)](../app-help/rp2040-settings)
* [Release Notes](../wiki/ReleaseNotes)
<br>

Wyświetl plik

@ -0,0 +1,52 @@
---
title: RP2040 Maximum Sample Rate Setting
---
> This feature is only available in version 1.030 (or higher) of the Scoppy Android app when version 17 (or higher) of the firmware is installed. Version 1.030 of the Android app will be available soon. The latest firmware can be found [here](../wiki/firmware-versions).
## About
The RP2040 datasheet states that the clock source for the built-in ADC must be 48MHz and that each ADC conversion takes 96 clock cycles.
This gives a maximum sample rate of 500kS/s (ie. 48000000 / 96 = 500000). This in turn limits the maximum bandwidth achievable by a Scoppy oscilloscope<sup>1</sup>.
However, if we ignore the datasheet and clock the ADC at a higher rate then we can achieve sample rates of up to 2.0MS/s with negligible affects on
performance. The setting described here allows us to do just that.
The Scoppy Android app allows us to choose from 3 different values for the maximum sample rate. They are:
* 500kS/s - The default - the ADC is clocked at 48MHz
* 1.3MS/s - The ADC is clocked at 125MHz
* 2.0MS/s - The ADC is clocked at 192MHz
## How to access and modify the RP2040 Maximum Sample Rate setting
From the _MENU_ tap the _SETTINGS_ button and then tap _RP2040 SETTINGS_ and then _Max. Sample Rate_.
Tap your desired setting and then OK. The new maximum sample rate setting will take effect within a few seconds.
## FAQ
### Does changing the maximum sample rate affect the accuracy of the oscilloscope?
We have found very little difference between the 3 available sample rates. However, performance
may depend on the analog front-end used to drive the ADCs of the RP2040. See results of our testing [here](../wiki/rp2040-max-sample-rate-test-results).
### Will the ADC perform as per the RP2040 datasheet specifications at the higher sample rates?
Unlikely. The higher sample rates are outside of the recommended range specified in the RP2040 datasheet and so the specifications stated
in the datasheet will not apply.
### Does this setting affect the Logic Analyzer?
Changing the maximum sample rate to 1.3MS/s will not have any affect when using the Logic Analyzer mode. The 2.0MS/s setting will increase
the maximum Logic Analyzer sample rate from 25MS/s to 38MS/s.
### Is the setting stored on the RP2040 (flash) or the Android app?
The setting is stored in the Android app and so it will need to be modified on each Android device.
### What is the maximum sample rate when two oscilloscope channels are enabled?
When both channels are enabled the maximum sample rate is halved. The maximum sample rates for the three possible settings are thus
250kS/s, 625kS/s and 1MS/s when using two channels.
## Footnotes
<sup>1</sup>This only applies when the Scoppy firmware is running on an RP2040 and is sampling using the built in ADCs. Future versions of the firmware
may become available that either use an external ADC or target different MCUs.
## See also
{% include scoppy-links.md %}

Wyświetl plik

@ -0,0 +1,11 @@
---
title: RP2040 Settings
---
From the _MENU_ tap the _SETTINGS_ button and then tap _RP2040 SETTINGS_
* [RP2040 Maximum Sample Rate](./rp2040-max-sample-rate-setting)
<br>
{% include scoppy-links.md %}

Wyświetl plik

@ -107,7 +107,7 @@ Reserved for future use. We might add support for switching between AP and Stati
### Updating the Firmware
Download the [latest firmware file](https://github.com/fhdm-dev/scpdl1/raw/master/a/v16/scoppy-dso-500k-p-v16.uf2) to your computer.
Download the latest firmware file from [here](./wiki/firmware-versions) to your computer. The file will be named scoppy-dso-500k-p-vNN.uf2 where NN is the version number.
Push and hold the BOOTSEL button on the Pico, then connect it to your computer using a normal USB cable (Type-A male to Micro-USB male). Your computer should detect the Pico as a USB Mass Storage device. Release BOOTSEL once the drive RPI-RP2 appears on your computer. Copy the uf2 file to your Pico.

Wyświetl plik

@ -8,23 +8,7 @@ Install the [Scoppy Android app](https://play.google.com/store/apps/details?id=x
### 2. Download the Firmware
Different firmware is available for the Pico and Pico W. The Pico firmware is not compatible with the Pico W and vice versa.
Download the firmware by selecting one of the following links.
Pico: [scoppy-pico-v15.uf2](https://github.com/fhdm-dev/scpdl1/raw/master/a/v15/scoppy-pico-v15.uf2)
<br>
Pico W: [scoppy-picow-v15.uf2](https://github.com/fhdm-dev/scpdl1/raw/master/a/v15/scoppy-picow-v15.uf2)
If you have an [FHDM FSCOPE](https://store.fhdm.xyz/fscope-500k) board then you will need to use one of these:
<br>
FSCOPE with Pico: [scoppy-fscope-500k-pico-v15.uf2](https://github.com/fhdm-dev/scpdl1/raw/master/a/v15/scoppy-fscope-500k-pico-v15.uf2)
<br>
FSCOPE with Pico W: [scoppy-fscope-500k-picow-v15.uf2](https://github.com/fhdm-dev/scpdl1/raw/master/a/v15/scoppy-fscope-500k-picow-v15.uf2)
For the FHDM DSO-500K see [here](https://store.fhdm.xyz/dso-500k).
<br>
Older firmware versions can found [here](/wiki/firmware-versions).
Download the firmware onto your computer from [here](./firmware-versions)
### 3. Install the Firmware
Push and hold the BOOTSEL button on the Pico, then connect it to your computer using a normal USB cable (Type-A male to Micro-USB male). Your computer should detect the Pico as a USB Mass Storage device. Release BOOTSEL once the drive RPI-RP2 appears on your computer. Copy the uf2 file to your Pico.

Wyświetl plik

@ -1,20 +1,23 @@
---
title: Older firmware versions
title: Firmware downloads
---
Download the firmware by selecting one of the following links.
### Version 14
Pico: [scoppy-pico-v17.uf2](https://github.com/fhdm-dev/scpdl1/raw/master/a/v17/scoppy-pico-v17.uf2)
<br>
Pico W: [scoppy-picow-v17.uf2](https://github.com/fhdm-dev/scpdl1/raw/master/a/v17/scoppy-picow-v17.uf2)
Pico: [scoppy-pico-v14.uf2](https://github.com/fhdm-dev/scpdl1/raw/master/a/v14/scoppy-pico-v14.uf2)
If you have an [FHDM FSCOPE-500K](https://store.fhdm.xyz/fscope-500k) board then you will need to use one of these:
<br>
Pico W: [scoppy-picow-v14.uf2](https://github.com/fhdm-dev/scpdl1/raw/master/a/v14/scoppy-pico-wireless-v14.uf2)
FSCOPE with Pico: [scoppy-fscope-500k-pico-v17.uf2](https://github.com/fhdm-dev/scpdl1/raw/master/a/v17/scoppy-fscope-500k-pico-v17.uf2)
<br>
FSCOPE with Pico W: [scoppy-fscope-500k-picow-v17.uf2](https://github.com/fhdm-dev/scpdl1/raw/master/a/v17/scoppy-fscope-500k-picow-v17.uf2)
<br>
FSCOPE with Pico: [scoppy-pico-fscope-250k5-v14.uf2](https://github.com/fhdm-dev/scpdl1/raw/master/a/v14/scoppy-pico-fscope-250k5-v14.uf2)
<br>
FSCOPE with Pico W and FHDM DSO-500K: [scoppy-pico-wireless-fscope-250k5-v14.uf2](https://github.com/fhdm-dev/scpdl1/raw/master/a/v14/scoppy-pico-wireless-fscope-250k5-v14.uf2)
If you have an [FHDM DSO-500K](https://store.fhdm.xyz/dso-500k) then you will need this:
[scoppy-dso-500k-p-v17.uf2](https://github.com/fhdm-dev/scpdl1/raw/master/a/v17/scoppy-dso-500k-p-v17.uf2)
<br>
<small>Note. Different firmware is available for the Pico and Pico W. The Pico firmware is not compatible with the Pico W and vice versa.</small>
<br>
{% include see-also.md %}

Plik binarny nie jest wyświetlany.

Po

Szerokość:  |  Wysokość:  |  Rozmiar: 109 KiB

Plik binarny nie jest wyświetlany.

Po

Szerokość:  |  Wysokość:  |  Rozmiar: 107 KiB

Plik binarny nie jest wyświetlany.

Po

Szerokość:  |  Wysokość:  |  Rozmiar: 109 KiB

Plik binarny nie jest wyświetlany.

Po

Szerokość:  |  Wysokość:  |  Rozmiar: 91 KiB

Plik binarny nie jest wyświetlany.

Po

Szerokość:  |  Wysokość:  |  Rozmiar: 91 KiB

Plik binarny nie jest wyświetlany.

Po

Szerokość:  |  Wysokość:  |  Rozmiar: 92 KiB

Plik binarny nie jest wyświetlany.

Po

Szerokość:  |  Wysokość:  |  Rozmiar: 87 KiB

Plik binarny nie jest wyświetlany.

Po

Szerokość:  |  Wysokość:  |  Rozmiar: 89 KiB

Plik binarny nie jest wyświetlany.

Po

Szerokość:  |  Wysokość:  |  Rozmiar: 89 KiB

Plik binarny nie jest wyświetlany.

Po

Szerokość:  |  Wysokość:  |  Rozmiar: 87 KiB

Plik binarny nie jest wyświetlany.

Po

Szerokość:  |  Wysokość:  |  Rozmiar: 86 KiB

Wyświetl plik

@ -0,0 +1,130 @@
---
title: RP2040 Max. Sample Rate Testing
---
## About
The RP2040 datasheet states that the clock source for the built-in ADC must be 48MHz and that each ADC conversion takes 96 clock cycles.
This gives a maximum sample rate of 500kS/s (ie. 48000000 / 96 = 500000). This in turn limits the maximum bandwidth achievable by any oscilloscope
that relies on the built-in ADC of the RP2040 MCU.
However, if we ignore the datasheet and clock the ADC at a higher rate then we can achieve higher sample rates.
The Scoppy Android app allows us to choose from 3 different values for the maximum sample rate. They are:
* 500kS/s - The default - the ADC is clocked at 48MHz
* 1.3MS/s - The ADC is clocked at 125MHz
* 2.0MS/s - The ADC is clocked at 192MHz
The following tests were performed to allow us to determine if overclocking the ADC adversely affects performance of the oscilloscope.
All tests were performed using an [FSCOPE-500K](https://store.fhdm.xyz/fscope-500k) board as the analog front-end to the RP2040 ADC. For the 200kHz sine wave tests, the MCP6002 op-amp on the board was
replaced with an amplifier with higher GBW and slew rate.
## Tests
The 3 different _Max. Sample Rate_ settings were tested with a 1kHz sine wave, 200kHz sine wave, 30kHz square wave and DC. The FFT of the
1kHz sine wave was also recorded.
### 1kHz Sine Wave
The results were very similar except at the 2.0MS/s setting where there is small but visible distortion at about 0V.
#### 500kS/s
![1kHz sine wave at 500kS/s](img/rp2040/sine-1khz-0_5.jpg)
<br>
#### 1.3MS/s
![1kHz sine wave at 1.3MS/s](img/rp2040/sine-1khz-1_3.jpg)
<br>
#### 2.0MS/s
![1kHz sine wave at 2.0MS/s](img/rp2040/sine-1khz-2_0-annotated.jpg)
The red circle shows an area of distortion that is not visible at the lower _max. sample rate_ settings.
### 200kHz Sine Wave
Using the default 500kS/s setting the waveform is extremely wonky! The higher sample rates result in a
much less distorted waveform.
#### 500kS/s
![200kHz sine wave at 500kS/s](img/rp2040/sine-200khz-tlv9062-0_5.jpg)
<br>
#### 1.3MS/s
![200kHz sine wave at 1.3MS/s](img/rp2040/sine-200khz-tlv9062-1_3.jpg)
<br>
#### 2.0MS/s
![200kHz sine wave at 2.0MS/s](img/rp2040/sine-200khz-tlv9062-2_0.jpg)
<br>
### 30kHz Square Wave
#### 500kS/s
![30kHz square wave at 500kS/s](img/rp2040/square-30khz-0_5.jpg)
<br>
#### 2.0MS/s
![30kHz square wave at 2.0MS/s](img/rp2040/square-30khz-2_0.jpg)
<br>
### 1kHz Sine Wave FFT
Changing the max. sample rate setting has very little affect on distortion. Measured using the amplitude of the
3rd and 5th harmonics.
#### 500kS/s
![FFT of 1kHz sine wave at 500kS/s](img/rp2040/fft-1khz-0_5.jpg)
<br>
#### 1.3MS/s
![FFT of 1kHz sine wave at 1.3MS/s](img/rp2040/fft-1khz-1_3.jpg)
<br>
#### 2.0MS/s
![FFT of 1kHz sine wave at 2.0MS/s](img/rp2040/fft-1khz-2_0.jpg)
<br>
### DC
The signal generator was set to 2.0V. The voltage measured at the scope input with a DMM was 2.07V. Increasing the max. sample rate
setting does affect the measured voltage of DC signals (approx. 2%).
#### 500kS/s
Measured voltage = 2.08V
<br>
#### 1.3MS/s
Measured voltage = 2.13V
<br>
#### 2.0MS/s
Measured voltage = 2.13V
<br>
## See Also
[RP2040 Max. Sample Rate Setting](../app-help/rp2040-max-sample-rate-setting)
{% include scoppy-links.md %}