Aveo Technology Corp. UVC camera (Bresser microscope)

(DE) System, Installation, Konfiguration, Hardware, Treiber, Netzwerk, Virtualisierung, etc.
(EN) System, Installation, Configuration, Hardware, Drivers, Network, Virtualisation, etc.
User avatar
wilfried
Posts: 624
Joined: Mon 23. Dec 2013, 18:26
Location: Barsinghausen

Aveo Technology Corp. UVC camera (Bresser microscope)

Post by wilfried » Mon 6. Jul 2015, 20:47

Hallo zusammen,

dieses Schätzchen würde ich gern unter ecs 2.1 und/oder ecs 2.2 nutzen.

Der Device-Report sieht so aus:

Code: Select all

<<< Device Description >>>
 Type            : 01
 USB Rev         : 200
 Class           : Unknown class EF
 Subclass        : Unknown Subclass EF
 Protocol        : Unknown Protocol EF
 Max. packetsize : 40
 Vendor  ID      : 1871
 Product ID      : 0101
 Device Release# : 000C
 Strings:
  Manufacturer Name : AVEO Technology Corp.
  Product Name      : USB2.0 Camera
  Serial number     : Not implemented
 Number of Configurations : 1

 Configuration 0 :
  Lenght     : 419
  Name       : <NONE>
  Value      : 1
  Attributes : 0x80
  Power      : 500 mA
  Interfaces : 2
No Interface 0x04, Endpoint 0x05 or Classspec 0x21-0x025 Description is 0x0B

  Interface 0
   Alt Setting : 0
   Name        : USB2.0 Camera
   Class       : Unknown class 0E
   SubClass    : Unknown Subclass 0E
   Protocol    : Unknown Protocol 0E
   Endpoints   : 1
Class-Specific Interface Descriptor, Size : 13
Class-Specific Interface Descriptor, Size : 18
Class-Specific Interface Descriptor, Size : 9
Class-Specific Interface Descriptor, Size : 11
Class-Specific Interface Descriptor, Size : 26

   Endpoint 0:
    Address     : 85
    Attributes  : 03
    Packetsize  : 0040
    Interval    : 7
Class-Specific Endpoint Descriptor, Size : 5

  Interface 1
   Alt Setting : 0
   Name        : <NONE>
   Class       : Unknown class 0E
   SubClass    : Unknown Subclass 0E
   Protocol    : Unknown Protocol 0E
   Endpoints   : 0
Class-Specific Interface Descriptor, Size : 14
Class-Specific Interface Descriptor, Size : 27
Class-Specific Interface Descriptor, Size : 30
Class-Specific Interface Descriptor, Size : 30
Class-Specific Interface Descriptor, Size : 30
Class-Specific Interface Descriptor, Size : 30
Class-Specific Interface Descriptor, Size : 30
Class-Specific Interface Descriptor, Size : 18
Class-Specific Interface Descriptor, Size : 6

  Interface 1
   Alt Setting : 1
   Name        : <NONE>
   Class       : Unknown class 0E
   SubClass    : Unknown Subclass 0E
   Protocol    : Unknown Protocol 0E
   Endpoints   : 1

   Endpoint 0:
    Address     : 83
    Attributes  : 05
    Packetsize  : 020C
    Interval    : 1

  Interface 1
   Alt Setting : 2
   Name        : <NONE>
   Class       : Unknown class 0E
   SubClass    : Unknown Subclass 0E
   Protocol    : Unknown Protocol 0E
   Endpoints   : 1

   Endpoint 0:
    Address     : 83
    Attributes  : 05
    Packetsize  : 030C
    Interval    : 1

  Interface 1
   Alt Setting : 3
   Name        : <NONE>
   Class       : Unknown class 0E
   SubClass    : Unknown Subclass 0E
   Protocol    : Unknown Protocol 0E
   Endpoints   : 1

   Endpoint 0:
    Address     : 83
    Attributes  : 05
    Packetsize  : 03FC
    Interval    : 1

  Interface 1
   Alt Setting : 4
   Name        : <NONE>
   Class       : Unknown class 0E
   SubClass    : Unknown Subclass 0E
   Protocol    : Unknown Protocol 0E
   Endpoints   : 1

   Endpoint 0:
    Address     : 83
    Attributes  : 05
    Packetsize  : 0BFC
    Interval    : 1

  Interface 1
   Alt Setting : 5
   Name        : <NONE>
   Class       : Unknown class 0E
   SubClass    : Unknown Subclass 0E
   Protocol    : Unknown Protocol 0E
   Endpoints   : 1

   Endpoint 0:
    Address     : 83
    Attributes  : 05
    Packetsize  : 13FC
    Interval    : 1
