USB Protocol Analyser

Go To Last Post
22 posts / 0 new
Author
Message
#1
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Can anyone recommend a USB protocol analyser?

 

I have here a USB controlled 'thing'. It comes with windows/macos/android software packages to control it via USB. My aim is to be able to embed this into a vehicle using a suitable embedded board to control it. Using a PC/Mac/Phone to control it is not an option. The goal is to be able to operate it with just a couple of buttons.

 

I don't know how intelligent the unit is. So I need to find out if a) it's dumb and all the cleverness is done on the host and the USB is transferring low level commands or b) it's clever and the USB is transferring high level 'macro' commands or 'this button has been pushed' commands.

 

So I *think* I need to sniff, and decode, the USB to see what's going on.

#1 Hardware Problem? https://www.avrfreaks.net/forum/...

#2 Hardware Problem? Read AVR042.

#3 All grounds are not created equal

#4 Have you proved your chip is running at xxMHz?

#5 "If you think you need floating point to solve the problem then you don't understand the problem. If you really do need floating point then you have a problem you do not understand."

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

USB Protocol Analyzer | AVR Freaks

P.S.

Is AVR Freaks an echo chamber? wink

 

edit : 

Oh!  'z' instead of 's'.

 

"Dare to be naïve." - Buckminster Fuller

Last Edited: Tue. Sep 22, 2020 - 01:53 PM
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

gchapman wrote:

USB Protocol Analyzer | AVR Freaks

P.S.

Is AVR Freaks an echo chamber? wink

 

edit : 

Oh!  'z' instead of 's'.

 

 

OUCH!!

 

But I was thinking that we had read this request elsewhere......

 

JIm

I would rather attempt something great and fail, than attempt nothing and succeed - Fortune Cookie

 

"The critical shortage here is not stuff, but time." - Johan Ekdahl

 

"Step N is required before you can do step N+1!" - ka7ehk

 

"If you want a career with a known path - become an undertaker. Dead people don't sue!" - Kartman

"Why is there a "Highway to Hell" and only a "Stairway to Heaven"? A prediction of the expected traffic load?"  - Lee "theusch"

 

Speak sweetly. It makes your words easier to digest when at a later date you have to eat them ;-)  - Source Unknown

Please Read: Code-of-Conduct

Atmel Studio6.2/AS7, DipTrace, Quartus, MPLAB, RSLogix user

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 3

But if you guys can't spell correctly it's hardly my fault! cheeky

#1 Hardware Problem? https://www.avrfreaks.net/forum/...

#2 Hardware Problem? Read AVR042.

#3 All grounds are not created equal

#4 Have you proved your chip is running at xxMHz?

#5 "If you think you need floating point to solve the problem then you don't understand the problem. If you really do need floating point then you have a problem you do not understand."

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I've not used their USB analysers, but their others were OK:

 

https://www.totalphase.com/proto...

 

EDIT

 

oh - they've already been mentioned in the other thread.

 

blush

Top Tips:

  1. How to properly post source code - see: https://www.avrfreaks.net/comment... - also how to properly include images/pictures
  2. "Garbage" characters on a serial terminal are (almost?) invariably due to wrong baud rate - see: https://learn.sparkfun.com/tutorials/serial-communication
  3. Wrong baud rate is usually due to not running at the speed you thought; check by blinking a LED to see if you get the speed you expected
  4. Difference between a crystal, and a crystal oscillatorhttps://www.avrfreaks.net/comment...
  5. When your question is resolved, mark the solution: https://www.avrfreaks.net/comment...
  6. Beginner's "Getting Started" tips: https://www.avrfreaks.net/comment...
Last Edited: Tue. Sep 22, 2020 - 03:12 PM
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Brian Fairchild wrote:
It comes with windows/macos/android software packages to control it via USB. ...

So I *think* I need to sniff, and decode, the USB to see what's going on.

May be able to sniff WinUSB.

Capturing USB Debug Traces - Microsoft Tech Community - 270840

 

"Dare to be naïve." - Buckminster Fuller

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Brian Fairchild wrote:
But if you guys can't spell correctly it's hardly my fault! 

 

Here it seems to take a neutral opinion of the spelling:

https://en.wikipedia.org/wiki/An...

 

Collins Dictionary notes that 'analyser' is a British spelling, and 'analyzer' is USA:

