Comments (11)
Hi karamJAB,
thank you for your proposal. The data flow is described roughly in this document. The continuous export could be done e.g. with a (named) pipe as a postprocessing task after SpectrumGenerator::process()
and before GraphGenerator::process()
(the tasks are defined and ordered in main.cpp:165, //////// Create post processing objects ////////
). At this stage the voltage as well as the spectrum data are available. But be warned that the scope doesn't sample continuously but acquires a block of 20000 samples (either 8-bit samples CH1 only or 16-bit samples CH1 & CH2), processes and acquires a next block leaving a gap between blocks. Maybe you better use sigrok that (IIRC) gives the possibility of continuous sampling. A quick check says - yes: https://sigrok.org/wiki/Sigrok-cli
from openhantek6022.
The amount of CVS sample data seems to be very limited at 20k samples. Could this be increased? on a modern PC this should not be an issue and there could be a setting for the buffer size.
If using a trigger will the software capture and store samples before the trigger point?
from openhantek6022.
@staticmem: It's not the issue with PC storage. The program OpenHantek6022 is intended first of all as a digital storage scope. Therefore it collects as much data as necessary to display a stable and dynamic image that is refreshed frequently. The larger the sample size, the safer the program finds the trigger point - but on the other hand, the acquisition takes longer and the refresh rate decreases. The sample size of 20000 was chosen to compromise both purposes. The curve on the screen is a cutout from this 20000 samples window, depending on the trigger condition an undefined number of leading samples will be discarded to get a stable image (software trigger). The CVS export is a nice add on to save the raw sample window, it's not intended as a permanent data collector. If this is your application, then use sigrok which follows the metaphor of the line recorder, or try the low level python interface.
from openhantek6022.
I understand that you are displaying a window of data and this has to be limited, that's fine but why can't it store more values? Surely this is just a matter of keeping track of the insert and retrieve points and wrap it if it reaches the buffer limit. By that I mean shifting the pointers within the data. You could then just operate on that Window of data within the time frame required?
I'm not expecting high speed logic use but rather serial data at a maximum of say 115k baud.
from openhantek6022.
The low level code is not able to sample continuously due to the underlying USB bulk transfer! All you can get are chunks of 20000 samples with an undefined time gap between. You can store more date but these samples are not gapless.
@staticmem: Please explain why you expect this feature so badly in OpenHantek6022 and don't want to use the proposed alternative programs - I don't need it and won't rewrite the whole program to implement this function. It's a DSO and not a line recorder. -> I will close this issue.
@karamJAB: If you find a simple solution you're welcome to propose a patch or pull request.
from openhantek6022.
Surely the DSO hardware has a buffer to store a "WINDOW" of data until the next request is made or is the DSO hardware that bad? If Sigrok can be used instead to capture analogue (not just logic levels on a 6022BE) wave forms I will use it instead. What other alternatives are there? If you claim this SW to be a DSO then it needs to perform like a DSO and not just a real-time window of data. "S" stands for storage. I want to see what led up to a trigger point to diagnose a HW issue.
from openhantek6022.
is the DSO hardware that bad?
You decided to buy this device, so you checked its specs upfront (didn't you?). Otherwise take your time and get some facts, e.g. here, rough schematics can be found later in the discussion. The scope HW is build around a Cypress EzUSB chip that streams sample data to USB (with the little help of a 4 kByte internal FiFo buffer). The main HW drawbacks are no internal storage, no AC coupling, no HW trigger. Everything has to be done in SW, also the storage.
What other alternatives are there?
I've told you before, look up.
If you claim this SW to be a DSO then it needs to perform like a DSO and not just a real-time window of data.
If you don't like how the software works, don't use it. Otherwise, change it, it's free open source.
I develop this program for my needs and give it away for free. You are not my boss, so don't request or expect something.
I want to see what led up to a trigger point to diagnose a HW issue.
Shift the trigger point to the right and use single mode - you will see the history left of the trigger.
from openhantek6022.
Talk about being over sensitive! I produce open source software (not currently on GitHub) too and I don't respond like that to users when I'm asked questions. If it is just for yourself then why publish it and allow interactions? Seriously
from openhantek6022.
Ok so mark my posts as off-topic. So how is your comment below on topic?
"I develop this program for my needs and give it away for free. You are not my boss, so don't request or expect something."
from openhantek6022.
After some noise in the discussion I reopen the issue again as it would be an enhancement, @karamJAB feel free to explore the possibility.
from openhantek6022.
1 month without any activity - I close for now and will reopen if there's any progress.
from openhantek6022.
Related Issues (20)
- Low image quality on exports HOT 22
- Improve versioning releases
- Building on Apple M1 silicon HOT 4
- Hantek 6254BD support HOT 1
- No graphics output - windows 10 3.3.2.2 HOT 7
- Program stops on Windows 11 when changing horizontal time base (In demo mode and connected with 6022BE) HOT 14
- MacOS Monterey Firmware Upload Error HOT 5
- QObject::setParent: Cannot set parent, new parent is in a different thread HOT 3
- Failed to open main window with error. QOpenGLFunctions created with non-current context HOT 2
- unable to install HOT 2
- Changing timebase crashes HOT 3
- Pausing roll mode HOT 1
- 32bit version
- [Q] Calibration HOT 5
- Add a new device: Hantek 1070 HOT 1
- No traces seen under v3.3.3 HOT 4
- 'Version' field value 'devdrop-3.3.3-22-g1c3a681-dirty': version number does not start with digit HOT 2
- I want to print 1 or 0 on the bottom of each wave form HOT 2
- Build doesn't work on macOS 13 HOT 1
- Horizontal greyed out HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from openhantek6022.