Tool post and Holder

Piston Type Tool Post & Tool Holder Sets For 12″ Lathe
Complete with 5 quick change tool holders
Turning and facing: 3/16″ – 1/2″ tool bit
Boring, turning and facing: 7/16″ shank
Heavy duty boring bar: 5/8″ shank
Knurling, turning and facing: 3/16″ – 1/2″ tool bit
Easy tool set up to speed production
Weight: 5.5kg.

https://www.busybeetools.com/products/tool-post-quick-change-for-12in-lathe.html

Hardinge Lathe 204 frame Motor

Looking to replace the 204 frame motor I watched my favorite teach on the subject

and that pointed me to the plate on the motor I have

Reading deeper into this, this is an OLD style of motor frame. 204 Stopped being used in 1953… Of course, mine is a discontinued motor frame…

Looking more at this I see the 203 and the 204 frames are similar it’s the screw mounting width that is different. I think an adapter plate could work. The only dimension that matter is D and U. U is 3/4″ so the center of the motor must be 5″ from the bottom of the plate. Obviously P must be smaller or equal. Watch out for the boxes that stick off the side for the wiring to enter.

LOOKING AT A MODERN NEMA CHART:

A D of 5″ is no longer a standard. The closest D is 4.5″ that leaves 1/2′ for an adapter plate.

All the newer motors have 7/8 shaft meaning the pully will also need to be changed. The 145T looks interesting… Some shopping:

https://www.emotorsdirect.ca/TECO-RF0024

There is hope.

There are also sexy stainless steel motors….

there are charts for the motor mount brackets:

Arduino Project – Digitally Controlled Analog Surround Sound Panning – Open Source

For your enjoyment:

Digitally Controlled Analog Surround Sound Panning

 

Presentation:

 

Circuit Explination:

 

Presentation documents:

0 – TPJ – Technical Presentation

0 – TPJ556-FINAL report DCASSP-COMPLETE

0 – TPJ556-FINAL report DCASSP-SCHEMATICS V1

 

 

Project Source Code:

Continue reading →

The Scalable 5.1 and Stereo Audio Mixer

The Scalable 5.1 and Stereo Audio Mixer

The 5.1 and Stereo Audio Mixer is a versatile, fully featured Audio Mixer designed for scaling to a wide variety of production needs, including Radio, Television, Podcast, and Web. It is capable of handling complex setups featuring over a hundred Mono, Stereo, and 5.1 inputs and outputs, while also supporting simpler configurations.

Scalability and Configuration

The mixer’s scalability and resource utilization are defined when an instance is launched using its API. Multiple instances of the mixer can operate simultaneously within the same compute server or server cluster.

Individual instances are highly configurable in terms of:

  • Input Channels: Defining the number and types of input channels (mono, stereo, 5.1).
  • Busses and Outputs: Customizing the number, type, and capability of mixing busses and outputs, including Mono, Stereo, 5.1, Program, Aux, Mix-Minus, AFL, PFL, and Subgroups.
  • Processing Functions: Specifying the processing functions included in both input and output chains, such as Gain, Dynamics, EQ, and Delay.

The architecture is designed to separate inputs from the audio mixing functionality, allowing the mixer to integrate with diverse audio sources and destinations.


Input Channel Processing

Each mixer instance can be configured with any number of mono, stereo, and 5.1 input channels. The signal processing pipelines are built using basic processing blocks. These blocks can be configured to operate on mono, stereo, or 5.1 channels where appropriate, and can be bypassed/turned off within a pipeline without impacting processing delay or current settings.

Basic Processing Functions

  • Gain Processing: Used to adjust the level of the incoming signal.
  • Filter: Features user-configurable High-Pass and Low-Pass filters with adjustable frequencies and slopes to eliminate unwanted frequencies.
  • Parametric EQ: A four-band equalizer that allows precise sound shaping through individual adjustment of selected frequencies by applying gain or reduction within a specified bandwidth (Q). Bands can be configured as Bell-shaped, low-shelf, or high-shelf.
  • Delay: Provides user-definable delay, adjustable in 1ms increments.
  • Insert: Required to send and selectively receive an audio signal to an external processing device (e.g., external compression or additional EQ).