Ich glaube alle Requirements erfüllt und alle Installationsschritte durchgeführt zu haben, dennoch passiert folgendes:
uvcview.jpg
weblook.jpg
Liegt es wiedermal an mir?

Hiermit habe ich ebenfalls experimentiert, bisher ohne Erfolg.

Code: Select all

rem DEVICE=D:\OS2\BOOT\USBECD.SYS /D:1871:0101:000C /N:SNX$
Schade :(
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

User avatar
Wimpie
Posts: 50
Joined: Sat 10. Jan 2015, 21:58
Location: Uithoorn

Post by Wimpie » Tue 7. Jul 2015, 12:37

Hallo Wilfried,

It does not look too bad. It appears that you are using the 320x240 format at the highest possible bandwidth. This might be a combination that this camera does not like. There is a parameter that allows you to choose a lesser bandwidth setting. So please experiment a little. This parameter applies to uvcview.exe and weblook.exe only. By default these programs use the highest bandwidth (i.e. the same as /i5) available to your camera.

uvcview /i5 uses 3 x 1020 bytes
uvcview /i4 uses 2 x 1020 bytes
uvcview /i3 uses 1020 bytes
uvcview /i2 uses 780 bytes
uvcview /i1 uses 524 bytes.

Wim.

User avatar
wilfried
Posts: 624
Joined: Mon 23. Dec 2013, 18:26
Location: Barsinghausen

Post by wilfried » Tue 7. Jul 2015, 15:17

Hi Wim,

here are some results.
When booting with camera plugged in, calling uvcview offers a black window and a trap 000d in USBEHCD 000F:E667 after closing the window.

When starting uvcview without parameters and without plugged in camera there comes a message 'UVC Webcam not found' then plugged in camera and pushing 'retry' the window shows pictures for a while (about 30 seconds) then [00000280] Obtain Thread error!

With /i5 the time before [00000280] Obtain Thread error! expands into minutes.
Taking a snapshot with 320x240 is possible, but then [00000280] Obtain Thread error! comes up immediately.
Taking a snapshot with 640x480 works sometimes.

I am testing with IBM-Kernel from ecs 2.2 and OS/4 Kernel.
OS/4 Kernel sometimes does not boot with plugged in camera.

That helps a lot. Much better than yesterday. :D

User avatar
Wimpie
Posts: 50
Joined: Sat 10. Jan 2015, 21:58
Location: Uithoorn

Post by Wimpie » Tue 7. Jul 2015, 18:32

Hi Wilfried,

o.k. :) nice. Some video already.
Ich glaube alle Requirements erfüllt und alle Installationsschritte durchgeführt zu haben
When booting with camera plugged in, calling uvcview offers a black window and a trap 000d in USBEHCD 000F:E667 after closing the window.
It is possible that you need a better combination of usb drivers. So please tell me which drivers you are using. Are you using the Arca Noae 11.13 drivers already? Probably not. Run bldlevel against usbd.sys and usbehcd.sys and usbcalls.dll and usbresmg.sys that you are actually using.
Hiermit habe ich ebenfalls experimentiert, bisher ohne Erfolg.
rem DEVICE=D:\OS2\BOOT\USBECD.SYS /D:1871:0101:000C /N:SNX$
Right. The usbecd.sys driver is NOT used at all with the Webcam Support provided by WebSee10.zip which uses the usbcalls/usbresmg combination.

User avatar
wilfried
Posts: 624
Joined: Mon 23. Dec 2013, 18:26
Location: Barsinghausen

Post by wilfried » Tue 7. Jul 2015, 19:47

It is possible that you need a better combination of usb drivers. So please tell me which drivers you are using. Are you using the Arca Noae 11.13 drivers already? Probably not. Run bldlevel against usbd.sys and usbehcd.sys and usbcalls.dll and usbresmg.sys that you are actually using.
USBD.SYS 10.197 Lars Erdmann
USBEHCD.SYS 10.197
USBCALLS.DLL 14.20150118 W. M. Brul
USBRESMG.SYS 14.20150303 W.M. Brul

These are from the packages you mentioned on your homepage for using websee.

