List of figures

The easy to use ADALM-PLUTO active learning module (PlutoSDR)helps introduce electrical engineering students to the fundamentals of software-defined radio (SDR) RF Theory & Practice The PlutoSDR works as a portable lab that, when used with a host, can augment classroom learning. If you can help me provide a touch screen driver for this device it will be a big help for me and other having this problem. I'll post my touch screen hardware Id here so you can help me find the driver for this tablet: ACPI VENMSSL&DEV1680 ACPI MSSL1680.MSSL1680. Device Description: KMDF HID Minidriver for Touch I2C Device. Thanks in advance!

List of tables

Pluto Drive Lyrics

1.1 General Info

The Pluto-P is an inexpensive ($60) FPGA board featuring the ACEX1K chip from Altera.

1.1.1 Requirements

  1. A Pluto-P board
  2. An EPP-compatible parallel port, configured for EPP mode in the system BIOS

1.1.2 Connectors

Pluto Driver
  • The Pluto-P board is shipped with the left connector presoldered, with the key in the indicated position. The other connectors are unpopulated. There does not seem to be a standard 12-pin IDC connector, but some of the pins of a 16P connector can hang off the board next to QA3/QZ3.
  • The bottom and right connectors are on the same .1' grid, but the left connector is not. If OUT2…OUT9 are not required, a single IDC connector can span the bottom connector and the bottom two rows of the right connector.

1.1.3 Physical Pins

Driver
  • Read the ACEX1K datasheet for information about input and output voltage thresholds. The pins are all configured in 'LVTTL/LVCMOS' mode and are generally compatible with 5V TTL logic.
  • Before configuration and after properly exiting emc2, all Pluto-P pins are tristated with weak pull-ups (20kΩ min, 50kΩ max). If the watchdog timer is enabled (the default), these pins are also tristated after an interruption of communication between emc2 and the board. The watchdog timer takes approximately 6.5ms to activate. However, software bugs in the pluto_servo firmware or emc2 can leave the Pluto-P pins in an undefined state.
  • In pwm+dir mode, by default dir is HIGH for negative values and LOW for positive values. To select HIGH for positive values and LOW for negative values, set the corresponding dout-NN-invert parameter TRUE to invert the signal.
  • The index input is triggered on the rising edge. Initial testing has shown that the QZx inputs are particularly noise sensitive, due to being polled every 25ns. Digital filtering has been added to filter pulses shorter than 175ns (seven polling times). Additional external filtering on all input pins, such as a Schmitt buffer or inverter, RC filter, or differential receiver (if applicable) is recommended.
  • The IN1…IN7 pins have 22-ohm series resistors to their associated FPGA pins. No other pins have any sort of protection for out-of-spec voltages or currents. It is up to the integrator to add appropriate isolation and protection. Traditional parallel port optoisolator boards do not work with pluto_servo due to the bidirectional nature of the EPP protocol.

1.1.4 LED

  • When the device is unprogrammed, the LED glows faintly. When the device is programmed, the LED glows according to the duty cycle of PWM0 (LED = UP0xorDOWN0) or STEPGEN0 (LED = STEP0xorDIR0).

1.1.5 Power

  • A small amount of current may be drawn from VCC. The available current depends on the unregulated DC input to the board. Alternately, regulated +3.3VDC may be supplied to the FPGA through these VCC pins. The required current is not yet known, but is probably around 50mA plus I/O current.
  • The regulator on the Pluto-P board is a low-dropout type. Supplying 5V at the power jack will allow the regulator to work properly.

1.1.6 PC interface

  • Only a single pluto_servo or pluto_step board is supported.

1.1.7 Rebuilding the FPGA firmware

The src/hal/drivers/pluto_servo_firmware/ and src/hal/drivers/pluto_step_firmware/ subdirectories contain the Verilog source code plus additional files used by Quartus for the FPGA firmwares. Altera's Quartus II software is required to rebuild the FPGA firmware. To rebuild the firmware from the .hdl and other source files, open the .qpf file and press CTRL-L. Then, recompile emc2.

Like the HAL hardware driver, the FPGA firmware is licensed under the terms of the GNU General Public License.

The gratis version of Quartus II runs only on Microsoft Windows, although there is apparently a paid version that runs on Linux.

1.1.8 For more information

Some additional information about it is available from http://www.fpga4fun.com/board_pluto-P.html and from the developer's blog.

