Sonsivri
 
*
Welcome, Guest. Please login or register.
Did you miss your activation email?
April 28, 2024, 11:16:55 23:16


Login with username, password and session length


Pages: 1 2 [All]
Print
Author Topic: LABVIEW USB Interfacing with PIC 18F4550 using HID  (Read 84031 times)
0 Members and 1 Guest are viewing this topic.
vbcoder
Senior Member
****
Offline Offline

Posts: 285

Thank You
-Given: 94
-Receive: 322


Nothing is True, Everything is Permitted.


« on: December 17, 2009, 12:26:52 12:26 »

Hi,
I created this poll as I surfed the internet for an HID VIs for communicating with PIC USB Slave controllers using NI LABVIEW. So far, all users depend on NI VISA which requires creation of a driver for your device.

The benefit of this project is that your interfacing card will be used as a  "plug and play device" which utilizes the HID communication protocol (like USB Keyboard or Mouse). This requires no additional driver to be installed (it is rational as you don't expect to find a driver to run your keyboard or mouse). It relies on Hid.dll found in system32 directory.

I'm in the middle of the project and so far everything is pretty good. I'll wait for the members of our forums to participate in the poll to see if this project is worthy to be published.

Cheers
Logged

Quote
Education is a progressive discovery of our own ignorance
Alienbeing
Active Member
***
Offline Offline

Posts: 164

Thank You
-Given: 68
-Receive: 45


« Reply #1 on: December 17, 2009, 01:22:50 13:22 »

I have used the USB to UART FT232RL from FTDI which works very well when interfacing with applications I've written for windows. Specifically I write programs in Delphi but see no reason why they wouldn't work with labview also. I program with labview also, but have not used labview with any PIC USB devices. Eventually I will need to work on writing something in labview that does interface to a microcontroller for an up coming job. But for now the FTDI chips are the best solution for me requiring simple serial programming on any PIC that supports serial communications.

Alienbeing
Logged
vbcoder
Senior Member
****
Offline Offline

Posts: 285

Thank You
-Given: 94
-Receive: 322


Nothing is True, Everything is Permitted.


« Reply #2 on: December 17, 2009, 03:15:31 15:15 »

I used FT245 FIFO from FTDI in the past. I created 2 projects under Microsoft Visual Basic 2005. However, the complexity of the circuit was my motivation to migrate to USB enabled PIC devices. The simplicity of PCB is drastic using the latter.

If you use FT232, the FTDI provides a LABVIEW examples with a VI library to carryout the read, write operation.
Logged

Quote
Education is a progressive discovery of our own ignorance
pickit2
Moderator
Hero Member
*****
Offline Offline

Posts: 4648

Thank You
-Given: 826
-Receive: 4207


There is no evidence that I muted SoNsIvRi


« Reply #3 on: December 17, 2009, 03:27:47 15:27 »

How about using 18F4550 Usb demo board (from my bookmaked pages of stuff I marked for "must do this soon")

http://eegeek.net/content/view/13/32/

http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=2651&param=en534494
Logged

Note: I stoped Muteing bad members OK I now put thier account in sleep mode
vbcoder
Senior Member
****
Offline Offline

Posts: 285

Thank You
-Given: 94
-Receive: 322


Nothing is True, Everything is Permitted.


« Reply #4 on: December 17, 2009, 04:00:36 16:00 »

It sounds very good. If I may only propose minor modification:

  • We may add rosettes connected to all free pins of the microcontroller, this way, it would be easy to integrate it with any external module (if you recall my posted project, I implemented this idea in the serial interfacing with LABVIEW
  • I already test the design using our favorite proteus 7.6. Thus I do need help in creating the PCB based on ARES since I only do such a work on Eagle. This way the project will be enriched as anyone will be able to simulate most of his job without even leaving his disk

What do you think?
Logged

Quote
Education is a progressive discovery of our own ignorance
pickit2
Moderator
Hero Member
*****
Offline Offline

Posts: 4648

Thank You
-Given: 826
-Receive: 4207


There is no evidence that I muted SoNsIvRi


« Reply #5 on: December 17, 2009, 06:49:45 18:49 »

first how about having this topic moved to Projects.
Quote
•We may add rosettes connected to all free pins of the microcontroller, this way, it would be easy to integrate it with any external module (if you recall my posted project, I implemented this idea in the serial interfacing with LABVIEW
•I already test the design using our favorite proteus 7.6. Thus I do need help in creating the PCB based on ARES since I only do such a work on Eagle. This way the project will be enriched as anyone will be able to simulate most of his job without even leaving his disk
The project I had in my to do list(was going to be VBasic front end, would also have the buck converter from the pickit2 (including the power on & voltage ajust from the pickit2 gui)
and a lcd port (in 4 bit mode so only use 1 port of the pic).
Logged

Note: I stoped Muteing bad members OK I now put thier account in sleep mode
bbarney
Moderator
Hero Member
*****
Offline Offline

Posts: 2430

Thank You
-Given: 405
-Receive: 545


Uhm? where did pickit put my mute button


« Reply #6 on: December 17, 2009, 07:25:36 19:25 »

Moved  & stickyed

Have you looked at the Bitwacker

http://www.schmalzhaus.com/UBW/
Logged

Ever wonder why Kamikaze pilot's wore helmet's ?
pickit2
Moderator
Hero Member
*****
Offline Offline

Posts: 4648

Thank You
-Given: 826
-Receive: 4207


There is no evidence that I muted SoNsIvRi


« Reply #7 on: December 17, 2009, 08:04:37 20:04 »

Have you looked at the Bitwacker

http://www.schmalzhaus.com/UBW/
we could start with this for the 18F2550 and mod it to 18F4550
http://www.sparkfun.com/datasheets/DevTools/PIC/UBW-PTH-Kit-Schematic.pdf
Logged

Note: I stoped Muteing bad members OK I now put thier account in sleep mode
fonak
Junior Member
**
Offline Offline

Posts: 64

Thank You
-Given: 72
-Receive: 179


« Reply #8 on: December 17, 2009, 08:17:40 20:17 »

HI look at this. It's simlpe LV apps, CCS source code and microchip MCHPUSB Driver.
« Last Edit: December 17, 2009, 08:20:25 20:20 by fonak » Logged
bbarney
Moderator
Hero Member
*****
Offline Offline

Posts: 2430

Thank You
-Given: 405
-Receive: 545


Uhm? where did pickit put my mute button


« Reply #9 on: December 17, 2009, 08:35:37 20:35 »

we could start with this for the 18F2550 and mod it to 18F4550
http://www.sparkfun.com/datasheets/DevTools/PIC/UBW-PTH-Kit-Schematic.pdf

The site I posted is the author of the one for sale at Sparkfun and there is a couple different boards using 5 different chips on that site along with software in liberty basic and bootloader's and a whole lot of stuff really  Grin  so there has to be something there for everyone Cheesy
« Last Edit: December 17, 2009, 08:39:18 20:39 by bbarney » Logged

Ever wonder why Kamikaze pilot's wore helmet's ?
vbcoder
Senior Member
****
Offline Offline

Posts: 285

Thank You
-Given: 94
-Receive: 322


Nothing is True, Everything is Permitted.


« Reply #10 on: December 18, 2009, 01:39:20 01:39 »

HI look at this. It's simlpe LV apps, CCS source code and microchip MCHPUSB Driver.

This is no different from the traditional method used by NI VISA. The HID transfer protocol offers the capability of  "not using a driver" with your installed software. We only try to learn something new.

first how about having this topic moved to Projects.The project I had in my to do list(was going to be VBasic front end, would also have the buck converter from the pickit2 (including the power on & voltage ajust from the pickit2 gui)
and a lcd port (in 4 bit mode so only use 1 port of the pic).

I started with this idea and did a complete class for using it with custom enumerated commands with proteus. I thought it would be better to play with LABVIEW especially that none up to the best of my knowledge provided an easy way to do so.

Well, my flames are getting higher by this constructive and valuable opinions. More ideas would certainly put this project in the right direction.
Logged

Quote
Education is a progressive discovery of our own ignorance
burhanmz
Guest
« Reply #11 on: July 15, 2010, 04:20:16 04:20 »

I am interested in this project.
I can not believe I'd find some like this so soon. Its one of the reasons i joined.
I am trying to interface a camera and wireless RF transceiver connected to PIC18F4550 at end 'A'. And on the other end 'B' just a PIC18F4550 with another transceiver. Then try to make an API in LabView and send a command to PIC to get take pictures and transmit it to end 'B' and view/save it on PC.

camera that I bought
http://www.sparkfun.com/commerce/product_info.php?products_id=9334

Transceiver
http://www.sparkfun.com/commerce/product_info.php?products_id=151

So far I'm hung over using Bootloader from UBW (bit whacker) which is a great find, in LabView.
Logged
MisterX
Newbie
*
Offline Offline

Posts: 29

Thank You
-Given: 158
-Receive: 24


« Reply #12 on: August 01, 2010, 02:00:27 02:00 »

Hi vbcoder, did you managed to communoicate with an HID device in LabView using the Call Library Function pointing hid.dll ?

I try to do this since some time without success. It seems like NI don't want people to know much about that, they prefer selling their hardware!!!

My main problem is that I don't know how the hid.dll library is working.

If you have any usefull information it will be very appreciate. Thank you.
Logged
nin82
Guest
« Reply #13 on: September 22, 2010, 09:58:04 21:58 »

such an interesting project shouldnt be dead... is it?? Sad
Logged
Rey Mafia
Newbie
*
Offline Offline

Posts: 18

Thank You
-Given: 4
-Receive: 21


« Reply #14 on: November 05, 2010, 01:37:24 01:37 »

Are there any news?
Logged
koseyel
Junior Member
**
Offline Offline

Posts: 60

Thank You
-Given: 500
-Receive: 224


« Reply #15 on: April 08, 2011, 09:16:53 21:16 »

Are there any news?

Here is  an interesting discussion on using hid.ll or Microchip custom driver:
http://forums.ni.com/t5/Instrument-Control-GPIB-Serial/Sending-and-receiving-data-from-PIC18F4550/m-p/1046826?requireLogin=False

Regards
Logged
motox
Cracking Team
Active Member
****
Offline Offline

Posts: 187

Thank You
-Given: 255
-Receive: 319



« Reply #16 on: June 11, 2012, 11:39:19 23:39 »

In the last year I made an acquisition board with the PIC18F4550. The PC software was made in LabVIEW using the WinUSB driver. Since I only use MS OS, this driver is more than good for my applications.

I made the USB driver using the NI-VISA Driver Development Wizard version 4.1. It is very simple to use.
The HID class has a serious disadvantage, you cannot use bulk pipes. With WinUSB you can use bulk pipes for large amount of data transfer.

The USB auto-detect is very easy to implement. There is no need for user interaction for the board to be detected and the program starts to work immediately (e.g. send commands, receive sampling data, etc…).

In attachment you can see a picture of the user interface.
Logged
koky
Active Member
***
Offline Offline

Posts: 180

Thank You
-Given: 149
-Receive: 157


WWW
« Reply #17 on: June 12, 2012, 01:41:22 13:41 »

dear motox can you post your code of Pic e labview  ?

thank you

koky
Logged
motox
Cracking Team
Active Member
****
Offline Offline

Posts: 187

Thank You
-Given: 255
-Receive: 319



« Reply #18 on: June 12, 2012, 07:58:43 19:58 »

dear motox can you post your code of Pic e labview  ?

thank you

koky
Dear koky, I made this program for my employer. So I cannot give the complete project. But I can guide you and give the essential parts needed to start your own project.
Logged
koky
Active Member
***
Offline Offline

Posts: 180

Thank You
-Given: 149
-Receive: 157


WWW
« Reply #19 on: June 13, 2012, 07:05:23 07:05 »

Dear koky, I made this program for my employer. So I cannot give the complete project. But I can guide you and give the essential parts needed to start your own project.
is good if you can share a semplified example llike "hello word or one led " were is possible understand mechanism PIC - HID - labview that use usb port
Logged
motox
Cracking Team
Active Member
****
Offline Offline

Posts: 187

Thank You
-Given: 255
-Receive: 319



« Reply #20 on: June 13, 2012, 10:15:54 22:15 »

is good if you can share a semplified example llike "hello word or one led " were is possible understand mechanism PIC - HID - labview that use usb port
Realize that I will have to spend at least one hour or more doing it. So if this is not really important to you, please say it. But if is important, then I will be glad to help you.

I will try to set/clear one LED and get one button status using the Microchip’s PICDEM Full Speed USB hardware platform (PIC18F4550) and LabVIEW version 9.0.1. Is this ok for you?
Logged
koky
Active Member
***
Offline Offline

Posts: 180

Thank You
-Given: 149
-Receive: 157


WWW
« Reply #21 on: June 14, 2012, 06:03:42 06:03 »

Realize that I will have to spend at least one hour or more doing it. So if this is not really important to you, please say it. But if is important, then I will be glad to help you.

I will try to set/clear one LED and get one button status using the Microchip’s PICDEM Full Speed USB hardware platform (PIC18F4550) and LabVIEW version 9.0.1. Is this ok for you?
Realize that I will have to spend at least one hour or more doing it. So if this is not really important to you, please say it. But if is important, then I will be glad to help you.

I will try to set/clear one LED and get one button status using the Microchip’s PICDEM Full Speed USB hardware platform (PIC18F4550) and LabVIEW version 9.0.1. Is this ok for you?

yes can be very useful for undertand all process, but when you have time for this
many thanks koky
Logged
motox
Cracking Team
Active Member
****
Offline Offline

Posts: 187

Thank You
-Given: 255
-Receive: 319



« Reply #22 on: June 16, 2012, 06:30:07 18:30 »

LABVIEW USB Interfacing with PIC18F4550 using WinUSB

I made this program because user ‘koky’ has requested it but anyone can use it for educational purposes.

The LabVIEW program communicates with the PIC18F4550 through USB using WinUSB driver. The firmware is compatible with Microchip's PICDEM Full Speed USB Demonstration Board.
Logged
famos
Inactive

Offline Offline

Posts: 1

Thank You
-Given: 2
-Receive: 1


« Reply #23 on: May 24, 2014, 10:00:38 22:00 »




Hello,

has anyone used WinUSB or libusb with Labview? I'm looking for examples!

Thanks
« Last Edit: May 25, 2014, 01:09:26 01:09 by bbarney » Logged
pickit2
Moderator
Hero Member
*****
Offline Offline

Posts: 4648

Thank You
-Given: 826
-Receive: 4207


There is no evidence that I muted SoNsIvRi


« Reply #24 on: May 24, 2014, 11:07:02 23:07 »

Hello,

has anyone used WinUSB or libusb with Labview? I'm looking for examples!

Thanks
did you even read the topic?
you ask "has anyone used WinUSB..." FFS...
never mind the whole topic, read the post before yours #22
Logged

Note: I stoped Muteing bad members OK I now put thier account in sleep mode
CocaCola
Senior Member
****
Offline Offline

Posts: 482

Thank You
-Given: 169
-Receive: 232



« Reply #25 on: May 25, 2014, 06:32:34 18:32 »

The topic fits. I'm interfacing a PIC 18F4550 to LabView. The PIC side is solved but for LabView I'm  locking for a solution.

Hmm, as suggested multiple times now, did you bother reading the post above your inital post, I suspect not since it has EVERYTHING you are asking for!!!

http://www.sonsivri.to/forum/index.php?topic=26537.msg133404#msg133404




Logged
CocaCola
Senior Member
****
Offline Offline

Posts: 482

Thank You
-Given: 169
-Receive: 232



« Reply #26 on: May 25, 2014, 08:35:50 20:35 »

I'm again, post #22 uses NI Visa with the disadvantage that everything stops working when the port is changed.

Labview uses NI-Visa by default to communicate it's kind of a package deal, and since NI-Visa is pretty much the de-facto industry standard it's not a bad thing...
Logged
bbarney
Moderator
Hero Member
*****
Offline Offline

Posts: 2430

Thank You
-Given: 405
-Receive: 545


Uhm? where did pickit put my mute button


« Reply #27 on: May 25, 2014, 08:49:28 20:49 »

I don't know if I should laugh or cry , but my mute finger is getting awful itchy  Shocked
Logged

Ever wonder why Kamikaze pilot's wore helmet's ?
biomed12
Junior Member
**
Offline Offline

Posts: 94

Thank You
-Given: 67
-Receive: 5


« Reply #28 on: November 19, 2016, 11:22:26 23:22 »

I wonder, what is the better side of HID over CDC? It is very simple to communicate with labview via serial protocol. I have one project like that. It is about real time chart plotting. Its costumization is not perfect but the protocol works properly.
Logged
motox
Cracking Team
Active Member
****
Offline Offline

Posts: 187

Thank You
-Given: 255
-Receive: 319



« Reply #29 on: November 20, 2016, 12:07:37 00:07 »

I wonder, what is the better side of HID over CDC? It is very simple to communicate with labview via serial protocol. I have one project like that. It is about real time chart plotting. Its costumization is not perfect but the protocol works properly.
With HID it is much easier to do auto-detect and to auto-run a program or a subprogram when the device is connected.
Forcing the user to open the Device Danager to see the port number, insert that number in a box and click on the ‘open port’ button is not very professional. Imagine that for a ‘normal’ Windows user that doesn’t even know what Device Manager is…
Logged
Gallymimu
Hero Member
*****
Offline Offline

Posts: 704

Thank You
-Given: 151
-Receive: 214


« Reply #30 on: November 20, 2016, 06:25:26 06:25 »

With HID it is much easier to do auto-detect and to auto-run a program or a subprogram when the device is connected.
Forcing the user to open the Device Danager to see the port number, insert that number in a box and click on the ‘open port’ button is not very professional. Imagine that for a ‘normal’ Windows user that doesn’t even know what Device Manager is…

For a "professional" option you can simply detect your serial port automagically.  It's not that hard.  See 3.6 below for an example with FTDI
http://www.ftdichip.com/Support/Documents/AppNotes/AN_123_How%20COM%20Ports_Are%20Allocated%20on%20Driver_Installation.pdf
Logged
motox
Cracking Team
Active Member
****
Offline Offline

Posts: 187

Thank You
-Given: 255
-Receive: 319



« Reply #31 on: November 20, 2016, 10:29:28 10:29 »

For a "professional" option you can simply detect your serial port automagically.  It's not that hard.  See 3.6 below for an example with FTDI
http://www.ftdichip.com/Support/Documents/AppNotes/AN_123_How%20COM%20Ports_Are%20Allocated%20on%20Driver_Installation.pdf
How do you implement that in LabVIEW without using FTDI chips?

I don't have any doubts about its possibility, but I think it is much easier with HID, WinUSB or a custom driver.
Logged
Martin Miranda
Newbie
*
Offline Offline

Posts: 10

Thank You
-Given: 8
-Receive: 0


« Reply #32 on: February 15, 2020, 11:49:36 11:49 »

Moved  & stickyed

Have you looked at the Bitwacker

http://www.schmalzhaus.com/UBW/

THANKS! i think i still have some few 18f2550's around.

Posted on: February 15, 2020, 05:47:49 05:47 - Automerged

With HID it is much easier to do auto-detect and to auto-run a program or a subprogram when the device is connected.
Forcing the user to open the Device Danager to see the port number, insert that number in a box and click on the ‘open port’ button is not very professional. Imagine that for a ‘normal’ Windows user that doesn’t even know what Device Manager is…

i concur.
Logged
Pages: 1 2 [All]
Print
Jump to:  


DISCLAIMER
WE DONT HOST ANY ILLEGAL FILES ON THE SERVER
USE CONTACT US TO REPORT ILLEGAL FILES
ADMINISTRATORS CANNOT BE HELD RESPONSIBLE FOR USERS POSTS AND LINKS

... Copyright © 2003-2999 Sonsivri.to ...
Powered by SMF 1.1.18 | SMF © 2006-2009, Simple Machines LLC | HarzeM Dilber MC