https://www.collinsdictionary.co...

 

 

When I type 'analyser' in a google search bar, the first thing that pops up is the translator.....FRENCH to ENGLISH!

 

 

So, it would appear that it's more a matter of local taste than anything else.

 

Jim

I would rather attempt something great and fail, than attempt nothing and succeed - Fortune Cookie

 

"The critical shortage here is not stuff, but time." - Johan Ekdahl

 

"Step N is required before you can do step N+1!" - ka7ehk

 

"If you want a career with a known path - become an undertaker. Dead people don't sue!" - Kartman

"Why is there a "Highway to Hell" and only a "Stairway to Heaven"? A prediction of the expected traffic load?"  - Lee "theusch"

 

Speak sweetly. It makes your words easier to digest when at a later date you have to eat them ;-)  - Source Unknown

Please Read: Code-of-Conduct

Atmel Studio6.2/AS7, DipTrace, Quartus, MPLAB, RSLogix user

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

It's been a while since I did any Android programming, but I think developer mode has an option for USB logging.

For low-speed devices, a cheap FX2-based logic analyzer will do the trick.

https://github.com/cpldcpu/u-wir...

 

I have no special talents.  I am only passionately curious. - Albert Einstein

 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

My Saleae logic analyser(analyzer) can do USB Low Speed, and Full speed.  Not sure what version of USB Brian is going after though....

 

Jim

 

 

I would rather attempt something great and fail, than attempt nothing and succeed - Fortune Cookie

 

"The critical shortage here is not stuff, but time." - Johan Ekdahl

 

"Step N is required before you can do step N+1!" - ka7ehk

 

"If you want a career with a known path - become an undertaker. Dead people don't sue!" - Kartman

"Why is there a "Highway to Hell" and only a "Stairway to Heaven"? A prediction of the expected traffic load?"  - Lee "theusch"

 

Speak sweetly. It makes your words easier to digest when at a later date you have to eat them ;-)  - Source Unknown

Please Read: Code-of-Conduct

Atmel Studio6.2/AS7, DipTrace, Quartus, MPLAB, RSLogix user

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

jgmdesign wrote:
it's more a matter of local taste

and Brian clearly has good taste ...

 

cheeky

Top Tips:

  1. How to properly post source code - see: https://www.avrfreaks.net/comment... - also how to properly include images/pictures
  2. "Garbage" characters on a serial terminal are (almost?) invariably due to wrong baud rate - see: https://learn.sparkfun.com/tutorials/serial-communication
  3. Wrong baud rate is usually due to not running at the speed you thought; check by blinking a LED to see if you get the speed you expected
  4. Difference between a crystal, and a crystal oscillatorhttps://www.avrfreaks.net/comment...
  5. When your question is resolved, mark the solution: https://www.avrfreaks.net/comment...
  6. Beginner's "Getting Started" tips: https://www.avrfreaks.net/comment...
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

At work we have an Ellisys analyzer( antique so not going to go for the number as it will no longer be manufactured), the one we have needs a laptop, but perhaps they in the mean time also made standalone models.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 1

Back in the day when we wanted to do some USB sniffing we simply used one of the equipment hire companies to rent a high end device. Obviously it depends on how long you think the requirement for USB analysis will be and there's a trade-off between hire and purchase cost but for a quick job, to get access to the very best equipment then hiring can be a "better" option.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

ZEROPLUS logic analyzers have USB protocol decoders for apparently packets at low, full, and high-speed (2Gsps logic analyzer for high-speed)

 

Review of Zeroplus LAP-C Logic Analyzer by Jack Ganssle

USB 1.1 | Logic Analyzers-Zeroplus

USB 2.0 | Logic Analyzers-Zeroplus

ZEROPLUS Logic Cube LAP-C(322000) - sigrok

 

edit :

LAP-C - How to analyze USB 1.1 protocol (En) - YouTube (2m41s)

 

"Dare to be naïve." - Buckminster Fuller

Last Edited: Wed. Oct 7, 2020 - 01:16 AM
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 1

Thanks for all the suggestions.

 

It looks like the unit is a lot more intelligent than I hoped which means the only way to control it is likely to be from a PC of some sort.

 

Time to investigate embedded PCs.

#1 Hardware Problem? https://www.avrfreaks.net/forum/...

#2 Hardware Problem? Read AVR042.

