Data AcQuisition And Real-Time AnalysisScope - Spectrum - Spectrogram - Signal Generator
Software for Windows
Science with your Sound Card!
Contact us about
Revision History - v9.00
Daqarta v9.20 - 10 June 2016
Sound Level Meter has new AC/DC button that defaults to AC to ignore the 0th (DC) spectrum line when computing SPL values. (High DC peaks can appear if microphone calibration (.CAL or .FRD) files have large negative dB entries at 0 Hz, as Daqarta attempts to correct the spectrum to be equivalent to a microphone with a flat response, by boosting frequency regions where it has low output.)
New Z-Weight.CRV and Z-Weight96.CRV Standard Weighting Curves are now included with Daqarta, which solve the above problem for both low and high frequencies, and for Spectrum display as well as Sound Level Meter readings.
Bug Fix: On Vista and later systems, Right Input channel Level reported fixed (usually maximum) attenuation, but sensitivity actually matched Left. On calibrated systems this caused Daqarta to report erroneous high Right input levels, since it appeared that large signals were present despite having been greatly attenuated.
Bug Fix: On Vista and later systems, Right Input User Units buttons were disabled.
Bug Fix: Spectrum Sigma readout and/or Sound Level Meter could show erroneously high values for very low-level signals. This was a particular problem when using Spectrum Weighting Curves with regions of large negative dB reponse.
Bug Fix: Spectrum Cursor Peak option now typically reports the peak magnitude and frequency only when the cursor is on spectral lines immediately adjacent to the true tone peak. Previously also reported on one additional line above or below.
Bug Fix: The Auto-Calibrate progress report for Master Out always showed 0 instead of current step number. (Actual calibration was OK.)
Bug Fix: Spectrum Weighting Curve Files buttons or Load Mic (or Spkr) Cal File buttons erroneously showed a Memory Curve name instead of the actual file name loaded, for certain short .CRV or .CAL (or .FRD) files respectively.
Daqarta v9.10 - 20 March 2016
New installer has the same default procedure for all users, including Administrator, Standard User, and Guest. Data files are under each user's own separate Documents - Daqarta subfolders (App_Data, User_Data, Circuits, and Utility).
Engine_Sim Engine Crank and Cam Sensor Simulator macro mini-app updated to include support for 3-sensor engines (CKP, TDC, CYP) via new CYP option. Also added Full-Scale Pulse ('FS Pulse') waveform option for larger output signal to drive the Simple Sound Card Unipolar DC Modification to simulate 3-terminal (Hall type) sensors.
Arb_From_List macro improved to handle very steep slopes, such as for direct creation of custom engine sensor wheel profiles.
Generator stream Offset mode now includes Base option as well as previous All and Burst. Allows creating tone bursts with arbitrary 'off' baseline, including -100% to produce (for example) maximum-amplitude unipolar output pulses with sound cards having the Simple Sound Card Unipolar DC output modifications.
Daqarta Notes that are automatically saved with a .DQA file, either single-screen or DDisk, can now be read into a Macro Array Buf0-Buf7 after the file has been opened for viewing, or loaded to the Generator as an Arb or Play file. Buf0="<NotesF" copies the File Notes as a list of values, while Buf0="<NoteSF" copies as a string of characters.
Buf0="<NotesR" copies raw Daqarta Notes to Buf0 as a contiguous stream of bytes that can be accessed as a string storage element, or simply saved while the Notes area is used for other purposes such as preparing for a file save, as discussed above. You can later restore the Notes from the array via Buf0="<uN".
New MemArb0="<=(K)" command allows filling a Memory Arb array with constant K, which may be an immediate value, a variable, or an expression.
Macro String expressions now accept b to insert a space (blank). You can use b followed by an immediate value such as b12 or an expression in parentheses such as b(UA) to insert up to 999 spaces. Similarly, c inserts a comma followed by a single space, or you can use an immediate value or expression to specify the number of spaces.
When Daqarta attempts to load a file that it can't find, it now reports the full path and name. This helps you track down problems where you may have inadvertently renamed or deleted a file needed by a macro, or an Arb or Play file needed by a Generator setup.
String expressions for displaying logical states as words (True / False, Yes / No, On / Off, Pass / Fail or all-uppercase versions of the same) now use a new L. format. For example, Msg="Power " + UX(L.O) will show "Power ON" if UX=1, else "Power OFF".
Bug Fix: When a macro calculation resulting in a floating point value that was exactly 1 / 2^64 less than a power of 2 was converted to an integer, it could give an erroneous value of zero.
Bug Fix: Macro calculation results of positive or negative infinity (say, from computing 1/0 or -1/0) were displayed as a full-scale negative value in both cases (-2^31). Now positive infinity is displayed as full-scale positive (2^31-1). Note that this only concerns display of infinity; calculations always maintained the proper sign.
Bug Fix: Macro string expressions specifying a DDisk file name did not accept format options using parentheses, such as DDisk="FileNum" + UI(h) to append a hexadecimal value to "FileNum".
Daqarta v9.00 - 23 January 2016
DC Measurement And Output Circuits topic now includes Simple Sound Card Unipolar DC Modification which only involves bridging output and/or input capacitors with resistors. In particular, the 2 Channel USB Plug-Type Sound Card modification can be used to provide two Hall-type sensor signals for the Engine Crank and Cam Sensor Simulator Mini-App, for under US $2.
DC Pulse Output Circuits now includes the Inexpensive All-In-One USB Device Modifications subtopic to provide true 0 to +5 V outputs on 2 or more channels.
Sound Card DC Input / Output Modification presents circuits and board layouts that now allow full bipolar DC operation from outputs as well as inputs.
The Engine Crank and Cam Sensor Simulator macro mini-app now includes a Constant RPM option during SIMULATION Mode operation, the speed of which is controlled by a new Set Constant RPM control. Clicking the Constant RPM button once advances it to 600-6000 RPM Sine Cycle, and a second click to Arbitrary Schedule Cycle, both of which cause the Set Constant RPM control to become an RPM Test Cycle duration control as in prior versions.
New BMP Image to WAV Sound and Spectrogram Image macro mini-apps allow you to convert a color photo or other bitmapped image into a .WAV sound file, whose spectrogram then yields the original image in the original colors.
Txt2MIDI.DQM MIDI setup is a simpler version of the above concept of sound creation to get a specific spectrogram image. Here, the MIDI synth is used to create tone patterns that form scrolling dot-matrix spectrogram text from messages you enter into Daqarta Notes.
New Tilt +/-dB / Octave control in Spectrum Curves dialog allows adjustable spectrum tilt. Use +3 with pink noise stimuli so that a "perfect" response will be a flat line. Use +6 to take the derivative of a step response to obtain an impulse response (normal frequency response). Use -6 to integrate an accelerometer output spectrum to get a velocity spectrum, or -12 for displacement.
New Memory Curves allow macro scripts to create on-the-fly frequency response corrections or modifications of displayed data, such as to create a Mirror Curve equivalent that yields a flat overall measured spectrum by compensating for the responses of both speaker and microphone.
New Index Range Cropping commands allow nulling of unwanted regions of macro arrays, such as for restricting the above-mentioned correction curves to avoid boosting out-of-band noise and response irregularities.
Y-log Spectrum or Spectrogram / Pitch Track (Sgram/PT) display ranges now allow fine adjustment. CTRL+PgUp increases the range in 1 dB steps, while CTRL+PgDn decreases it. ALT+PgUp and ALT+PgDn move in 1/16 dB steps. Include the SHIFT key with CTRL or ALT and the page keys to shift the top of the range in 1 dB or 1/16 dB steps.
The dB equivalents of the top and bottom pixels are now displayed via controls to the right of the trace area in Ylog Spectrum or Spectrogram modes, and can be set directly with better than 4 decimal places of fractional-dB resolution instead of using the above PgUp/Dn key combinations. The YlogScrnTop and YlogScrnBot commands allow macro control.
When the Spectrum or Spectrogram frequency axis is displayed in CPM (RPM) mode, the Cylinders control of the Frequency Counter now affects the displayed axis. This allows the axis to show true RPM when there is more than one pulse per revolution (such as with a multi-tooth sensor system).
Several macro commands that formerly used LI, RI, LO, or RO suffixes to indicate the applicable channel have been changed to use macro prefixes. For example, Display Channel commands DispLI, DispRI, DispLO, and DispRO are now LI.Disp, RI.Disp, LO.Disp, and RO.Disp. Other affected commands are Curve0-3, Tilt, WavgArt, SpavgArt, FileUnits, ZeroNull, and ZeroAdj.
New Range? query simplifies Macro Data Unit Conversions, replacing separate RangeDlg?, GainDlg?, and Atten_G? queries and channel-specific math. It also returns file range data when a .DQA file is open, which the separate commands do not.
Macro commands that allow specific channel selection via two-letter prefixes LI., RI., LO., or RO., including those noted above, can alternatively use the Ch. prefix to specify a channel previously set via the Ch Channel Select macro. Examples are Ch.Disp=1 to set a display channel, Ch.Curve0=1 to apply a Spectrum Curve, or Ch.TiltdB=3.01 to set dB/Octave for a Spectrum Tilt.
Macro Commands In MIDI Scripts allows the equivalent of over 20 main macro commands to be given via MIDI scripts using the GXX=n format, where XX is a special script ID representing the macro name. Values can also be read, or used in MIDI IF statements.
The LoadDAT command to load a Macro Array Buf0-Buf7 from an unsupported or headerless file type (which Daqarta designates as a .DAT file) has been greatly expanded to allow 8, 16, 24, or 32-bit "container" sample widths, plus separate "valid data bits" that may be justified high or low in the container, and may be normal 2s-complement, offset binary, or unsigned values. If an unsupported header is present, you can specify its size to be skipped over when loading data.
Like most other macro variables, individual Macro Array Buf0-Buf7 elements can now be set with simple quoted text of up to 4 characters for later display using the (A) alphanumeric format option. For example, Buf0="Text" can be displayed via Msg=Buf0(A). (This is in addition to the longer text possible in String Storage.)
Macro Arrays Buf0-Buf7 can now be sorted numerically or alphanumerically into ascending or descending order, over a specified range of index values. Sort order can be transferred to other arrays to provide a linked sort. Look-up tables can be generated to find the original index of the Nth element in the sorted array, or the new index of the Nth element in the original array.
Macro Arrays Buf0-Buf7 can now copy sound card raw waveform data via Buf0="<=D1(n)" where D1 indicates the channel (Right In) and n is any variable or expression for a absolute sample number in the data stream to start the copy from, which may be much earlier than the current displayed waveform.
New MemArb MemArb0="<=D1(n)" command allows direct copying of raw sound card waveform data, similar to the above Macro Array command.
Macro Arrays Buf0-Buf7 can also copy waveform data from MemArb, Arb, or Play memory. They can likewise upload Buf0-Buf7 data back to that memory to create dynamic waveforms, or just to provide extra workspace.
Daqarta now includes two Spectrogram palettes that you can load: GrayScale.PAL is handy for printing to a black and white printer, and Default.PAL for restoring the original colors afterward, or after creating your own custom palette.
A MIDI Changes script can now load Notes strings to a macro array Buf0-Buf7 via BLm0="<NoteS", as above. Scripts can also now use BLm0="<Notes" to copy value lists to a single-channel Buf0-Buf7 array, similar to Buf0="<Notes" preceded by Buf0#N=1.
New Copy buttons added to MIDI Voice Setup dialogs and to "floated" large Changes script editors to allow the entire MIDI Changes script text for that voice to the Windows Clipboard with single click.
New binary display format allows integer values to be displayed as a string of 1s and 0s. For example, if UX holds the decimal value 123, Msg=UX(b) will display 01111011. Use (b2) for a 16-bit (2 byte) value, or (b4) for a 32-bit (4 byte) value.
New "roller" limit function limr(X,A,B) limits X to the range of values between A and B, but if it is above the range it "rolls" to the minimum, and if it is below it rolls to the maximum. limr(X) works the same, using preset limits.
With the default Run Preferences, changes made to the Generator setup or to the output volume normally cause a prompt to save the changed setup when you attempt to load a new setup, or to exit Daqarta. This doesn't happen if the changes are made by a macro, but it does happen if the macro waits for the user to make the changes manually. You can now use PrefChg#X=0 to block the prompt for Generator changes, or PrefVolChg#X=0 to block the prompt for volume changes.
You can now use LI.SpectCurve#X= (value ignored) to insure that no Spectrum Curve (or Tilt) is active for the channel specified by the prefix (LI. = Left In, in this example). You can use Ch. to specify the channel previously given via the Ch Channel Select command. You can also determine whether channel LI is using a Curve or Tilt by assigning a variable to LI.SpectCurve?X. The value will be -1 if it is not using any Curve or Tilt; otherwise it will hold the Curve number 0-3, or else 4 for Tilt.
Right-clicking any axis or the main trace display area now opens the appropriate Help topic. (Previously, right-click Help only worked for controls.)
In Windows Vista and later, the Left and Right Pitch-to-MIDI Volume controls always track each other, as do the Synth Volume control copies in the Synth Controls dialog. Now these controls behave the same way in Windows XP and Win9x, unless the 'Vol' button between them is toggled to unlock them and allow independent Left and Right volume.
Bug Fix: Loading MIDI or macro buffers from text files could cause Daqarta to lock up if the specified file was not found.
Bug Fix: Starting Daqarta, then opening both the Frequency Counter and Voltmeter without activating either the Generator or Input (so both meters showed blanks), then attempting to exit Daqarta caused it to crash.
Bug Fix: The Frequency Counter could show erroneous values when redrawn (by dragging, or when opening another dialog) until the next update. Noticeable at very low frequencies, or high Decimate factors.
Bug Fix: Values entered directly or read from a text file could give erroneous results when using exponential notation with negative exponents, as in 1.23e-4.
Bug Fix: When Buf0="<LoadWAV" loaded a 24-bit (data and container width) file, the lowest byte was erroneous.
Bug Fix: Macro Array Edge/Event/Trigger Detection returned erroneous value for interpolated event sample index Buf0?E or Buf0?e. Where the true value was integer sample N with fractional part F, the returned value was N+1 with fraction 1-F. For example, instead of 123.750 it reported 124.250.
Bug Fix: When a live Spectrogram was running, the initial X axis estimate was typically fairly close, but on the next full screen the axis was redrawn erroneously assuming 10 msec per column. Subsequent screens were correct.
Bug Fix: Some sound cards with only a single unnamed input line (super-cheap "dongle" USB sound output devices with Mic-only input) were not properly recognized, blocking access to Daqarta's F9 volume and Input controls. (Main Windows volume controls still worked.)
Bug Fix: FileUnits macro command sometimes failed to open the specified User Line dialog, or opened it with erroneous settings.
Bug Fix: Using SHIFT+Home keys in Spectrogram mode to restore the default range top (right vertical color bar) failed to refresh the image of displayed file data.
Bug Fix: Clicking in solid or dotted cursor X readout to begin direct entry caused the readout to freeze, until the entry was accepted by clicking elsewhere or hitting ENTER.
Bug Fix: Controls such as Cursor X readout, Trigger Level, Trigger Hysteresis, Data Zero Manual, or Spectrum Cursor Track Threshold may display values with a units prefix appended with one space after the value, as in '10.00000 m' for 10 mV. Attempting to edit such a value (instead of entering new a completely new value) produced unexpected results due to the embedded space, which is now properly ignored.
Bug Fix: Under certain conditions, attempting to unload a Spectrum Curve file could cause Daqarta to crash.
Bug Fix: Custom Spectrogram Palette files could not be saved or loaded if you installed Daqarta to a folder other than the default. Such palette files will now have a .PLT extension instead of .PAL, but are otherwise identical.
Bug Fix: WinVer read-only macro to test Windows version always returned TRUE when used in direct equality tests like IF.WinVer=5.1. Also now supports 2-digit versions like Windows 10, plus has new functions to return only the major or minor version numbers separately, or a special integer combination.
Bug Fix: When a Windows file Save or Open dialog is active for selecting or entering a file name, all other Daqarta controls are now disabled until the dialog is closed. Prevents unintended multiple dialogs, or orphaning of the dialog through closing the caller.
Questions? Comments? Contact us!We respond to ALL inquiries, typically within 24 hrs.
Over 35 Years of Innovative Instrumentation
© Copyright 2007 - 2023 by Interstellar Research
All rights reserved