User avatar
Wimpie
Posts: 50
Joined: Sat 10. Jan 2015, 21:58
Location: Uithoorn

Post by Wimpie » Tue 7. Jul 2015, 21:49

These are from the packages you mentioned on your homepage for using websee.
Yes, right you are. I must say that I don't know what to do next. I could send my latest version of usbcalls.dll and usbresmg.sys for you to try out. I'll send it to your private email address that I have. I rather not post it here because the proper documentation is not finished yet. So you'll have to keep it to yourself.

Wim

User avatar
wilfried
Posts: 624
Joined: Mon 23. Dec 2013, 18:26
Location: Barsinghausen

Post by wilfried » Tue 7. Jul 2015, 23:47

Hi Wim,

thanks for your special support!

Starting uvcview without parameters offers the best result.
The camera shows more than 5 minutes video without freezing and without errormessage.
After maximizing the window or taking a picture the window freezes and the known errormessage is shown.
Picture saving works only with the OS/4 kernel.
After a freeze the camera needs a reset, unplug and plug in does the trick, but is it possible to give the camera a software reset when uvcview is starting?
When you tell me what to do, I will try to gather debuginformations for you. I am new with this topic but my first attempt to catch the kernel boot messages of the OS/4 kernel worked fine.
I think I need a debugkernel for this and the symfiles but do not know further on.

User avatar
Wimpie
Posts: 50
Joined: Sat 10. Jan 2015, 21:58
Location: Uithoorn

Post by Wimpie » Wed 8. Jul 2015, 09:14

wilfried wrote:Hi Wim,

thanks for your special support!

Starting uvcview without parameters offers the best result.
The camera shows more than 5 minutes video without freezing and without errormessage.
After maximizing the window or taking a picture the window freezes and the known errormessage is shown.
Picture saving works only with the OS/4 kernel.
Is it true that you got better results with the update that I sent you yesterday? In that case I have another update that I can send you later today. I'll have to build it first though. If that improves it even more then I could try and modify uvcview to use smaller buffers.
After a freeze the camera needs a reset, unplug and plug in does the trick, but is it possible to give the camera a software reset when uvcview is starting?
I was not able to implement a software reset. You might try to start uvcview twice i.e. when the timeout error 280 occurs start uvcview again and when you get an error try to start uvcview once more.
When you tell me what to do, I will try to gather debuginformations for you. I am new with this topic but my first attempt to catch the kernel boot messages of the OS/4 kernel worked fine.
I think I need a debugkernel for this and the symfiles but do not know further on.
That I cannot do. I am not familiar with kernal debugging. May be you are using an smp system with more than 1 core. I don't have that. I don't use the OS/4 kernal either. May be it works better if you run with one core enabled only. I don't really know what I am saying here. Feel like a parrot. If the problem has to do with smp then I cannot recreate that, let alone solve it.

Wim

User avatar
wilfried
Posts: 624
Joined: Mon 23. Dec 2013, 18:26
Location: Barsinghausen

Post by wilfried » Wed 8. Jul 2015, 10:49

Is it true that you got better results with the update that I sent you yesterday?
Yes!
I was not able to implement a software reset. You might try to start uvcview twice i.e. when the timeout error 280 occurs start uvcview again and when you get an error try to start uvcview once more.
[Testszenario:]
IBM Kernel 2.2 on T60 SMP 2 CPUs, plugged in camera on boot, uvcview without parameters
- Boot
- uvcview, freeze after seconds [000280]
- uvcview, black window
- uvcview, video for minutes, freeze and [000280] after trying snapshot, picture was not taken
- [message typing pause, about 30 seconds]
- uvcview, video for minutes, freeze after moving mousepointer over the window
- [message typing pause, about 30 seconds]
- uvcview, video for minutes, freeze after moving mousepointer over the window
[/Testszenario]
When camera is working cpu 1 is using about 20%, cpu 2 is idle.
When mousepointer moves over the camera window cpu 2 comes to work and camera freezes
When mousepointer moves around anywhere on the desktop cpu 2 comes to work and camera freezes
Hypothesis: When the camerathread has to switch the cpu, then the problem arise.

HTH

Two things are important for me:
- can you change uvcview so that the maximze window size is already shown at startup (640x480)
- when storeing snapshot comes to work with or without freeze then the camera becomes useful for me (see edit2:)