Dynamics Processing

The mixer features several dynamics processors, all of which can be controlled by an external audio signal via a Side Chain Input (e.g., for ducking in the compressor or selective un-muting in the Audio Gate).

  • Compressor: Controls dynamic range by adjusting the volume of signals that exceed a set threshold. It offers user-configurable settings for compression ratio, attack, release, knee shape, and makeup gain.
  • Limiter: Caps the maximum signal level using thresholds and response times to prevent distortion from volume peaks.
  • Expander: Increases the dynamic range by attenuating volumes below a set threshold, with adjustable parameters for ratio, attack, release, and range.
  • Audio Gate: A dynamics processor that selectively mutes audio signals falling below a defined threshold, with controllable settings for attack, release, hold, and range.

Stereo-Specific Functions

Available only on stereo inputs, these include:

  • Stereo Control: Offers options for manipulating stereo audio signals, such as 1:1 transparent, Swapped, 1:~1 transparent with one Phase flip, distribution options (1 to 1 and 2, 2 to 1 and 2), Mono Summed (L + R), and Mid-side decoder.
  • Stereo Width Control: Allows adjustment of the perceived width of the stereo field, with expansion, narrowing, and a neutral position.

Channel Level and Auto-Mix

  • Input Fader: An attenuation stage that sets the input level in a mix. A single fader controls both stereo and 5.1 channels.
  • Gradual Transition on Fader: Allows the fader to gradually transition to the desired level, defined by an In Level, Out Level, In Duration (ramp up time), Fade Out Delay, and Out Duration (ramp down time).
  • Input channel VCA: A second attenuation stage controlled by a group fader.

The Auto-Mix processor autonomously adjusts the levels of a group of input channels in real-time based on signal activity and channel priority, using cross-fading for smooth transitions. A minimum of 4 Auto-Mix groups can be configured, and the processor automatically adjusts when channels are added or removed. Configuration parameters include the input channels, a Bypass/Process state, Relative Weight, Attack time (mS), and Release time for each channel.


Input Channel Routing

Positioning and Panning

  • Mono to Stereo Paner: Positions a mono channel across the L and R channels of a stereo signal.
  • Stereo Balancer: Re-positions the L and R channels within a stereo signal.
  • Mono to 5.1 Positioner: Positions a mono channel across a 5.1 surround sound field.
  • Stereo to 5.1 Positioner: Positions the Left and Right channels of a stereo signal across a 5.1 surround sound field.
  • Next Generation Audio (NGA) 7.1.4 Multi-Dimensional Panning: Immersive placement controls allow sounds to be moved in three dimensions across a configuration that extends standard 5.1 by adding four height channels and two side speakers.

Bus and Output Feeds

Each input channel has dedicated selectors and level controls to contribute to different busses, and can feed from various tap-points:

  • Program and Subgroup: Each channel has a dedicated selector to contribute.
  • Mix-Minus: Each channel has a dedicated Mix-Minus exclusion selector and a dedicated level control for each Mix Minus bus contribution. Channels can feed from Pre EQ, Pre Fader, or Post Fader. A Talkback Interrupt function routes a designated talkback input to another channel’s Mix Minus bus.
  • Aux: Each channel has dedicated selectors and level controls to contribute to each Aux Bus, feeding from Pre EQ, Pre Fader, or Post Fader.
  • Direct: Each channel has a Direct out that can feed from Pre EQ, Pre Fader, or Post Fader.
  • PFL (Pre-Fade Listen): Each channel can contribute to the PFL bus from Pre-Fader, Post-EQ / Post dynamics, Pre-EQ, or at input.
  • AFL (After Fader Listen): Each channel can contribute to the AFL bus.

Other Input Functions

  • Alternate Input Source Selection: Typically positioned after the gain stage, this selects an alternate input source while preserving existing channel settings, often used for critical applications like alternate microphones.
  • 5.1 Downmix (Fold Down): Creates a stereo Left Only, Right Only Down Mix (Lo/Ro Fold down) from a 5.1 surround sound channel. The processing uses the formulae: and , with LFE Muted.

Busses and Outputs