1.2 pluto-servo: Hardware PWM and quadrature counting

The pluto_servo system is suitable for control of a 4-axis CNC mill with servo motors, a 3-axis mill with PWM spindle control, a lathe with spindle encoder, etc. The large number of inputs allows a full set of limit switches.

This driver features:

  • 4 quadrature channels with 40MHz sample rate. The counters operate in '4x' mode. The maximum useful quadrature rate is 8191 counts per emc2 servo cycle, or about 8MHz for EMC2's default 1ms servo rate.
  • 4 PWM channels, 'up/down' or 'pwm+dir' style. 4095 duty cycles from -100% to +100%, including 0%. The PWM period is approximately 19.5kHz (40MHz / 2047). A PDM-like mode is also available.
  • 18 digital outputs: 10 dedicated, 8 shared with PWM functions. (Example: A lathe with unidirectional PWM spindle control may use 13 total digital outputs)
  • 20 digital inputs: 8 dedicated, 12 shared with Quadrature functions. (Example: A lathe with index pulse only on the spindle may use 13 total digital inputs)
  • EPP communication with the PC. The EPP communication typically takes around 100uS on machines tested so far, enabling servo rates above 1kHz.

1.2.1 Pinout

UPx
The 'up' (up/down mode) or “pwm” (pwm+direction mode) signal from PWM generator X. May be used as a digital output if the corresponding PWM channel is unused, or the output on the channel is always negative. The corresponding digital output invert may be set to TRUE to make UPx active low rather than active high.
DNx
The 'down' (up/down mode) or “direction” (pwm+direction mode) signal from PWM generator X. May be used as a digital output if the corresponding PWM channel is unused, or the output on the channel is never negative. The corresponding digital ouput invert may be set to TRUE to make DNx active low rather than active high.
QAx, QBx
The A and B signals for Quadrature counter X. May be used as a digital input if the corresponding quadrature channel is unused.
QZx
The Z (index) signal for quadrature counter X. May be used as a digital input if the index feature of the corresponding quadrature channel is unused.
INx
Dedicated digital input #x
OUTx
Dedicated digital output #x
GND
Ground
VCC
+3.3V regulated DC
Figure: Pluto-Servo Pinout
Primary functionAlternate FunctionBehavior if both functions used
UP0PWM0When pwm-0-pwmdir is TRUE, this pin is the PWM output
OUT10XOR'd with UP0 or PWM0
UP1PWM1When pwm-1-pwmdir is TRUE, this pin is the PWM output
OUT12XOR'd with UP1 or PWM1
UP2PWM2When pwm-2-pwmdir is TRUE, this pin is the PWM output
OUT14XOR'd with UP2 or PWM2
UP3PWM3When pwm-3-pwmdir is TRUE, this pin is the PWM output
OUT16XOR'd with UP3 or PWM3
DN0DIR0When pwm-0-pwmdir is TRUE, this pin is the DIR output
OUT11XOR'd with DN0 or DIR0
DN1DIR1When pwm-1-pwmdir is TRUE, this pin is the DIR output
OUT13XOR'd with DN1 or DIR1
DN2DIR2When pwm-2-pwmdir is TRUE, this pin is the DIR output
OUT15XOR'd with DN2 or DIR2
DN3DIR3When pwm-3-pwmdir is TRUE, this pin is the DIR output
OUT17XOR'd with DN3 or DIR3
QZ0IN8Read same value
QZ1IN9Read same value
QZ2IN10Read same value
QZ3IN11Read same value
QA0IN12Read same value
QA1IN13Read same value
QA2IN14Read same value
QA3IN15Read same value
QB0IN16Read same value
QB1IN17Read same value
QB2IN18Read same value
QB3IN19Read same value
Pluto motor driverTable: Pluto-Servo Alternate Pin Functions

1.2.2 Input latching and output updating

  • PWM duty cycles for each channel are updated at different times.
  • Digital outputs OUT0 through OUT9 are all updated at the same time. Digital outputs OUT10 through OUT17 are updated at the same time as the pwm function they are shared with.
  • Digital inputs IN0 through IN19 are all latched at the same time.
  • Quadrature positions for each channel are latched at different times.

1.2.3 HAL Functions, Pins and Parameters

Pluto Driver

Pluto Divergent

A list of all 'loadrt' arguments, HAL function names, pin names and parameter names is in the manual page, pluto_servo.9.