edit:
Starting a cpu consuming process (IrxRadio), both cpus are used.
When uvcview is starting afterwards, only cpu 1 is used further on but both programms work fine. The mousemovement brings cpu 2 to work and that make the camera freeze.

edit2:
I think the snapshot function can be obtained with PMVIEW, seems not so important in uvcview

edit3:
Only \320x240\uvcview.exe without parameters does not freeze. \640x480\uvcview without parameters or with /i5 freezes after seconds everytime. \640x480\uvcview /i1 - /i4 only show a black window.
Zuletzt geändert von wilfried am Wed 8. Jul 2015, 16:15, insgesamt 2-mal geändert.

User avatar
wilfried
Posts: 624
Joined: Mon 23. Dec 2013, 18:26
Location: Barsinghausen

Post by wilfried » Wed 8. Jul 2015, 15:53

May be it works better if you run with one core enabled only.
How can this be done?
Shoud I remove PSD=ACPI.PSD from CONFIG.SYS ?

User avatar
Wimpie
Posts: 50
Joined: Sat 10. Jan 2015, 21:58
Location: Uithoorn

Post by Wimpie » Wed 8. Jul 2015, 16:01

I have created uvcscope.exe which uses more isochronous buffers. And it starts up maximized.
http://home.hccnet.nl/w.m.brul/uvcvideo/uvcscope.zip

User avatar
Sigurd
Posts: 699
Joined: Mon 23. Dec 2013, 08:35

Post by Sigurd » Wed 8. Jul 2015, 16:32

wilfried » Mi 8. Jul 2015, 15:53 wrote:
May be it works better if you run with one core enabled only.
How can this be done?
Shoud I remove PSD=ACPI.PSD from CONFIG.SYS ?
Ergänze:

PSD=ACPI.PSD /MAXCPU=1
OS/2 versus Hardware - Maximum Warp!

User avatar
wilfried
Posts: 624
Joined: Mon 23. Dec 2013, 18:26
Location: Barsinghausen

Post by wilfried » Wed 8. Jul 2015, 16:51

UVCSCOPE:
640x480 on startup works fine.
With both cpus active, the freeze problem persists.
With /MAXCPU=1 (Thanks Sigurd) we've got it. No freeze anymore. Snapshot works fine also, nothing to do for PMVIEW PRO. ;)

Thanks Wim, you made another USB-toy working for me!!!

If you need more testing, you can count on me.

User avatar
Wimpie
Posts: 50
Joined: Sat 10. Jan 2015, 21:58
Location: Uithoorn

Post by Wimpie » Wed 8. Jul 2015, 17:16

wilfried » Wed 8. Jul 2015, 16:51 wrote:UVCSCOPE:
640x480 on startup works fine.
With both cpus active, the freeze problem persists.
With /MAXCPU=1 (Thanks Sigurd) we've got it. No freeze anymore. Snapshot works fine also, nothing to do for PMVIEW PRO. ;)

Thanks Wim, you made another USB-toy working for me!!!

If you need more testing, you can count on me.
Nice. :D Just one more test. The attached version might work even better. Please try.
UVCSCOPE.ZIP
In fact the real problem of working with more than one cpu has not been solved.

Wim.
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

User avatar
wilfried
Posts: 624
Joined: Mon 23. Dec 2013, 18:26
Location: Barsinghausen

Post by wilfried » Wed 8. Jul 2015, 17:47

It works fine with 1 cpu, with 2 cpus collecting freezes only, no difference.
What did I miss?

User avatar
Wimpie
Posts: 50
Joined: Sat 10. Jan 2015, 21:58
Location: Uithoorn

Post by Wimpie » Wed 8. Jul 2015, 18:06

wilfried » Wed 8. Jul 2015, 17:47 wrote:It works fine with 1 cpu, with 2 cpus collecting freezes only, no difference.
What did I miss?
Hallo Wilfried,

You missed nothing. I made a slight change in the order of taking a snapshot and refreshing the window which appeared to have no effect. Thanks for testing it out. I am done with it now.

Best regards,

Wim

User avatar
wilfried
Posts: 624
Joined: Mon 23. Dec 2013, 18:26
Location: Barsinghausen

Post by wilfried » Thu 9. Jul 2015, 12:28

Ach und ganz nebenbei funktioniert "natürlich" auch meine Webcam. :D
usb_device.jpg
uvcview.jpg
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

User avatar
Frank Wochatz
Posts: 961
Joined: Sun 22. Dec 2013, 22:04
Location: Berlin

