Together with the GXSM Lancaster Classics version the DSP code under the hood got a major set of code cleanup and improvements:
Due to the use of the free linux tools from texas instruments the subfolders Release and Debug became obsolent and had been deleted. Also the folder FB_spmcontrol_testing has been removed from CVS. So please update your local copy.
Thorsten :-)
A bug related to the Coolrunner/Counter function was fixed.
Synopsis: DSP segfault/crash on Counter enable.
Fixed, no version number change (100% compatible).
Note: COFF code (.out files) in
.../FB_spmcontrol/Debug & Release are obsolete (TiCC only) current .out file is in:
.../FB_spmcontrol/FB_spmcontrol.out
Update on the MK2 support tools:
In CVS in SRanger/loadusb-mk2 the new version (64 bit compatible) of the COFF2 loader and memory debugger has developed.
Use as memory debugger like this:
/loadusb -d /dev/sranger_mk2_1 -m
Note: all addresses and length are given in words!
See help page (type h or ? at prompt) for details on available commands.
To do a simulated load (does not touch the MK2 memory until the -s option is removed! Use less -v for less verbose output) try:... read more
I have now a working mk2 kernel module. All IOCTLs implemented, HPI and Bulk transfers OK.
Diagnostics: Wrong Bulk Transfer Setup-Package Byte order due to bug in manual :-(
Still all beta, needs testing!
Use the mk2 loadusb in -m (memory debugger mode) for testing.
All in CVS.
COFF loader not yet tested/finalized. But also not needed to get started, as you can Programm the Self-Boot Flash with all code needed via the supplied tools.... read more
Best advise: Please freshly checkout the SRanger module.
Several dir-structure and file rearrangements and clean-ups were performed:
in FB_spmcontrol: separated DSP code from other support code, like py-scripts and watch-tools. Added new/different Makefiel to generate DSP code via Linux DSP CC tools from TI, check the info in the MakefileDSP and help phorum.
Moved the SR_Counter CPLD code one level down.
The TI comand line compiler/linker/etc. suit is available here:
https://www-a.ti.com/downloads/sds_support/targetcontent/LinuxDspTools/download.html
See this discussion for latest updates:
https://sourceforge.net/forum/forum.php?thread_id=1932091&forum_id=238465
I added a MakefileDSP and customized a linker configuration (cmd-file). Both in CVS for the FB_spmcontrol (DSP-SPM code).
There had been a few programme in the repositry depending on the gtkdatabox-0.2.4.7 which is obsolent. For example the latest ubuntu 7.10 is shipped with gtkdatabox-0.7.0.1 which is not backwards compatible to gtkdatabox-0.2.4.7.
SRanger\TiCC-project-files\FB_spmcontrol\main.c is now up to date. This file is part of spm-watch.
I removed the folder demos containing xy-watch and (the not compiled) demo1. The folder was removed because both programmes had not been doing what they suggested - even with the old gtkdatabox. So nobody actually should miss anything.... read more
As the old loadusb code is too messy, a new subtree loadusb64 was created. There we now have an experimental loadusb which works on 64 bit Linux systems. There is a pending bug in loading symbols and for now the int_00 symbol address is hardcoded to the most recent SPM DSP binary. Will be resolved ASAP.
The most recent Signal Ranger MK2 (new design, USB 2.0 support, FPGA on board, etc.) is now supported in a very basic way for the first time -- very experimental.
Working:
All direct USB Controls, HPI data move.
In development (not yet supported):
High speed bulk pipe transfers
Where?
Look for modules-mk2-2.6.x and loadusb-mk2 in the SRanger CVS.
Within the near future there is no DSP code nor FPGA loader for linux planned. Instead use the supplied "minidebugger" and pre-program the MK2's Flash with DSP code and FPGA code for automatic power on startup.... read more
Some minor patches to take care of now obsoleted function/macro calls.
This current SRanger module update works for all 2.6.x kernels and was most recently tested with the 2.6.19 linux kernel.
There is a issue with the ".owner" FOP field with >= 2.6.16 kernels. It has been addressed with an conditional excluding of this setting and is available via developer CVS and hopefully soon via public CVS. So long you can fix it yourself by uncommenting two lines containing ".owner = ..." in the usb-sranger.c file.
here is the fix -- just FYI:
add this include for the version check:... read more
A new sub project is in experimental and testing stage, it adds Event Counting/Ratemeter support. The Xilinx CoolRunner XPLA3 (SR expansion board) needs to be reprogrammed to get the additional Counter suppport.
The new CPLD code is fully rewritten in VHDL and thus portable, it contains still most of the old "Parallel" digital IO and adds a 32bit Counter with Hard Gate and automatic Gate Timer with 16bits resolution in three timescale modes.... read more
The 2.6.X module is now fixed, please test it!
See bug report for details what was done.
The updated version of the USB-SRanger kernel module for the Linux kernel 2.6.x generation is proofed to work.
Please post/inform us about any problems/issues which may occur.
Enjoy-
the SRanger and GXSM admin
I spend an hour on migrating the usb-sranger module from 2.4.x kernel to 2.6.x compatible module and finally got it all upgraded to 2.6.x kernel style so far and it compiles well now.
Find it in the SRanger CVS here:
SRanger/module/modules-2.6.x
ATTENTION:
I have not even tried to load the module, so all is up to you to give it a try and possibly crash your box on you very own risc as it is written within GPL either way:-)... read more
For testing and conveniance I added a new directory to the SRanger CVS tree here:
SRanger/TiCC-project-files/FB_spmcontrol_testing
This will contain the current development und possibly unstable version of the SR SPM DSP code and a DSP binary. Once this code gets stable it will replace the stable version in FB_spmcontrol.
Currently it include the new vector probe code and some testing python scripts.
IO memory space access via "seek" and origin=SRANGER_SEEK_IO_SPACE is (still) not working.
The current workaround works as follows:
use seek (0x10000+IO-address, 0)
This will set the IO-address correctly and allows read/write to /from IO-space.
The SR-DSP SPM control tool was updated:
(SRanger/TiCC-project-files/FB_spmcontrol/sr_spm_control.py)
Offset watch and edit optimized, new force-recalibrate button and state watch, nicer formatting
Contineous watch of the "DSP-State"
The recent GXSM-2 SR-HwI plugin and the SR-DSP code were updated due to a bug fix "huge-slow-scan-bug" (see GXSM-Buglist for details).
GXSM now needs SR-DSP code of version 0x0020 date 20040311 and vice versa according to data structure changes.
Please update both or non.
-PZ
The digital LockIn now computes three signals:
I just added Signal Ranger-STD installation/fxload-sr usage documentation to the SR manual!
-PZ
-- SR-SPM update --
The SRanger SPM DSP software now supports a wide set of SPM methods:
Standart STM, using a logarithmic transformation of the tunneling current input signal before it's passed to the linear feedback algorithm (CP,CI and Current settings) -- nothing special.
Usual AFM feedback using a linear feedback loop usable for contact AFM (Setpoint: Normal Force) or in Non-contact mode (DFM) the frequency shift of an external analog/digital PLL/FM detector can be used as feedback source.... read more
I just added a graphical SPM X/Y/Z monitor "spm_watch" to the FB_spmcontrol code collection.
It works similar to the "Audio-type" VU-meters, but it's bipolar and shows the X/Y/Z DAC units (DU-meter) in realtime (directly monitored from the SR-AIC DAC buffer via USB).
And it's a bit eye-candy as well...
The "standart" Signal Ranger STD is now supported!
Quickstart:
1) get the patched fxload-sr-i386 / ppc (filearea of this project)
2) update the sranger module "usb-sranger.o" from CVS
3) insmod the new module, which also accepts the STD now
4) connect the STD to the USB port
5) run "fxload-sr-i386 -I SRangerFx -D /proc/bus/usb/XXX/XXX" as root
(XXX/XXX should be the location of the STD on the USB bus) - refer to the Linux-Hotplug howto for automatizing this...
6) the STD should be detected now and ready to use!... read more