1.2.4 Compatible driver hardware

Pluto Motor Driver

A schematic for a 2A, 2-axis PWM servo amplifier board is available (http://emergent.unpy.net/projects/01148303608). The L298 H-Bridge (L298 H-bridge) is inexpensive and can easily be used for motors up to 4A (one motor per L298) or up to 2A (two motors per L298) with the supply voltage up to 46V. However, the L298 does not have built-in current limiting, a problem for motors with high stall currents. For higher currents and voltages, some users have reported success with International Rectifier's integrated high-side/low-side drivers. (http://www.cnczone.com/forums/showthread.php?t=25929)

1.3 Pluto-step: 300kHz Hardware Step Generator

Pluto-step is suitable for control of a 3- or 4-axis CNC mill with stepper motors. The large number of inputs allows for a full set of limit switches.

The board features:

  • 4 “step+direction” channels with 312.5kHz maximum step rate, programmable step length, space, and direction change times
  • 14 dedicated digital outputs
  • 16 dedicated digital inputs
  • EPP communuication with the PC

1.3.1 Pinout

STEPx
The “step” (clock) output of stepgen channel x
DIRx
The “direction” output of stepgen channel x
INx
Dedicated digital input #x
OUTx
Dedicated digital output #x
GND
Ground
VCC
+3.3V regulated DC

While the “extended main connector” has a superset of signals usually found on a Step & Direction DB25 connector--4 step generators, 9 inputs, and 6 general-purpose outputs--the layout on this header is different than the layout of a standard 26-pin ribbon cable to DB25 connector.

1.3.2 Input latching and output updating

  • Step frequencies for each channel are updated at different times.
  • Digital outputs are all updated at the same time.
  • Digital inputs are all latched at the same time.
  • Feedback positions for each channel are latched at different times.

1.3.3 Step Waveform Timings

Pluto Drive The Creatures

The firmware and driver enforce step length, space, and direction change times. Timings are rounded up to the next multiple of 1.6μs, with a maximum of 49.6μs. The timings are the same as for the software stepgen component, except that “dirhold” and “dirsetup” have been merged into a single parameter “dirtime” which should be the maximum of the two, and that the same step timings are always applied to all channels.

Figure: Pluto-Step Timings

1.3.4 HAL Functions, Pins and Parameters

Pluto Drive

A list of all 'loadrt' arguments, HAL function names, pin names and parameter names is in the manual page, pluto_step.9.

Index


| Introduction | Specifications | Construction | Electronics | Supplies | Photos | PLUTO+ | PLUTO-2.1 |

PLUTO, the small 2-way active loudspeaker system that was introduced in 2005 has undergone several changes to improve its acoustic performance and to make it easier to build. Most significantly the woofer/midrange driver was replaced by a special Seas unit to obtain lower non-linear distortion and increased bass output. This became Pluto-2 . It required component changes on the printed circuit board of the original PLUTO to update the equalization and crossover for the new driver. Also a new mounting scheme was introduced for the woofer/midrange driver to improve the looks and to provide an alternative in situations where the original rubber pipe coupler is difficult to find or not desired. The base, which houses the two power amplifiers, the electronic crossover and equalization, was increased in size to make room for larger heat sinks, for ventilation and for easier access to the circuit board.

Pluto Drive In Oak Lawn Il

No changes were made in the tweeter selection. The Aura driver is instrumental to the omni-directional PLUTO concept since this tweeter allows for a low 1 kHz crossover frequency and uniform radiation over large off-axis angles up to several kHz due to its small external dimension. I am not aware of another equally well suited driver for this application.

I have built, measured and listened to a number of Pluto-2 systems both at home and in other locations. The new Seas driver had required a change in equalization. That change indicated further potential for refinement and I have revisited the equalization process as if starting new. Equalization in my loudspeaker designs is usually a correction of trends in the frequency response. The measured frequency response often hides these trends in some fine grain structure. The fine grain structure is usually the result of reflections in the measurement environment and diffraction from the loudspeaker cabinet. Thus the chosen equalization for a seemingly flat on-axis response may not yield a flat response, if the artifacts could have been removed. Some educated guess work is involved in equalization. It yields more realistic results than the blind equalization of every detail often used in computer software. It is not surprising then that re-equalization can lead to somewhat different woofer and tweeter drive signal frequency responses, especially when the underlying physical phenomena are better understood.

The low frequency equalization was left unchanged but the midrange, crossover region and tweeter notch were modified. The tweeter level was reduced by 2.5 dB. The 220 Hz notch corrects for the remainder of the attenuated half-wavelength pipe resonance. The audible effect of this is a warmer presentation with an increase in low bass. There is no loss in neutrality or transparency. The all-important voice range is rendered naturally.

PLUTO-2.1 is a worthy alternative to ORION+ when cost, size or room placement do not allow for a large system at this time. If you think that you need another octave of bass, then you could add the PLUTO+ subwoofer, but you should wait with that decision until you have lived with PLUTO-2.1 for a while. This is such an enjoyable speaker system by itself that the doubling of expenses for the subs may not be necessary. You can drive these speakers directly from a universal player that has volume controls, such as the OPPO DV-980H, from an iPod, a laptop, from the outputs of your preamplifier or the loudspeaker output terminals of a receiver.

The most cost effective way for acquiring the PLUTO-2.1 loudspeakers is to build them yourself. The PLUTO documentation and its updates on the owner-support page provide detailed information and ongoing support.

The loudspeakers can also be purchased ready made from Wood Artistry. Of course, you now pay someone else for turning basic plumbing materials that you can find in a local hardware store into a unique looking product' You pay for fit and finish, for assembling and testing the electronics and getting it all safely to your place. This might be the most expedient way for you to become a PLUTO owner. Don Naples will thank you for it.

I talked about Hearing Spatial Detail in Stereo Recordings and used a pair of PLUTO-2.1 to illustrate differences in recording techniques at the 26th Tonmeistertagung in Leipzig, Germany, 2010.

Do-it-yourself and Wood Artistry versions of PLUTO-2.1 that show construction and finish alternatives.

The enclosure is made up of 4 inch and 1.5 inch or equivalent metric PVC or ABS plumbing pipes that must be cut to length and of associated end caps, knees and pipe couplers. The mounting section for the woofer/midrange driver can be a rubber plastic-to-clay pipe adapter or a wooden crown that is assembled around a standard pipe coupler.

The same electronics assembly works for either construction.

Power amplifiers, electronic crossover and equalization are built into the base.

Construction requires the ability to follow the labeling on a printed circuit board for placement of electronic components with leads into wire holes and then soldering them to circuit pads. The components are described in a material list and are ordered from suggested suppliers. The housing is a simple wooden box.

A review of the earlier Pluto-2 loudspeaker has been published by Peter Aczel of The Audio Critic.


| Introduction | Specifications | Construction | Electronics | Supplies | Photos | PLUTO+ |PLUTO-2.1 |

CAUTION:The content of these pages may change without notice as I learn new things or find better descriptions. The designs presented here may change as I make new observations or gain more insight. I see myself as a seeker of truth, though I now know that every person is, and ultimately truth is a construct. There is only this. Maybe what has been done here points you to it. Audio has overwhelmingly been a hobby for me, for my own pleasure and love of music. I enjoy to share what I found and possibly to dispel a few misconceptions. My interest is not on the business side, though I like that my activities pay for my hobbies. You may not agree with some or all aspects of my designs, the approach that I take to them, or the theories. I have no problem with that. Just do not ask me 'what would happen if ...'. Changes that you make to the designs are for your own pleasure and at your own risk. But if you learn something worthwhile, then please let me know. My DIY projects are not for beginners and it may be necessary for you to buy subassemblies or a turnkey system from Wood Artistry. Please do not ask me for individual help with your DIY difficulties. All my designs have a Support Page. It is listed on the cover or inside of your project documentation. There is an ORION/PLUTO/LX521 Users Group with people who can help you. I respond to every email eventually, but you may not get the answer you want. I consider my writings in these web pages as brief and to the point. I labor over every sentence and word and provide little redundancy. Read thoroughly and maybe more than once. I do not write for the rank beginner, but for those who have been around the block. You may need to study up. The links in my text are for that. I have not been standing still since I started this website in 1999 and with the idea of a brain dump of my previous findings so they would not get lost to the audio community. In 2006, after PLUTO, I thought I would go into a support and maintenance mode. No new design. Stuff happened, more enjoyment to share. The recording and rendering process interests me most at this time. Therefore the LX521. Let's see what it will do. I could stop now and be content with what has been accomplished.