Mini DV MD80 thumb camera: Usage notes with Fedora 12

This post was written by eli on January 31, 2013
Posted Under: Linux,miscellaneous

So I bought this $10 mini DV camera on EBay. Since the user’s manual is pretty out of sync with itself and the product (Chinese and English doesn’t match, even by looking at the specification and drawings) I’ve written down some basic howto, in case I need to remember what to do at a later stage.

I can’t say I’m disappointed, because I didn’t really expect things to work as specified on a $10 camera.

Even though the manual promises 70 minutes of recording time, I got 48 minutes in reality before the camera stopped itself (the memory card wasn’t full, it was the battery that ran out).

Note that a MicroSD card needs to be purchased separately, which will cost significantly relative to the camera’s price (some $8 in a store, possibly $4 on EBay for a Sandisk card). The largest file I managed to obtain with a 48 minutes recording was 1.7 GB, so a 2 GB card is probably large enough.

LED colors

It looks like the LED colors were changed since the manual was written. The blue LED is the power LED, indicating that the device is on. The red LED says something is happening.

Optics and image quality

The image is a 720x480, apparently progressive (non-interlaced) rolling shutter with a noise level that resembles web cameras from the late 90′s. The measured opening angle on the frame’s width was as narrow as 25 degrees which, I suppose is about 80mm focal length on a 35mm-equivalent scale. In other words, this is with a slight touch of a tele lens.

The camera was announced having an 80 degrees view angle by its EBay seller, which turned out to be wrong. The narrow angle is a problem for most relevant applications, since it the desired subject gets off-frame easily. It’s also the reason for the shaky footage this camera emits. I’m not even sure about using this as a helmet camera.

With a $1 Jelly Lens, the angle of view rises to 40 degrees, which is around 50mm focal length (on a 35mm scale). In other words, the extra lens is some x0.6 (not very impressive, but what did I expect from a $1 lens?) and it gives the camera a “normal” focal length. The sticky adhesive on the jelly lens held the very small piece of plastic firmly in place. I don’t know how well this would work on a helmet cam, though. Did I say $1?

I should mention, that for a cellular phone with an already pretty wide angle, this Jelly Lens actually achieves an impressive wide angle (and green visible borders). So it’s a very good deal, given its price…

Another lens tried out was the AGPtek “180 Degrees” lens for cellular phones for some $5. It is often announced as x0.28, but it’s not. My measurement was 53 degrees, which is about 36 mm focal length (on a 35mm scale), so the lens did in fact x0.45. Better than the Jelly Lens, but by far not as good as expected. It does have a slight roundoff in the corners like a fish-eye lens at 53 degrees view angle, which gives the illusion that it’s wider than it actually is.

Charging

Connect the camera to a computer via USB, so it gets power. The blue LED goes on, and the red LED starts blinking. According to the user’s manual, a green LED should be blinking, but it looks like the color was changed to red. The user’s manual also says that the LED should stop blinking when the battery is charged, but that didn’t happen even after an overnight charging. It just went on blinking (red). According to the seller at EBay, the charging time should be 3 hours. Go figure.

Note that the MicroSD is mounted on the computer due to the USB connection.

Accessing the MicroSD card

Well, simply connect to the computer (as in for charging). The following (or similar) will appear at the log:

Jan 31 17:54:27 myhost kernel: hub 1-2:1.0: unable to enumerate USB device on port 2
Jan 31 17:54:29 myhost kernel: usb 1-2.2: new high speed USB device using ehci_hcd and address 62
Jan 31 17:54:29 myhost kernel: usb 1-2.2: New USB device found, idVendor=04d6, idProduct=e101
Jan 31 17:54:29 myhost kernel: usb 1-2.2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
Jan 31 17:54:29 myhost kernel: usb 1-2.2: Product: usbdisk  
Jan 31 17:54:29 myhost kernel: usb 1-2.2: Manufacturer: anyka    
Jan 31 17:54:29 myhost kernel: usb 1-2.2: SerialNumber: 942954944
Jan 31 17:54:29 myhost kernel: scsi102 : usb-storage 1-2.2:1.0
Jan 31 17:54:30 myhost kernel: scsi 102:0:0:0: Direct-Access     anyka    MMC Disk         1.00 PQ: 0 ANSI: 2
Jan 31 17:54:30 myhost kernel: sd 102:0:0:0: Attached scsi generic sg4 type 0
Jan 31 17:54:30 myhost kernel: sd 102:0:0:0: [sdd] 3858560 512-byte logical blocks: (1.97 GB/1.83 GiB)
Jan 31 17:54:30 myhost kernel: sd 102:0:0:0: [sdd] Write Protect is off
Jan 31 17:54:30 myhost kernel: sd 102:0:0:0: [sdd] Assuming drive cache: write through
Jan 31 17:54:30 myhost kernel: sd 102:0:0:0: [sdd] Assuming drive cache: write through
Jan 31 17:54:30 myhost kernel: sdd:
Jan 31 17:54:30 myhost kernel: sd 102:0:0:0: [sdd] Assuming drive cache: write through
Jan 31 17:54:30 myhost kernel: sd 102:0:0:0: [sdd] Attached SCSI removable disk

