I asked Chat GPT to write arduino code – and it blew my mind!

Write and Arduino sketch that has 4 motor controllers and s-bus inputs from a remote control. Then midi notes for each motor controller.

Sure! Here is an example of an Arduino sketch that uses four motor controllers and receives s-bus inputs from a remote control, and also maps MIDI notes to each motor controller:

#include <SBUS.h> // include the SBUS library
#include <MIDI.h> // include the MIDI library

// define the pin numbers for the s-bus input and the four motor controllers
const int SBUS_PIN = 10;
const int MOTOR1_PIN = 3;
const int MOTOR2_PIN = 5;
const int MOTOR3_PIN = 6;
const int MOTOR4_PIN = 9;

// create an instance of the SBUS library
SBUS sbus(SBUS_PIN);

// create an instance of the MIDI library
MIDI_CREATE_DEFAULT_INSTANCE();

void setup() {
// initialize the s-bus input and the four motor controllers
sbus.begin();
pinMode(MOTOR1_PIN, OUTPUT);
pinMode(MOTOR2_PIN, OUTPUT);
pinMode(MOTOR3_PIN, OUTPUT);
pinMode(MOTOR4_PIN, OUTPUT);

// begin MIDI communication
MIDI.begin(MIDI_CHANNEL_OMNI);
}

void loop() {
// read the s-bus input
sbus.read();

// get the values of the channels from the s-bus input
int channel1 = sbus.getChannel(1);
int channel2 = sbus.getChannel(2);
int channel3 = sbus.getChannel(3);
int channel4 = sbus.getChannel(4);

// set the speed of the first motor based on the value of channel 1
analogWrite(MOTOR1_PIN, channel1);

// set the speed of the second motor based on the value of channel 2
analogWrite(MOTOR2_PIN, channel2);

// set the speed of the third motor based on the value of channel 3
analogWrite(MOTOR3_PIN, channel3);

// set the speed of the fourth motor based on the value of channel 4
analogWrite(MOTOR4_PIN, channel4);

// check for incoming MIDI messages
MIDI.read();

// if a MIDI note on message is received, set the speed of the corresponding motor
if (MIDI.getType() == midi::NoteOn) {
int note = MIDI.getData1(); // get the MIDI note number
int velocity = MIDI.getData2(); // get the MIDI velocity value

// map the MIDI note to a motor controller and set its speed
if (note == 60) { // map MIDI note 60 to motor 1
analogWrite(MOTOR1_PIN, velocity);
}
else if (note == 61) { // map MIDI note 61 to motor 2
analogWrite(MOTOR2_PIN, velocity);
}
else if (note == 62) { // map MIDI note 62 to motor 3
analogWrite(MOTOR3_PIN, velocity);
}
else if (note == 63) { // map MIDI note 63 to motor 4
analogWrite(MOTOR4_PIN, velocity);

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: