Может кварц неправильной частоты. Программа при этом будет работать, установит Pull_Up резистор - комп обнаружит подключение к шине USB - а провести энумерацию для считывания параметров устройства не сможет. Посмотрите, на кварц какой частоты рассчитан пример от TI.
Можно ещё попробовать запустить USB-BSL загрузчик, зашитый в контроллер. Попробуйте подключить дополнительно на линию PUR резистор 100 Ом через кнопку на VUSB (выход 3,3v с LDO регулятора), и подсоединить устройство к USB-шине, удерживая нажатой кнопку. При этом запускается USB-BSL загрузчик. Комп найдёт устройство (что-то там USB-BSL...MSP430...HID и так далее). Этому загрузчику требуется любой из таких кварцев: 4, 8, 12, 24МГц. С другими кварцами USB-BSL загрузчик не работает.
Если загрузчик обнаружен - то по крайней мере схема собрана верно. Если не обнаружен - ищите непропаи, КЗ, или кварцы подбирайте.

Также, к D+ рекомендуют подключить резистор 1M подтягивающий линию D+ к GND.
Посмотрите пример от TI "USB Keyboard Using MSP430™ Microcontrollers" SLAA514
http://www.ti.com/lit/an/slaa514/slaa514.pdf страницу 15,
или схему отладочной платы от OLIMEX "OLIMEXINO-5510"
https://www.olimex.com/Products/Duino/MSP43...MEXINO-5510.pdf страницу 25. И там и там схема подключения, включающая возможность запустить USB-BSL загрузчик (100 Ом резистор и кнопка). Сверьте и остальное со своей схемой.
Также может быть перепутка D+ и D- между разъёмом и процессором. Комп. обнаруживает подключение, но считать ничего не может.
А UNKNOW DEVICE, и VID\PID=0000 даже тогда, когда на D+ цепляется один резистор 1,5к без всяких контроллеров (только подключенный не к 5В а к 3,3В)