Busses are internal pathways for routing and combining multiple channels. The mixer can be configured to include multiple instances of each bus type.

Program Busses (Main or Master Busses)

These form the main program output. The mixer can be configured with one or more independent Program Buses.

  • They feature a level adjustment immediately after the summing block; a single adjustment controls all channels in a stereo or 5.1 Program.
  • Each bus can be configured to include a Compressor, Limiter, and Delay.
  • Supports NGA 7.1.4 Multi-dimensional audio.
  • For parallel 5.1 and stereo productions, the mixer maintains parallel 5.1 and stereo program buses, each with its own output, or provides a 5.1 program bus that is downmixed at the output.

Subgroup Busses

Used to group multiple sources for common actions. The mixer can be configured with one or more independent Subgroup Busses, which can be Mono, Stereo, or 5.1.

  • Each Subgroup Bus includes a level adjustment after the summing block.
  • They can be configured to include a Compressor, Limiter, and Delay.
  • Subgroup buses can be re-entered as an input to other buses.

Mix-Minus Busses

These create a monitoring output for talent, containing a mix of all program elements minus the associated talent’s channel. The mixer supports one or more Mix Minus Busses with independent outputs.

  • Each Mix Minus bus includes a level adjustment after the summing block.
  • They can be configured to include a Compressor, Limiter, and Delay.
  • The Mix minus bus features automatic echo cancellation capabilities.

Aux Busses (Auxiliary Busses)

These provide additional routing paths for effects, monitors, or external processing. The mixer supports one or more independent Aux Busses, which can be Mono, Stereo, or 5.1.

  • Each Aux bus includes a level adjustment after the summing block.
  • They can be configured to include a Compressor, Limiter, and Delay.

Listen Busses (AFL and PFL)

  • AFL (After Fader Listen) Bus: Allows monitoring of audio signal post-fader adjustments. It can be Mono, Stereo, or 5.1. Signals from multiple input channels can be routed simultaneously, and the output includes a dedicated level adjustment.
  • PFL (Pre-Fader Listen) Bus: Allows monitoring of audio signal pre-fader adjustments. It can be Mono, Stereo, or 5.1. Signals from multiple input channels can be routed simultaneously, and the output includes a dedicated level adjustment.

Monitoring and Level Measurement

Monitoring Output Section

 

  • Outputs: Provides a 6-channel output supporting stereo and 5.1, and a 12-channel output for NGA 7.1.4 Multi-Dimensional Monitoring. The 7.1.4 monitoring section includes a specialized matrix for accurately downmixing to 5.1, stereo, and mono.
  • Output Listen: A selector allows the monitoring output to listen to any Program, Subgroup, Mix-Minus, or Aux bus, as well as external signals.
  • Monitoring Logic: The monitor section can automatically switch from the “Output Listen” to the PFL or AFL bus when any input channel or subgroup is routed to them. A “clear function” cancels all active PFLs or AFLs.
  • Controls: Includes Speaker Level Control, Speaker Selector for 3 independent multi-channel outputs/headphone sets (only one active), and individual and simultaneous Mute Functionality for each output channel.
  • Dimming/Talkback: A Speaker Dimming Adjustment dims the monitoring output to a preset level when a dim command is received or when Talkback Functionality is activated.

Input and Output Level Measurement

The Mixer provides components for continuous audio level measurement that feed data via the API for GUI display. These components can be positioned at any point in an input or output processing chain and can measure mono, stereo, or 5.1 audio groupings.

  • Metering: Can be configured to measure peak programme meter (PPM), VU, or instantaneous loudness.
  • Loudness Measurement: Conforms to ITU BS.1770-5 and EBU R 128 standards, providing True Peak, Momentary (400 msec), Short Term (3 sec.), and Integrated readings. The component can be positioned at the output of every Program Bus.
  • Detection: The component can provide an Overload Sensor indication based on a clipping threshold, a Signal Detector indication based on a minimum threshold over a specified duration, and a Silence Detector indication if the signal remains below a threshold for a specified duration. All conditions are communicated via the API.

Control Plane API and Operator GUI

Control Plane API