#3 All grounds are not created equal

#4 Have you proved your chip is running at xxMHz?

#5 "If you think you need floating point to solve the problem then you don't understand the problem. If you really do need floating point then you have a problem you do not understand."

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Brian Fairchild wrote:
Time to investigate embedded PCs.
Most obvious of which is Rpi perhaps?

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Brian Fairchild wrote:
... is likely to be from a PC of some sort.
Relative to current consumption, Android has automotive use cases.

Brian Fairchild wrote:
Time to investigate embedded PCs.
Your preferred local or regional distributor may have these in stock.

 

"Dare to be naïve." - Buckminster Fuller

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Raspberry Pi 4 can run Windows 10; driver availability is a concern plus its current consumption.

Windows 10 IoT Core can run on Raspberry Pi 2 or 3; headless, or, one foreground application (window)

Suggested Prototype Boards - Windows IoT | Microsoft Docs

 

"Dare to be naïve." - Buckminster Fuller

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

gchapman wrote:
Raspberry Pi 4 can run Windows 10; driver availability is a concern plus its current consumption.

I wouldn't have thought the RPi was particularly power-hungry relative to other embedded PCs capable of running Win10 ?

 

Of course, other small embedded Linux boards/modules & boxed units are available ...

 

https://www.avrfreaks.net/forum/embedded-linux-modules

 

Top Tips:

  1. How to properly post source code - see: https://www.avrfreaks.net/comment... - also how to properly include images/pictures
  2. "Garbage" characters on a serial terminal are (almost?) invariably due to wrong baud rate - see: https://learn.sparkfun.com/tutorials/serial-communication
  3. Wrong baud rate is usually due to not running at the speed you thought; check by blinking a LED to see if you get the speed you expected
  4. Difference between a crystal, and a crystal oscillatorhttps://www.avrfreaks.net/comment...
  5. When your question is resolved, mark the solution: https://www.avrfreaks.net/comment...
  6. Beginner's "Getting Started" tips: https://www.avrfreaks.net/comment...
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Yea, both are in that electrical power range.

A sample size of one :

VIA_AMOS-3006_datasheet_v200218-1880006.pdf

Power Supply 9~30V DC-in (typical: 19W)

Operating System Windows 10/8.1/8/7, Win 10 IoT, WES 7, Linux

via AMOS-3006 Embedded System - VIA | Mouser

 

edit :

DA-1000 Series User's Manual

[page 15, top right]

• Power Consumption Typical 8.3W, Max.15W

via Cincoze Rugged Ultra Compact Fanless Computer | OnLogic

 

"Dare to be naïve." - Buckminster Fuller

Last Edited: Wed. Oct 7, 2020 - 09:47 PM
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

clawson wrote:

Brian Fairchild wrote:
Time to investigate embedded PCs.

Most obvious of which is Rpi perhaps?

 

I really ought to buy a Pi just to see what they can do.

 

gchapman wrote:

Brian Fairchild wrote:
... is likely to be from a PC of some sort.

Relative to current consumption, Android has automotive use cases.

 

Turns out that the Android version, because it's designed to run primarily on phones, is cut down and doesn't have the required functionality.

 

 

gchapman wrote:

Raspberry Pi 4 can run Windows 10; driver availability is a concern plus its current consumption.

 

Driver appears to be using libusbK so I need to investigate that. Current consumption isn't a problem.

 

awneil wrote:

Of course, other small embedded Linux boards/modules & boxed units are available ...

 

Must be Windows (or MacOS, but I'm not going there).

#1 Hardware Problem? https://www.avrfreaks.net/forum/...

#2 Hardware Problem? Read AVR042.

#3 All grounds are not created equal

#4 Have you proved your chip is running at xxMHz?

#5 "If you think you need floating point to solve the problem then you don't understand the problem. If you really do need floating point then you have a problem you do not understand."

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Brian Fairchild wrote:
I really ought to buy a Pi just to see what they can do.
Basically a desktop Linux PC that's about the size of a credit card and costs £20+

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Rent, Lease, or Buy Electronic Test Equipment? Here's How to Decide | Electronic Design

by Amanda Wilson

OCT 07, 2020

Evolving technology, certifications, and time are just some of the points to consider before renting, leasing, or buying that next piece of equipment.

...

 

"Dare to be naïve." - Buckminster Fuller