Loading ...
Sorry, an error occurred while loading the content.
 

USB Support

Expand Messages
  • mikensd5464
    I am developing a USB peripheral device. Eventually, I will need to have this device communicate on a Windows XP platform. The first question I have is, will
    Message 1 of 6 , Aug 31, 2005
      I am developing a USB peripheral device. Eventually, I will need to
      have this device communicate on a Windows XP platform. The first
      question I have is, will I be able to use Liberty Basic to create an
      application on Windows XP to provide the communication between my USB
      device and Windows XP? Will I need to use (or can I use) the Windows
      XP API with Liberty basic to do this? How much Windows XP API
      knowledge would I need to obtain to do this? I am writing the firmware
      in the external USB device so I have complete control of what needs to
      be done for USB support in the device. I don't have any application
      level DLL's on the PC host to support the USB so I am wondering to what
      extent Liberty Basic could be used to provide this interface.

      I suppose I could look at Visual Basic to do this but that would seem
      like over kill if Liberty Basic could do the job.

      Is it worth considering Liberty Basic for this? And if so, where is
      the best place to find some helpful examples or tutorials for this.
      Any pointers in the right direction on how to do this would be
      appreciated.

      Thanks,
      Mike
    • David Speck
      Mike, Other LB users have been able to use LB to talk to USB controlling DLLs, like external A/D converter boards. You will need to have the specifics of how
      Message 2 of 6 , Sep 1, 2005
        Mike,
        Other LB users have been able to use LB to talk to USB controlling DLLs,
        like external A/D converter boards. You will need to have the specifics
        of how the control DLLs work, but most USB interface chip suppliers
        provide pre-written Windows control DLLs for their USB chips. If your
        USB interface chips do not come with control DLLs, you might want to
        look at different ones that come with the necessary software, as writing
        and debugging the control DLLs can be difficult. There is a fair bit of
        overhead involved in initializing a USB device, and also handling whet
        happens if it is unplugged while in operation.

        There are sections in the LB conforums about DLL interfaces. Previous
        posts archived in this newsgroup may also be helpful. I believe that
        Alyce's eBook on LB has a section on implementing DLLs.

        LB itself is not, I believe capable of providing native host side
        support for custom USB devices, and I'm not sure it could be done in VB,
        either. That sort of project is usually done in C or assembly.

        Dave

        mikensd5464 wrote:

        >I am developing a USB peripheral device. Eventually, I will need to
        >have this device communicate on a Windows XP platform. The first
        >question I have is, will I be able to use Liberty Basic to create an
        >application on Windows XP to provide the communication between my USB
        >device and Windows XP? Will I need to use (or can I use) the Windows
        >XP API with Liberty basic to do this? How much Windows XP API
        >knowledge would I need to obtain to do this? I am writing the firmware
        >in the external USB device so I have complete control of what needs to
        >be done for USB support in the device. I don't have any application
        >level DLL's on the PC host to support the USB so I am wondering to what
        >extent Liberty Basic could be used to provide this interface.
        >
        >I suppose I could look at Visual Basic to do this but that would seem
        >like over kill if Liberty Basic could do the job.
        >
        >Is it worth considering Liberty Basic for this? And if so, where is
        >the best place to find some helpful examples or tutorials for this.
        >Any pointers in the right direction on how to do this would be
        >appreciated.
        >
        >Thanks,
        >Mike
        >
      • mikensd5464
        Thanks David, your comments are very helpful. I figured I might be up against quite a challenge if I did not have any pre-written DLL s. I guess I will look
        Message 3 of 6 , Sep 1, 2005
          Thanks David,

          your comments are very helpful. I figured I might be up against
          quite a challenge if I did not have any pre-written DLL's. I guess I
          will look at options using chips that have DLL support. Knowing that
          LB can at least support USB connectivity through DLL interfaces is
          encouraging. I guess the other option would be writting a DLL, which
          of course would require a lot more work, knowledge, and more
          expensive tools (C compiler, etc.)

          Thanks for making it clear what I am up against.

          If any one has a suggestion as to what chip would be a good choice
          for a USB device endpoint that eases the PC side sofware development
          using LB, that would be appreciated. I have been considering using
          the Microchip PIC18F2455, but I don't know how easy it will be
          getting that chip to work in a Windows XP environment, especially if
          I want to use LB to do cost considerations.

          Mike

          --- In libertybasic@yahoogroups.com, David Speck
          <MedelecInstruments@D...> wrote:
          > Mike,
          > Other LB users have been able to use LB to talk to USB controlling
          DLLs,
          > like external A/D converter boards. You will need to have the
          specifics
          > of how the control DLLs work, but most USB interface chip suppliers
          > provide pre-written Windows control DLLs for their USB chips. If
          your
          > USB interface chips do not come with control DLLs, you might want
          to
          > look at different ones that come with the necessary software, as
          writing
          > and debugging the control DLLs can be difficult. There is a fair
          bit of
          > overhead involved in initializing a USB device, and also handling
          whet
          > happens if it is unplugged while in operation.
          >
          > There are sections in the LB conforums about DLL interfaces.
          Previous
          > posts archived in this newsgroup may also be helpful. I believe
          that
          > Alyce's eBook on LB has a section on implementing DLLs.
          >
          > LB itself is not, I believe capable of providing native host side
          > support for custom USB devices, and I'm not sure it could be done
          in VB,
          > either. That sort of project is usually done in C or assembly.
          >
          > Dave
          >
          > mikensd5464 wrote:
          >
          > >I am developing a USB peripheral device. Eventually, I will need
          to
          > >have this device communicate on a Windows XP platform. The first
          > >question I have is, will I be able to use Liberty Basic to create
          an
          > >application on Windows XP to provide the communication between my
          USB
          > >device and Windows XP? Will I need to use (or can I use) the
          Windows
          > >XP API with Liberty basic to do this? How much Windows XP API
          > >knowledge would I need to obtain to do this? I am writing the
          firmware
          > >in the external USB device so I have complete control of what
          needs to
          > >be done for USB support in the device. I don't have any
          application
          > >level DLL's on the PC host to support the USB so I am wondering to
          what
          > >extent Liberty Basic could be used to provide this interface.
          > >
          > >I suppose I could look at Visual Basic to do this but that would
          seem
          > >like over kill if Liberty Basic could do the job.
          > >
          > >Is it worth considering Liberty Basic for this? And if so, where
          is
          > >the best place to find some helpful examples or tutorials for
          this.
          > >Any pointers in the right direction on how to do this would be
          > >appreciated.
          > >
          > >Thanks,
          > >Mike
          > >
        • Brian Schmalz
          Mike, Cool. Join the fun. I m doing almost exactly what you re doing. I m using a Microchip 18F4550 USB microcontroller and developing firmware for it to be
          Message 4 of 6 , Sep 1, 2005
            Mike,
            Cool. Join the fun. I'm doing almost exactly what you're doing.
            I'm using a Microchip 18F4550 USB microcontroller and developing
            firmware for it to be controlled by Liberty Basic. Is it possible?
            TOTALLY! You just have to know the easy way. <wink>

            What I'm doing, and what I recommend to you is to code to the
            CDC spec. If you don't know what that is, you need to do a lot of
            reading. Read the USB spec, or better yet Jan Axleson's USB book. If you
            write your firmware to appear as a CDC device, Windows, Mac and Linux
            will all be able to talk to your device as though it were an extra COM
            port. I've already done this with LB and it works great! You open up the
            new com port and using the standard LB serial command you can send
            anything and receive anything from your device. It's very slick.

            If you need higher data rates, then you need to do something
            custom, and that's beyond VB or LB's capability.

            *Brian

            -----Original Message-----
            From: libertybasic@yahoogroups.com [mailto:libertybasic@yahoogroups.com]
            On Behalf Of mikensd5464
            Sent: Wednesday, August 31, 2005 7:38 PM
            To: libertybasic@yahoogroups.com
            Subject: [libertybasic] USB Support

            I am developing a USB peripheral device. Eventually, I will need to
            have this device communicate on a Windows XP platform. The first
            question I have is, will I be able to use Liberty Basic to create an
            application on Windows XP to provide the communication between my USB
            device and Windows XP? Will I need to use (or can I use) the Windows XP
            API with Liberty basic to do this? How much Windows XP API knowledge
            would I need to obtain to do this? I am writing the firmware in the
            external USB device so I have complete control of what needs to be done
            for USB support in the device. I don't have any application level DLL's
            on the PC host to support the USB so I am wondering to what extent
            Liberty Basic could be used to provide this interface.

            I suppose I could look at Visual Basic to do this but that would seem
            like over kill if Liberty Basic could do the job.

            Is it worth considering Liberty Basic for this? And if so, where is the
            best place to find some helpful examples or tutorials for this.
            Any pointers in the right direction on how to do this would be
            appreciated.

            Thanks,
            Mike





            ------------------------ Yahoo! Groups Sponsor --------------------~-->
            Get fast access to your favorite Yahoo! Groups. Make Yahoo! your home
            page http://us.click.yahoo.com/dpRU5A/wUILAA/yQLSAA/9rHolB/TM
            --------------------------------------------------------------------~->


            Yahoo! Groups Links
          • Brian Schmalz
            Mike, OK, what you want to do is super easy. Download Microchip s CDC firmware, compile for your board (however you design it - clocks, IOs, etc.) and it will
            Message 5 of 6 , Sep 1, 2005
              Mike,
              OK, what you want to do is super easy. Download Microchip's CDC
              firmware, compile for your board (however you design it - clocks, IOs,
              etc.) and it will work. That's what I am doing and it works great. No
              need for DLLs or complicated programming.

              *Brian

              -----Original Message-----
              From: libertybasic@yahoogroups.com [mailto:libertybasic@yahoogroups.com]
              On Behalf Of mikensd5464
              Sent: Thursday, September 01, 2005 12:46 PM
              To: libertybasic@yahoogroups.com
              Subject: [libertybasic] Re: USB Support

              Thanks David,

              your comments are very helpful. I figured I might be up against quite a
              challenge if I did not have any pre-written DLL's. I guess I will look
              at options using chips that have DLL support. Knowing that LB can at
              least support USB connectivity through DLL interfaces is encouraging. I
              guess the other option would be writting a DLL, which of course would
              require a lot more work, knowledge, and more expensive tools (C
              compiler, etc.)

              Thanks for making it clear what I am up against.

              If any one has a suggestion as to what chip would be a good choice for a
              USB device endpoint that eases the PC side sofware development using LB,
              that would be appreciated. I have been considering using the Microchip
              PIC18F2455, but I don't know how easy it will be getting that chip to
              work in a Windows XP environment, especially if I want to use LB to do
              cost considerations.

              Mike

              --- In libertybasic@yahoogroups.com, David Speck
              <MedelecInstruments@D...> wrote:
              > Mike,
              > Other LB users have been able to use LB to talk to USB controlling
              DLLs,
              > like external A/D converter boards. You will need to have the
              specifics
              > of how the control DLLs work, but most USB interface chip suppliers
              > provide pre-written Windows control DLLs for their USB chips. If
              your
              > USB interface chips do not come with control DLLs, you might want
              to
              > look at different ones that come with the necessary software, as
              writing
              > and debugging the control DLLs can be difficult. There is a fair
              bit of
              > overhead involved in initializing a USB device, and also handling
              whet
              > happens if it is unplugged while in operation.
              >
              > There are sections in the LB conforums about DLL interfaces.
              Previous
              > posts archived in this newsgroup may also be helpful. I believe
              that
              > Alyce's eBook on LB has a section on implementing DLLs.
              >
              > LB itself is not, I believe capable of providing native host side
              > support for custom USB devices, and I'm not sure it could be done
              in VB,
              > either. That sort of project is usually done in C or assembly.
              >
              > Dave
              >
              > mikensd5464 wrote:
              >
              > >I am developing a USB peripheral device. Eventually, I will need
              to
              > >have this device communicate on a Windows XP platform. The first
              > >question I have is, will I be able to use Liberty Basic to create
              an
              > >application on Windows XP to provide the communication between my
              USB
              > >device and Windows XP? Will I need to use (or can I use) the
              Windows
              > >XP API with Liberty basic to do this? How much Windows XP API
              > >knowledge would I need to obtain to do this? I am writing the
              firmware
              > >in the external USB device so I have complete control of what
              needs to
              > >be done for USB support in the device. I don't have any
              application
              > >level DLL's on the PC host to support the USB so I am wondering to
              what
              > >extent Liberty Basic could be used to provide this interface.
              > >
              > >I suppose I could look at Visual Basic to do this but that would
              seem
              > >like over kill if Liberty Basic could do the job.
              > >
              > >Is it worth considering Liberty Basic for this? And if so, where
              is
              > >the best place to find some helpful examples or tutorials for
              this.
              > >Any pointers in the right direction on how to do this would be
              > >appreciated.
              > >
              > >Thanks,
              > >Mike
              > >






              Yahoo! Groups Links
            • mikensd5464
              Thank you Brian (and David too). USB is one of those mysteries that appears very formidable, until you see enough of the picture and all the pieces necessary
              Message 6 of 6 , Sep 2, 2005
                Thank you Brian (and David too). USB is one of those mysteries that
                appears very formidable, until you see enough of the picture and all
                the pieces necessary to get it to work. I have been reading "USB I/O
                by Design" by John Hyde, so that has given me a pretty good idea on
                the whole USB architecture. But that book is still pretty old and it
                assumes you have lots of Visual Basic support on the host
                side...something I was really trying to avoid. I still need to get a
                hold of Jan Axelsons book and read that.

                The idea of making my USB device CDC compatible sure sounds like the
                right way to go. 90% of the problem is often knowing which direction
                to start heading in. Thanks for pointing me in a good direction.

                Its great to know that LB can be used with a custom USB device
                programmed with CDC compatibility without any extra DLL's, etc.

                Mike





                --- In libertybasic@yahoogroups.com, "Brian Schmalz" <brian.s@l...>
                wrote:
                > Mike,
                > OK, what you want to do is super easy. Download Microchip's
                CDC
                > firmware, compile for your board (however you design it - clocks,
                IOs,
                > etc.) and it will work. That's what I am doing and it works great.
                No
                > need for DLLs or complicated programming.
                >
                > *Brian
                >
                > -----Original Message-----
                > From: libertybasic@yahoogroups.com
                [mailto:libertybasic@yahoogroups.com]
                > On Behalf Of mikensd5464
                > Sent: Thursday, September 01, 2005 12:46 PM
                > To: libertybasic@yahoogroups.com
                > Subject: [libertybasic] Re: USB Support
                >
                > Thanks David,
                >
                > your comments are very helpful. I figured I might be up against
                quite a
                > challenge if I did not have any pre-written DLL's. I guess I will
                look
                > at options using chips that have DLL support. Knowing that LB can
                at
                > least support USB connectivity through DLL interfaces is
                encouraging. I
                > guess the other option would be writting a DLL, which of course
                would
                > require a lot more work, knowledge, and more expensive tools (C
                > compiler, etc.)
                >
                > Thanks for making it clear what I am up against.
                >
                > If any one has a suggestion as to what chip would be a good choice
                for a
                > USB device endpoint that eases the PC side sofware development
                using LB,
                > that would be appreciated. I have been considering using the
                Microchip
                > PIC18F2455, but I don't know how easy it will be getting that chip
                to
                > work in a Windows XP environment, especially if I want to use LB to
                do
                > cost considerations.
                >
                > Mike
                >
                > --- In libertybasic@yahoogroups.com, David Speck
                > <MedelecInstruments@D...> wrote:
                > > Mike,
                > > Other LB users have been able to use LB to talk to USB
                controlling
                > DLLs,
                > > like external A/D converter boards. You will need to have the
                > specifics
                > > of how the control DLLs work, but most USB interface chip
                suppliers
                > > provide pre-written Windows control DLLs for their USB chips. If
                > your
                > > USB interface chips do not come with control DLLs, you might want
                > to
                > > look at different ones that come with the necessary software, as
                > writing
                > > and debugging the control DLLs can be difficult. There is a fair
                > bit of
                > > overhead involved in initializing a USB device, and also handling
                > whet
                > > happens if it is unplugged while in operation.
                > >
                > > There are sections in the LB conforums about DLL interfaces.
                > Previous
                > > posts archived in this newsgroup may also be helpful. I believe
                > that
                > > Alyce's eBook on LB has a section on implementing DLLs.
                > >
                > > LB itself is not, I believe capable of providing native host side
                > > support for custom USB devices, and I'm not sure it could be done
                > in VB,
                > > either. That sort of project is usually done in C or assembly.
                > >
                > > Dave
                > >
                > > mikensd5464 wrote:
                > >
                > > >I am developing a USB peripheral device. Eventually, I will
                need
                > to
                > > >have this device communicate on a Windows XP platform. The
                first
                > > >question I have is, will I be able to use Liberty Basic to
                create
                > an
                > > >application on Windows XP to provide the communication between
                my
                > USB
                > > >device and Windows XP? Will I need to use (or can I use) the
                > Windows
                > > >XP API with Liberty basic to do this? How much Windows XP API
                > > >knowledge would I need to obtain to do this? I am writing the
                > firmware
                > > >in the external USB device so I have complete control of what
                > needs to
                > > >be done for USB support in the device. I don't have any
                > application
                > > >level DLL's on the PC host to support the USB so I am wondering
                to
                > what
                > > >extent Liberty Basic could be used to provide this interface.
                > > >
                > > >I suppose I could look at Visual Basic to do this but that would
                > seem
                > > >like over kill if Liberty Basic could do the job.
                > > >
                > > >Is it worth considering Liberty Basic for this? And if so,
                where
                > is
                > > >the best place to find some helpful examples or tutorials for
                > this.
                > > >Any pointers in the right direction on how to do this would be
                > > >appreciated.
                > > >
                > > >Thanks,
                > > >Mike
                > > >
                >
                >
                >
                >
                >
                >
                > Yahoo! Groups Links
              Your message has been successfully submitted and would be delivered to recipients shortly.