The API provides comprehensive access to the mixer’s functionality:

  • Read/Write Access: Provides read and write access to all configuration (“set and forget”) and operational parameters.
  • Status Reporting: All metering and signal status information can be read via the API.
  • External Control: Supports both the Mackie Human User Interface MIDI (Mackie HUI protocol) and OSC (Open Sound Control) for control from generic control panels.
  • Presets: Supports independent storage and recall capabilities for Configuration and Operator Parameters (restoring operational settings while leaving configuration unchanged). Selective Parameter Recall is supported for saving and recalling subsets of user settings.
  • Input Channel Presets allow saving and recalling operational settings (gain, dynamics, filtering, EQ) for a specific input channel.
  • The mixer’s conformance to common configuration, control, preset, and health monitoring requirements.

Operator GUI

The Operator GUI is used by operators to control and operate the mixer, offering several key features:

  • Customization and Touchscreen: It is possible to create a custom Operator GUI by combining the controls from individual processing components. GUI components are optimized for touchscreen usage, with select components supporting multi-touch operation and common gesture controls (e.g., sliding two faders, pinching to zoom).
  • Grouping and Linking:
    • The GUI allows operators to configure at least 4 mute groups and assign input channels or subgroups for simultaneous muting.
    • A minimum of 4 VCA groups can be defined, and the GUI includes a fader for each group, which adjusts the overall level of assigned channels while maintaining their relative levels.
    • Fader Linking allows input faders to be linked to other input faders for proportional level adjustment.
  • Workflow Enhancements: Includes capabilities to Colour Code input channels and subgroups, manage Operational Presets (including subset recall), and includes the ability to Copy and Paste a complex set of operational parameters from one channel or processing block to another.
  • Configuration Editor: A WYSIWYG Configuration Editor is available to edit the signal processing configuration, including defining channel inputs/buses/outputs, defining the order/routing of processing functions (“pipelines”), and connecting channel I/O to physical inputs/outputs or other processing resources running on the same platform.
  • Hardware Support: The main operator controls should also be available on a hardware-type control panel, either a dedicated panel or one mapped onto a user-definable control panel.

Generating Code with spreadsheet for Keyboard Assignments of CADSOFT Eagle

I needed a way of Generating Code, lots of code.   In cadsoft eagle, the Keyboard Assignments are completely user customizable.  They have a script language that allows you to modify the software.  I’ve used hundreds of the ULP and SCRs and decided to write my own Generator.

Necessity is the mother of all innovation.  Screen Shot 2015-09-14 at 12.56.34 AM Screen Shot 2015-09-14 at 12.56.45 AM Screen Shot 2015-09-14 at 12.56.52 AM Screen Shot 2015-09-14 at 12.56.59 AM Screen Shot 2015-09-14 at 12.57.04 AM Screen Shot 2015-09-14 at 12.58.37 AM Screen Shot 2015-09-14 at 12.58.44 AM Screen Shot 2015-09-14 at 12.58.50 AM

 

On Compressing the English Language

Someone picked my brain the other day looking for a technique to compress language files.

After walking away to think about it… my method was to re-order the ASCII code to the letters by their frequency and the most common words by their frequency.

Where lowercase e is stored as an ASCII value using 1 byte
ASCII  e = 0x61 = 0b1100001 = 7 bits
vs
APK e = 0x1 = 1 bit

… this method stores an E in 1 bit.  This is similar to the Huffman Code with the addition of whole words being included in the code.

For example:

“because” is the 94th most used word in the english language and in this method is stored in 7 bits.

I don’t know if this has been done before… but I would imagine it could compress Language files substantially.

I have thought about a third addition of using the most used 2 or three letter combinations commonly used.