This is just like connecting a disk-on-key, and so is the access to the content.

Using as a webcam

This is useful for getting an idea of the image quality, and immediate feedback for aiming the camera properly.

With the camera connected via USB (and hence the MicroSD card mounted), unmount the volume (“Safely Remove Drive” or something) and press the camera’s Power button for three seconds or so. The red LED will stop blinking, and the blue remains steadily on. The following lines in the log indicate the transformation into a web cam:

Jan 31 17:55:20 myhost kernel: usb 1-2.2: USB disconnect, address 62
Jan 31 17:55:21 myhost gnome-keyring-daemon[28416]: removing removable location: /media/New flash
Jan 31 17:55:21 myhost gnome-keyring-daemon[28416]: no volume registered at: /media/New flash
Jan 31 17:55:21 myhost gnome-keyring-daemon[3139]: removing removable location: /media/New flash
Jan 31 17:55:21 myhost gnome-keyring-daemon[3139]: no volume registered at: /media/New flash
Jan 31 17:55:23 myhost kernel: usb 1-2.2: new high speed USB device using ehci_hcd and address 63
Jan 31 17:55:23 myhost kernel: usb 1-2.2: New USB device found, idVendor=04d6, idProduct=e102
Jan 31 17:55:23 myhost kernel: usb 1-2.2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
Jan 31 17:55:23 myhost kernel: usb 1-2.2: Product: UVC..
Jan 31 17:55:23 myhost kernel: usb 1-2.2: Manufacturer: ANYKA
Jan 31 17:55:23 myhost kernel: usb 1-2.2: SerialNumber: 12345
Jan 31 17:55:23 myhost kernel: uvcvideo: Found UVC 1.00 device UVC.. (04d6:e102)
Jan 31 17:55:23 myhost kernel: uvcvideo: UVC non compliance - GET_DEF(PROBE) not supported. Enabling workaround.
Jan 31 17:55:23 myhost kernel: input: UVC.. as /devices/pci0000:00/0000:00:1a.7/usb1/1-2/1-2.2/1-2.2:1.0/input/input13

The last row indicates the generation of /dev/video0:

$ ls -l /dev/video0
crw-rw----+ 1 root video 81, 0 2013-01-31 17:55 /dev/video0

It’s important to start doing something with the webcam soon, or the camera goes into sleep mode. Running Cheese Webcam Booth (2.28.1) shows an immediate image. No configuration should be necessary (it should find /dev/video0 automatically).

Using as a stand-alone camera

According to the manual, the camera has two modes: Normal recording and audio-triggered. I haven’t tried the audio-triggered mode, and neither do I want to. To switch from one mode to another, there’s the “Mode” button. Which I’m not touching.

Needless to say, a MicroSD card must be inserted for this to work.

To start, make sure that the device is disconnected from the computer and off (no LED is on). Press the Power button for a second, wait a few seconds. Only the blue LED should lit steadily.

To start and stop recording, press the button on the camera’s short edge (next to the record/stop symbols). The red LED will blink at 0.5 Hz during recording.

If the “Mode” button is pressed, the red LED will blink at 2-3 Hz to indicate audio-triggered recording. Turning the camera off and on is the best way to make sure the camera is at a known state.

Playback

The video files are put in the “VIDEO” subdirectory. A typical playback session with mplayer looks like this:

$ mplayer "/media/New Flash/VIDEO/2012-9-21 18-26-54.AVI"
MPlayer SVN-r31628-4.4.4 (C) 2000-2010 MPlayer Team
mplayer: could not connect to socket
mplayer: No such file or directory
Failed to open LIRC support. You will not be able to use your remote control.

