Teensy 4.1 usb host power question

mark63

Active member
Hi

I use the teensy 4.1. I use external 5V power. So the external 5V goes to VIN. And the track from the device usb 5v is cut.
So far so good.
But i want to use the USB host mode. And I see there is a switch/protection TPD3S014. Since there is also a 500mA fuse, i can not supply 2A to the devices i connect to my host.
How can i increase the power the host can supply?
Can i simply use my 5V and connect it to the host 5V usb connector? Thus not using the VHST pin?
Or will that not work?

thanks
mark
 
Simplest way would be to disconnect the host port VUSB pin and connect it directly (through a 2A fuse) to your 5V power supply.

The circuitry on Teensy 4.1 is built around a 0.5 amp maximum current, which is the USB 2.0 spec.
 
thank you for taking the time to help.
just to be sure : on the circuit diagram the usb host pin is named VHST right? And this is the same pin as shown on the features page where an image is shown with details for USB host. There is is named +5V. And not VHST but is the same i think.
So my host connector goes to my own +5V and vhst remains unconnected ? That was the idea and you seem to confirm that, but now you write 'disconnect' i get doubts.
Here is how i should connect?

teensy-usb-q.png
 
The simplest thing is if you look at the T4.1... For example card:
screenshot.jpg

Is don't use the +5V pin marked on the 5 pin USB Host connector. Instead use your +5v power, possibly with a fuse
 
thank you for your reply. yes that is how i understood it but i just had to be sure. in the final stage of the design i got doubts because this 5V is named VHST in the circuit. but all clear now :)
 
An other Teensy 4.1 usb host power question

I have similarly 5V to VIN.

It seems USB Host has power only if the normal USB is connected. If I disconnect the normal USB after power on the power remains on USB Host.

I had at setup, but that should anyway had pass trough after 5 seconds.

Code:
 while (!Serial && (millis() < 5000)) ; // wait for Serial Monitor

Now it is removed and works just the same. The normal serial is just used to debug printing to terminal.

On the circuit diagram I see nothing causing this*, so what is going on?

*exept maybe EMC_40 does that need to be somehow activated if normal serial is not connected?

the USB host port gets now power form 5 pin USB Host connector (VHST), I would like to keep it like that, 500 mA is enough for my application
 
Yes EMC_40 needs to be driven high to turn on the USB host power. This is done by calling begin() from the USBHost_t36 library. See any of that library’s examples.

If you just run an ordinary program not using the USBHost_t36 library and you don’t add any special code for EMC_40, the USB host power will not turn on.
 
This is a bit older code, but it works just fine when powered via USB, it has the USB_SER.begin(); is something else needed.

Code:
USBHost USB_SER;
USBHub hub1(USB_SER);
USBSerial_BigBuffer USB_serial(USB_SER, 1); // Handles anything up to 512 bytes


PTPDevice  CAM1(USB_SER);

USBDriver *drivers[] = {&hub1, &USB_serial, &CAM1};
#define CNT_DEVICES (sizeof(drivers)/sizeof(drivers[0]))
const char * driver_names[CNT_DEVICES] = {"Hub1", "USB_serial", "CAM1"  };
bool driver_active[CNT_DEVICES] = {false, false, false};



void setup()
{
  
  //while (!Serial && (millis() < 5000)) ; // wait for Serial Monitor
  delay(2000);
  Serial.println("\n\nUSB Host Testing - Serial");
  USB_SER.begin();
  delay(1000);

There is an other option that the Loupe Deck Live control panel requires more power than the 500 mA step down converter I have, but I think it should be fine. It runs fine after started with help of the USB power.

Could I just command the EMC_40 High to test, how?
 
Funny thing, if I use a USB hub in between the Loupe Deck live and USB Host, it gets power just fine, this is simple USB hub with no power it self.

Maybe the problem will be solved when I clear up the code. But strange that with USB connected it works and without not, except if USB Hub in between.
 
After some more testing I think the problem is the 5V 500 mA power supply.

If everything connected and main power provided, the USB devices do not get power.

If the Teensy 4.1 is powered and connecting USB Hub, it gets power. if then also connecting Loupe Deck, to the HUB, also it gets power.

If connecting Loupe Deck first to USB Hub and then the Hub to Teensy 4.1, it does not provide power.

So I guess the Loupe Deck takes more than 500 mA at startup. The USB Hub has some capacitors that can support providing that.

So need to see more powerful power supply. Maybe adding some capacitor to USB Host power out. And maybe taking to power directly from the power supply.

How much current does the teensy 4.1 consume at 600 MHz, it consumes also the available 5V 500 mA.
 
General observed T_4.1 current is seen near 100 mA. That comes out of the 500 mA provided by the Host.

Yes and that is the a bit strange thing, when powered from computer via the USB connection no problems, and as I understand that should be limited to 500 mA. When powering from 500 mA good quality POLOLU DC converter*, there is problems.

*https://www.pololu.com/product/2843 this should be capable more than 500mA.
 
Back
Top