APK ORDER APK LET FREQ WORD FEQ APK BIN APK HEX APK BITS USED
0 space 0 0 1
1 e 12.70% 1 1 1
2 t 9.06% 10 2 2
3 a 8.17% 11 3 2
4 o 7.51% 100 4 3
5 i 6.97% 101 5 3
6 n 6.75% 110 6 3
7 s 6.33% 111 7 3
8 h 6.09% 1000 8 4
9 r 5.99% 1001 9 4
10 d 4.25% 1010 A 4
11 l 4.03% 1011 B 4
12 c 2.78% 1100 C 4
13 u 2.76% 1101 D 4
14 m 2.41% 1110 E 4
15 w 2.36% 1111 F 4
16 f 2.23% 10000 10 5
17 g 2.02% 10001 11 5
18 y 1.97% 10010 12 5
19 p 1.93% 10011 13 5
20 b 1.49% 10100 14 5
21 v 0.98% 10101 15 5
22 k 0.77% 10110 16 5
23 j 0.15% 10111 17 5
24 x 0.15% 11000 18 5
25 q 0.10% 11001 19 5
26 z 0.07% 11010 1A 5
27 the 1 11011 1B 5
28 be 2 11100 1C 5
29 to 3 11101 1D 5
30 of 4 11110 1E 5
31 and 5 11111 1F 5
32 a 6 100000 20 6
33 in 7 100001 21 6
34 that 8 100010 22 6
35 have 9 100011 23 6
36 I 10 100100 24 6
37 it 11 100101 25 6
38 for 12 100110 26 6
39 not 13 100111 27 6
40 on 14 101000 28 6
41 with 15 101001 29 6
42 he 16 101010 2A 6
43 as 17 101011 2B 6
44 you 18 101100 2C 6
45 do 19 101101 2D 6
46 at 20 101110 2E 6
47 this 21 101111 2F 6
48 but 22 110000 30 6
49 his 23 110001 31 6
50 by 24 110010 32 6
51 from 25 110011 33 6
52 they 26 110100 34 6
53 we 27 110101 35 6
54 say 28 110110 36 6
55 her 29 110111 37 6
56 she 30 111000 38 6
57 or 31 111001 39 6
58 an 32 111010 3A 6
59 will 33 111011 3B 6
60 my 34 111100 3C 6
61 one 35 111101 3D 6
62 all 36 111110 3E 6
63 would 37 111111 3F 6
64 there 38 1000000 40 7
65 their 39 1000001 41 7
66 what 40 1000010 42 7
67 so 41 1000011 43 7
68 up 42 1000100 44 7
69 out 43 1000101 45 7
70 if 44 1000110 46 7
71 about 45 1000111 47 7
72 who 46 1001000 48 7
73 get 47 1001001 49 7
74 which 48 1001010 4A 7
75 go 49 1001011 4B 7
76 me 50 1001100 4C 7
77 when 51 1001101 4D 7
78 make 52 1001110 4E 7
79 can 53 1001111 4F 7
80 like 54 1010000 50 7
81 time 55 1010001 51 7
82 no 56 1010010 52 7
83 just 57 1010011 53 7
84 him 58 1010100 54 7
85 know 59 1010101 55 7
86 take 60 1010110 56 7
87 people 61 1010111 57 7
88 into 62 1011000 58 7
89 year 63 1011001 59 7
90 your 64 1011010 5A 7
91 good 65 1011011 5B 7
92 some 66 1011100 5C 7
93 could 67 1011101 5D 7
94 them 68 1011110 5E 7
95 see 69 1011111 5F 7
96 other 70 1100000 60 7
97 than 71 1100001 61 7
98 then 72 1100010 62 7
99 now 73 1100011 63 7
100 look 74 1100100 64 7
101 only 75 1100101 65 7
102 come 76 1100110 66 7
103 its 77 1100111 67 7
104 over 78 1101000 68 7
105 think 79 1101001 69 7
106 also 80 1101010 6A 7
107 back 81 1101011 6B 7
108 after 82 1101100 6C 7
109 use 83 1101101 6D 7
110 two 84 1101110 6E 7
111 how 85 1101111 6F 7
112 our 86 1110000 70 7
113 work 87 1110001 71 7
114 first 88 1110010 72 7
115 well 89 1110011 73 7
116 way 90 1110100 74 7
117 even 91 1110101 75 7
118 new 92 1110110 76 7
119 want 93 1110111 77 7
120 because 94 1111000 78 7
121 any 95 1111001 79 7
122 these 96 1111010 7A 7
123 give 97 1111011 7B 7
124 day 98 1111100 7C 7
125 most 99 1111101 7D 7
126 use 100 1111110 7E 7