Post by Frank Wochatz » Thu 9. Jul 2015, 12:44

Die Farben werden etwas grau dargestellt, zB. bei den Haaren.

User avatar
wilfried
Posts: 624
Joined: Mon 23. Dec 2013, 18:26
Location: Barsinghausen

Post by wilfried » Thu 9. Jul 2015, 12:55

Das ist nicht grau, das ist altersblond. :roll:

User avatar
wilfried
Posts: 624
Joined: Mon 23. Dec 2013, 18:26
Location: Barsinghausen

Post by wilfried » Thu 9. Jul 2015, 15:06

Hier noch ein Codeschnipsel für das 'Image post processing'. Soll verhindern das der letzte Snapshot überschrieben wird.

Code: Select all

d = date('S')
t = time('S')
f = 'uvc'd'_'t'.jpg'
'COPY uvcscope.jpg' f
return

User avatar
Wimpie
Posts: 50
Joined: Sat 10. Jan 2015, 21:58
Location: Uithoorn

Post by Wimpie » Fri 10. Jul 2015, 08:04

Hi Wilfried,

To show success I would appreciate to see a snapshot of a specimen under the Bresser microscope being posted here.

Wim.

User avatar
wilfried
Posts: 624
Joined: Mon 23. Dec 2013, 18:26
Location: Barsinghausen

Post by wilfried » Fri 10. Jul 2015, 09:56

Hi Wim,

here we go:
uvcs20150710_35328.jpg
uvcs20150710_35345.jpg
uvcs20150710_35394.jpg
As you can see I am a coin collector.
I use the scope to checkout success of coin cleaning.
This is a candidate, not yet cleaned.

And here the full picture with my webcam
uvcs20150710_38382.jpg
By the way, what about the situation if I want to use more than one camera at the same time (NSA)? ;)
Is there a feature thinkable to address the camera or a window with all camera streams shown up?
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

User avatar
Wimpie
Posts: 50
Joined: Sat 10. Jan 2015, 21:58
Location: Uithoorn

Post by Wimpie » Fri 10. Jul 2015, 12:18

As you can see I am a coin collector.
I use the scope to checkout success of coin cleaning.
This is a candidate, not yet cleaned.
Thank you Wilfried. :o I appreciate the sample chosen. I am impressed by the result. Keeps me motivated!
By the way, what about the situation if I want to use more than one camera at the same time (NSA)? ;)
How it works right now. Both programs weblook and uvcview scan for a webcam. When one is found an attempt is made to acquire that webcam. When a webcam is already acquired the program ends. Therefore the only way at this moment to acquire the other webcam is to have that one not yet plugged in when you start the first program. After starting the first program plug in the second webcam and start the second program. But I am afraid that the first webcam will freeze when you plug in the second webcam.
Is there a feature thinkable to address the camera or a window with all camera streams shown up?
One way would be to invent a parameter to these programs that provides the idVendor and idProduct to be used to acquire the webcam instead of searching for some webcam. I don't understand "window with all camera streams shown up" Do you mean a window listing available webcams that can be chosen from? Do you mean a window that shows the video from several cameras at the same time?

Wim.

User avatar
wilfried
Posts: 624
Joined: Mon 23. Dec 2013, 18:26
Location: Barsinghausen

Post by wilfried » Fri 10. Jul 2015, 12:50

Do you mean a window that shows the video from several cameras at the same time?
This version please.
After starting the first program plug in the second webcam and start the second program. But I am afraid that the first webcam will freeze when you plug in the second webcam.
In one combination of used USB Ports, I can plug in the second camera without freezing the first one. Starting the second program offers a
[0000FF15] leaving the first camera alive.

User avatar
Wimpie
Posts: 50
Joined: Sat 10. Jan 2015, 21:58
Location: Uithoorn

Post by Wimpie » Fri 10. Jul 2015, 17:52

wilfried » Fri 10. Jul 2015, 12:50 wrote:
Do you mean a window that shows the video from several cameras at the same time?
This version please.
That would be too much work. I am not going to do that. Sorry.
After starting the first program plug in the second webcam and start the second program. But I am afraid that the first webcam will freeze when you plug in the second webcam.
In one combination of used USB Ports, I can plug in the second camera without freezing the first one. Starting the second program offers a
[0000FF15] leaving the first camera alive.
The [0000FF15] means not enough bandwidth available.

Wim