• Updated 2023-07-12: Hello, Guest! Welcome back, and be sure to check out this follow-up post about our outage a week or so ago.

Getting G3 Whisper Perch USB working

croissantking

Well-known member
Those won't be 10k and this would cause the issue you're seeing. That is a potential divider.


Ideal would be to get values from another mac of similar age (sorry, but there is a gap in my collection, I don't have anything from the early G3 era after beige).

If not... make R76 about 4 times bigger than R76... guessing.
Do you mean make R75 bigger than R76? I could play about with it if it's likely not to damage anything.
 

Phipli

Well-known member
Do you mean make R75 bigger than R76? I could play about with it if it's likely not to damage anything.
Perhaps try... R76 = 4.7k, and R75 = 1.1k?

I'm trying to aim to get the value in the middle to be 4v. R76 connects to gnd, and I think R75 connects to 5V... but please verify that. I don't know.

I know they're connected to C129.
 

croissantking

Well-known member
Perhaps try... R76 = 4.7k, and R75 = 1.1k?

I'm trying to aim to get the value in the middle to be 4v. R76 connects to gnd, and I think R75 connects to 5V... but please verify that. I don't know.

I know they're connected to C129.
Bear with me, need to see if I have these values on a PCB I've been harvesting.
 

Phipli

Well-known member
It should be OK. I think we're just aiming for a high enough voltage going to pin 11, but don't want a short to ground or... stuff. If this doesn't work, do you have anything smaller? Like a 560R (561)?
 

Phipli

Well-known member
A few minutes ago my cat pushed my Perch card on the floor. I assume that counts as a cat-astrophe.
 

Phipli

Well-known member
Just to confirm you do want them this way round? R75 has a larger pad so I would have thought it would have taken the resistor with the higher value.
Smaller resistance on R75 yes. Absolutely certain of that. The thing I'm not absolutely certain of is the ratio.

R75 = 1000R
R76 = 4700R
 
Last edited:

croissantking

Well-known member
I tried both 102 and 751 parts at R75 - the behaviour is the same.

There is some improvement. Initially, the event log says:

22.467: Expert - Initializing disk based USB Expert 1.5.5
23.200: [ 123456789]: UIM - Power manager does not do wake functions 0
23.816: [ 0]: USL - ctlPktHandler, ********** unqueued does not match 65535
23.816: [ 0]: USL - ctlPktHandler pb 889936
23.816: [ 0]: USL - ctlPktHandler pbq 0
23.816: [ 123456789]: UIM - UIMEndpointDelete: Could not find endpoint -6987
24.244: [ 75576035]: Expert - LoadClassDriver: USBHub1Apple - calling driver initialize routine... 0
24.245: [ 75576035]: Expert - LoadClassDriver: USBHub1Apple - driver initialization completed 0
24.246: [ 75576035]: Driver - Externally powered Hub attached - power supply good 0
25.374: [ 0]: Expert - Bus Enumeration using disk-based drivers (mSec): 1566
25.376: [ 0]: Expert - Could not find Native Power Manager Lib 0

Then, after a little bit:

44.438: [ 75576035]: Driver - Hub Driver - Device found, calling USBHubAddDevice. Port 2
44.698: [ 0]: USL - findEndpointAddr -1
44.699: [ 0]: USL - Stalling pipe 75576064
44.699: [ 75576035]: Driver - Hub Driver Error - Could not read 8 bytes of device descriptor before set address -6911
44.700: [ 0]: USL - findEndpointAddr -1
44.700: [ 0]: USL - Stalling pipe 75576064
44.700: [ 0]: USL - ctlPktHandler, ********** unqueued does not match 65535
44.700: [ 0]: USL - ctlPktHandler pb 12586720
44.700: [ 0]: USL - ctlPktHandler pbq 0
44.700: [ 75576035]: Driver - Hub Driver Error - Could not read 8 bytes of device descriptor before set address -6911
44.702: [ 0]: USL - findEndpointAddr -1
44.702: [ 0]: USL - Stalling pipe 75576064
44.702: [ 0]: USL - ctlPktHandler, ********** unqueued does not match 65535
44.702: [ 0]: USL - ctlPktHandler pb 12586720
44.702: [ 0]: USL - ctlPktHandler pbq 0
44.702: [ 75576035]: Driver - Hub Driver Error - Could not read 8 bytes of device descriptor before set address -6911
44.708: [ 0]: USL - findEndpointAddr -1
44.708: [ 0]: USL - Stalling pipe 75576064
44.708: [ 75576035]: Driver - Hub Driver Error - Could not read 8 bytes of device descriptor before set address -6911
44.741: [ 0]: USL - findEndpointAddr -1
44.741: [ 0]: USL - Stalling pipe 75576064
44.741: [ 75576035]: Driver - Hub driver - no more reties in device zero -6911
44.741: [ 75576035]: Driver - Hub Driver - remembering getDeviceDescriptorFailed (b) -6911
44.743: [ 0]: USL - findEndpointAddr -1
44.743: [ 0]: USL - Stalling pipe 75576064
44.743: [ 0]: USL - ctlPktHandler, ********** unqueued does not match 65535
44.743: [ 0]: USL - ctlPktHandler pb 12586720
44.743: [ 0]: USL - ctlPktHandler pbq 0
44.744: [ 0]: USL - UIMEDDelete did not get lock on UIM 0
44.744: [ 75576035]: Driver - Hub Driver Error - Setting the device address -6911
44.775: [ 75576035]: Driver - Hub Driver - Set address failed, increasing time 1
44.775: [ 75576035]: Driver - Hub driver - disabling dead port 1 2
44.806: [ 75576035]: Driver - Hub driver - (1) dead port dead port disabled 2
44.806: [ 0]: USL - processDelayQ delayQueueChanged, breaking 0
44.808: [ 0]: USL - processDelayQ delayQueueChanged, breaking 0
44.839: [ 75576035]: Driver - Hub Driver - Device found, calling USBHubAddDevice. Port 2
44.839: [ 0]: USL - processDelayQ delayQueueChanged, breaking 0
52.379: [ 0]: USL hubs - timing out add 5000
52.379: [ 123456789]: UIM - UIMControlTransfer: endpoint not found. -6987
52.379: [ 123456789]: UIM - OHCIUIMTKillRemainingTransaction- Endpoint not found -6987
52.379: [ 0]: USL - calling ctl packet handler because of error -6987
52.379: [ 0]: USL - errorCallBack -1
52.379: [ 0]: USL - findEndpointAddr -1
52.379: [ 0]: USL - UIMClearEndPointStall did not get lock on UIM 0
52.379: [ 123456789]: UIM - UIMEndpointDelete: Could not find endpoint -6987
52.379: [ 0]: USL - UIMEDDelete did not get lock on UIM 0

Then, when I plug in a device, immediately:

131.738: [ 0]: USL - processDelayQ delayQueueChanged, breaking 0
131.751: [ 75576035]: Driver - Hub driver - (1) dead port dead port disabled 2
131.751: [ 0]: USL - processDelayQ delayQueueChanged, breaking 0
131.754: [ 0]: USL - processDelayQ delayQueueChanged, breaking 0
131.771: [ 0]: USL - processDelayQ delayQueueChanged, breaking 0
131.787: [ 75576035]: Driver - Hub Driver - Device found, calling USBHubAddDevice. Port 2
131.804: [ 0]: USL - processDelayQ delayQueueChanged, breaking 0
131.837: [ 0]: USL - processDelayQ delayQueueChanged, breaking 0
131.852: [ 0]: USL - processDelayQ delayQueueChanged, breaking 0
131.885: [ 0]: USL - processDelayQ delayQueueChanged, breaking 0
131.922: [ 0]: USL - findEndpointAddr -1
131.922: [ 0]: USL - Stalling pipe 75576704
131.922: [ 75576035]: Driver - Hub Driver Error - Could not read 8 bytes of device descriptor before set address -6911
131.954: [ 0]: USL - findEndpointAddr -1
131.954: [ 0]: USL - Stalling pipe 75576704
131.954: [ 75576035]: Driver - Hub Driver Error - Could not read 8 bytes of device descriptor before set address -6911
131.988: [ 0]: USL - findEndpointAddr -1
131.988: [ 0]: USL - Stalling pipe 75576704
131.988: [ 75576035]: Driver - Hub Driver Error - Could not read 8 bytes of device descriptor before set address -6911
131.993: [ 0]: USL - findEndpointAddr -1
131.993: [ 0]: USL - Stalling pipe 75576704
131.993: [ 75576035]: Driver - Hub Driver Error - Could not read 8 bytes of device descriptor before set address -6911
132.026: [ 0]: USL - findEndpointAddr -1
132.026: [ 0]: USL - Stalling pipe 75576704
132.026: [ 75576035]: Driver - Hub driver - no more reties in device zero -6911
132.026: [ 75576035]: Driver - Hub Driver - Set address failed, giving more time 36
132.070: [ 0]: USL - processDelayQ delayQueueChanged, breaking 0
132.102: [ 0]: USL - findEndpointAddr -1
132.102: [ 0]: USL - Stalling pipe 75576704
132.103: [ 0]: USL - UIMEDDelete did not get lock on UIM 0
132.103: [ 75576035]: Driver - Hub Driver Error - Setting the device address -6911
132.136: [ 75576035]: Driver - Hub Driver - Set address failed, increasing time 3
132.136: [ 75576035]: Driver - Hub driver - disabling dead port 1 1
132.137: [ 0]: USL - processDelayQ delayQueueChanged, breaking 0
132.138: [ 0]: USL - processDelayQ delayQueueChanged, breaking 0
132.170: [ 75576035]: Driver - Hub driver - (1) dead port dead port disabled 1
132.170: [ 0]: USL - processDelayQ delayQueueChanged, breaking 0
132.170: [ 0]: USL - processDelayQ delayQueueChanged, breaking 0
132.200: [ 75576035]: Driver - Hub Driver - Device found, calling USBHubAddDevice. Port 1
133.151: [ 0]: USL hubs - timing out add 1000
133.151: [ 123456789]: UIM - UIMControlTransfer: endpoint not found. -6987
133.151: [ 123456789]: UIM - OHCIUIMTKillRemainingTransaction- Endpoint not found -6987
133.151: [ 0]: USL - calling ctl packet handler because of error -6987
133.151: [ 0]: USL - errorCallBack -1
133.151: [ 0]: USL - findEndpointAddr -1
133.151: [ 0]: USL - UIMClearEndPointStall did not get lock on UIM 0
133.151: [ 123456789]: UIM - UIMEndpointDelete: Could not find endpoint -6987
133.151: [ 0]: USL - UIMEDDelete did not get lock on UIM 0
133.151: [ 123456789]: UIM - UIMEndpointDelete: Could not find endpoint -6987
133.151: [ 0]: USL - UIMEDDelete did not get lock on UIM 0
133.183: [ 0]: USL - processDelayQ delayQueueChanged, breaking 0
133.225: [ 0]: USL - processDelayQ delayQueueChanged, breaking 0
133.255: [ 0]: USL - processDelayQ delayQueueChanged, breaking 0
133.286: [ 0]: USL - processDelayQ delayQueueChanged, breaking 0
133.316: [ 0]: USL - processDelayQ delayQueueChanged, breaking 0
133.326: [ 0]: USL - processDelayQ delayQueueChanged, breaking 0
133.357: [ 75576035]: Driver - Config pipe zero failed -6998
133.357: [ 75576035]: Driver - Hub Driver - Set address failed, giving more time 69
133.357: [ 75576832]: USL - Invalid ref passed to USL 0
133.357: [ 75576832]: Driver - **** USBDelay gives kUSBUnknownDeviceErr, retyring with hub ref -6998
133.357: [ 0]: USL - processDelayQ delayQueueChanged, breaking 0
133.433: [ 0]: USL - processDelayQ delayQueueChanged, breaking 0
133.449: [ 0]: Driver - SimulateRootHubInt- queuing SF for non int case 0
133.449: [ 0]: USL - processDelayQ delayQueueChanged, breaking 0
133.463: [ 75576035]: Driver - Hub Driver - Set address failed, increasing time 4
133.463: [ 75576035]: Driver - Hub driver - disabling dead port 1 2
133.463: [ 0]: USL - processDelayQ delayQueueChanged, breaking 0
133.482: [ 0]: USL - processDelayQ delayQueueChanged, breaking 0
133.496: [ 75576035]: Driver - Hub driver - (1) dead port dead port disabled 2
133.496: [ 0]: USL - processDelayQ delayQueueChanged, breaking 0
133.499: [ 0]: USL - processDelayQ delayQueueChanged, breaking 0
133.513: [ 0]: USL - processDelayQ delayQueueChanged, breaking 0
133.531: [ 75576035]: Driver - Hub Driver - Device found, calling USBHubAddDevice. Port 2
133.543: [ 0]: USL - processDelayQ delayQueueChanged, breaking 0
133.575: [ 0]: USL - processDelayQ delayQueueChanged, breaking 0
133.592: [ 0]: USL - processDelayQ delayQueueChanged, breaking 0
133.625: [ 0]: USL - processDelayQ delayQueueChanged, breaking 0
133.658: [ 0]: USL - findEndpointAddr -1
133.658: [ 0]: USL - Stalling pipe 75576960
133.658: [ 75576035]: Driver - Hub Driver Error - Could not read 8 bytes of device descriptor before set address -6911
133.698: [ 0]: USL - findEndpointAddr -1
133.698: [ 0]: USL - Stalling pipe 75576960
133.698: [ 75576035]: Driver - Hub Driver Error - Could not read 8 bytes of device descriptor before set address -6911
133.735: [ 0]: USL - findEndpointAddr -1
133.735: [ 0]: USL - Stalling pipe 75576960
133.735: [ 75576035]: Driver - Hub Driver Error - Could not read 8 bytes of device descriptor before set address -6911
133.740: [ 0]: USL - findEndpointAddr -1
133.740: [ 0]: USL - Stalling pipe 75576960
133.740: [ 75576035]: Driver - Hub Driver Error - Could not read 8 bytes of device descriptor before set address -6911
133.776: [ 0]: USL - findEndpointAddr -1
133.776: [ 0]: USL - Stalling pipe 75576960
133.777: [ 75576035]: Driver - Hub driver - no more reties in device zero -6911
133.777: [ 75576035]: Driver - Hub Driver - Set address failed, giving more time 69
133.847: [ 0]: USL - processDelayQ delayQueueChanged, breaking 0
133.878: [ 0]: USL - findEndpointAddr -1
133.878: [ 0]: USL - Stalling pipe 75576960
133.879: [ 0]: USL - UIMEDDelete did not get lock on UIM 0
133.880: [ 75576035]: Driver - Hub Driver Error - Setting the device address -6911
133.910: [ 75576035]: Driver - Hub Driver - Set address failed, increasing time 4
133.910: [ 75576035]: Driver - Hub driver - disabling dead port 1 1
133.910: [ 0]: USL - processDelayQ delayQueueChanged, breaking 0
133.910: [ 0]: USL - processDelayQ delayQueueChanged, breaking 0
133.940: [ 75576035]: Driver - Hub driver - (1) dead port dead port disabled 1
133.940: [ 0]: USL - processDelayQ delayQueueChanged, breaking 0
133.942: [ 0]: USL - processDelayQ delayQueueChanged, breaking 0
 

Phipli

Well-known member
Have you just fitted 10k to every resistor pad?! That filter needs specific cap and resistor pads to do its job safely!
 

croissantking

Well-known member
You have the values on R75 and R76 backwards - R76 was meant to be 4.7k. Which way have you being fitting them?
9709335F-8F05-4DFF-A9D5-8F1255CE50B2.jpeg
Like this currently. I drew up the schematic wrong however I’m confident I put them in the right positions for each phase of testing. I went back to these after I tried just having the 10k on R75.
 
Top