So, on a few occasions I've needed to do this but couldn't figure it out. I always load the latest OS to my device. However, I don't load it on my coworkers devices until I've tested it and made sure the bugs aren't anything major. Let's say that I have OS 4.5.0.52 on my device and loaded on my PC. Any 8320 I plug in is going to get that OS, but I don't want it on other's BB's. I do, however, want to install 4.2.2.184 on another TMobile 8320. If I add the vendor.xml back I will only get 4.2.2.181 back on the TMobile 8320. How can I get 4.2.2.184 to the TMobile 8320 without removing the 4.5 OS from my PC altogether?
Answer: Edit the vendor.xml! This isn't something that most people would need to do but since I connect many different devices to my laptop for OS upgrades I had to find a way.
Instead of deleting the vendor.xml I decided to look at it to see if I could edit it. I opened it with WordPad and went to work. It turns out that TMobile's list is first. The code is divided into vendor coding "0x64" for TMobile and then OS bundle versions and then a device code to load each bundle version to. The trick was figuring out which devicewhid was the 8320. After looking at the bundles released and process of elimination I figured out that the "0x84000F03" was for the 8320. I then simply edited the latest 4.2.2 build code to be the build for the 4.2.2.184 (which is 4.2.2.338.) In the code below is where I changed the code. All I did was change the OS bundle version. When I did this I plugged the BB in and ran DM and it detected the TMo device and said an update to 4.2.2.184 was available. So, now the vendor.xml says that 4.2.2.184 is the latest for TMo and recognizes it as a TMobile bundle.
Below is the code for TMobile from my vendor.xml file. My edit is at the bottom in bold. You can see it includes OS versions from way back.
Code:
<vendor id="0x64" Name="T-Mobile US">
<bundle id="System" version="3.6.0.51">
<devicehwid>0x80000403 0x80000503</devicehwid>
</bundle>
<bundle id="System" version="3.6.0.73">
<devicehwid>0x80000103 0x80000403 0x80000503</devicehwid>
</bundle>
<bundle id="System" version="3.7.0.50">
<devicehwid>0x90000503 0x94000503</devicehwid>
</bundle>
<bundle id="System" version="3.7.0.99">
<devicehwid>0x90000503</devicehwid>
</bundle>
<bundle id="System" version="3.7.1.92">
<devicehwid>0x90000503 0x94000503 0x94000403</devicehwid>
</bundle>
<bundle id="System" version="3.8.0.127">
<devicehwid>0x94000903</devicehwid>
</bundle>
<bundle id="System" version="3.8.0.142">
<devicehwid>0x94000903</devicehwid>
</bundle>
<bundle id="System" version="4.0.0.234">
<devicehwid>0x94000903 0x9c000503</devicehwid>
</bundle>
<bundle id="System" version="4.0.0.220">
<devicehwid>0x80000503 0x90000503 0x80000403 0x94000403 0x94000503</devicehwid>
</bundle>
<bundle id="System" version="4.0.2.42">
<devicehwid>0x9c000503 0x94000903</devicehwid>
</bundle>
<bundle id="System" version="4.0.2.82">
<devicehwid>0x9c000503 0x94000903</devicehwid>
</bundle>
<bundle id="System" version="4.1.0.280">
<devicehwid>0x84000B03</devicehwid>
</bundle>
<bundle id="System" version="4.1.0.365">
<devicehwid>0x94000903 0x9c000503</devicehwid>
</bundle>
<bundle id="System" version="4.1.0.456">
<devicehwid>0x84000B03</devicehwid>
</bundle>
<bundle id="System" version="4.1.0.548">
<devicehwid>0x94000903 0x9c000503</devicehwid>
</bundle>
<bundle id="System" version="4.1.0.556">
<devicehwid>0x94000903 0x9c000503</devicehwid>
</bundle>
<bundle id="System" version="4.2.0.53">
<devicehwid>0x84000D03</devicehwid>
</bundle>
<bundle id="System" version="4.2.0.75">
<devicehwid>0x84000D03</devicehwid>
</bundle>
<bundle id="System" version="4.2.1.111">
<devicehwid>0x84000E03</devicehwid>
</bundle>
<bundle id="System" version="4.2.1.141">
<devicehwid>0x84000B03</devicehwid>
</bundle>
<bundle id="System" version="4.2.1.175">
<devicehwid>0x84000B03 </devicehwid>
</bundle>
<bundle id="System" version="4.2.1.168">
<devicehwid>0x84000D03</devicehwid>
</bundle>
<bundle id="System" version="4.2.2.338">
<devicehwid>0x84000F03</devicehwid>
</bundle>
Again, this isn't for everyone but if you're good at looking at this coding it makes sense.