https://openhpsdr.org/wiki/api.php?action=feedcontributions&user=K9TRV&feedformat=atomHPSDRwiki - User contributions [en]2024-03-29T07:20:34ZUser contributionsMediaWiki 1.26.0https://openhpsdr.org/wiki/index.php?title=HERCULES&diff=3894HERCULES2010-12-24T17:06:27Z<p>K9TRV: add note regarding SWR transformer T4 modification</p>
<hr />
<div>[[Image:100wamp.jpg|thumb|400px|Photo of an assembled and tested Hercules]]<br />
<br />
[[Image:PA Rev2 Schematic.1.jpg|thumb|400px|Hercules Schematic page 1 of 3]]<br />
<br />
[[Image:PA Rev2 Schematic.2.jpg|thumb|400px|Hercules Schematic page 2 of 3]]<br />
<br />
[[Image:PA Rev2 Schematic.3.jpg|thumb|400px|Hercules Schematic page 3 of 3]]<br />
<br />
[[Image:100W PA AssyTop.jpg|thumb|400px|Hercules Component Layout]]<br />
<br />
[[Image:Hercules heatsink.jpg|thumb|400px|Hercules Heatsink with drilled and tapped mounting holes as delivered in kit]]<br />
<br />
[[Image:IMG 2263.jpg|thumb|400px|Contents of Hercules Heatsink package]]<br />
<br />
[[Image:Hercules-2.jpg|thumb|400px|Hercules Kit Parts shipped in Box #2]]<br />
<br />
[[Image:Herculesallkitparts.jpg|thumb|400px|Hercules - All kit parts (toroids were wound and tinned after kit arrived here by W9KFB.)]]<br />
<br />
[[Image:Herculesrearxcvr.jpg|thumb|400px|Hercules as a transceiver component in a Pandora Box]]<br />
<br />
[[Image:Herculesxcvrside1.jpg|thumb|400px|Hercules as a transceiver component in a Pandora Box side view]]<br />
<br />
[[Image:Herculesxcvrfront.jpg|thumb|400px|Hercules as a transceiver component in a Pandora Box front view]]<br />
<br />
[[Image:Herculesxcvrside2.jpg|thumb|400px|Hercules as a transceiver component in a Pandora Box heatsink view]]<br />
<br />
The assembly and adjustment instructions provided here only apply to systems with the following HPSDR components:<br />
<br />
A. Hercules HPSDR 100 Watt PA version 2 by NT-Electronics with the optional Display unit attached <br />
<br />
B. Penelope HPSDR Transmitter board from TAPR or NT-Electronics<br />
<br />
C. Antenna Switch HPSDR from NT-Electronics version 2 or 3<br />
<br />
<br />
All these components can be purchased from NT-Electronics or via eBay from power seller red_ella. As these items are built in lots and processed directly to you, from 30 to 60 days handling time is required before shipment from Germany can be made.<br />
<br />
Systems without the Antenna Switch or using an RF sources other than the Penelope board may be configured to operate satisfactory, but no attempt is made to define or configure such systems.<br />
<br />
==General Description of Hercules==<br />
<br />
This amplifier is designed to work with the current HPSDR Penelope transmitter assembly to amplify the signal of max. 500 mW to 100 Watts RF output. It was designed to operate from 160m up to and including 6m in all HF Amateur bands in all modes. See Photos 2, 3, & 4 for as built schematic drawings. <br />
<br />
All parts are included including a drilled and tapped 185 X130 X 25 mm heatsink (see photo above). The parts are mailed in two packages. The first package has the heatsink, hardware, toroids, wire, fuse, flat ribbon cable, ribbon connectors, and relays. An overall enclosure is not included.<br />
<br />
==Functions and Features==<br />
<br />
The amplifier uses a four layer circuit board, which makes possible optimum impedance match of all the HF circuit board lines. The Amplifier is installed onto an Aluminum heat sink by the user. Dimensions LxWxH are185 x 130 x 50mm. Cooling fans may be required by the user depending upon type of mounting and the planned duty cycle of usage. Connections to the optional PWR/SWR meter and the HPSDR Penelope transmit exciter board starts on the Amplifier's printed circuit board via a single flat strip cable. By programming the on board CPLD, additional interfaces can be implemented.<br />
<br />
Operating voltages are 12-14 Volts with current input to a maximum of 25 Amperes, HF-power output is 100W PEP on 160-10m, and 50W on 6m.<br />
<br />
Frequency range: 1.8MHz to 52MHz with 7 low-pass filters for 160m, 80m, 60/40m, 30/20m, 17/15m, 12/10m and 6m. Designed for max. transmission and min. return, the band pass filters use single-aperture cores and SMD mica capacitors with high Q and min. losses. The low-pass filters can alternatively be used only in the transmit mode or in the transmission and receive mode. The selection takes place via selection of a CPLD program by means of a circuit board jumper.<br />
<br />
Monitoring of the operational data is accomplished by using an Atmega CONTROLLER and the data is indicated on an optional 4 parameter LCD. The selection of limit values and selection of the display mode take place via 3 keys under the display as follows:<br />
<br />
• Temperature measurement at the heat sink to the nearest degree C<br />
<br />
• Set point for the start-up of cooling fans is adjustable from 50 to 80°C<br />
<br />
• Set points for the limits for switch off the amplifier is adjustable from 60 to 90°C<br />
<br />
• Fan Hysteresis is 10°C (in firmware).<br />
<br />
• Indicator for power input 0-25A. <br />
<br />
• Current limit for switching off Amplifier adjustable from 7 to 25A<br />
<br />
• FWD_PWR measurement in Watts<br />
<br />
• REV_PWR measurement in Watts <br />
<br />
• SWR measurement to one right-of-comma position.<br />
<br />
• Limit for switching the final stage off adjustable with SWR greater than 1,5 to 3<br />
<br />
Question: Do you have to purchase the optional Monitor kit to operate Hercules?<br />
<br />
Answer: "You can build your own display but it is not practicable not to have a display.<br />
It would be possible to preset default limits while testing the PA but you would not be able to change the values without having knobs to adjust the values and without display you won’t see what you are adjusting.<br />
Furthermore you need the right button to reset the alarm when one of the supervised parameters is out of range and the amplifier is switched off:<br />
Temperature, current, SWR." from Gerd DJ8AY<br />
<br />
==Hercules Final Assembly Instructions for Partial Kits==<br />
<br />
General Reference Note: If any additional information is required as to the assembly of Hercules as a full kit, see:http://www.needles.de/HPSDR/HERCULES-Assembly.pdf<br />
<br />
Note #1 Leave all screws and nuts installed loosely on the main circuit board as they are. The nuts will be used as circuit board spacers when assembled to the heatsink. <br />
<br />
Note #2 After the winding the filter single-aperture cores, they should be checked against the specified inductances, if a L-measuring instrument is present. Inductance can be changed by pushing together or even distributing on the single-aperture cores around approx. 10%. In the case of doubt indicated inductances are valid before the numbers of turns. The wire provided is not solderable, i.e. it must be stripped. It should be stripped up to the single-aperture core, so that the wires can be soldered briefly.<br />
<br />
1. Wind 28 turns of .35 mm dia. enameled wire on to a (red) T50-2 toroid. Cut and tin the leads at about 1/2" below the toroid. This coil will be designated L1 at 4 UH.<br />
<br />
2. Wind 28 turns of .35 mm dia. enameled wire on to a (red) T50-2 toroid. Cut and tin the leads at about 1/2" below the toroid. This coil will be designated L2 at 4 UH.<br />
<br />
3. Wind 17 turns of .8 mm dia. enameled wire on to a (red) T50-2 toroid. Cut and tin the leads at about 1/2" below the toroid. This coil will be designated L3 at 1.5 UH.<br />
<br />
4. Wind 19 turns of .8 mm dia. enameled wire on to a (red) T50-2 toroid. Cut and tin the leads at about 1/2" below the toroid. This coil will be designated L4 at 1.8 UH.<br />
<br />
5. Wind 15 turns of .8 mm dia. enameled wire on to a (red) T50-2 toroid. Cut and tin the leads at about 1/2" below the toroid. This coil will be designated L5 at 1.2 UH.<br />
<br />
6. Wind 15 turns of .8 mm dia. enameled wire on to a (red) T50-2 toroid. Cut and tin the leads at about 1/2" below the toroid. This coil will be designated L6 at 1.3 UH.<br />
<br />
7. Wind 10 turns of 1.0 mm dia. enameled wire on to a (yellow) T50-6 toroid. Cut and tin the leads at about 1/2" below the toroid. This coil will be designated L7 at 620 nH.<br />
<br />
8. Wind 10 turns of 1.0 mm dia. enameled wire on to a (yellow) T50-6 toroid. Cut and tin the leads at about 1/2" below the toroid. This coil will be designated L8 at 620 nH.<br />
<br />
9. Wind 9 turns of 1.0 mm dia. enameled wire on to a (yellow) T50-6 toroid. Cut and tin the leads at about 1/2" below the toroid. This coil will be designated L9 at 430 nH.<br />
<br />
10. Wind 9 turns of 1.0 mm dia. enameled wire on to a (yellow) T50-6 toroid. Cut and tin the leads at about 1/2" below the toroid. This coil will be designated L10 at 430 nH.<br />
<br />
11. Wind 7 turns of 1.0 mm dia. enameled wire on to a (yellow) T50-6 toroid. Cut and tin the leads at about 1/2" below the toroid. This coil will be designated L11 at 300 nH.<br />
<br />
12. Wind 7 turns of 1.0 mm dia. enameled wire on to a (yellow) T50-6 toroid. Cut and tin the leads at about 1/2" below the toroid. This coil will be designated L12 at 300 nH.<br />
<br />
13. Wind 10 turns of 1.0 mm dia. enameled wire on to a (white) PTFE toroid. Cut and tin the leads at about 1/2" below the toroid. This coil will be designated L17 at 137 nH.<br />
<br />
14. Wind 10 turns of 1.0 mm dia. enameled wire on to a (white) PTFE toroid. Cut and tin the leads at about 1/2" below the toroid. This coil will be designated L18 at 143 nH.<br />
<br />
15. Solder the 14 remaining relays to the main circuit board.<br />
<br />
16. Solder and close trim L-1 to L12, L-17 and L-18.<br />
<br />
Note #3 When the assembling of the printed circuit board on the radiator box the same is to be considered as with the disassembly only in reverse order. The radiator box surface must be freely of foreign parts, in particular under the power transistors. Otherwise the heat dissipation is handicapped. A view laterally by the gap between printed circuit board and radiator box is helpful to determine over whether the power transistors flat mounts. It may not be visible a light gap. When finally last screwing on thermal compound can (in thin layer!!) the heat coupling of the power transistors improve. This is meaningful however only for the final stage transistors.<br />
<br />
17. Clean off any solder flux left on the circuit board from steps 15 and 16 above and inspect work so far.<br />
<br />
<br />
18. Apply thermal compound (example: Antec Formula 5... Silver Bullet) to the heat sink surfaces of the transistors (4). Do not apply the compound to the two transistors that mount to the insulating pads.<br />
<br />
Note #4 When screwing the fixing bolts in an alternating can solve short release around a half revolution the blocking of the mother on the radiator box and make then further screwing in possible. Also holding of the printed circuit board down against the mother can be helpful. The 8 transistor fixing bolts are screwed in only last and tightened firmly however moderately and evenly.<br />
<br />
19. Mate the circuit board to the heatsink and tighten all screws including the hardware from plastic bag in the parts kit. <br />
<br />
[[Image:Penny-AntSw-Hercules wiring chart.jpg|thumb|400px|Wiring chart of the interconnections between Penelope, the Antenna Switch, and Hercules]]<br />
<br />
<br />
20. Assembly of the Cable from Penelope to the Antenna Switch and to the 100W_PA:<br />
<br />
<br />
A flat ribbon cable is used for the connection from Penelope to the antenna switch and to the PA.<br />
<br />
There is a separate document which contains the netlist for the cable from Penelope to the antenna switch and further to the PA.<br />
Please note that pin 13 (on the other end as pin 1) on the DSUB25 connectors goes to pin 1 of J10 on the PA.<br />
<br />
I suggest that you mount the DSUB25 connectors on the cable with the color marked lead going to pin 13 and not to pin 1 as you would normally do it. Thus the marked lead ends on Pin 1 of the 16 pole connector to the PA.<br />
<br />
You should start to connect one DSUB25 connector on one end of the cable. The colored lead of the cable shall be connected to pin 13 of the DSUB25. This end is to be connected to Penelope. Please check that your cable leaves the connector in the counter direction to the antenna switch. After a 180° turn you clip the plastic cable retainer on this connector. The cable now goes in direction to the antenna switch. In the correct distance you press the second DB25 connector on the cable. The cable goes through this connector. The orientation of this second connector has to be the same as for the first: colored lead to pin 13. The last connector is a 16 pole female header that is pressed on the cable with the colored lead connecting to pin1. Pin 1 is marked on the housing with an arrow. The last 9 wires of the cable are strapped off from the cable for a length of about 2-3cm. (1 inch). Either you cut the not used wires or you bend it backwards and isolate it. Again you must take into account that the connector to the PA has a cable retainer which needs a 180° turn of the cable direction.<br />
<br />
<br />
<br />
21. Assembly Instructions for the Hercules 100W_PA Display module: <br />
<br />
Note #5:The topside of the pcb is marked “BS”<br />
The bottom side is marked with “LS”<br />
<br />
On the topside the following are assembled:<br />
3 push buttons, 1 header-16pole, for the display (near the push buttons). The connector at the top boarder of the monitor circuit board is provided for different displays which have the connector on the upper side and is not used for this display.<br />
The shorter pin side of the header is soldered to the pcb and the display module is plugged on the longer pins and soldered. This gives enough stability for the display module. However you can fix the upper side of the display module with one or two dots of silicon glue.<br />
<br />
On the bottom side of the pcb is assembled a Tantalum capacitor C1. The marked side of C1 is the +pole that is connected to VCC on the board (+5 volts). Also install the very small 100nf 0805 SMD capacitor C2 that is in the component package for this board (not packaged or on tape in my kit - it is so small it could get misplaced easily if not placed on a length of of masking tape to secure it). The red 16-pole MicroMatch connector is keyed on one end. You must mount this connector with the keyed end (pin 1) pointing toward the top of the monitor circuit board. If for some reason you mount this connector upside down (I did)it will be very difficult to repair successfully. Use a Chip Quik SMD Solder/Desolder kit and follow the directions in the package.<br />
<br />
22. Assembly of the display cable.<br />
<br />
First you should verify how long your cable from the display to connector J12 on the main board has to be. It depends on your specific mounting in a housing.<br />
Cut the desired length from the supplied cable. Take care that you cut it with a sharp scissors or knife. Use 16 leads of this piece of cable beginning from the color marked lead. The resting 9 leads are pulled off from the cable and are no longer used.<br />
The male connectors are pressed onto the cable that the marked lead of the cable shows to pin1 of the connectors i.e. by means of a bench vise. Take care not to damage the coding nose while using the vise. The nose must stay outside the vise jaws.<br />
Also take care that the cable exits the connector in the correct direction fitting your mounting. I must admit here that I tried to use a pair of pliers to do the insulation displacement closing of the connector on the ribbon cable and destroyed 4 connectors before I used a bench vise with success, Digi-Key has the connector in stock as part number A99458CT-ND "CONN MALE-ON-WIRE 16 POS 28 AWG. I ordered 10 and have 6 of the parts left over if someone needs one or two.<br />
<br />
<br />
23. Display tests<br />
<br />
Connect the display to the mainboard and connect 12V to the green connector J1 on the mainboard which needs not be mounted onto the heatsink for this test. The Pins are marked with +12V and GND on the pcb. Insert the fuse into the holder next to J1 and the display should then show 2 lines with FWD and REV Power and current 0A. You can adjust the display contrast with pot VR4 which is next to the display connector J12.<br />
<br />
The push buttons are called: <br />
left : - (minus)<br />
middle: + (plus)<br />
right: OK or ENTER<br />
<br />
With + and – you can change the displayed pages between power/current and temperature.<br />
<br />
24. Testing the power amplifier circuits:<br />
Before attempting to activate the transmitter via the MOX command on Power SDR, Potentiometer VR1, VR6, VR2 (quiescent current indication) as well as VR3, VR5 (power indication) must be set to the complete anti-clockwise direction (to a complete stop turn). The rotation stop of the Potentiometers can be determined only by increased resistance to rotation. If the spindle is kept turning, the Potentiometer can be damaged. If after first application of power no announcement on the display appears, the contrast must be adjusted with Potentiometer VR4. Must be adjusted to a high-contrast announcement without background density effected.<br />
<br />
<br />
[[Image:100W PA Display.jpg|thumb|400px|Photo of an assembled and tested Hercules Monitor Display]]<br />
<br />
25. Amplifier Bias ajustments:<br />
<br />
Adjusting the quiescent currents of driver and final stage transistors: Place an Ammeter capable of reading current to the nearest 10 ma (Amps to the nearest ma is better) into the 12V supply line and activate the transmit mode with no RF on the input SMA connector (disconnect RF from Penelope). The following current should be observed (if you get substantially higher currents, recheck to see that all Potentiometers are set to the complete ant-clockwise positions): <br />
<br />
Without display, (invalid EEPROM data) 50 mA<br />
<br />
With display 0.23 A<br />
<br />
Adjust the quiescent (bias) current for each both drivers to where the meter just changes to 50 mA: VR1 regulates the quiescent current for Q4 (adjust total current to 0.28A), VR6 regulates the quiescent current for Q5 (adjust total current to 0.33A).It is important to set both as accurately as possible as this will effect the linearity of the amplifier and can contribute to a failure of the two tone tests. <br />
<br />
Final stage bias is to be set at 500 mA: VR2 regulates the quiescent current for both final stage transistors Q1, Q2. Adjust VR2 to the total value of current of 0.83 A (only if the driver bias has been set as specified prior to this adjustment).<br />
<br />
26. At this point you have two choices on how to connect Hercules into your system:<br />
<br />
A. Place Hercules between Penelope and the antenna switch.<br />
<br />
or<br />
<br />
B. Place Hercules between the antenna switch and the Antenna tuner and use Hercules'low-pass filters in the receive mode.<br />
<br />
I have tried both placements and have chosen "B" option to better filter the Mercury RF input, and to keep the power level lower in the antenna switch. Jumper 10 on the Amplifier should be changed to effect the control system for the "A" or "B" mode change. Jumper 10 should be present for mode "B" operation and removed for mode 'A" operation.<br />
<br />
27. EMC considerations and recommendations:<br />
<br />
If you are mounting Hercules in the Pandora Box instead of Alex, please consider the following recommendations to reduce the number of unwanted signals present in your spectrum with a 50 ohm dummy load attached to the antenna BNC connector. <br />
<br />
A. Placement of components so that interconnections are short:<br />
<br />
J1: Penelope<br />
<br />
J2: Mercury<br />
<br />
J3: USB interface - Ozy or MAGISTER<br />
<br />
J4: Antenna Switch in a mini-Box<br />
<br />
J5: Antenna Switch in a mini-Box<br />
<br />
J6: Antenna Switch in a mini-Box<br />
<br />
B. Cut off the extra length of 9 pin ribbon cable from the 25 pin cable that goes between Penelope and the Antenna Switch.<br />
<br />
C. Place the Antenna Switch in a metal enclosure to fully shield it from RF inside the Pandora Box. Only run the 12 Volt supply line to the antenna switch to avoid a ground loop. The ground for the Antenna switch will be via the Coax cables and the mounting hardware to the Pandora Box.<br />
<br />
D. Put RF absorbing toriods on all exposed wiring inside and outside the Pandora Box. You can buy the devices for $.88 each with free shipping in quantities of 100 or more from a Hong Kong eBay seller. <br />
<br />
28. Low-pass filter testing:<br />
If jump 10 is in, as you select an in-band frequency, the correct band should be selected and indicated. If you move out of a band, the 6 meter low pass filter will be used. Each band should be checked for a minimum attenuation within a designated band and the expected attenuation at twice the band's frequency.<br />
<br />
29. Here again are the operating control functions:<br />
Display: <br />
left button is - (minus)<br />
middle button is + (plus)<br />
right button is "OK or Enter"<br />
<br />
to change limits:<br />
press right button once<br />
you get displayed: Einstell.ändern which means "change settings/limits"<br />
with + or - you can toggle which parameter to change:<br />
Abschalt-Temp. is temperature limit<br />
Abschalt-SWR: SWR limit<br />
Abschalt-Strom: current limit<br />
<br />
Reboot: is normally not necessary<br />
"Zu Hauptanzeige" means "to main display mode"<br />
While in display mode you can toggle with + or - to additional display<br />
screens (actually only temp. display)<br />
<br />
When pressing the OK-button (the right one) you get the currently stored<br />
limit. With + or - you can change the value, then press OK and you get the<br />
choice to store the new limit with the + button or cancel with -.<br />
<br />
When you confirm to store the new value with + you get displayed the storage<br />
(speichere Wert).<br />
<br />
Max. current limit is 20A<br />
Temp.limit is 25°C ... 100°C<br />
SWR limit is 1.2 .... 3.0 and no limit (keine Abschalt.)<br />
<br />
When you have exceeded one of the stored limit values the PA switches off<br />
and stays in standby mode (display flashes) until you reset with the right<br />
(OK) button. If the limit is still exceeded you can not reset the failure<br />
status until the parameter has decreased below this limit. I.e. you have to<br />
wait until temperature has cooled down. If you have stored a temperature<br />
limit lower than the ambient temperature the control remains in failure<br />
status and you have to witch off the psu for the PA and switch on again<br />
while pressing all 3 buttons. You get displayed "Lassen Sie alle Tasten los"<br />
which means "release all buttons". You can then access the limit settings<br />
again and change the cutoff temperature to a higher value.<br />
<br />
Temperature: the fan control switches on when a fixed temperature of 60°C is<br />
exceeded and stays on until the temperature has gone down to 50°C. You have<br />
to connect your 12V fan to J2 (2 pole header near the output BNC connector).<br />
Minus/GND is the rectangle pin (the upper one of the 2-pole connector when<br />
the output connector is on the left side) which is pulled down by a<br />
switching transistor to GND. The other pin is connected to UBAT<br />
(+12V..13,5V).<br />
<br />
On J9 you have the OC outputs for LPF relays i.e. on a second PA.<br />
<br />
J6 and J7 are not assembled. These are connectors provided for use as a<br />
power amplifier with the SDR1000.<br />
<br />
==Corrections and Addenda==<br />
Gerd has sent a note to some, regarding the SWR transformer T4, after some hams have experienced the diodes<br />
in the SWR section failing. Gerd's note:<br />
<br />
I am now using the SWR transformer (T4) with 5 turns (rather than 6) and I measured the voltage<br />
on the secondary site. It is about 25Vpp at 50 Watts output. <br />
However you should first tune C49 to min. Voltage at D2/R15 by means of an<br />
oscilloscope when you have connected a load resistor of 50 Ohm and running<br />
50 W on 14 MHz.<br />
<br />
==Construction Documents==<br />
<br />
[[Media:Manual_100W_PA.pdf| Manual for the Hercules 100W PA]]<br />
<br />
[[Media:100W_PA_LPF_Settings.pdf| LPF Settings for the hercules 100W PA]]<br />
<br />
[[Media:Assembly Instruction Display.pdf|Assembly Instructions for the PA Display]]<br />
<br />
[[Media:CalibratingSWRFunction.pdf|Email on how to set the PWR and SWR settings]]<br />
<br />
[[Image:Display size & layout.jpg|thumb|400px|Dimensions and Layout of the Hercules Monitor Display]]<br />
<br />
[[Category:Hercules| ]]</div>K9TRVhttps://openhpsdr.org/wiki/index.php?title=Antenna_Switch&diff=3886Antenna Switch2010-12-13T21:32:33Z<p>K9TRV: </p>
<hr />
<div>[[Image:Bild 372.jpg|thumb|300px|Photo of a version 2 Antenna Switch with an installed 6 meter Low Noise Amplifier (LNA)]]<br />
[[Image:IMG 1212.jpg|thumb|300px|Photo of W9KFB's installation in a Pandora box with Penelope, Ozy, and Mercury HPSDR boards]]<br />
<!-- [[Image:IMG 1216.jpg|thumb|300px|Photo of the Antenna Switch and other HPSDR boards on the test bench]] --><br />
<br />
The '''Antenna Switch''', made by NT Electronics, is designed to switch an antenna to the [[MERCURY|Mercury]] antenna BNC connector or to the [[PENELOPE|Penelope]] BNC antenna connector. This function is included in the [[ALEXIARES|Alex]] filter board assembly, but for various reasons, many in the HPSDR community will opt to purchase a commercial amplifier that will operate with an input of up to 500 mw. Tokyo Hy-Power Labs makes compatible solid state amplifiers and some hams are using them with the HPSDR transceiver components developed and produced to date..<br />
<br />
This HPSDR component was developed by Gerd, DJ8AY, who manufactures it currently. Ron, W9KFB is assisting Gerd to make it available to the global HPSDR community by listing it on eBay sites worldwide. You can find these listings by searching eBay for HPSDR components or by just searching for eBay Power Seller: red_ella on any eBay site.<br />
<br />
Gerd can supply a small metal box with pre-formed holes (for the BNC and DB25) for 7.50 Euros each. Shipping to the USA is 6.00 Euros, and you can get two of these boxes shipped for this amount.<br />
<br />
==See Also==<br />
<br />
[[Antenna Switch Use Instructions]]<br />
<br />
[[Media:HPSDR FlachbandkabelVerbindung.pdf|Ribbon cable diagram]] (PDF)<br />
<br />
[[Media:AU V3 Schematic.sbk.pdf|Schematic Diagram of Antenna Switch]] (PDF)<br />
<br />
[[Media:AU_V3_Dimensions.pdf|Mechanical layout of the Antenna Switch]] (PDF)<br />
<br />
[[Category:Antenna switch| ]]</div>K9TRVhttps://openhpsdr.org/wiki/index.php?title=Libusb1.0_Notes_(Linux)&diff=3528Libusb1.0 Notes (Linux)2010-07-29T18:21:47Z<p>K9TRV: </p>
<hr />
<div>This page is about the use of [http://www.libusb.org/wiki/Libusb1.0 libusb1.0] with the HPSDR interface hardware [[OZY]] and [[MAGISTER]]<br />
<br />
Libusb1.0 is used on the Linux platforms, it seems. The most current version is obtainable from libusb.org's website. Please note that this is NOT the version that is currently used by PowerSDR and KISS on Windows. PowerSDR and KISS use 'libusb0', and do NOT use 'libusb1.0'. There is a separate Wiki page for 'libusb0'. If you are having difficulties getting drivers to install on Windows 7 64 bit, Vista 64 bit or WinXP 64 bit, please check that page! There is a link to the SVN where the signed drivers for libusb0 may be downloaded.<br />
<br />
[[Category:Software]]</div>K9TRVhttps://openhpsdr.org/wiki/index.php?title=Libusb0_Notes_(Windows)&diff=3527Libusb0 Notes (Windows)2010-07-29T18:17:21Z<p>K9TRV: New page: Libusb0 (the earlier version) is used on the Windows system. Please do not confuse 'libusb0', used on openhpsdr Windows systems, with 'libusb1.0' (a newer version) which is apparently use...</p>
<hr />
<div>Libusb0 (the earlier version) is used on the Windows system. Please do not confuse 'libusb0', used on openhpsdr Windows systems, with 'libusb1.0' (a newer version) which is apparently used on Linux systems. There is a separate page for 'libusb1.0'.<br />
<br />
Just before Dayton 2010, signed drivers for libusb0 were created. Here is the text of my message on the list on May 12, 2010:<br />
<br />
Dear All,<br />
<br />
Thanks to work done with/by Michael J. Wyrick, W3UC, of Acquisition Logic,<br />
and myself, we have signed drivers for libusb0!<br />
<br />
This means that those of you with 64 bit Vista or 64 bit Windows 7, can now<br />
install the libusb0 drivers and use them. That means that you can use Ozy<br />
or Hermes on such computers, in a way that will allow using CWSkimmer and<br />
other software that requires using libusb0 as the driver.<br />
<br />
This also means you won't have to use WinUSB on such computers. Libusb0<br />
performs better than WinUSB does. You will need modified versions of KISS<br />
and possibly PowerSDR, to ensure that the .Net code is 32 bit, so that all<br />
the 32 bit C/C++ dlls that are used will work. This is a requirement as it<br />
is NOT POSSIBLE to mix 32 bit and 64 bit code. So if you have 64 bit .Net<br />
code, you MUST have 64 bit C and C++ dlls. For example, this CAN be done<br />
with KISS, but only if you follow the directions on my WIKI page for WinUSB,<br />
so that the FFT dlls are the 64 bit version! Otherwise, you are much better<br />
off using the 32 bit code and what Phil VK6APH already provides.<br />
<br />
I have uploaded these drivers to: <br />
<br />
svn://64.245.179.219/svn/repos_hpsdr_kiss/branches/K9TRV/libusb0-driver-signed<br />
<br />
In this folder, you will find the drivers, as well as a zip file containing<br />
the drivers.<br />
<br />
The .inf file has been updated to deal with most HPSDR radios (Ozy and<br />
Hermes, at Hermes' assigned VID and PID), as well as a product by<br />
Acquisition Logic that can be used as an SDR. It also supports the<br />
Flexradio SDR-1000.<br />
<br />
Perhaps someone with greater permission on the SVN (Bill KD5TFD or Phil<br />
VK6APH) would like to move this to a more public place, and note that place on this page?<br />
<br />
If you have problems installing the driver, please email the list (and/or<br />
copy me) and we'll try to help. If you have problems with KISS, I think<br />
that I can help, but maybe Phil VK6APH can as well. For problems with<br />
PowerSDR, Bill T KD5TFD is your best resource. Bill was going to mark a<br />
version of PowerSDR.exe as 'x86 only', which will make it 32 bit code, and<br />
make it work on 64 bit. Because PowerSDR depends on other 3rd party 32 bit<br />
DLLs, it will NOT be working in 64 bit mode!<br />
<br />
Vy 73,<br />
George Byrkit, K9TRV</div>K9TRVhttps://openhpsdr.org/wiki/index.php?title=USB_Libraries&diff=3526USB Libraries2010-07-29T18:12:17Z<p>K9TRV: /* USB Libraries */</p>
<hr />
<div>==USB Libraries==<br />
<br />
This page is to explain the different USB Libraries to access the [[OZY]] and [[MAGISTER]] interface boards.<br />
<br />
<br />
[[libusb1.0 Notes]] used in Linux 32 and 64 bit systems<br />
<br />
[[libusb0 Notes]] used in Windows 32 and 64 bit systems<br />
<br />
[[WinUSB Notes]] used on Windows 32 and 64 bit systems<br />
<br />
<br />
[[Category:Software]]</div>K9TRVhttps://openhpsdr.org/wiki/index.php?title=WinUSB_Notes&diff=3500WinUSB Notes2010-07-28T20:50:55Z<p>K9TRV: /* WinUSB Notes */</p>
<hr />
<div>== WinUSB Notes ==<br />
<br />
THIS MATERIAL SHOULD BE CONSIDERED AS OBSOLETE, BUT INFORMATIVE ****<br />
<br />
THAT IS BECAUSE libusb0 HAS BEEN PUBLISHED BY openhpsdr.org AS A SIGNED DRIVER ****<br />
<br />
PLEASE SEARCH THE FORUM'S ARCHIVES FOR MORE INFORMATION ON THE TOPIC OF LIBUSB0 ****<br />
<br />
Here are the signed libusb0 drivers:<br />
<br />
svn://64.245.179.219/svn/repos_hpsdr_kiss/branches/K9TRV/libusb0-driver-signed<br />
<br />
Please see my listserver posting on 12 May 2010 in the archives...<br />
<br />
BECAUSE OF THIS, I HAVE STOPPED ANY MAINTENANCE ON THE WinUSB version of KISS ****<br />
<br />
George Byrkit, K9TRV, 28 July 2010 ****<br />
<br />
THERE WILL SOON BE A libusb0 WIKI PAGE WHERE INFO ON LIBUSB WILL BE LOCATED<br />
<br />
This page contains information on using WinUSB with HPSDR hardware.<br />
<br />
First, let's all be clear that WinUSB used as a driver replaces libusb0 used as a driver for some particular device, like the Ozy board. If you install WinUSB as the driver for Ozy, libusb0 is no longer the driver. So applications that use libusb0 (like PowerSDR, until Bill Tracey KD5TFD finished porting PowerSDR to WinUSB, or like CWSkimmer, which seems to use libusb0 to speak to Ozy) are not able to coexist with my branch of KISS. My branch of KISS uses WinUSB.<br />
<br />
So it's an either/or proposition. If you need libusb0, and can install libusb0 as the driver, and can run PowerSDR, you want to use Phil VK6APH's branch of KISS. His branch is the 'original', and is considered to be the main development branch. I try to keep step with his branch, and feed common bugs and hopefully their solutions back to him. I'm keeping step best as I can with Phil's development work using the Hermes board, as well.<br />
<br />
It seems that WinUSB is needed to use KISS (thus my branch is needed...) on Windows 64 bit OS versions, such as Vista 64 bit and Windows 7, 64 bit. Some have reported trouble using libusb0-based KISS on Windows 7 32 bit. These people report that my WinUSB branch does work fine on Windows 7, 32 bit (with WinUSB installed as the driver). This problem on 32 bit Vista and 32 bit Windows 7 has recently (approx 15 Jan 2010) traced to a problem in HPSDR_USB_LIB_V1.dll by Bill Tracey (KD5TFD), who has fixed this problem! He has mentioned this on the reflector (hpsdr mailing list), and has posted a fixed library. Phil is testing and updating his development branch to include this fixed file. Those of you using Vista 32 bit and Windows 7 32 bit may well wish to use that version and not my WinUSB version! That way, you can use both PowerSDR and KISS, and optionally use CWSkimmer and other similar applications.<br />
<br />
Is there anything that WinUSB can do that libusb0 cannot do, other than work on a 64 bit machine? It seems that, yes, there is at least one advantage to WinUSB. WinUSB is able to detect an Ozy or Hermes board that is plugged in or powered on AFTER KISS has been launched. Libusb0 required that Ozy be plugged in and powered on BEFORE launching/running KISS (or PowerSDR). So this is an advantage. Is there any disadvantage? I think that yes, there is. I don't have data to back it up, but libusb0 seems more 'performant' than WinUSB. What do I mean by that? I think that libusb0 has fewer delays and may use a larger blocksize for transfers than WinUSB does. What is the evidence? KISS using libusb0 has no troubles doing the normal (band) spectrum display, along with the full bandwidth display. I found that I had to reduce the number of data points (samples) for the full spectrum display from 8192 to 4096, to get rid of distorted, chopped audio. I think that Alberto came to the same conclusion.<br />
<br />
The first thing that you will need is the WinUSB driver package from Alberto, I2PHD, from www.weaksignals.com. [http://www.weaksignals.com Alberto I2PHD's WinRad site] Go to his website and download his WinRad package, which will give you his WinUSB driver installer. Using this installer should let you install WinUSB as the driver for your hardware on Windows XP, Vista and Windows 7, whether you have a 32 bit OS, or Intel/AMD 64 bit OS (x86 architecture) or Intel Itanium IA64 64 bit OS versions of windows installed.<br />
<br />
You will also be able to use WinRad, until Bill KD5TFD ports PowerSDR to WinUSB.<br />
<br />
Alberto has some very good notes on installing the driver, or replacing libusb0 with WinUSB, as part of his package. I suggest that you read his notes and follow his directions. I think that you have to install WinUSB twice for Ozy, once when Ozy contains no programming, and once when Ozy has has its firmware downloaded. You can also find these drivers, newly fixed so that 64 bit Intel/AMD x86 OS install works, in the WinUSBDrivers folder under my SVN archive listed below. You will still want Alberto's instructions...<br />
<br />
There were errors in the 64 bit installers, due to an error Microsoft had in their 'Using WinUSB' document. I consulted with Microsoft, who made me aware of the errors. I communicated these facts to Alberto I2PHD and Phil N8VB, who are updating their .inf files to fix the 64 bit x86 architecture processor installations correspondingly. Some teamwork and mutual communications was involved. Everyone has a better result due to the work that was done co-operatively.<br />
<br />
Other interesting projects and info on WinUSB include:<br />
<br />
:1) The SourceForge (www.sourceforge.net) project called LibUsbDotNet. You can download both source and binary. This is a project that allows .Net code to use either libusb0 or WinUSB, without the application program having to know which driver is installed for the hardware. This is not yet being used by KISS or HPSDR, but does hold some promise on Windows for this option. Using LibUsbDotNet would allow a single version of KISS, for example, to exist that would work with either libusb0 or WinUSB.<br />
<br />
:2) the website http://www.lvr.com/winusb.htm, which contains information on WinUSB, USB in general, sample code, much other information and sample code on things like Serial Ports, Parallel Ports, ethernet, and more. Its maintainer, Jan Axelson, has also written a number of books on these topics. I found his winusb_cs to be very helpful to study in porting KISS and its support programs from libusb0 to WinUSB. [http://www.lvr.com/winusb.htm Jan Axelson's website]<br />
<br />
What has been ported from libusb0 to WinUSB?<br />
:1) Phil Harman VK6APH's project KISS Console<br />
:2) supporting programs like loadfw.exe, loadfpga.exe and writei2c.exe<br />
:3) there is also a Visual Studio 2008 project called WinUSBAPI that is Alberto's Borland C++ Builder code ported to VS2008 C++. It doesn't yet have all the methods that the C# project WinUSBManaged that I wrote does. Hopefully, I'll find the time to back-port those methods from WinUSBManaged to WinUSBApi.<br />
<br />
The purpose of the 'supporting programs' (which also use winusbmanaged.dll) is to replace the current versions that use libusb0. With these, you can update the versions in your usbblaster-binaries folder so that you can still update the firmware in Penelope, Mercury and other boards. You may have multiple places where these are needed. Up-to-date copies are in my "KISS Console\bin\release" and "Kiss Console\bin\debug" folders, so that initozy11.bat that is in those folders will continue to work.<br />
<br />
Where can I find this new code that uses WinUSB?<br />
Try this svn path (K9TRV's KISS Branch): <br />
<br />
svn://64.245.179.219/svn/repos_hpsdr_kiss/branches/K9TRV<br />
<br />
== '''So, you're going to be running or recompiling the KISS code on a 64 bit machine?''' ==<br />
<br />
<br />
If so, then you'll need to check the 'fftw' subfolder in my branch for the 64 bit dll. I've provided the installers for the 32 bit and 64 bit fftw dlls, from the http://www.fftw.org/ website. Please either install the 64 bit package and replace all versions of the 32 bit dll with the dll it installs. Much easier is to copy and rename the libfftw3f64.dll to libfftw3f.dll, especially in the bin\release and bin\debug folders of my version of the KISS Console project. I've already placed libfftw3f64.dll in those directories for your convenience. Replacing the current libfftw3f.dll is then all you need to do. I suggest that you rename the current libfftw3f.dll file (to anything else...), then copy libfftw3f64.dll and rename the copy to libfftw3f.dll. Thanks to Dr. Hermann von Hasseln, DL3HVH, for this information!<br />
<br />
The alternative to this renaming is to rebuild SharpDSP, but ONLY after editing its file DSPBuffer.cs to change the line containing library_name = "libfftw3f.dll" to library_name = "libfftw3f64.dll".<br />
<br />
The issue here is that both KISS and Sharp_DSP are built with the 'mixed cpu' setting (see Configuration Manager), and thus when run on a 64 bit system, 64 bit code is generated (at run time! you don't even need to recompile! That's how .NET framework programs work...), and all DLLs that are called MUST BE 64 bit dlls. If you will tolerate 32 bit code on your 64 bit system, you can use the Configuration Manager and change the cpu type for BOTH KISS and Sharp_DSP to 'x86'. This will cause only 32 bit code to be generated. This will allow the 32 bit versions of FFTW as well as libusb0 to be used...<br />
<br />
So I cannot test the above, as I don't have a 64 bit OS installed to check it on. You can also find processor selection on the Build page of a project's properties. Double-click on Properties in the Kiss Konsole project in the solution explorer pane. This will bring up some tabbed dialogs in the main window. Select the 'build' tab. Note the combo-box to the right of the text saying 'Platform target'. This will by default be set to 'Any CPU'. You could choose to set it to 'x86' to force 32 bit code to be generated. Selecting 'x64' would force 64 bit code to be generated, which wouldn't work on 32 bit OS installations, and would require all 64 bit dlls be available (libusb0, probably and libfftw3f for 64 bit for sure!). I'd be willing to be that no one has an Itanium CPU, so please don't select that one...<br />
<br />
If you change the setting for KISS Konsole, make SURE that you make the setting for Sharp_DSP match! Otherwise, things just won't work... In my KISS branch, the Sharp_DSP project is part of the KISS Konsole solution, so this is easier to do. If you are using Phil's branch, you either need to add the Sharp_DSP project to the KISS solution, or make sure that you open the Sharp_DSP solution and make the needed changes in the Sharp_DSP project build settings and rebuild.<br />
<br />
[[Category:Software]]</div>K9TRVhttps://openhpsdr.org/wiki/index.php?title=WinUSB_Notes&diff=3498WinUSB Notes2010-07-28T20:49:59Z<p>K9TRV: /* WinUSB Notes */</p>
<hr />
<div>== WinUSB Notes ==<br />
<br />
THIS MATERIAL SHOULD BE CONSIDERED AS OBSOLETE, BUT INFORMATIVE ****<br />
THAT IS BECAUSE libusb0 HAS BEEN PUBLISHED BY openhpsdr.org AS A SIGNED DRIVER ****<br />
PLEASE SEARCH THE FORUM'S ARCHIVES FOR MORE INFORMATION ON THE TOPIC OF LIBUSB0 ****<br />
Here are the signed libusb0 drivers:<br />
svn://64.245.179.219/svn/repos_hpsdr_kiss/branches/K9TRV/libusb0-driver-signed<br />
<br />
Please see my listserver posting on 12 May 2010 in the archives...<br />
<br />
BECAUSE OF THIS, I HAVE STOPPED ANY MAINTENANCE ON THE WinUSB version of KISS ****<br />
George Byrkit, K9TRV, 28 July 2010 ****<br />
THERE WILL SOON BE A libusb0 WIKI PAGE WHERE INFO ON LIBUSB WILL BE LOCATED<br />
<br />
This page contains information on using WinUSB with HPSDR hardware.<br />
<br />
First, let's all be clear that WinUSB used as a driver replaces libusb0 used as a driver for some particular device, like the Ozy board. If you install WinUSB as the driver for Ozy, libusb0 is no longer the driver. So applications that use libusb0 (like PowerSDR, until Bill Tracey KD5TFD finished porting PowerSDR to WinUSB, or like CWSkimmer, which seems to use libusb0 to speak to Ozy) are not able to coexist with my branch of KISS. My branch of KISS uses WinUSB.<br />
<br />
So it's an either/or proposition. If you need libusb0, and can install libusb0 as the driver, and can run PowerSDR, you want to use Phil VK6APH's branch of KISS. His branch is the 'original', and is considered to be the main development branch. I try to keep step with his branch, and feed common bugs and hopefully their solutions back to him. I'm keeping step best as I can with Phil's development work using the Hermes board, as well.<br />
<br />
It seems that WinUSB is needed to use KISS (thus my branch is needed...) on Windows 64 bit OS versions, such as Vista 64 bit and Windows 7, 64 bit. Some have reported trouble using libusb0-based KISS on Windows 7 32 bit. These people report that my WinUSB branch does work fine on Windows 7, 32 bit (with WinUSB installed as the driver). This problem on 32 bit Vista and 32 bit Windows 7 has recently (approx 15 Jan 2010) traced to a problem in HPSDR_USB_LIB_V1.dll by Bill Tracey (KD5TFD), who has fixed this problem! He has mentioned this on the reflector (hpsdr mailing list), and has posted a fixed library. Phil is testing and updating his development branch to include this fixed file. Those of you using Vista 32 bit and Windows 7 32 bit may well wish to use that version and not my WinUSB version! That way, you can use both PowerSDR and KISS, and optionally use CWSkimmer and other similar applications.<br />
<br />
Is there anything that WinUSB can do that libusb0 cannot do, other than work on a 64 bit machine? It seems that, yes, there is at least one advantage to WinUSB. WinUSB is able to detect an Ozy or Hermes board that is plugged in or powered on AFTER KISS has been launched. Libusb0 required that Ozy be plugged in and powered on BEFORE launching/running KISS (or PowerSDR). So this is an advantage. Is there any disadvantage? I think that yes, there is. I don't have data to back it up, but libusb0 seems more 'performant' than WinUSB. What do I mean by that? I think that libusb0 has fewer delays and may use a larger blocksize for transfers than WinUSB does. What is the evidence? KISS using libusb0 has no troubles doing the normal (band) spectrum display, along with the full bandwidth display. I found that I had to reduce the number of data points (samples) for the full spectrum display from 8192 to 4096, to get rid of distorted, chopped audio. I think that Alberto came to the same conclusion.<br />
<br />
The first thing that you will need is the WinUSB driver package from Alberto, I2PHD, from www.weaksignals.com. [http://www.weaksignals.com Alberto I2PHD's WinRad site] Go to his website and download his WinRad package, which will give you his WinUSB driver installer. Using this installer should let you install WinUSB as the driver for your hardware on Windows XP, Vista and Windows 7, whether you have a 32 bit OS, or Intel/AMD 64 bit OS (x86 architecture) or Intel Itanium IA64 64 bit OS versions of windows installed.<br />
<br />
You will also be able to use WinRad, until Bill KD5TFD ports PowerSDR to WinUSB.<br />
<br />
Alberto has some very good notes on installing the driver, or replacing libusb0 with WinUSB, as part of his package. I suggest that you read his notes and follow his directions. I think that you have to install WinUSB twice for Ozy, once when Ozy contains no programming, and once when Ozy has has its firmware downloaded. You can also find these drivers, newly fixed so that 64 bit Intel/AMD x86 OS install works, in the WinUSBDrivers folder under my SVN archive listed below. You will still want Alberto's instructions...<br />
<br />
There were errors in the 64 bit installers, due to an error Microsoft had in their 'Using WinUSB' document. I consulted with Microsoft, who made me aware of the errors. I communicated these facts to Alberto I2PHD and Phil N8VB, who are updating their .inf files to fix the 64 bit x86 architecture processor installations correspondingly. Some teamwork and mutual communications was involved. Everyone has a better result due to the work that was done co-operatively.<br />
<br />
Other interesting projects and info on WinUSB include:<br />
<br />
:1) The SourceForge (www.sourceforge.net) project called LibUsbDotNet. You can download both source and binary. This is a project that allows .Net code to use either libusb0 or WinUSB, without the application program having to know which driver is installed for the hardware. This is not yet being used by KISS or HPSDR, but does hold some promise on Windows for this option. Using LibUsbDotNet would allow a single version of KISS, for example, to exist that would work with either libusb0 or WinUSB.<br />
<br />
:2) the website http://www.lvr.com/winusb.htm, which contains information on WinUSB, USB in general, sample code, much other information and sample code on things like Serial Ports, Parallel Ports, ethernet, and more. Its maintainer, Jan Axelson, has also written a number of books on these topics. I found his winusb_cs to be very helpful to study in porting KISS and its support programs from libusb0 to WinUSB. [http://www.lvr.com/winusb.htm Jan Axelson's website]<br />
<br />
What has been ported from libusb0 to WinUSB?<br />
:1) Phil Harman VK6APH's project KISS Console<br />
:2) supporting programs like loadfw.exe, loadfpga.exe and writei2c.exe<br />
:3) there is also a Visual Studio 2008 project called WinUSBAPI that is Alberto's Borland C++ Builder code ported to VS2008 C++. It doesn't yet have all the methods that the C# project WinUSBManaged that I wrote does. Hopefully, I'll find the time to back-port those methods from WinUSBManaged to WinUSBApi.<br />
<br />
The purpose of the 'supporting programs' (which also use winusbmanaged.dll) is to replace the current versions that use libusb0. With these, you can update the versions in your usbblaster-binaries folder so that you can still update the firmware in Penelope, Mercury and other boards. You may have multiple places where these are needed. Up-to-date copies are in my "KISS Console\bin\release" and "Kiss Console\bin\debug" folders, so that initozy11.bat that is in those folders will continue to work.<br />
<br />
Where can I find this new code that uses WinUSB?<br />
Try this svn path (K9TRV's KISS Branch): <br />
<br />
svn://64.245.179.219/svn/repos_hpsdr_kiss/branches/K9TRV<br />
<br />
== '''So, you're going to be running or recompiling the KISS code on a 64 bit machine?''' ==<br />
<br />
<br />
If so, then you'll need to check the 'fftw' subfolder in my branch for the 64 bit dll. I've provided the installers for the 32 bit and 64 bit fftw dlls, from the http://www.fftw.org/ website. Please either install the 64 bit package and replace all versions of the 32 bit dll with the dll it installs. Much easier is to copy and rename the libfftw3f64.dll to libfftw3f.dll, especially in the bin\release and bin\debug folders of my version of the KISS Console project. I've already placed libfftw3f64.dll in those directories for your convenience. Replacing the current libfftw3f.dll is then all you need to do. I suggest that you rename the current libfftw3f.dll file (to anything else...), then copy libfftw3f64.dll and rename the copy to libfftw3f.dll. Thanks to Dr. Hermann von Hasseln, DL3HVH, for this information!<br />
<br />
The alternative to this renaming is to rebuild SharpDSP, but ONLY after editing its file DSPBuffer.cs to change the line containing library_name = "libfftw3f.dll" to library_name = "libfftw3f64.dll".<br />
<br />
The issue here is that both KISS and Sharp_DSP are built with the 'mixed cpu' setting (see Configuration Manager), and thus when run on a 64 bit system, 64 bit code is generated (at run time! you don't even need to recompile! That's how .NET framework programs work...), and all DLLs that are called MUST BE 64 bit dlls. If you will tolerate 32 bit code on your 64 bit system, you can use the Configuration Manager and change the cpu type for BOTH KISS and Sharp_DSP to 'x86'. This will cause only 32 bit code to be generated. This will allow the 32 bit versions of FFTW as well as libusb0 to be used...<br />
<br />
So I cannot test the above, as I don't have a 64 bit OS installed to check it on. You can also find processor selection on the Build page of a project's properties. Double-click on Properties in the Kiss Konsole project in the solution explorer pane. This will bring up some tabbed dialogs in the main window. Select the 'build' tab. Note the combo-box to the right of the text saying 'Platform target'. This will by default be set to 'Any CPU'. You could choose to set it to 'x86' to force 32 bit code to be generated. Selecting 'x64' would force 64 bit code to be generated, which wouldn't work on 32 bit OS installations, and would require all 64 bit dlls be available (libusb0, probably and libfftw3f for 64 bit for sure!). I'd be willing to be that no one has an Itanium CPU, so please don't select that one...<br />
<br />
If you change the setting for KISS Konsole, make SURE that you make the setting for Sharp_DSP match! Otherwise, things just won't work... In my KISS branch, the Sharp_DSP project is part of the KISS Konsole solution, so this is easier to do. If you are using Phil's branch, you either need to add the Sharp_DSP project to the KISS solution, or make sure that you open the Sharp_DSP solution and make the needed changes in the Sharp_DSP project build settings and rebuild.<br />
<br />
[[Category:Software]]</div>K9TRVhttps://openhpsdr.org/wiki/index.php?title=WinUSB_Notes&diff=3496WinUSB Notes2010-07-28T14:39:10Z<p>K9TRV: /* WinUSB Notes */</p>
<hr />
<div>== WinUSB Notes ==<br />
<br />
**** THIS MATERIAL SHOULD BE CONSIDERED AS OBSOLETE, BUT INFORMATIVE ****<br />
**** THAT IS BECAUSE libusb0 HAS BEEN RELEASED BY libusb.org AS A SIGNED DRIVER ****<br />
**** PLEASE SEARCH THE FORUM'S ARCHIVES FOR MORE INFORMATION ON THE TOPIC OF LIBUSB0 ****<br />
<br />
**** BECAUSE OF THIS, I HAVE STOPPED ANY MAINTENANCE ON THE WinUSB version of KISS ****<br />
**** George Byrkit, K9TRV, 28 July 2010 ****<br />
<br />
This page contains information on using WinUSB with HPSDR hardware.<br />
<br />
First, let's all be clear that WinUSB used as a driver replaces libusb0 used as a driver for some particular device, like the Ozy board. If you install WinUSB as the driver for Ozy, libusb0 is no longer the driver. So applications that use libusb0 (like PowerSDR, until Bill Tracey KD5TFD finished porting PowerSDR to WinUSB, or like CWSkimmer, which seems to use libusb0 to speak to Ozy) are not able to coexist with my branch of KISS. My branch of KISS uses WinUSB.<br />
<br />
So it's an either/or proposition. If you need libusb0, and can install libusb0 as the driver, and can run PowerSDR, you want to use Phil VK6APH's branch of KISS. His branch is the 'original', and is considered to be the main development branch. I try to keep step with his branch, and feed common bugs and hopefully their solutions back to him. I'm keeping step best as I can with Phil's development work using the Hermes board, as well.<br />
<br />
It seems that WinUSB is needed to use KISS (thus my branch is needed...) on Windows 64 bit OS versions, such as Vista 64 bit and Windows 7, 64 bit. Some have reported trouble using libusb0-based KISS on Windows 7 32 bit. These people report that my WinUSB branch does work fine on Windows 7, 32 bit (with WinUSB installed as the driver). This problem on 32 bit Vista and 32 bit Windows 7 has recently (approx 15 Jan 2010) traced to a problem in HPSDR_USB_LIB_V1.dll by Bill Tracey (KD5TFD), who has fixed this problem! He has mentioned this on the reflector (hpsdr mailing list), and has posted a fixed library. Phil is testing and updating his development branch to include this fixed file. Those of you using Vista 32 bit and Windows 7 32 bit may well wish to use that version and not my WinUSB version! That way, you can use both PowerSDR and KISS, and optionally use CWSkimmer and other similar applications.<br />
<br />
Is there anything that WinUSB can do that libusb0 cannot do, other than work on a 64 bit machine? It seems that, yes, there is at least one advantage to WinUSB. WinUSB is able to detect an Ozy or Hermes board that is plugged in or powered on AFTER KISS has been launched. Libusb0 required that Ozy be plugged in and powered on BEFORE launching/running KISS (or PowerSDR). So this is an advantage. Is there any disadvantage? I think that yes, there is. I don't have data to back it up, but libusb0 seems more 'performant' than WinUSB. What do I mean by that? I think that libusb0 has fewer delays and may use a larger blocksize for transfers than WinUSB does. What is the evidence? KISS using libusb0 has no troubles doing the normal (band) spectrum display, along with the full bandwidth display. I found that I had to reduce the number of data points (samples) for the full spectrum display from 8192 to 4096, to get rid of distorted, chopped audio. I think that Alberto came to the same conclusion.<br />
<br />
The first thing that you will need is the WinUSB driver package from Alberto, I2PHD, from www.weaksignals.com. [http://www.weaksignals.com Alberto I2PHD's WinRad site] Go to his website and download his WinRad package, which will give you his WinUSB driver installer. Using this installer should let you install WinUSB as the driver for your hardware on Windows XP, Vista and Windows 7, whether you have a 32 bit OS, or Intel/AMD 64 bit OS (x86 architecture) or Intel Itanium IA64 64 bit OS versions of windows installed.<br />
<br />
You will also be able to use WinRad, until Bill KD5TFD ports PowerSDR to WinUSB.<br />
<br />
Alberto has some very good notes on installing the driver, or replacing libusb0 with WinUSB, as part of his package. I suggest that you read his notes and follow his directions. I think that you have to install WinUSB twice for Ozy, once when Ozy contains no programming, and once when Ozy has has its firmware downloaded. You can also find these drivers, newly fixed so that 64 bit Intel/AMD x86 OS install works, in the WinUSBDrivers folder under my SVN archive listed below. You will still want Alberto's instructions...<br />
<br />
There were errors in the 64 bit installers, due to an error Microsoft had in their 'Using WinUSB' document. I consulted with Microsoft, who made me aware of the errors. I communicated these facts to Alberto I2PHD and Phil N8VB, who are updating their .inf files to fix the 64 bit x86 architecture processor installations correspondingly. Some teamwork and mutual communications was involved. Everyone has a better result due to the work that was done co-operatively.<br />
<br />
Other interesting projects and info on WinUSB include:<br />
<br />
:1) The SourceForge (www.sourceforge.net) project called LibUsbDotNet. You can download both source and binary. This is a project that allows .Net code to use either libusb0 or WinUSB, without the application program having to know which driver is installed for the hardware. This is not yet being used by KISS or HPSDR, but does hold some promise on Windows for this option. Using LibUsbDotNet would allow a single version of KISS, for example, to exist that would work with either libusb0 or WinUSB.<br />
<br />
:2) the website http://www.lvr.com/winusb.htm, which contains information on WinUSB, USB in general, sample code, much other information and sample code on things like Serial Ports, Parallel Ports, ethernet, and more. Its maintainer, Jan Axelson, has also written a number of books on these topics. I found his winusb_cs to be very helpful to study in porting KISS and its support programs from libusb0 to WinUSB. [http://www.lvr.com/winusb.htm Jan Axelson's website]<br />
<br />
What has been ported from libusb0 to WinUSB?<br />
:1) Phil Harman VK6APH's project KISS Console<br />
:2) supporting programs like loadfw.exe, loadfpga.exe and writei2c.exe<br />
:3) there is also a Visual Studio 2008 project called WinUSBAPI that is Alberto's Borland C++ Builder code ported to VS2008 C++. It doesn't yet have all the methods that the C# project WinUSBManaged that I wrote does. Hopefully, I'll find the time to back-port those methods from WinUSBManaged to WinUSBApi.<br />
<br />
The purpose of the 'supporting programs' (which also use winusbmanaged.dll) is to replace the current versions that use libusb0. With these, you can update the versions in your usbblaster-binaries folder so that you can still update the firmware in Penelope, Mercury and other boards. You may have multiple places where these are needed. Up-to-date copies are in my "KISS Console\bin\release" and "Kiss Console\bin\debug" folders, so that initozy11.bat that is in those folders will continue to work.<br />
<br />
Where can I find this new code that uses WinUSB?<br />
Try this svn path (K9TRV's KISS Branch): <br />
<br />
svn://64.245.179.219/svn/repos_hpsdr_kiss/branches/K9TRV<br />
<br />
== '''So, you're going to be running or recompiling the KISS code on a 64 bit machine?''' ==<br />
<br />
<br />
If so, then you'll need to check the 'fftw' subfolder in my branch for the 64 bit dll. I've provided the installers for the 32 bit and 64 bit fftw dlls, from the http://www.fftw.org/ website. Please either install the 64 bit package and replace all versions of the 32 bit dll with the dll it installs. Much easier is to copy and rename the libfftw3f64.dll to libfftw3f.dll, especially in the bin\release and bin\debug folders of my version of the KISS Console project. I've already placed libfftw3f64.dll in those directories for your convenience. Replacing the current libfftw3f.dll is then all you need to do. I suggest that you rename the current libfftw3f.dll file (to anything else...), then copy libfftw3f64.dll and rename the copy to libfftw3f.dll. Thanks to Dr. Hermann von Hasseln, DL3HVH, for this information!<br />
<br />
The alternative to this renaming is to rebuild SharpDSP, but ONLY after editing its file DSPBuffer.cs to change the line containing library_name = "libfftw3f.dll" to library_name = "libfftw3f64.dll".<br />
<br />
The issue here is that both KISS and Sharp_DSP are built with the 'mixed cpu' setting (see Configuration Manager), and thus when run on a 64 bit system, 64 bit code is generated (at run time! you don't even need to recompile! That's how .NET framework programs work...), and all DLLs that are called MUST BE 64 bit dlls. If you will tolerate 32 bit code on your 64 bit system, you can use the Configuration Manager and change the cpu type for BOTH KISS and Sharp_DSP to 'x86'. This will cause only 32 bit code to be generated. This will allow the 32 bit versions of FFTW as well as libusb0 to be used...<br />
<br />
So I cannot test the above, as I don't have a 64 bit OS installed to check it on. You can also find processor selection on the Build page of a project's properties. Double-click on Properties in the Kiss Konsole project in the solution explorer pane. This will bring up some tabbed dialogs in the main window. Select the 'build' tab. Note the combo-box to the right of the text saying 'Platform target'. This will by default be set to 'Any CPU'. You could choose to set it to 'x86' to force 32 bit code to be generated. Selecting 'x64' would force 64 bit code to be generated, which wouldn't work on 32 bit OS installations, and would require all 64 bit dlls be available (libusb0, probably and libfftw3f for 64 bit for sure!). I'd be willing to be that no one has an Itanium CPU, so please don't select that one...<br />
<br />
If you change the setting for KISS Konsole, make SURE that you make the setting for Sharp_DSP match! Otherwise, things just won't work... In my KISS branch, the Sharp_DSP project is part of the KISS Konsole solution, so this is easier to do. If you are using Phil's branch, you either need to add the Sharp_DSP project to the KISS solution, or make sure that you open the Sharp_DSP solution and make the needed changes in the Sharp_DSP project build settings and rebuild.<br />
<br />
[[Category:Software]]</div>K9TRVhttps://openhpsdr.org/wiki/index.php?title=WinUSB_Notes&diff=3197WinUSB Notes2010-02-23T22:05:32Z<p>K9TRV: /* WinUSB Notes */</p>
<hr />
<div>== WinUSB Notes ==<br />
<br />
This page contains information on using WinUSB with HPSDR hardware.<br />
<br />
First, let's all be clear that WinUSB used as a driver replaces libusb0 used as a driver for some particular device, like the Ozy board. If you install WinUSB as the driver for Ozy, libusb0 is no longer the driver. So applications that use libusb0 (like PowerSDR, until Bill Tracey KD5TFD finished porting PowerSDR to WinUSB, or like CWSkimmer, which seems to use libusb0 to speak to Ozy) are not able to coexist with my branch of KISS. My branch of KISS uses WinUSB.<br />
<br />
So it's an either/or proposition. If you need libusb0, and can install libusb0 as the driver, and can run PowerSDR, you want to use Phil VK6APH's branch of KISS. His branch is the 'original', and is considered to be the main development branch. I try to keep step with his branch, and feed common bugs and hopefully their solutions back to him. I'm keeping step best as I can with Phil's development work using the Hermes board, as well.<br />
<br />
It seems that WinUSB is needed to use KISS (thus my branch is needed...) on Windows 64 bit OS versions, such as Vista 64 bit and Windows 7, 64 bit. Some have reported trouble using libusb0-based KISS on Windows 7 32 bit. These people report that my WinUSB branch does work fine on Windows 7, 32 bit (with WinUSB installed as the driver). This problem on 32 bit Vista and 32 bit Windows 7 has recently (approx 15 Jan 2010) traced to a problem in HPSDR_USB_LIB_V1.dll by Bill Tracey (KD5TFD), who has fixed this problem! He has mentioned this on the reflector (hpsdr mailing list), and has posted a fixed library. Phil is testing and updating his development branch to include this fixed file. Those of you using Vista 32 bit and Windows 7 32 bit may well wish to use that version and not my WinUSB version! That way, you can use both PowerSDR and KISS, and optionally use CWSkimmer and other similar applications.<br />
<br />
Is there anything that WinUSB can do that libusb0 cannot do, other than work on a 64 bit machine? It seems that, yes, there is at least one advantage to WinUSB. WinUSB is able to detect an Ozy or Hermes board that is plugged in or powered on AFTER KISS has been launched. Libusb0 required that Ozy be plugged in and powered on BEFORE launching/running KISS (or PowerSDR). So this is an advantage. Is there any disadvantage? I think that yes, there is. I don't have data to back it up, but libusb0 seems more 'performant' than WinUSB. What do I mean by that? I think that libusb0 has fewer delays and may use a larger blocksize for transfers than WinUSB does. What is the evidence? KISS using libusb0 has no troubles doing the normal (band) spectrum display, along with the full bandwidth display. I found that I had to reduce the number of data points (samples) for the full spectrum display from 8192 to 4096, to get rid of distorted, chopped audio. I think that Alberto came to the same conclusion.<br />
<br />
The first thing that you will need is the WinUSB driver package from Alberto, I2PHD, from www.weaksignals.com. [http://www.weaksignals.com Alberto I2PHD's WinRad site] Go to his website and download his WinRad package, which will give you his WinUSB driver installer. Using this installer should let you install WinUSB as the driver for your hardware on Windows XP, Vista and Windows 7, whether you have a 32 bit OS, or Intel/AMD 64 bit OS (x86 architecture) or Intel Itanium IA64 64 bit OS versions of windows installed.<br />
<br />
You will also be able to use WinRad, until Bill KD5TFD ports PowerSDR to WinUSB.<br />
<br />
Alberto has some very good notes on installing the driver, or replacing libusb0 with WinUSB, as part of his package. I suggest that you read his notes and follow his directions. I think that you have to install WinUSB twice for Ozy, once when Ozy contains no programming, and once when Ozy has has its firmware downloaded. You can also find these drivers, newly fixed so that 64 bit Intel/AMD x86 OS install works, in the WinUSBDrivers folder under my SVN archive listed below. You will still want Alberto's instructions...<br />
<br />
There were errors in the 64 bit installers, due to an error Microsoft had in their 'Using WinUSB' document. I consulted with Microsoft, who made me aware of the errors. I communicated these facts to Alberto I2PHD and Phil N8VB, who are updating their .inf files to fix the 64 bit x86 architecture processor installations correspondingly. Some teamwork and mutual communications was involved. Everyone has a better result due to the work that was done co-operatively.<br />
<br />
Other interesting projects and info on WinUSB include:<br />
<br />
:1) The SourceForge (www.sourceforge.net) project called LibUsbDotNet. You can download both source and binary. This is a project that allows .Net code to use either libusb0 or WinUSB, without the application program having to know which driver is installed for the hardware. This is not yet being used by KISS or HPSDR, but does hold some promise on Windows for this option. Using LibUsbDotNet would allow a single version of KISS, for example, to exist that would work with either libusb0 or WinUSB.<br />
<br />
:2) the website http://www.lvr.com/winusb.htm, which contains information on WinUSB, USB in general, sample code, much other information and sample code on things like Serial Ports, Parallel Ports, ethernet, and more. Its maintainer, Jan Axelson, has also written a number of books on these topics. I found his winusb_cs to be very helpful to study in porting KISS and its support programs from libusb0 to WinUSB. [http://www.lvr.com/winusb.htm Jan Axelson's website]<br />
<br />
What has been ported from libusb0 to WinUSB?<br />
:1) Phil Harman VK6APH's project KISS Console<br />
:2) supporting programs like loadfw.exe, loadfpga.exe and writei2c.exe<br />
:3) there is also a Visual Studio 2008 project called WinUSBAPI that is Alberto's Borland C++ Builder code ported to VS2008 C++. It doesn't yet have all the methods that the C# project WinUSBManaged that I wrote does. Hopefully, I'll find the time to back-port those methods from WinUSBManaged to WinUSBApi.<br />
<br />
The purpose of the 'supporting programs' (which also use winusbmanaged.dll) is to replace the current versions that use libusb0. With these, you can update the versions in your usbblaster-binaries folder so that you can still update the firmware in Penelope, Mercury and other boards. You may have multiple places where these are needed. Up-to-date copies are in my "KISS Console\bin\release" and "Kiss Console\bin\debug" folders, so that initozy11.bat that is in those folders will continue to work.<br />
<br />
Where can I find this new code that uses WinUSB?<br />
Try this svn path (K9TRV's KISS Branch): <br />
<br />
svn://64.245.179.219/svn/repos_hpsdr_kiss/branches/K9TRV<br />
<br />
== '''So, you're going to be running or recompiling the KISS code on a 64 bit machine?''' ==<br />
<br />
<br />
If so, then you'll need to check the 'fftw' subfolder in my branch for the 64 bit dll. I've provided the installers for the 32 bit and 64 bit fftw dlls, from the http://www.fftw.org/ website. Please either install the 64 bit package and replace all versions of the 32 bit dll with the dll it installs. Much easier is to copy and rename the libfftw3f64.dll to libfftw3f.dll, especially in the bin\release and bin\debug folders of my version of the KISS Console project. I've already placed libfftw3f64.dll in those directories for your convenience. Replacing the current libfftw3f.dll is then all you need to do. I suggest that you rename the current libfftw3f.dll file (to anything else...), then copy libfftw3f64.dll and rename the copy to libfftw3f.dll. Thanks to Dr. Hermann von Hasseln, DL3HVH, for this information!<br />
<br />
The alternative to this renaming is to rebuild SharpDSP, but ONLY after editing its file DSPBuffer.cs to change the line containing library_name = "libfftw3f.dll" to library_name = "libfftw3f64.dll".<br />
<br />
The issue here is that both KISS and Sharp_DSP are built with the 'mixed cpu' setting (see Configuration Manager), and thus when run on a 64 bit system, 64 bit code is generated (at run time! you don't even need to recompile! That's how .NET framework programs work...), and all DLLs that are called MUST BE 64 bit dlls. If you will tolerate 32 bit code on your 64 bit system, you can use the Configuration Manager and change the cpu type for BOTH KISS and Sharp_DSP to 'x86'. This will cause only 32 bit code to be generated. This will allow the 32 bit versions of FFTW as well as libusb0 to be used...<br />
<br />
So I cannot test the above, as I don't have a 64 bit OS installed to check it on. You can also find processor selection on the Build page of a project's properties. Double-click on Properties in the Kiss Konsole project in the solution explorer pane. This will bring up some tabbed dialogs in the main window. Select the 'build' tab. Note the combo-box to the right of the text saying 'Platform target'. This will by default be set to 'Any CPU'. You could choose to set it to 'x86' to force 32 bit code to be generated. Selecting 'x64' would force 64 bit code to be generated, which wouldn't work on 32 bit OS installations, and would require all 64 bit dlls be available (libusb0, probably and libfftw3f for 64 bit for sure!). I'd be willing to be that no one has an Itanium CPU, so please don't select that one...<br />
<br />
If you change the setting for KISS Konsole, make SURE that you make the setting for Sharp_DSP match! Otherwise, things just won't work... In my KISS branch, the Sharp_DSP project is part of the KISS Konsole solution, so this is easier to do. If you are using Phil's branch, you either need to add the Sharp_DSP project to the KISS solution, or make sure that you open the Sharp_DSP solution and make the needed changes in the Sharp_DSP project build settings and rebuild.<br />
<br />
[[Category:Software]]</div>K9TRVhttps://openhpsdr.org/wiki/index.php?title=WinUSB_Notes&diff=2896WinUSB Notes2010-01-19T16:18:46Z<p>K9TRV: /* So, you're going to be running or recompiling the KISS code on a 64 bit machine? */</p>
<hr />
<div><br />
== WinUSB Notes ==<br />
<br />
This page contains information on using WinUSB with HPSDR hardware.<br />
<br />
First, let's all be clear that WinUSB used as a driver replaces libusb0 used as a driver for some particular device, like the Ozy board. If you install WinUSB as the driver for Ozy, libusb0 is no longer the driver. So applications that use libusb0 (like PowerSDR, until Bill Tracey KD5TFD finished porting PowerSDR to WinUSB, or like CWSkimmer, which seems to use libusb0 to speak to Ozy) are not able to coexist with my branch of KISS. My branch of KISS uses WinUSB.<br />
<br />
So it's an either/or proposition. If you need libusb0, and can install libusb0 as the driver, and can run PowerSDR, you want to use Phil VK6APH's branch of KISS. His branch is the 'original', and is considered to be the main development branch. I try to keep step with his branch, and feed common bugs and hopefully their solutions back to him. I'm keeping step best as I can with Phil's development work using the Hermes board, as well.<br />
<br />
It seems that WinUSB is needed to use KISS (thus my branch is needed...) on Windows 64 bit OS versions, such as Vista 64 bit and Windows 7, 64 bit. Some have reported trouble using libusb0-based KISS on Windows 7 32 bit. These people report that my WinUSB branch does work fine on Windows 7, 32 bit (with WinUSB installed as the driver). This problem on 32 bit Vista and 32 bit Windows 7 has recently (approx 15 Jan 2010) traced to a problem in HPSDR_USB_LIB_V1.dll by Bill Tracey (KD5TFD), who has fixed this problem! He has mentioned this on the reflector (hpsdr mailing list), and has posted a fixed library. Phil is testing and updating his development branch to include this fixed file. Those of you using Vista 32 bit and Windows 7 32 bit may well wish to use that version and not my WinUSB version! That way, you can use both PowerSDR and KISS, and optionally use CWSkimmer and other similar applications.<br />
<br />
Is there anything that WinUSB can do that libusb0 cannot do, other than work on a 64 bit machine? It seems that, yes, there is at least one advantage to WinUSB. WinUSB is able to detect an Ozy or Hermes board that is plugged in or powered on AFTER KISS has been launched. Libusb0 required that Ozy be plugged in and powered on BEFORE launching/running KISS (or PowerSDR). So this is an advantage<br />
<br />
The first thing that you will need is the WinUSB driver package from Alberto, I2PHD, from www.weaksignals.com. [http://www.weaksignals.com Alberto I2PHD's WinRad site] Go to his website and download his WinRad package, which will give you his WinUSB driver installer. Using this installer should let you install WinUSB as the driver for your hardware on Windows XP, Vista and Windows 7, whether you have a 32 bit OS, or Intel/AMD 64 bit OS (x86 architecture) or Intel Itanium IA64 64 bit OS versions of windows installed.<br />
<br />
You will also be able to use WinRad, until Bill KD5TFD ports PowerSDR to WinUSB.<br />
<br />
Alberto has some very good notes on installing the driver, or replacing libusb0 with WinUSB, as part of his package. I suggest that you read his notes and follow his directions. I think that you have to install WinUSB twice for Ozy, once when Ozy contains no programming, and once when Ozy has has its firmware downloaded. You can also find these drivers, newly fixed so that 64 bit Intel/AMD x86 OS install works, in the WinUSBDrivers folder under my SVN archive listed below. You will still want Alberto's instructions...<br />
<br />
There were errors in the 64 bit installers, due to an error Microsoft had in their 'Using WinUSB' document. I consulted with Microsoft, who made me aware of the errors. I communicated these facts to Alberto I2PHD and Phil N8VB, who are updating their .inf files to fix the 64 bit x86 architecture processor installations correspondingly. Some teamwork and mutual communications was involved. Everyone has a better result due to the work that was done co-operatively.<br />
<br />
Other interesting projects and info on WinUSB include:<br />
<br />
:1) The SourceForge (www.sourceforge.net) project called LibUsbDotNet. You can download both source and binary. This is a project that allows .Net code to use either libusb0 or WinUSB, without the application program having to know which driver is installed for the hardware. This is not yet being used by KISS or HPSDR, but does hold some promise on Windows for this option. Using LibUsbDotNet would allow a single version of KISS, for example, to exist that would work with either libusb0 or WinUSB.<br />
<br />
:2) the website http://www.lvr.com/winusb.htm, which contains information on WinUSB, USB in general, sample code, much other information and sample code on things like Serial Ports, Parallel Ports, ethernet, and more. Its maintainer, Jan Axelson, has also written a number of books on these topics. I found his winusb_cs to be very helpful to study in porting KISS and its support programs from libusb0 to WinUSB. [http://www.lvr.com/winusb.htm Jan Axelson's website]<br />
<br />
What has been ported from libusb0 to WinUSB?<br />
:1) Phil Harman VK6APH's project KISS Console<br />
:2) supporting programs like loadfw.exe, loadfpga.exe and writei2c.exe<br />
:3) there is also a Visual Studio 2008 project called WinUSBAPI that is Alberto's Borland C++ Builder code ported to VS2008 C++. It doesn't yet have all the methods that the C# project WinUSBManaged that I wrote does. Hopefully, I'll find the time to back-port those methods from WinUSBManaged to WinUSBApi.<br />
<br />
The purpose of the 'supporting programs' (which also use winusbmanaged.dll) is to replace the current versions that use libusb0. With these, you can update the versions in your usbblaster-binaries folder so that you can still update the firmware in Penelope, Mercury and other boards. You may have multiple places where these are needed. Up-to-date copies are in my "KISS Console\bin\release" and "Kiss Console\bin\debug" folders, so that initozy11.bat that is in those folders will continue to work.<br />
<br />
Where can I find this new code that uses WinUSB?<br />
Try this svn path (K9TRV's KISS Branch): <br />
<br />
svn://206.216.146.154/svn/repos_hpsdr_kiss/branches/K9TRV<br />
<br />
== '''So, you're going to be running or recompiling the KISS code on a 64 bit machine?''' ==<br />
<br />
<br />
If so, then you'll need to check the 'fftw' subfolder in my branch for the 64 bit dll. I've provided the installers for the 32 bit and 64 bit fftw dlls, from the http://www.fftw.org/ website. Please either install the 64 bit package and replace all versions of the 32 bit dll with the dll it installs. Much easier is to copy and rename the libfftw3f64.dll to libfftw3f.dll, especially in the bin\release and bin\debug folders of my version of the KISS Console project. I've already placed libfftw3f64.dll in those directories for your convenience. Replacing the current libfftw3f.dll is then all you need to do. I suggest that you rename the current libfftw3f.dll file (to anything else...), then copy libfftw3f64.dll and rename the copy to libfftw3f.dll. Thanks to Dr. Hermann von Hasseln, DL3HVH, for this information!<br />
<br />
The alternative to this renaming is to rebuild SharpDSP, but ONLY after editing its file DSPBuffer.cs to change the line containing library_name = "libfftw3f.dll" to library_name = "libfftw3f64.dll".<br />
<br />
The issue here is that both KISS and Sharp_DSP are built with the 'mixed cpu' setting (see Configuration Manager), and thus when run on a 64 bit system, 64 bit code is generated (at run time! you don't even need to recompile! That's how .NET framework programs work...), and all DLLs that are called MUST BE 64 bit dlls. If you will tolerate 32 bit code on your 64 bit system, you can use the Configuration Manager and change the cpu type for BOTH KISS and Sharp_DSP to 'x86'. This will cause only 32 bit code to be generated. This will allow the 32 bit versions of FFTW as well as libusb0 to be used...<br />
<br />
So I cannot test the above, as I don't have a 64 bit OS installed to check it on. You can also find processor selection on the Build page of a project's properties. Double-click on Properties in the Kiss Konsole project in the solution explorer pane. This will bring up some tabbed dialogs in the main window. Select the 'build' tab. Note the combo-box to the right of the text saying 'Platform target'. This will by default be set to 'Any CPU'. You could choose to set it to 'x86' to force 32 bit code to be generated. Selecting 'x64' would force 64 bit code to be generated, which wouldn't work on 32 bit OS installations, and would require all 64 bit dlls be available (libusb0, probably and libfftw3f for 64 bit for sure!). I'd be willing to be that no one has an Itanium CPU, so please don't select that one...<br />
<br />
If you change the setting for KISS Konsole, make SURE that you make the setting for Sharp_DSP match! Otherwise, things just won't work... In my KISS branch, the Sharp_DSP project is part of the KISS Konsole solution, so this is easier to do. If you are using Phil's branch, you either need to add the Sharp_DSP project to the KISS solution, or make sure that you open the Sharp_DSP solution and make the needed changes in the Sharp_DSP project build settings and rebuild.</div>K9TRVhttps://openhpsdr.org/wiki/index.php?title=WinUSB_Notes&diff=2895WinUSB Notes2010-01-19T16:15:14Z<p>K9TRV: /* So, you're going to be running or recompiling the KISS code on a 64 bit machine? */</p>
<hr />
<div><br />
== WinUSB Notes ==<br />
<br />
This page contains information on using WinUSB with HPSDR hardware.<br />
<br />
First, let's all be clear that WinUSB used as a driver replaces libusb0 used as a driver for some particular device, like the Ozy board. If you install WinUSB as the driver for Ozy, libusb0 is no longer the driver. So applications that use libusb0 (like PowerSDR, until Bill Tracey KD5TFD finished porting PowerSDR to WinUSB, or like CWSkimmer, which seems to use libusb0 to speak to Ozy) are not able to coexist with my branch of KISS. My branch of KISS uses WinUSB.<br />
<br />
So it's an either/or proposition. If you need libusb0, and can install libusb0 as the driver, and can run PowerSDR, you want to use Phil VK6APH's branch of KISS. His branch is the 'original', and is considered to be the main development branch. I try to keep step with his branch, and feed common bugs and hopefully their solutions back to him. I'm keeping step best as I can with Phil's development work using the Hermes board, as well.<br />
<br />
It seems that WinUSB is needed to use KISS (thus my branch is needed...) on Windows 64 bit OS versions, such as Vista 64 bit and Windows 7, 64 bit. Some have reported trouble using libusb0-based KISS on Windows 7 32 bit. These people report that my WinUSB branch does work fine on Windows 7, 32 bit (with WinUSB installed as the driver). This problem on 32 bit Vista and 32 bit Windows 7 has recently (approx 15 Jan 2010) traced to a problem in HPSDR_USB_LIB_V1.dll by Bill Tracey (KD5TFD), who has fixed this problem! He has mentioned this on the reflector (hpsdr mailing list), and has posted a fixed library. Phil is testing and updating his development branch to include this fixed file. Those of you using Vista 32 bit and Windows 7 32 bit may well wish to use that version and not my WinUSB version! That way, you can use both PowerSDR and KISS, and optionally use CWSkimmer and other similar applications.<br />
<br />
Is there anything that WinUSB can do that libusb0 cannot do, other than work on a 64 bit machine? It seems that, yes, there is at least one advantage to WinUSB. WinUSB is able to detect an Ozy or Hermes board that is plugged in or powered on AFTER KISS has been launched. Libusb0 required that Ozy be plugged in and powered on BEFORE launching/running KISS (or PowerSDR). So this is an advantage<br />
<br />
The first thing that you will need is the WinUSB driver package from Alberto, I2PHD, from www.weaksignals.com. [http://www.weaksignals.com Alberto I2PHD's WinRad site] Go to his website and download his WinRad package, which will give you his WinUSB driver installer. Using this installer should let you install WinUSB as the driver for your hardware on Windows XP, Vista and Windows 7, whether you have a 32 bit OS, or Intel/AMD 64 bit OS (x86 architecture) or Intel Itanium IA64 64 bit OS versions of windows installed.<br />
<br />
You will also be able to use WinRad, until Bill KD5TFD ports PowerSDR to WinUSB.<br />
<br />
Alberto has some very good notes on installing the driver, or replacing libusb0 with WinUSB, as part of his package. I suggest that you read his notes and follow his directions. I think that you have to install WinUSB twice for Ozy, once when Ozy contains no programming, and once when Ozy has has its firmware downloaded. You can also find these drivers, newly fixed so that 64 bit Intel/AMD x86 OS install works, in the WinUSBDrivers folder under my SVN archive listed below. You will still want Alberto's instructions...<br />
<br />
There were errors in the 64 bit installers, due to an error Microsoft had in their 'Using WinUSB' document. I consulted with Microsoft, who made me aware of the errors. I communicated these facts to Alberto I2PHD and Phil N8VB, who are updating their .inf files to fix the 64 bit x86 architecture processor installations correspondingly. Some teamwork and mutual communications was involved. Everyone has a better result due to the work that was done co-operatively.<br />
<br />
Other interesting projects and info on WinUSB include:<br />
<br />
:1) The SourceForge (www.sourceforge.net) project called LibUsbDotNet. You can download both source and binary. This is a project that allows .Net code to use either libusb0 or WinUSB, without the application program having to know which driver is installed for the hardware. This is not yet being used by KISS or HPSDR, but does hold some promise on Windows for this option. Using LibUsbDotNet would allow a single version of KISS, for example, to exist that would work with either libusb0 or WinUSB.<br />
<br />
:2) the website http://www.lvr.com/winusb.htm, which contains information on WinUSB, USB in general, sample code, much other information and sample code on things like Serial Ports, Parallel Ports, ethernet, and more. Its maintainer, Jan Axelson, has also written a number of books on these topics. I found his winusb_cs to be very helpful to study in porting KISS and its support programs from libusb0 to WinUSB. [http://www.lvr.com/winusb.htm Jan Axelson's website]<br />
<br />
What has been ported from libusb0 to WinUSB?<br />
:1) Phil Harman VK6APH's project KISS Console<br />
:2) supporting programs like loadfw.exe, loadfpga.exe and writei2c.exe<br />
:3) there is also a Visual Studio 2008 project called WinUSBAPI that is Alberto's Borland C++ Builder code ported to VS2008 C++. It doesn't yet have all the methods that the C# project WinUSBManaged that I wrote does. Hopefully, I'll find the time to back-port those methods from WinUSBManaged to WinUSBApi.<br />
<br />
The purpose of the 'supporting programs' (which also use winusbmanaged.dll) is to replace the current versions that use libusb0. With these, you can update the versions in your usbblaster-binaries folder so that you can still update the firmware in Penelope, Mercury and other boards. You may have multiple places where these are needed. Up-to-date copies are in my "KISS Console\bin\release" and "Kiss Console\bin\debug" folders, so that initozy11.bat that is in those folders will continue to work.<br />
<br />
Where can I find this new code that uses WinUSB?<br />
Try this svn path (K9TRV's KISS Branch): <br />
<br />
svn://206.216.146.154/svn/repos_hpsdr_kiss/branches/K9TRV<br />
<br />
== '''So, you're going to be running or recompiling the KISS code on a 64 bit machine?''' ==<br />
<br />
<br />
If so, then you'll need to check the 'fftw' subfolder in my branch for the 64 bit dll. I've provided the installers for the 32 bit and 64 bit fftw dlls, from the http://www.fftw.org/ website. Please either install the 64 bit package and replace all versions of the 32 bit dll with the dll it installs. Much easier is to copy and rename the libfftw3f64.dll to libfftw3f.dll, especially in the bin\release and bin\debug folders of my version of the KISS Console project. I've already placed libfftw3f64.dll in those directories for your convenience. Replacing the current libfftw3f.dll is then all you need to do. I suggest that you rename the current libfftw3f.dll file (to anything else...), then copy libfftw3f64.dll and rename the copy to libfftw3f.dll. Thanks to Dr. Hermann von Hasseln, DL3HVH, for this information!<br />
<br />
The alternative to this renaming is to rebuild SharpDSP, but ONLY after editing its file DSPBuffer.cs to change the line containing library_name = "libfftw3f.dll" to library_name = "libfftw3f64.dll".<br />
<br />
The issue here is that both KISS and Sharp_DSP are built with the 'mixed cpu' setting (see Configuration Manager), and thus when run on a 64 bit system, 64 bit code is generated (at run time! you don't even need to recompile! That's how .NET framework programs work...), and all DLLs that are called MUST BE 64 bit dlls. If you will tolerate 32 bit code on your 64 bit system, you can use the Configuration Manager and change the cpu type for BOTH KISS and Sharp_DSP to 'x86'. This will cause only 32 bit code to be generated. This will allow the 32 bit versions of FFTW as well as libusb0 to be used...<br />
<br />
So I cannot test the above, as I don't have a 64 bit OS installed to check it on. You can also find processor selection on the Build page of a project's properties. Double-click on Properties in the Kiss Konsole project in the solution explorer pane. This will bring up some tabbed dialogs in the main window. Select the 'build' tab. Note the combo-box to the right of the text saying 'Platform target'. This will by default be set to 'Any CPU'. You could choose to set it to 'x86' to force 32 bit code to be generated. Selecting 'x64' would force 64 bit code to be generated, which wouldn't work on 32 bit OS installations, and would require all 64 bit dlls be available (libusb0, probably and libfftw3f for 64 bit for sure!). I'd be willing to be that no one has an Itanium CPU, so please don't select that one...</div>K9TRVhttps://openhpsdr.org/wiki/index.php?title=WinUSB_Notes&diff=2891WinUSB Notes2010-01-18T16:49:13Z<p>K9TRV: /* So, you're going to be running or recompiling the KISS code on a 64 bit machine? */</p>
<hr />
<div><br />
== WinUSB Notes ==<br />
<br />
This page contains information on using WinUSB with HPSDR hardware.<br />
<br />
First, let's all be clear that WinUSB used as a driver replaces libusb0 used as a driver for some particular device, like the Ozy board. If you install WinUSB as the driver for Ozy, libusb0 is no longer the driver. So applications that use libusb0 (like PowerSDR, until Bill Tracey KD5TFD finished porting PowerSDR to WinUSB, or like CWSkimmer, which seems to use libusb0 to speak to Ozy) are not able to coexist with my branch of KISS. My branch of KISS uses WinUSB.<br />
<br />
So it's an either/or proposition. If you need libusb0, and can install libusb0 as the driver, and can run PowerSDR, you want to use Phil VK6APH's branch of KISS. His branch is the 'original', and is considered to be the main development branch. I try to keep step with his branch, and feed common bugs and hopefully their solutions back to him. I'm keeping step best as I can with Phil's development work using the Hermes board, as well.<br />
<br />
It seems that WinUSB is needed to use KISS (thus my branch is needed...) on Windows 64 bit OS versions, such as Vista 64 bit and Windows 7, 64 bit. Some have reported trouble using libusb0-based KISS on Windows 7 32 bit. These people report that my WinUSB branch does work fine on Windows 7, 32 bit (with WinUSB installed as the driver). This problem on 32 bit Vista and 32 bit Windows 7 has recently (approx 15 Jan 2010) traced to a problem in HPSDR_USB_LIB_V1.dll by Bill Tracey (KD5TFD), who has fixed this problem! He has mentioned this on the reflector (hpsdr mailing list), and has posted a fixed library. Phil is testing and updating his development branch to include this fixed file. Those of you using Vista 32 bit and Windows 7 32 bit may well wish to use that version and not my WinUSB version! That way, you can use both PowerSDR and KISS, and optionally use CWSkimmer and other similar applications.<br />
<br />
Is there anything that WinUSB can do that libusb0 cannot do, other than work on a 64 bit machine? It seems that, yes, there is at least one advantage to WinUSB. WinUSB is able to detect an Ozy or Hermes board that is plugged in or powered on AFTER KISS has been launched. Libusb0 required that Ozy be plugged in and powered on BEFORE launching/running KISS (or PowerSDR). So this is an advantage<br />
<br />
The first thing that you will need is the WinUSB driver package from Alberto, I2PHD, from www.weaksignals.com. [http://www.weaksignals.com Alberto I2PHD's WinRad site] Go to his website and download his WinRad package, which will give you his WinUSB driver installer. Using this installer should let you install WinUSB as the driver for your hardware on Windows XP, Vista and Windows 7, whether you have a 32 bit OS, or Intel/AMD 64 bit OS (x86 architecture) or Intel Itanium IA64 64 bit OS versions of windows installed.<br />
<br />
You will also be able to use WinRad, until Bill KD5TFD ports PowerSDR to WinUSB.<br />
<br />
Alberto has some very good notes on installing the driver, or replacing libusb0 with WinUSB, as part of his package. I suggest that you read his notes and follow his directions. I think that you have to install WinUSB twice for Ozy, once when Ozy contains no programming, and once when Ozy has has its firmware downloaded. You can also find these drivers, newly fixed so that 64 bit Intel/AMD x86 OS install works, in the WinUSBDrivers folder under my SVN archive listed below. You will still want Alberto's instructions...<br />
<br />
There were errors in the 64 bit installers, due to an error Microsoft had in their 'Using WinUSB' document. I consulted with Microsoft, who made me aware of the errors. I communicated these facts to Alberto I2PHD and Phil N8VB, who are updating their .inf files to fix the 64 bit x86 architecture processor installations correspondingly. Some teamwork and mutual communications was involved. Everyone has a better result due to the work that was done co-operatively.<br />
<br />
Other interesting projects and info on WinUSB include:<br />
<br />
:1) The SourceForge (www.sourceforge.net) project called LibUsbDotNet. You can download both source and binary. This is a project that allows .Net code to use either libusb0 or WinUSB, without the application program having to know which driver is installed for the hardware. This is not yet being used by KISS or HPSDR, but does hold some promise on Windows for this option. Using LibUsbDotNet would allow a single version of KISS, for example, to exist that would work with either libusb0 or WinUSB.<br />
<br />
:2) the website http://www.lvr.com/winusb.htm, which contains information on WinUSB, USB in general, sample code, much other information and sample code on things like Serial Ports, Parallel Ports, ethernet, and more. Its maintainer, Jan Axelson, has also written a number of books on these topics. I found his winusb_cs to be very helpful to study in porting KISS and its support programs from libusb0 to WinUSB. [http://www.lvr.com/winusb.htm Jan Axelson's website]<br />
<br />
What has been ported from libusb0 to WinUSB?<br />
:1) Phil Harman VK6APH's project KISS Console<br />
:2) supporting programs like loadfw.exe, loadfpga.exe and writei2c.exe<br />
:3) there is also a Visual Studio 2008 project called WinUSBAPI that is Alberto's Borland C++ Builder code ported to VS2008 C++. It doesn't yet have all the methods that the C# project WinUSBManaged that I wrote does. Hopefully, I'll find the time to back-port those methods from WinUSBManaged to WinUSBApi.<br />
<br />
The purpose of the 'supporting programs' (which also use winusbmanaged.dll) is to replace the current versions that use libusb0. With these, you can update the versions in your usbblaster-binaries folder so that you can still update the firmware in Penelope, Mercury and other boards. You may have multiple places where these are needed. Up-to-date copies are in my "KISS Console\bin\release" and "Kiss Console\bin\debug" folders, so that initozy11.bat that is in those folders will continue to work.<br />
<br />
Where can I find this new code that uses WinUSB?<br />
Try this svn path (K9TRV's KISS Branch): <br />
<br />
svn://206.216.146.154/svn/repos_hpsdr_kiss/branches/K9TRV<br />
<br />
== '''So, you're going to be running or recompiling the KISS code on a 64 bit machine?''' ==<br />
<br />
<br />
If so, then you'll need to check the 'fftw' subfolder in my branch for the 64 bit dll. I've provided the installers for the 32 bit and 64 bit fftw dlls, from the http://www.fftw.org/ website. Please either install the 64 bit package and replace all versions of the 32 bit dll with the dll it installs. Much easier is to copy and rename the libfftw3f64.dll to libfftw3f.dll, especially in the bin\release and bin\debug folders of my version of the KISS Console project. I've already placed libfftw3f64.dll in those directories for your convenience. Replacing the current libfftw3f.dll is then all you need to do. I suggest that you rename the current libfftw3f.dll file (to anything else...), then copy libfftw3f64.dll and rename the copy to libfftw3f.dll. Thanks to Dr. Hermann von Hasseln, DL3HVH, for this information!<br />
<br />
The alternative to this renaming is to rebuild SharpDSP, but ONLY after editing its file DSPBuffer.cs to change the line containing library_name = "libfftw3f.dll" to library_name = "libfftw3f64.dll".<br />
<br />
The issue here is that both KISS and Sharp_DSP are built with the 'mixed cpu' setting (see Configuration Manager), and thus when run on a 64 bit system, 64 bit code is generated (at run time! you don't even need to recompile! That's how .NET framework programs work...), and all DLLs that are called MUST BE 64 bit dlls. If you will tolerate 32 bit code on your 64 bit system, you can use the Configuration Manager and change the cpu type for BOTH KISS and Sharp_DSP to 'x86'. This will cause only 32 bit code to be generated. This will allow the 32 bit versions of FFTW as well as libusb0 to be used...</div>K9TRVhttps://openhpsdr.org/wiki/index.php?title=WinUSB_Notes&diff=2890WinUSB Notes2010-01-18T16:41:27Z<p>K9TRV: /* WinUSB Notes */</p>
<hr />
<div><br />
== WinUSB Notes ==<br />
<br />
This page contains information on using WinUSB with HPSDR hardware.<br />
<br />
First, let's all be clear that WinUSB used as a driver replaces libusb0 used as a driver for some particular device, like the Ozy board. If you install WinUSB as the driver for Ozy, libusb0 is no longer the driver. So applications that use libusb0 (like PowerSDR, until Bill Tracey KD5TFD finished porting PowerSDR to WinUSB, or like CWSkimmer, which seems to use libusb0 to speak to Ozy) are not able to coexist with my branch of KISS. My branch of KISS uses WinUSB.<br />
<br />
So it's an either/or proposition. If you need libusb0, and can install libusb0 as the driver, and can run PowerSDR, you want to use Phil VK6APH's branch of KISS. His branch is the 'original', and is considered to be the main development branch. I try to keep step with his branch, and feed common bugs and hopefully their solutions back to him. I'm keeping step best as I can with Phil's development work using the Hermes board, as well.<br />
<br />
It seems that WinUSB is needed to use KISS (thus my branch is needed...) on Windows 64 bit OS versions, such as Vista 64 bit and Windows 7, 64 bit. Some have reported trouble using libusb0-based KISS on Windows 7 32 bit. These people report that my WinUSB branch does work fine on Windows 7, 32 bit (with WinUSB installed as the driver). This problem on 32 bit Vista and 32 bit Windows 7 has recently (approx 15 Jan 2010) traced to a problem in HPSDR_USB_LIB_V1.dll by Bill Tracey (KD5TFD), who has fixed this problem! He has mentioned this on the reflector (hpsdr mailing list), and has posted a fixed library. Phil is testing and updating his development branch to include this fixed file. Those of you using Vista 32 bit and Windows 7 32 bit may well wish to use that version and not my WinUSB version! That way, you can use both PowerSDR and KISS, and optionally use CWSkimmer and other similar applications.<br />
<br />
Is there anything that WinUSB can do that libusb0 cannot do, other than work on a 64 bit machine? It seems that, yes, there is at least one advantage to WinUSB. WinUSB is able to detect an Ozy or Hermes board that is plugged in or powered on AFTER KISS has been launched. Libusb0 required that Ozy be plugged in and powered on BEFORE launching/running KISS (or PowerSDR). So this is an advantage<br />
<br />
The first thing that you will need is the WinUSB driver package from Alberto, I2PHD, from www.weaksignals.com. [http://www.weaksignals.com Alberto I2PHD's WinRad site] Go to his website and download his WinRad package, which will give you his WinUSB driver installer. Using this installer should let you install WinUSB as the driver for your hardware on Windows XP, Vista and Windows 7, whether you have a 32 bit OS, or Intel/AMD 64 bit OS (x86 architecture) or Intel Itanium IA64 64 bit OS versions of windows installed.<br />
<br />
You will also be able to use WinRad, until Bill KD5TFD ports PowerSDR to WinUSB.<br />
<br />
Alberto has some very good notes on installing the driver, or replacing libusb0 with WinUSB, as part of his package. I suggest that you read his notes and follow his directions. I think that you have to install WinUSB twice for Ozy, once when Ozy contains no programming, and once when Ozy has has its firmware downloaded. You can also find these drivers, newly fixed so that 64 bit Intel/AMD x86 OS install works, in the WinUSBDrivers folder under my SVN archive listed below. You will still want Alberto's instructions...<br />
<br />
There were errors in the 64 bit installers, due to an error Microsoft had in their 'Using WinUSB' document. I consulted with Microsoft, who made me aware of the errors. I communicated these facts to Alberto I2PHD and Phil N8VB, who are updating their .inf files to fix the 64 bit x86 architecture processor installations correspondingly. Some teamwork and mutual communications was involved. Everyone has a better result due to the work that was done co-operatively.<br />
<br />
Other interesting projects and info on WinUSB include:<br />
<br />
:1) The SourceForge (www.sourceforge.net) project called LibUsbDotNet. You can download both source and binary. This is a project that allows .Net code to use either libusb0 or WinUSB, without the application program having to know which driver is installed for the hardware. This is not yet being used by KISS or HPSDR, but does hold some promise on Windows for this option. Using LibUsbDotNet would allow a single version of KISS, for example, to exist that would work with either libusb0 or WinUSB.<br />
<br />
:2) the website http://www.lvr.com/winusb.htm, which contains information on WinUSB, USB in general, sample code, much other information and sample code on things like Serial Ports, Parallel Ports, ethernet, and more. Its maintainer, Jan Axelson, has also written a number of books on these topics. I found his winusb_cs to be very helpful to study in porting KISS and its support programs from libusb0 to WinUSB. [http://www.lvr.com/winusb.htm Jan Axelson's website]<br />
<br />
What has been ported from libusb0 to WinUSB?<br />
:1) Phil Harman VK6APH's project KISS Console<br />
:2) supporting programs like loadfw.exe, loadfpga.exe and writei2c.exe<br />
:3) there is also a Visual Studio 2008 project called WinUSBAPI that is Alberto's Borland C++ Builder code ported to VS2008 C++. It doesn't yet have all the methods that the C# project WinUSBManaged that I wrote does. Hopefully, I'll find the time to back-port those methods from WinUSBManaged to WinUSBApi.<br />
<br />
The purpose of the 'supporting programs' (which also use winusbmanaged.dll) is to replace the current versions that use libusb0. With these, you can update the versions in your usbblaster-binaries folder so that you can still update the firmware in Penelope, Mercury and other boards. You may have multiple places where these are needed. Up-to-date copies are in my "KISS Console\bin\release" and "Kiss Console\bin\debug" folders, so that initozy11.bat that is in those folders will continue to work.<br />
<br />
Where can I find this new code that uses WinUSB?<br />
Try this svn path (K9TRV's KISS Branch): <br />
<br />
svn://206.216.146.154/svn/repos_hpsdr_kiss/branches/K9TRV<br />
<br />
== '''So, you're going to be running or recompiling the KISS code on a 64 bit machine?''' ==<br />
<br />
<br />
If so, then you'll need to check the 'fftw' subfolder in my branch for the 64 bit dll. I've provided the installers for the 32 bit and 64 bit fftw dlls, from the http://www.fftw.org/ website. Please either install the 64 bit package and replace all versions of the 32 bit dll with the dll it installs. Much easier is to copy and rename the libfftw3f64.dll to libfftw3f.dll, especially in the bin\release and bin\debug folders of my version of the KISS Console project. I've already placed libfftw3f64.dll in those directories for your convenience. Replacing the current libfftw3f.dll is then all you need to do. I suggest that you rename the current libfftw3f.dll file (to anything else...), then copy libfftw3f64.dll and rename the copy to libfftw3f.dll. Thanks to Dr. Hermann von Hasseln, DL3HVH, for this information!</div>K9TRVhttps://openhpsdr.org/wiki/index.php?title=WinUSB_Notes&diff=2885WinUSB Notes2010-01-05T14:15:51Z<p>K9TRV: /* WinUSB Notes */</p>
<hr />
<div><br />
== WinUSB Notes ==<br />
<br />
This page contains information on using WinUSB with HPSDR hardware.<br />
<br />
First, let's all be clear that WinUSB used as a driver replaces libusb0 used as a driver for some particular device, like the Ozy board. If you install WinUSB as the driver for Ozy, libusb0 is no longer the driver. So applications that use libusb0 (like PowerSDR, until Bill Tracey KD5TFD finished porting PowerSDR to WinUSB, or like CWSkimmer, which seems to use libusb0 to speak to Ozy) are not able to coexist with my branch of KISS. My branch of KISS uses WinUSB.<br />
<br />
So it's an either/or proposition. If you need libusb0, and can install libusb0 as the driver, and can run PowerSDR, you want to use Phil VK6APH's branch of KISS. His branch is the 'original', and is considered to be the main development branch. I try to keep step with his branch, and feed common bugs and hopefully their solutions back to him. I'm keeping step best as I can with Phil's development work using the Hermes board, as well.<br />
<br />
It seems that WinUSB is needed to use KISS (thus my branch is needed...) on Windows 64 bit OS versions, such as Vista 64 bit and Windows 7, 64 bit. Some have reported trouble using libusb0-based KISS on Windows 7 32 bit. These people report that my WinUSB branch does work fine on Windows 7, 32 bit (with WinUSB installed as the driver). I'm not sure what the problem is, as I've used libusb0, KISS (Phil's branch) and PowerSDR on Windows 7 32 bit.<br />
<br />
Is there anything that WinUSB can do that libusb0 cannot do, other than work on a 64 bit machine? It seems that, yes, there is at least one advantage to WinUSB. WinUSB is able to detect an Ozy or Hermes board that is plugged in or powered on AFTER KISS has been launched. Libusb0 required that Ozy be plugged in and powered on BEFORE launching/running KISS (or PowerSDR). So this is an advantage<br />
<br />
The first thing that you will need is the WinUSB driver package from Alberto, I2PHD, from www.weaksignals.com. [http://www.weaksignals.com Alberto I2PHD's WinRad site] Go to his website and download his WinRad package, which will give you his WinUSB driver installer. Using this installer should let you install WinUSB as the driver for your hardware on Windows XP, Vista and Windows 7, whether you have a 32 bit OS, or Intel/AMD 64 bit OS (x86 architecture) or Intel Itanium IA64 64 bit OS versions of windows installed.<br />
<br />
You will also be able to use WinRad, until Bill KD5TFD ports PowerSDR to WinUSB.<br />
<br />
Alberto has some very good notes on installing the driver, or replacing libusb0 with WinUSB, as part of his package. I suggest that you read his notes and follow his directions. I think that you have to install WinUSB twice for Ozy, once when Ozy contains no programming, and once when Ozy has has its firmware downloaded. You can also find these drivers, newly fixed so that 64 bit Intel/AMD x86 OS install works, in the WinUSBDrivers folder under my SVN archive listed below. You will still want Alberto's instructions...<br />
<br />
There were errors in the 64 bit installers, due to an error Microsoft had in their 'Using WinUSB' document. I consulted with Microsoft, who made me aware of the errors. I communicated these facts to Alberto I2PHD and Phil N8VB, who are updating their .inf files to fix the 64 bit x86 architecture processor installations correspondingly. Some teamwork and mutual communications was involved. Everyone has a better result due to the work that was done co-operatively.<br />
<br />
Other interesting projects and info on WinUSB include:<br />
<br />
:1) The SourceForge (www.sourceforge.net) project called LibUsbDotNet. You can download both source and binary. This is a project that allows .Net code to use either libusb0 or WinUSB, without the application program having to know which driver is installed for the hardware. This is not yet being used by KISS or HPSDR, but does hold some promise on Windows for this option. Using LibUsbDotNet would allow a single version of KISS, for example, to exist that would work with either libusb0 or WinUSB.<br />
<br />
:2) the website http://www.lvr.com/winusb.htm, which contains information on WinUSB, USB in general, sample code, much other information and sample code on things like Serial Ports, Parallel Ports, ethernet, and more. Its maintainer, Jan Axelson, has also written a number of books on these topics. I found his winusb_cs to be very helpful to study in porting KISS and its support programs from libusb0 to WinUSB. [http://www.lvr.com/winusb.htm Jan Axelson's website]<br />
<br />
What has been ported from libusb0 to WinUSB?<br />
:1) Phil Harman VK6APH's project KISS Console<br />
:2) supporting programs like loadfw.exe, loadfpga.exe and writei2c.exe<br />
:3) there is also a Visual Studio 2008 project called WinUSBAPI that is Alberto's Borland C++ Builder code ported to VS2008 C++. It doesn't yet have all the methods that the C# project WinUSBManaged that I wrote does. Hopefully, I'll find the time to back-port those methods from WinUSBManaged to WinUSBApi.<br />
<br />
The purpose of the 'supporting programs' (which also use winusbmanaged.dll) is to replace the current versions that use libusb0. With these, you can update the versions in your usbblaster-binaries folder so that you can still update the firmware in Penelope, Mercury and other boards. You may have multiple places where these are needed. Up-to-date copies are in my "KISS Console\bin\release" and "Kiss Console\bin\debug" folders, so that initozy11.bat that is in those folders will continue to work.<br />
<br />
Where can I find this new code that uses WinUSB?<br />
Try this svn path (K9TRV's KISS Branch): <br />
<br />
svn://206.216.146.154/svn/repos_hpsdr_kiss/branches/K9TRV<br />
<br />
<br />
<br />
== '''So, you're going to be running or recompiling the KISS code on a 64 bit machine?''' ==<br />
<br />
<br />
If so, then you'll need to check the 'fftw' subfolder in my branch for the 64 bit dll. I've provided the installers for the 32 bit and 64 bit fftw dlls, from the http://www.fftw.org/ website. Please either install the 64 bit package and replace all versions of the 32 bit dll with the dll it installs. Much easier is to copy and rename the libfftw3f64.dll to libfftw3f.dll, especially in the bin\release and bin\debug folders of my version of the KISS Console project. I've already placed libfftw3f64.dll in those directories for your convenience. Replacing the current libfftw3f.dll is then all you need to do. I suggest that you rename the current libfftw3f.dll file (to anything else...), then copy libfftw3f64.dll and rename the copy to libfftw3f.dll. Thanks to Dr. Hermann von Hasseln, DL3HVH, for this information!</div>K9TRVhttps://openhpsdr.org/wiki/index.php?title=WinUSB_Notes&diff=2881WinUSB Notes2010-01-02T22:38:06Z<p>K9TRV: /* WinUSB Notes */</p>
<hr />
<div><br />
== WinUSB Notes ==<br />
<br />
This page contains information on using WinUSB with HPSDR hardware.<br />
<br />
First, let's all be clear that WinUSB used as a driver replaces libusb0 used as a driver for some particular device, like the Ozy board. If you install WinUSB as the driver for Ozy, libusb0 is no longer the driver. So applications that use libusb0 (like PowerSDR, until Bill Tracey KD5TFD finished porting PowerSDR to WinUSB, or like CWSkimmer, which seems to use libusb0 to speak to Ozy) are not able to coexist with my branch of KISS. My branch of KISS uses WinUSB.<br />
<br />
So it's an either/or proposition. If you need libusb0, and can install libusb0 as the driver, and can run PowerSDR, you want to use Phil VK6APH's branch of KISS. His branch is the 'original', and is considered to be the main development branch. I try to keep step with his branch, and feed common bugs and hopefully their solutions back to him. I'm keeping step best as I can with Phil's development work using the Hermes board, as well.<br />
<br />
It seems that WinUSB is needed to use KISS (thus my branch is needed...) on Windows 64 bit OS versions, such as Vista 64 bit and Windows 7, 64 bit. Some have reported trouble using libusb0-based KISS on Windows 7 32 bit. These people report that my WinUSB branch does work fine on Windows 7, 32 bit (with WinUSB installed as the driver). I'm not sure what the problem is, as I've used libusb0, KISS (Phil's branch) and PowerSDR on Windows 7 32 bit.<br />
<br />
The first thing that you will need is the WinUSB driver package from Alberto, I2PHD, from www.weaksignals.com. [http://www.weaksignals.com Alberto I2PHD's WinRad site] Go to his website and download his WinRad package, which will give you his WinUSB driver installer. Using this installer should let you install WinUSB as the driver for your hardware on Windows XP, Vista and Windows 7, whether you have a 32 bit OS, or Intel/AMD 64 bit OS (x86 architecture) or Intel Itanium IA64 64 bit OS versions of windows installed.<br />
<br />
You will also be able to use WinRad, until Bill KD5TFD ports PowerSDR to WinUSB.<br />
<br />
Alberto has some very good notes on installing the driver, or replacing libusb0 with WinUSB, as part of his package. I suggest that you read his notes and follow his directions. I think that you have to install WinUSB twice for Ozy, once when Ozy contains no programming, and once when Ozy has has its firmware downloaded. You can also find these drivers, newly fixed so that 64 bit Intel/AMD x86 OS install works, in the WinUSBDrivers folder under my SVN archive listed below. You will still want Alberto's instructions...<br />
<br />
There were errors in the 64 bit installers, due to an error Microsoft had in their 'Using WinUSB' document. I consulted with Microsoft, who made me aware of the errors. I communicated these facts to Alberto I2PHD and Phil N8VB, who are updating their .inf files to fix the 64 bit x86 architecture processor installations correspondingly. Some teamwork and mutual communications was involved. Everyone has a better result due to the work that was done co-operatively.<br />
<br />
Other interesting projects and info on WinUSB include:<br />
<br />
:1) The SourceForge (www.sourceforge.net) project called LibUsbDotNet. You can download both source and binary. This is a project that allows .Net code to use either libusb0 or WinUSB, without the application program having to know which driver is installed for the hardware. This is not yet being used by KISS or HPSDR, but does hold some promise on Windows for this option. Using LibUsbDotNet would allow a single version of KISS, for example, to exist that would work with either libusb0 or WinUSB.<br />
<br />
:2) the website http://www.lvr.com/winusb.htm, which contains information on WinUSB, USB in general, sample code, much other information and sample code on things like Serial Ports, Parallel Ports, ethernet, and more. Its maintainer, Jan Axelson, has also written a number of books on these topics. I found his winusb_cs to be very helpful to study in porting KISS and its support programs from libusb0 to WinUSB. [http://www.lvr.com/winusb.htm Jan Axelson's website]<br />
<br />
What has been ported from libusb0 to WinUSB?<br />
:1) Phil Harman VK6APH's project KISS Console<br />
:2) supporting programs like loadfw.exe, loadfpga.exe and writei2c.exe<br />
:3) there is also a Visual Studio 2008 project called WinUSBAPI that is Alberto's Borland C++ Builder code ported to VS2008 C++. It doesn't yet have all the methods that the C# project WinUSBManaged that I wrote does. Hopefully, I'll find the time to back-port those methods from WinUSBManaged to WinUSBApi.<br />
<br />
The purpose of the 'supporting programs' (which also use winusbmanaged.dll) is to replace the current versions that use libusb0. With these, you can update the versions in your usbblaster-binaries folder so that you can still update the firmware in Penelope, Mercury and other boards. You may have multiple places where these are needed. Up-to-date copies are in my "KISS Console\bin\release" and "Kiss Console\bin\debug" folders, so that initozy11.bat that is in those folders will continue to work.<br />
<br />
Where can I find this new code that uses WinUSB?<br />
Try this svn path (K9TRV's KISS Branch): <br />
<br />
svn://206.216.146.154/svn/repos_hpsdr_kiss/branches/K9TRV<br />
<br />
<br />
So, you're going to be running or recompiling the KISS code on a 64 bit machine?<br />
<br />
If so, then you'll need to check the 'fftw' subfolder in my branch for the 64 bit dll. I've provided the installers for the 32 bit and 64 bit fftw dlls, from the http://www.fftw.org/ website. Please either install the 64 bit package and replace all versions of the 32 bit dll with the dll it installs, or copy and rename the libfftw3f64.dll to libfftw3f.dll, especially in the bin\release and bin\debug folders of my version of the KISS Console project. Thanks to Dr. Hermann von Hasseln, DL3HVH, for this information!</div>K9TRVhttps://openhpsdr.org/wiki/index.php?title=WinUSB_Notes&diff=2880WinUSB Notes2010-01-02T22:34:17Z<p>K9TRV: /* WinUSB Notes */</p>
<hr />
<div><br />
== WinUSB Notes ==<br />
<br />
This page contains information on using WinUSB with HPSDR hardware.<br />
<br />
First, let's all be clear that WinUSB used as a driver replaces libusb0 used as a driver for some particular device, like the Ozy board. If you install WinUSB as the driver for Ozy, libusb0 is no longer the driver. So applications that use libusb0 (like PowerSDR, until Bill Tracey KD5TFD finished porting PowerSDR to WinUSB, or like CWSkimmer, which seems to use libusb0 to speak to Ozy) are not able to coexist with my branch of KISS. My branch of KISS uses WinUSB.<br />
<br />
So it's an either/or proposition. If you need libusb0, and can install libusb0 as the driver, and can run PowerSDR, you want to use Phil VK6APH's branch of KISS. His branch is the 'original', and is considered to be the main development branch. I try to keep step with his branch, and feed common bugs and hopefully their solutions back to him. I'm keeping step best as I can with Phil's development work using the Hermes board, as well.<br />
<br />
It seems that WinUSB is needed to use KISS (thus my branch is needed...) on Windows 64 bit OS versions, such as Vista 64 bit and Windows 7, 64 bit. Some have reported trouble using libusb0-based KISS on Windows 7 32 bit. These people report that my WinUSB branch does work fine on Windows 7, 32 bit (with WinUSB installed as the driver). I'm not sure what the problem is, as I've used libusb0, KISS (Phil's branch) and PowerSDR on Windows 7 32 bit.<br />
<br />
The first thing that you will need is the WinUSB driver package from Alberto, I2PHD, from www.weaksignals.com. [http://www.weaksignals.com Alberto I2PHD's WinRad site] Go to his website and download his WinRad package, which will give you his WinUSB driver installer. Using this installer should let you install WinUSB as the driver for your hardware on Windows XP, Vista and Windows 7, whether you have a 32 bit OS, or Intel/AMD 64 bit OS (x86 architecture) or Intel Itanium IA64 64 bit OS versions of windows installed.<br />
<br />
You will also be able to use WinRad, until Bill KD5TFD ports PowerSDR to WinUSB.<br />
<br />
Alberto has some very good notes on installing the driver, or replacing libusb0 with WinUSB, as part of his package. I suggest that you read his notes and follow his directions. I think that you have to install WinUSB twice for Ozy, once when Ozy contains no programming, and once when Ozy has has its firmware downloaded. You can also find these drivers, newly fixed so that 64 bit Intel/AMD x86 OS install works, in the WinUSBDrivers folder under my SVN archive listed below. You will still want Alberto's instructions...<br />
<br />
There were errors in the 64 bit installers, due to an error Microsoft had in their 'Using WinUSB' document. I consulted with Microsoft, who made me aware of the errors. I communicated these facts to Alberto I2PHD and Phil N8VB, who are updating their .inf files to fix the 64 bit x86 architecture processor installations correspondingly. Some teamwork and mutual communications was involved. Everyone has a better result due to the work that was done co-operatively.<br />
<br />
Other interesting projects and info on WinUSB include:<br />
<br />
:1) The SourceForge (www.sourceforge.net) project called LibUsbDotNet. You can download both source and binary. This is a project that allows .Net code to use either libusb0 or WinUSB, without the application program having to know which driver is installed for the hardware. This is not yet being used by KISS or HPSDR, but does hold some promise on Windows for this option. Using LibUsbDotNet would allow a single version of KISS, for example, to exist that would work with either libusb0 or WinUSB.<br />
<br />
:2) the website http://www.lvr.com/winusb.htm, which contains information on WinUSB, USB in general, sample code, much other information and sample code on things like Serial Ports, Parallel Ports, ethernet, and more. Its maintainer, Jan Axelson, has also written a number of books on these topics. I found his winusb_cs to be very helpful to study in porting KISS and its support programs from libusb0 to WinUSB. [http://www.lvr.com/winusb.htm Jan Axelson's website]<br />
<br />
What has been ported from libusb0 to WinUSB?<br />
:1) Phil Harman VK6APH's project KISS Console<br />
:2) supporting programs like loadfw.exe, loadfpga.exe and writei2c.exe<br />
:3) there is also a Visual Studio 2008 project called WinUSBAPI that is Alberto's Borland C++ Builder code ported to VS2008 C++. It doesn't yet have all the methods that the C# project WinUSBManaged that I wrote does. Hopefully, I'll find the time to back-port those methods from WinUSBManaged to WinUSBApi.<br />
<br />
The purpose of the 'supporting programs' (which also use winusbmanaged.dll) is to replace the current versions that use libusb0. With these, you can update the versions in your usbblaster-binaries folder so that you can still update the firmware in Penelope, Mercury and other boards. You may have multiple places where these are needed. Up-to-date copies are in my "KISS Console\bin\release" and "Kiss Console\bin\debug" folders, so that initozy11.bat that is in those folders will continue to work.<br />
<br />
Where can I find this new code that uses WinUSB?<br />
Try this svn path (K9TRV's KISS Branch): <br />
<br />
svn://206.216.146.154/svn/repos_hpsdr_kiss/branches/K9TRV<br />
<br />
<br />
So, you're going to be recompiling the KISS code on a 64 bit machine?<br />
<br />
If so, then you'll need to check the 'fftw' subfolder in my branch for the 64 bit dll. I've provided the installers for the 32 bit and 64 bit fftw dlls, from the http://www.fftw.org/ website. Please either install the 64 bit package and replace all versions of the 32 bit dll with the dll it installs, or copy and rename the libfftw3f64.dll to libfftw3f.dll, especially in the bin\release and bin\debug folders of my version of the KISS Console project. Thanks to Dr. Hermann von Hasseln, DL3HVH, for this information!</div>K9TRVhttps://openhpsdr.org/wiki/index.php?title=WinUSB_Notes&diff=2876WinUSB Notes2009-12-30T23:05:51Z<p>K9TRV: /* WinUSB Notes */</p>
<hr />
<div><br />
== WinUSB Notes ==<br />
<br />
This page contains information on using WinUSB with HPSDR hardware.<br />
<br />
The first thing that you will need is the WinUSB driver package from Alberto, I2PHD, from www.weaksignals.com. [http://www.weaksignals.com Alberto I2PHD's WinRad site] Go to his website and download his WinRad package, which will give you his WinUSB driver installer. Using this installer should let you install WinUSB as the driver for your hardware on Windows XP, Vista and Windows 7, whether you have a 32 bit OS, or Intel/AMD 64 bit OS (x86 architecture) or Intel Itanium IA64 64 bit OS versions of windows installed.<br />
<br />
You will also be able to use WinRad, until Bill KD5TFD ports PowerSDR to WinUSB.<br />
<br />
Alberto has some very good notes on installing the driver, or replacing libusb0 with WinUSB, as part of his package. I suggest that you read his notes and follow his directions. I think that you have to install WinUSB twice for Ozy, once when Ozy contains no programming, and once when Ozy has has its firmware downloaded. You can also find these drivers, newly fixed so that 64 bit Intel/AMD x86 OS install works, in the WinUSBDrivers folder under my SVN archive listed below. You will still want Alberto's instructions...<br />
<br />
There were errors in the 64 bit installers, due to an error Microsoft had in their 'Using WinUSB' document. I consulted with Microsoft, who made me aware of the errors. I communicated these facts to Alberto I2PHD and Phil N8VB, who are updating their .inf files to fix the 64 bit x86 architecture processor installations correspondingly. Some teamwork and mutual communications was involved. Everyone has a better result due to the work that was done co-operatively.<br />
<br />
Other interesting projects and info on WinUSB include:<br />
<br />
:1) The SourceForge (www.sourceforge.net) project called LibUsbDotNet. You can download both source and binary. This is a project that allows .Net code to use either libusb0 or WinUSB, without the application program having to know which driver is installed for the hardware. This is not yet being used by KISS or HPSDR, but does hold some promise on Windows for this option. Using LibUsbDotNet would allow a single version of KISS, for example, to exist that would work with either libusb0 or WinUSB.<br />
<br />
:2) the website http://www.lvr.com/winusb.htm, which contains information on WinUSB, USB in general, sample code, much other information and sample code on things like Serial Ports, Parallel Ports, ethernet, and more. Its maintainer, Jan Axelson, has also written a number of books on these topics. I found his winusb_cs to be very helpful to study in porting KISS and its support programs from libusb0 to WinUSB. [http://www.lvr.com/winusb.htm Jan Axelson's website]<br />
<br />
What has been ported from libusb0 to WinUSB?<br />
:1) Phil Harman VK6APH's project KISS Console<br />
:2) supporting programs like loadfw.exe, loadfpga.exe and writei2c.exe<br />
:3) there is also a Visual Studio 2008 project called WinUSBAPI that is Alberto's Borland C++ Builder code ported to VS2008 C++. It doesn't yet have all the methods that the C# project WinUSBManaged that I wrote does. Hopefully, I'll find the time to back-port those methods from WinUSBManaged to WinUSBApi.<br />
<br />
The purpose of the 'supporting programs' (which also use winusbmanaged.dll) is to replace the current versions that use libusb0. With these, you can update the versions in your usbblaster-binaries folder so that you can still update the firmware in Penelope, Mercury and other boards. You may have multiple places where these are needed. Up-to-date copies are in my "KISS Console\bin\release" and "Kiss Console\bin\debug" folders, so that initozy11.bat that is in those folders will continue to work.<br />
<br />
Where can I find this new code that uses WinUSB?<br />
Try this svn path (K9TRV's KISS Branch): <br />
<br />
svn://206.216.146.154/svn/repos_hpsdr_kiss/branches/K9TRV<br />
<br />
<br />
So, you're going to be recompiling the KISS code on a 64 bit machine?<br />
<br />
If so, then you'll need to check the 'fftw' subfolder in my branch for the 64 bit dll. I've provided the installers for the 32 bit and 64 bit fftw dlls, from the http://www.fftw.org/ website. Please either install the 64 bit package and replace all versions of the 32 bit dll with the dll it installs, or copy and rename the libfftw3f64.dll to libfftw3f.dll, especially in the bin\release and bin\debug folders of my version of the KISS Console project. Thanks to Dr. Hermann von Hasseln, DL3HVH, for this information!</div>K9TRVhttps://openhpsdr.org/wiki/index.php?title=WinUSB_Notes&diff=2839WinUSB Notes2009-12-21T15:43:02Z<p>K9TRV: /* WinUSB Notes */</p>
<hr />
<div><br />
== WinUSB Notes ==<br />
<br />
This page contains information on using WinUSB with HPSDR hardware.<br />
<br />
The first thing that you will need is the WinUSB driver package from Alberto, I2PHD, from www.weaksignals.com. [http://www.weaksignals.com Alberto I2PHD's WinRad site] Go to his website and download his WinRad package, which will give you his WinUSB driver installer. Using this installer should let you install WinUSB as the driver for your hardware on Windows XP, Vista and Windows 7, whether you have a 32 bit OS, or AMD 64 bit OS or Intel IA64 64 bit OS versions of windows installed.<br />
<br />
You will also be able to use WinRad, until Bill KD5TFD ports PowerSDR to WinUSB.<br />
<br />
Alberto has some very good notes on installing the driver, or replacing libusb0 with WinUSB, as part of his package. I suggest that you read his notes and follow his directions. I think that you have to install WinUSB twice for Ozy, once when Ozy contains no programming, and once when Ozy has has its firmware downloaded.<br />
<br />
Other interesting projects and info on WinUSB include:<br />
<br />
:1) The SourceForge (www.sourceforge.net) project called LibUsbDotNet. You can download both source and binary. This is a project that allows .Net code to use either libusb0 or WinUSB, without the application program having to know which driver is installed for the hardware. This is not yet being used by KISS or HPSDR, but does hold some promise on Windows for this option. Using LibUsbDotNet would allow a single version of KISS, for example, to exist that would work with either libusb0 or WinUSB.<br />
<br />
:2) the website http://www.lvr.com/winusb.htm, which contains information on WinUSB, USB in general, sample code, much other information and sample code on things like Serial Ports, Parallel Ports, ethernet, and more. Its maintainer, Jan Axelson, has also written a number of books on these topics. I found his winusb_cs to be very helpful to study in porting KISS and its support programs from libusb0 to WinUSB. [http://www.lvr.com/winusb.htm Jan Axelson's website]<br />
<br />
What has been ported from libusb0 to WinUSB?<br />
:1) Phil Harman VK6APH's project KISS Console<br />
:2) supporting programs like loadfw.exe, loadfpga.exe and writei2c.exe<br />
:3) there is also a Visual Studio 2008 project called WinUSBAPI that is Alberto's Borland C++ Builder code ported to VS2008 C++. It doesn't yet have all the methods that the C# project WinUSBManaged that I wrote does. Hopefully, I'll find the time to back-port those methods from WinUSBManaged to WinUSBApi.<br />
<br />
The purpose of the 'supporting programs' (which also use winusbmanaged.dll) is to replace the current versions that use libusb0. With these, you can update the versions in your usbblaster-binaries folder so that you can still update the firmware in Penelope, Mercury and other boards. You may have multiple places where these are needed. Up-to-date copies are in my "KISS Console\bin\release" and "Kiss Console\bin\debug" folders, so that initozy11.bat that is in those folders will continue to work.<br />
<br />
Where can I find this new code that uses WinUSB?<br />
Try this svn path (K9TRV's KISS Branch): <br />
<br />
svn://206.216.146.154/svn/repos_hpsdr_kiss/branches/K9TRV<br />
<br />
<br />
So, you're going to be recompiling the KISS code on a 64 bit machine?<br />
<br />
If so, then you'll need to check the 'fftw' subfolder in my branch for the 64 bit dll. I've provided the installers for the 32 bit and 64 bit fftw dlls, from the http://www.fftw.org/ website. Please either install the 64 bit package and replace all versions of the 32 bit dll with the dll it installs, or copy and rename the libfftw3f64.dll to libfftw3f.dll, especially in the bin\release and bin\debug folders of my version of the KISS Console project. Thanks to Dr. Hermann von Hasseln, DL3HVH, for this information!</div>K9TRVhttps://openhpsdr.org/wiki/index.php?title=WinUSB_Notes&diff=2838WinUSB Notes2009-12-20T22:55:51Z<p>K9TRV: /* WinUSB Notes */</p>
<hr />
<div><br />
== WinUSB Notes ==<br />
<br />
This page contains information on using WinUSB with HPSDR hardware.<br />
<br />
The first thing that you will need is the WinUSB driver package from Alberto, I2PHD, from www.weaksignals.com. [http://www.weaksignals.com Alberto I2PHD's WinRad site] Go to his website and download his WinRad package, which will give you his WinUSB driver installer. Using this installer should let you install WinUSB as the driver for your hardware on Windows XP, Vista and Windows 7, whether you have a 32 bit OS, or AMD 64 bit OS or Intel IA64 64 bit OS versions of windows installed.<br />
<br />
You will also be able to use WinRad, until Bill KD5TFD ports PowerSDR to WinUSB.<br />
<br />
Alberto has some very good notes on installing the driver, or replacing libusb0 with WinUSB, as part of his package. I suggest that you read his notes and follow his directions. I think that you have to install WinUSB twice for Ozy, once when Ozy contains no programming, and once when Ozy has has its firmware downloaded.<br />
<br />
Other interesting projects and info on WinUSB include:<br />
<br />
:1) The SourceForge (www.sourceforge.net) project called LibUsbDotNet. You can download both source and binary. This is a project that allows .Net code to use either libusb0 or WinUSB, without the application program having to know which driver is installed for the hardware. This is not yet being used by KISS or HPSDR, but does hold some promise on Windows for this option. Using LibUsbDotNet would allow a single version of KISS, for example, to exist that would work with either libusb0 or WinUSB.<br />
<br />
:2) the website http://www.lvr.com/winusb.htm, which contains information on WinUSB, USB in general, sample code, much other information and sample code on things like Serial Ports, Parallel Ports, ethernet, and more. Its maintainer, Jan Axelson, has also written a number of books on these topics. I found his winusb_cs to be very helpful to study in porting KISS and its support programs from libusb0 to WinUSB. [http://www.lvr.com/winusb.htm Jan Axelson's website]<br />
<br />
What has been ported from libusb0 to WinUSB?<br />
:1) Phil Harman VK6APH's project KISS Console<br />
:2) supporting programs like loadfw.exe, loadfpga.exe and writei2c.exe<br />
:3) there is also a Visual Studio 2008 project called WinUSBAPI that is Alberto's Borland C++ Builder code ported to VS2008 C++. It doesn't yet have all the methods that the C# project WinUSBManaged that I wrote does. Hopefully, I'll find the time to back-port those methods from WinUSBManaged to WinUSBApi.<br />
<br />
The purpose of the 'supporting programs' (which also use winusbmanaged.dll) is to replace the current versions that use libusb0. With these, you can update the versions in your usbblaster-binaries folder so that you can still update the firmware in Penelope, Mercury and other boards. You may have multiple places where these are needed. Up-to-date copies are in my "KISS Console\bin\release" and "Kiss Console\bin\debug" folders, so that initozy11.bat that is in those folders will continue to work.<br />
<br />
Where can I find this new code that uses WinUSB?<br />
Try this svn path: <br />
<br />
svn://206.216.146.154/svn/repos_hpsdr_kiss/branches/K9TRV<br />
<br />
K9TRV's KISS Branch</div>K9TRVhttps://openhpsdr.org/wiki/index.php?title=WinUSB_Notes&diff=2835WinUSB Notes2009-12-20T22:17:15Z<p>K9TRV: /* WinUSB Notes */</p>
<hr />
<div><br />
== WinUSB Notes ==<br />
<br />
This page contains information on using WinUSB with HPSDR hardware.<br />
<br />
The first thing that you will need is the WinUSB driver package from Alberto, I2PHD, from www.weaksignals.com. [http://www.weaksignals.com Alberto I2PHD's WinRad site] Go to his website and download his WinRad package, which will give you his WinUSB driver installer. Using this installer should let you install WinUSB as the driver for your hardware on Windows XP, Vista and Windows 7, whether you have a 32 bit OS, or AMD 64 bit OS or Intel IA64 64 bit OS versions of windows installed.<br />
<br />
You will also be able to use WinRad, until Bill KD5TFD ports PowerSDR to WinUSB.<br />
<br />
Alberto has some very good notes on installing the driver, or replacing libusb0 with WinUSB, as part of his package. I suggest that you read his notes and follow his directions. I think that you have to install WinUSB twice for Ozy, once when Ozy contains no programming, and once when Ozy has has its firware downloaded.<br />
<br />
Other interesting projects and info on WinUSB include:<br />
<br />
1) The SourceForge (www.sourceforge.net) project called LibUsbDotNet. You can download both source and binary. This is a project that allows .Net code to use either libusb0 or WinUSB, without the application program having to know which driver is installed for the hardware. This is not yet being used by KISS or HPSDR, but does hold some promise on Windows for this option. Using LibUsbDotNet would allow a single version of KISS, for example, to exist that would work with either libusb0 or WinUSB.<br />
<br />
2) the website http://www.lvr.com/winusb.htm, which contains information on WinUSB, USB in general, sample code, much other information and sample code on things like Serial Ports, Parallel Ports, ethernet, and more. Its maintainer, Jan Axelson, has also written a number of books on these topics. I found his winusb_cs to be very helpful to study in porting KISS and its support programs from libusb0 to WinUSB. [http://www.lvr.com/winusb.htm Jan Axelson's website]<br />
<br />
What has been ported from libusb0 to WinUSB?<br />
1) Phil Harman VK6APH's project KISS Console<br />
2) supporting programs like loadfw.exe, loadfpga.exe and writei2c.exe<br />
3) there is also a Visual Studio 2008 project called WinUSBAPI that is Alberto's Borland C++ Builder code ported to VS2008 C++. It doesn't yet have all the methods that the C# project WinUSBManaged that I wrote does. Hopefully, I'll find the time to back-port those methods from WinUSBManaged to WinUSBApi.<br />
<br />
Where can I find this new code that uses WinUSB?<br />
Try this svn path: svn://206.216.146.154/svn/repos_hpsdr_kiss/branches/K9TRV, K9TRV's KISS Branch</div>K9TRV