problems uploading to a board i made

Hi , I realise similar questions to this get asked alot but i have tried everything .

I made my own arduino based board and to my suprise everything worked as it should , i can program it with another areduino as a isp and it worked fine however i cant upload to it through the usb port .I have tried all but it can send serial back through the usb to the computer . its using a ft232rl for the usb connection

I have tried the following ;

checked the crystal output with an ocilloscope.

removed the ft232rl and connected it to a seperate ft232rl programmer that i know works but still had no success.

I have tried updating drivers.

I have tried it on an old computer that hasnt dont any updates in a very long time.

I have checked for shorts and double checked the design many times and everything is fine.

I have tried it with and without the 1.1 k resistors between the 328p and the ft232rl with no change .

I have tried it with nano and pro bootloader .

I have tried manually resetting just before upload .

I do have the 100nf capacitor between dtr and reset with the 1.1k pull up resistor

My main confusion comes from the fact that if the board its self runs perfect and it can send serial to the computer no problem and my seperate ft232 programmer works with everything else why cant it work with this its almost as if the bootloader is the problem but that cant be the case can it ?

Windows does seem to have issues recognising the usb some times.

How many MHz is your crystal?
Do you have a schematic for your setup?
Are you using the Arduino IDE when you upload and when you program with ISP?

Have you been able to burn the bootloader? When you reset the 328p, does pin 13 flash?
Sounds like the bootloader gas not been burned, or the chip isn't actually being reset prior to uploading.

simon100:
I do have the 100nf capacitor between DTR and reset with the 1.1k pull up resistor

I hope you actually mean 10k pull-up.

It sounds like you may not have burned a bootloader. Every time you use arduino as ISP, you erase the chip and load with new code, without a bootloader. If you think you bootloaded it already, it is no more.