I am running out of hair to pull out. I think USB must be the most desired/least explained thing in the embedded world!!!

Ok, thats off my chest now. I have spent a good part of yesterday and today trying to figure out how to do anything. Now I have some questions maybe someone knows the answers to. The idea started like this: let me whip up a GUI in liberty basic to gather info from a PIC. I have been wanting to do this for some years now.

So I figure out there is no direct way to do this in LB. But I CAN talk to a DLL I think. So then I take a look at RealBasic. Very cool program it seems, but again no direct way. Most searches end up at BUY this plugin from monkeybread and all will be good. But then as I am chasing down how plugins work for RB, and why do we need them, I figure out a plugin is just a convienet way to gain access to DLL's.

So then I start thinking, do any of the USB solutions provided over at PBP have DLL's? for instance if using HID, is there a DLL associated with that? Or are the DLL's part of Winblows? Then I run across CDC. Yet another animal I think. What I think I understand is this makes the USB connection appear as a com port to the PC app. So I start to try and verify this, and of course I am chasing down yet another 1000 links/threads/posts, all claiming to be the answer, but to what question?

The most definative thing I have found is using CDC I can talk to hyperterminal.

So finally for the question (thanks for reading this far). If I want to develop an APP, using Liberty Basic, Real basic, Python, or whatever, what is the app trying to talk to? I get that the HID builder thing creates VB files, but I don't want to use VB.

Also, what do I want, CDC,HID, how to choose? Most all of the things I want to do are data transfer back and forth. Does any of this make sense??