Playing /media/New Flash/VIDEO/2012-9-21 18-26-54.AVI.
AVI file format detected.
[aviheader] Video stream found, -vid 0
[aviheader] Audio stream found, -aid 1
VIDEO:  [MJPG]  720x480  24bpp  30.000 fps  2449.9 kbps (299.1 kbyte/s)
Clip info:
 Software: ankarec
Failed to open VDPAU backend libvdpau_nvidia.so: cannot open shared object file: No such file or directory
[vdpau] Error when calling vdp_device_create_x11: 1
==========================================================================
Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family
Selected video codec: [ffmjpeg] vfm: ffmpeg (FFmpeg MJPEG)
==========================================================================
==========================================================================
Opening audio decoder: [pcm] Uncompressed PCM audio decoder
AUDIO: 8000 Hz, 1 ch, s16le, 128.0 kbit/100.00% (ratio: 16000->16000)
Selected audio codec: [pcm] afm: pcm (Uncompressed PCM)
==========================================================================
AO: [pulse] 8000Hz 1ch s16le (2 bytes per sample)
Starting playback...
Movie-Aspect is undefined - no prescaling applied.
VO: [xv] 720x480 => 720x480 Planar YV12
A:   3.0 V:   3.0 A-V:  0.001 ct:  0.002  92/ 92  5%  0%  0.1% 0 0

The video format is MJPEG 720x480 (not sure about the aspect ratio) with uncompressed 16 bit per sample mono sound, at 8 kHz sample rate. The file name represents the time at which recording began.

A small timestamp appears at the lower right of the recorded image.

Setting the time

This is somewhat confusing. The way to set the time, is to create a file called time.txt in the card’s root directory. To make things a bit complicated, the camera creates a file called TIME.TXT in the same place, with a timestamp sample (or something). Editing this file will do nothing. It’s a new file that needs to be created with something like

$ vi "/media/New Flash/time.txt"

It looks like the file appears from nowhere, with a sample timestamp (2012-09-21 17:08:56) set. Update it to something like

2013-01-31 19:45:00

or write it from scratch if nothing appears. Write and quit vi. Unmount the volume, unplug the camera, and turn it off. The camera will update the time to the file’s content when it starts up the next time.

There’s a null-character in the end in the sample timestamp. It can be omitted or left. Doesn’t matter.

Conclusion

Pretty much expected, it’s a piece of junk with poor documentation. Otherwise, it wouldn’t go for $10. But it’s good for putting in places where it has a good chance to get lost or destroyed, and hopefully get some cool footage when put on a helmet or something like that.

Reader Comments

Excellent review. I agree with your assessment and would also add that the failure rate of these cameras is quite high. I’ve had two fail out of five. Also, the waterproof housing doesn’t work well. It seals well, however the pushbutton is mechanically ineffective. It doesn’t line up well with the camera button and has inadequate travel to fully activate the camera. One would have to fiddle with the case to make it work correctly and reliably. I wouldn’t trust it underwater but it would be good in a mist or occasional splash. If a video is important to you invest in a GoPro not this toy.

#1 
Written By Bonnin Fairchild on January 29th, 2014 @ 17:12

Good review as far as the instruction and all. Unfortunately, you were not interrested in the “spy cam” mode which is what this cam is made for. Easy to hide and pick up mouvements (triggered by noise) perfect to catch a burglar or to check on the babysiter or anywhere you need a quiet and almost invisible recording device. The sound is also recorded with pretty good soud, good enough to recongnize the person who’s talking. I paid mine $4 each and got 5 of them many years ago and they are still working. Of course they are quite “flimbsy” and not very solid and should be treated gently. You have to be carefull not to insert the SD card too low, under the socket, in which case you will need to open the camera to recuperate your card… this hapened to me a couple times. When new, it could stand alone in sleep (wait mode) for up to 250 hours (less if triggered). The 60db voice activated system is a bit too low and you will have a lot af false calls, especially in noisy environnement. Using a small piece of tape over the mic solve this problem for me.

#2 
Written By Linus on August 8th, 2015 @ 04:53

thanks for this info. I need info some mini camera

#3 
Written By pamungkaz.net on August 17th, 2016 @ 14:22

How this work with IPhone/IPad? Would videos be available after transfer from the micro SD?

#4 
Written By Mike on October 18th, 2023 @ 09:29

Add a Comment

required, use real name
required, will not be published
optional, your blog address