Publié par Philippe le 11 fév 2010 at 11:17
Tear down and hacking around gumpack camera
Update : The method and all the files needed to do it are available in the article : How to remove date and timestamp from gumpack camera
Update : datasheet of SPCA533A available !
Update : A software-only method have been made available ! Isoprop gathered all the needed steps in his tutorial. And it *is* working, without any soldering needed. Job done
Thank him, and thank you dear readers for your grateful comments.
I recently bought a micro camera to put on my RC glider on ebay. I am happy with the quality, as it does video at 30fps and 720×480. You should look at my RC glider videos here. The issue with this camera is that it automatically inserts the date in the video, and that it is reset to 01-01-2008 each time it is powered on. After reading Chuck’s web site, I decided to open and try to hack my camera. Here is what I found.
The camera is often called « gumpack camera », due to its form factor. I have chosen this one as it would easily fit into my plane. It look’s like to have the same characteristics as the #3 camera. The image have the same size, and the timestamps inserted are the same. It uses a file « TAG.TXT » to set the date with a line starting with « [date] » .
TODO Photo camera plane
I didn’t manage to go into any system mode, and didn’t managed to get the webcam working. It’s always seen as a mass storage from the computer.
When plugged on my linux box, it shows theses VID/PID:
Bus 001 Device 010: ID 04fc:0171 Sunplus Technology Co., Ltd |
It behaves as a mass storage device, and let you access the content of the flash card.
If you press the « record » button while in mass storage, it goes into webcam mode, and advertise itself as:
Bus 001 Device 012: ID 04fc:1528 Sunplus Technology Co., Ltd |
To go in this mode, you should wait ~5 seconds after having plugged it. I haven’t tried the webcam drivers.
Electronics
So, what is inside ?
There is:
- LiPo 1 cell 270 mAh
- The camera sensor
- A 16Mbit (2MB) Flash SPI memory (cFeon F16-100HIP Q93H06A F921GDA, also called EN25F16). I managed to found the datasheet here : EN25F16.
- Some RAM : VT3664164T-6 (4Mx16bit SDRAM)
- And an ASIC : SPCA1527A
A reader (George S.) sent me the datasheet of the SPCA1528. Ok, to be more precise, it is more a « commercial sheet », that just show some example products. Thanks !
Another reader, Bob N, sent me a much more precise datasheet of a SPCA-533A. Thanks !
Here are some photos of the camera opened. Click on the images to get the full resolution.
T
he CMOS sensor seems a bit different than other models, as it is mounted on a small support. Here is a macro of it. It has 24 pins.
I can corroborate the Chuck’s assumption with the help of my oscilloscope. When the camera boots, there are lots of transfer from the flash SPI during one second or so. There is no traffic at all after, even when you start and stop a recording. When the camera is in « sleep » (all leds off but power button « on »), the flash chip is powered off. We can conclude that the SPI flash contains the firmware of the camera, and it is copied inside the RAM at boot time. So the code that inserts the date in the film is in !
I bought mine in November, 30th, 2009. On the PCB, it is written :
D004_V3090818 |
Villamany posted a comment with some photos of his own gumstick camera. The components seems to be the same (at least the chipset), but it looks a bit smaller. He bought it in December, 23rd, 2009. On his one, it is written:
D001_V7091114 |
The second line looks like a production date or something similar, in the format YYMMDD. I assume mine stays one month and a half in stock before being sold, and it is almost the same delta for him.
The second line seems to indicate a model and a version. According to the manual, I have a « DV D004 camera ».
Playing with crystals
Following the Spiners’s idea in the comments, I tried to remove the RTC crystal. When I switched on the camera, the green led lights, then the red one and that’s all. It doesn’t respond to button presses. It doesn’t show up on the USB port.
When I remove the main crystal (written 27MHz), NOTHING happens. No lights, no USB, no response to buttons. I then tried to underclock the main chip, and put a 18MHz crystal on it, just to see what happens
A took a 15s video, counting the seconds. The funny thing is that the video is « accelerated ». It only last 8s. The sound is accelerated also and is treble. The probable explanation is that the avi file says it’s 30fps. But the chip didn’t output all the 30 frames during a second because it was underclocked. But at play back, the 30 frames were displayed, and looked like accelerated. The timestamp insertion was still there and stamped the video at the correct real time.
Battery and current
I made some current consumption measures:
- Switch « Off » : No current at all
- Switch « On », but in sleep : 0.02 mA (more than one year before battery down)
- Switch « On », with green led on : 115 mA (the current waveform shows a frequency around 15 KHz, hello RTC clock !)
- During recording, the camera consumes around 145 mA. There are some spikes at 220 mA every 64ms. It’s probably when the SD card is written.
I measured the battery capacity at 270mAh (discharge current of 200mA, down to 3.0V). So I expect it to be able to last a bit more that one hour.
The next thing to do is to dump the data
Flash content
Once again, I had to make my own tools. You are never better served than by yourself ! At first, I would have preferred to not desolder completely the 8-pins flash, to not take too much risks. As this solution was not working, I removed it completely, and fit it on a standard 8-pin DIL package, with some wires. Although it is a bit dirty, this solution worked well ! I also added a small decoupling capacitor closer to the chip, as I noticed on the oscilloscope some spikes in the power lines. As you can see on the photo, I removed the LiPo battery. To be more precise, it removed itself, as the wires doesn’t bend easily and are very fragile. I suspect that some camera will die as the lipo can move inside the case and the wires will break.
Using an old AT90S2313 AVR micro-controller from Atmel, I made a SPI reader. The uC firmware was reading all the content off the memory and dump it by its UART to my computer. A python script was in charge of reading the data back, and write them to a « raw » file and a « intel hex » file. I should do another article on that …
The flash is 16Mbit, so it makes a 2MB file. It took me more than 7 minutes to transfer it through the AVR at 10MHz, and the UART at 57600 bauds. Around 400KB of the memory are « 0xff », which means unused space.
You can download the raw data and the ihex:
- gumpack_camera_flash.raw.bz2 (606K)
- gumpack_camera_flash.ihex.bz2 (1.1M)
Villamany managed to extract the firmware from both of his MD80 camera ! Here they are :
- MD80.bin.bz2 (622K)
- MD80bis.bin.bz2 (623K)
And Allan also sent me his camera firmware :
- allan-808-number3.bin.bz2 (624K)
Thank you for sharing them ! The firmware are mostly identical, but there are some differences. The strings are not always in the same order in the file, showing a new recompilation of the code. Some strings, like a date, are also different.
There are some interesting « strings » in the content. Here are only a few of them :
NAND RSVDCIM100MEDIASunplus SPCA1KCCurrent F/W version: %sD:\1528.BINISP.BINDRAMPARA.TXTBoot %s, %lu KBISPKEY.TXTFW.BIN1528.BIN=====AE Gid and Luma====="[date]Omnivision 3.1MSunplus CA1528fill [mem type] [+offset]dump [mem type] [start addr] [+offset] [end addr]adc s: Start adc testadc e: Stop adc testadc a: Start button testTask start successfulPress any key to start the test...No err has found in this test!Press 'r' to restart the test, other keys to exitTimeStyleMM/DD/YYYYDD/MM/YYYYwww.vividsound.com (206) 781-8498Adobe Photoshop CS2 Windows |
Seeing this, I am happy to have dumped something without errors ! (I mean correct endianness, no bit inversion, no ciphering, no shift). They show some file names, such as 1528.BIN, or the well know TAG.TXT. The hexdump tool can also be used to « see » something:
00008af0 e4 9e fe e4 9d fd e4 9c fc 22 5b 64 61 74 65 5d |........."[date]|00008b00 00 25 62 78 2f 25 62 78 2f 25 62 78 2f 25 62 78 |.%bx/%bx/%bx/%bx|00008b10 2f 25 62 78 2f 25 62 78 0a 00 4e 6f 20 74 65 78 |/%bx/%bx..No tex|00008b20 74 20 66 69 6c 65 21 0a 00 44 3a 5c 44 43 49 4d |t file!..D:\DCIM|00008b30 5c 00 31 30 30 4d 45 44 49 41 00 25 73 28 25 6c |\.100MEDIA.%s(%l|00008b40 64 29 0a 00 73 70 69 5c 73 65 72 69 61 6c 5f 66 |d)..spi\serial_f|00008b50 6c 61 73 68 5f 53 54 2e 63 00 31 20 25 62 78 0a |lash_ST.c.1 %bx.|00008b60 00 30 78 32 35 30 30 20 25 62 78 0a 00 73 74 73 |.0x2500 %bx..sts|00008b70 20 66 61 69 6c 20 25 62 78 0a 00 0a 54 4b 20 42 | fail %bx...TK B|00008b80 20 00 46 2f 57 20 76 65 72 73 69 6f 6e 20 69 73 | .F/W version is|00008b90 20 25 73 0a 46 2f 57 20 63 6f 6d 70 69 6c 65 64 | %s.F/W compiled|00008ba0 20 40 20 25 73 2c 20 25 73 0a 0a 00 49 4f 54 72 | @ %s, %s...IOTr|00008bb0 61 70 20 25 62 78 0a 00 ef 64 0a 70 1c 30 98 11 |ap %bx...d.p.0..|00008bc0 e5 99 b4 13 0c c2 98 30 98 fd e5 99 b4 11 f6 c2 |.......0........|00008bd0 98 30 99 fd c2 99 75 99 0d 30 98 11 e5 99 b4 13 |.0....u..0......|00008be0 0c c2 98 30 98 fd e5 99 b4 11 f6 c2 98 30 99 fd |...0.........0..| |
ARM Inside ?
Chuck supposed that the SPCA chip was powered by an ARM CPU, especially the 926EJS. I tried to run a ARM disassembler on the file and find out that no code is ARM. I know ARM processors quite well, and can confirm that it’s not ARM powered.
My collegue Gillou ran a dissembler for the following CPU architectures : avr, mips, h8300, SH, z80, m68k. Neither of them give result. But a 8051 worked very well !
Here is some code example :
L0584: 1B64 EF MOV A, R7 1B65 7802 MOV R0, #2hL0586: 1B67 C3 CLR C 1B68 33 RLC A 1B69 CE XCH A, R6 1B6A 33 RLC A 1B6B CE XCH A, R6 1B6C D8F9 DJNZ R0, L0586 1B6E 128AD8 LCALL L0587 1B71 128B81 LCALL L0588 1B74 6461 XRL A, #61h 1B76 6003 JZ L0589 1B78 028468 LJMP L0590 L0589: 1B7B A3 INC DPTR 1B7C E0 MOVX A, @DPTR 1B7D 6476 XRL A, #76h 1B7F 6003 JZ L0591 1B81 028468 LJMP L0590 |
Given that the 8051 uses variable length instruction, it’s very unlikely that we have good dis-assembly with a wrong architecture.
What’s next ?
Knowing the CPU, it’s time to disassemble the code and find where is the code that inserts this f*ing date in the image. If a good software guy can modify the code, I will have to do a circuit able to write into this flash memory to try it. There is also the string 1528.BIN in the raw file. We can suppose that this is a way the reprogram the flash more easily. Please use and explore the binary files.
More discoveries on the dump
By looking more closely to the strings, I noticed « JFIF ». It is present in the header of the .jpg images. The jpg images starts by the magic number 0xffd8 and ends with 0xffd9. I have made a python script (again !) that extracts all the data from the dump that starts with 0xffd8 and terminate by 0xffd9. I found 16 images, and here they are, with there start and end address in the dump file :

- recup_0090__0x093d42-0x0952fd.jpg (5.4 KB)
- recup_0120__0x0a967a-0x0aa535.jpg (3.7 KB)
- recup_0295__0x0b7192-0x0b871a.jpg (5.4 KB)
- recup_0316__0x0b871c-0x0ba247.jpg (6.8 KB)
- recup_0336__0x0ba248-0x0bb103.jpg (3.7 KB)
- recup_0391__0x0fa558-0x104e07.jpg (42.2 KB)
- recup_0406__0x0fa6a0-0x0fb4ad.jpg (3.5 KB)
- recup_0423__0x0fba2a-0x0fcdb0.jpg (4.9 KB)
- recup_0441__0x104e08-0x110f0d.jpg (48.3 KB)
- recup_0453__0x104f50-0x105ee2.jpg (3.9 KB)
- recup_0467__0x10644b-0x107b8d.jpg (5.8 KB)
- recup_0480__0x110f0e-0x113c83.jpg (11.4 KB)
- recup_0493__0x113c84-0x11fc89.jpg (48.0 KB)
- recup_0501__0x113dcc-0x114fb7.jpg (4.5 KB)
- recup_0511__0x115520-0x116dd2.jpg (6.2 KB)
- recup_0529__0x19b21c-0x19c7d7.jpg (5.4 KB)
This represent 209KB of beautiful photos isn’t it ? I am sure that if these Chinese had made more effort, they could have used a 8Mbit flash memory only, and gain a few cents more on each camera !
And even sounds !
This time, it was the string « WAVEfmt » that kept my attention. I managed to extract 128.6 KB of wave files by modifying a bit my script. The files starts with:
00000000 52 49 46 46 .. .. .. .. 57 41 56 45 66 6d 74 20 |RIFF....WAVEfmt | |
Here are the 4 files:
- recup_0010__0x0a3d42-0x0aa576.wav (26.1 KB)
- recup_0020__0x0ad4f0-0x0aff8c.wav (10.7 KB)
- recup_0025__0x0b021c-0x0b5cf6.wav (22.7 KB)
- recup_0035__0x0bb104-0x0cc59a.wav (69.1 KB)
Extracting the font from the dump
Spinner and Bill W. have posted comments and methods to display « something » with the raw dump. Bill W. managed to see this:
We can see the numbers from 0 to 9 and the « / » and « : » needed to display date and time. We don’t know yet the encoding, but it looks promising. We can even recognize some Chinese characters. His explanations are here.
Spinner went a bit further, publishing this image in the comments with explanations:
On this one, the font is even more precise. (link to the original)
That’s really great work starting from a good idea from Bill !
Here are the characters we are looking for, extracted from the video :

Each character here is 16×24 pixels. So it fits quite well in bytes.
Address mapping of theses « fonts »
Following Spinner work, I cut the dump in part where « something » appear. Here is the result. If you click on the address range, you will get the raw data.
- 0×120000-0×130000:

- 0×130000-0×138000:

- 0×138000-0x13d000:

- 0x13d000-0×140880:

- 0×140880-0×141880:

- 0×141880-0×142880:

- 0×142880-0×143880:

The idea behind all this is to be able to change the font in the firmware so that all characters appears « transparent ».
I will try to write this into the firmware, and see what happens. ![]()
If the « 2 » has gone, it rocks ! I believe it is the same idea as Spinner, but I cannot access the file(rapidshare overloaded
)
Work done ! The « 2 » is out !
I made the soft to program the flash SPI, and program it with the tentative font with the « 2 » removed. Here is the result :
I removed all the other numbers, like the file submitted by spinner, and as expected, all timestamps have disappeared !
We still don’t really know the encoding of the font, when the firmware only show the following image, there is no timestamp:
The firmware change is only between 0×138000-0x13d000. Here is the corresponding part of the firmware with the transparent font:
0×138000-0x13d000_no_font.raw (20 KB)
So, work done, the timestamp is completely removed from my gumpack camera. Thanks to Chuck, Spinner, Bill W. and other people that posted great ideas in the comments. It took me a bit more that one week to achieve this.
Here is the final result :
Next thing to do is make this « easier » so that other people can use this information.
Update 10 march 2010
Villamany managed to remove the timestamp from his md80 camera too ! Here is his success : on this water rocket forum Congratulations !
Happy Hacking !


13 février 2010 à 02:42
Great work!!!. I am villamany from Spain. I have a fake AEE MD80 camera. that is similar (model #3). I have a interface. Is also valid for dump the memory content?.
http://i146.photobucket.com/albums/r247/villamany/CamMD80/IMG_5107a.jpg
http://i146.photobucket.com/albums/r247/villamany/CamMD80/IMG_5112a.jpg
The USB-Serial interface:
http://cgi.ebay.es/CP2102-USB-TTL-RS232-Serial-Port-Converter-Transceiver_W0QQitemZ350315867160QQcmdZViewItemQQptZUK_Computing_NetworkingCables_RL?hash=item519073ec18
thanks…
13 février 2010 à 15:30
Hi! Great work. It seems that everyone wants to get rid of this … timestamp.
How about a hardware-hack to achieve that. e.g. there must be a crystal for the RTC. What if we make this crystal fail to work (e.g. by removing it)?
Even if the clock would only stop ticking it would be an advantage (easier for the DELOGO-filter to remove the timestamp).
If the RTC is in a separated chip, then what about cutting the one or the other leg of that chip (after looking into the chip-manual)?
Also I noticed that duplicate frames do not get the timestamp implanted. Maybe we could use that to our advantage somehow.
Also there is a firmware of Cam#1 (http://www.chucklohr.com/808/#100103-1-update) in which it is possible to inactivate the timestamp. Maybe you could flash this firmware to your gum-cam. Or one could compare the differences between those 2 firmwares and copy the essential part(s)…
Also there are cams where you can disable the timestamp by adding the letter N after the time in the time.txt. If we could extract the firmware from such a cam and flash it to the gum-cam the problem could probably be solved.
13 février 2010 à 17:06
Hello Villamany,
Your interface cannot work directly to dump the flash using SPI protocol. It might be possible to use the sideband signals like DTR, CTS, DSR and others to emulate the SPI protocol, but it will take hours to dump the memory. It also needs to be 3.3V, because 5V will burn the component.
13 février 2010 à 17:58
Hello Spinner,
You had a brilliant idea in removing the crystal, I just did it and updated the article. The RTC function seems to be inside the main ASIC, as there is no other chip than the ones already identified.
I had a look at the #1 firmware, and it is ARM code inside. My own camera doesn’t seem to have an ARM cpu inside. I don’t think we can exchange the firmware that easily, provided the main chip is very different.
Thanks.
13 février 2010 à 18:36
Hi,Yes I bought my camera at 23/12/09 (dd/mm/yy) on Ebay. This printed label can be the production date.
Thanks for the info, i had read datasheet, and my interface have a 3.3v ttl, but only +3.3, 0v, TX, RX pins and for SPI i need a bidirectional I/O. I am going to serarch info about read the flash memory with my Pickit2 programer.
13 février 2010 à 18:41
>removing the crystal, I just did it
And nothing happend??? The videos were still ok? You mean, the RTC runs without crystal? That’s bad news. I hoped it would stop to run if it gets no more impulse from the crystal. Could we replace the crystal with something that sends only veeeeery few impulses or only one? That would (eventually) make the RTC stop practicly. Then we could set the time to 2011:11:11 11:11 und create a delogo filter for those small numbers « 1″ instead of blurring the whole timestamp-area.
>I had a look at the #1 firmware, and it is ARM code inside.
Yes you are right. My fault. Only Cam3 and GumCam seem to have the same ASIC (SPCA1527A). The Cam1-hack seems to work like this: replace the font-file with a new font-file which consists basicly of ZEROS. Some portion of your extracted firmware should hold a font as well. If we could find this section and replace it with BLANK, it could work as well as for Cam1. (Checksums could be a problem though.)
>RTC function seems to be inside the main ASIC
I still wonder why and have no clue why duplicated frames do not get a stimestamp (causing the timestamp-flickering).
>doesn’t seem to have an ARM cpu inside
In Cam4 the timestamp can be disabled in the time.txt. I’ve not seen whether Cam4 uses the same ASIC (SPCA1527A) as Cam3/GumCam… Maybe…
13 février 2010 à 18:55
@spinner: When one the the crystal is removed, the camera cannot record any video. So the RTC is not working, as the camera. It works « accelerated » when the main crystal have a lower frequency crystal.
If we could find the font in the extracted dump and make it blank it should work ! Personally I cut the bottom part of the video that include the timestamp, which have the drawback to decrease even more the resolution…
13 février 2010 à 19:32
Spinner said « I’ve not seen whether Cam4 uses the same ASIC (SPCA1527A) as Cam3/GumCam »
The #4 camera is probably the STK1262BLQG processor.
The tear down photo of the #4 camera is here and the CPU is potted, so you can’t see the part number. http://chucklohr.com/808/#hd-no4-camera
But, I have a gumpack camera, that is functionally identical to the #4 camera, except the video is 640×480. My gumpack uses the STK1262BLQG processor and a 25L4005AMC 0.5 megabyte SPI flash chip. I will be posting some photos.
My gumpack and the #4 camera use the same webcam driver. Hardware VID PID is 5E1 B01.
– Chuck from chucklohr.com/808
14 février 2010 à 11:13
Great work getting the SPI chip downloaded!
Your efforts have enabled me to bring you great news… I have confirmed that the fonts are embedded in the binary data of your raw binary. I have not determined the exact format of the embedded fonts but I have managed to convert your binary into a properly arranged bitmap image such that the fonts are clearly visible when viewed.
Sadly, the fonts do not appear to be simple 8-bit binary data, but a rather complex coding scheme may have been used. It is not a mystery anymore why nobody has found the fonts because they are very obscurely embedded in the file.
It’s a rather large file, so I uploaded the image to this Water Rocket forum where we have been discussing these cameras for some time because the WRA2 competitions require a camera onboard and this camera is so inexpensive and small it’s perfect for water rocketry:
http://www.waterrocketforum.com/viewtopic.php?p=7755#p7755
I hope you can make use of this info to rid us of that awful timestamp!
Kind Regards,
Bill W.
14 février 2010 à 15:23
Thanks to Bill W.! I just around a little bit with « gumpack_camera_flash.raw » and IrfanView:
http://www.abload.de/image.php?img=gumpack_cam3_flashlookb0kg.png
It’s still a bit distorted. But what bothers me: There seem to be included a big and a small font. Because the big font has to many pixels for my taste! The timestamp-font in the videos is as far as I can see only consisting of very few pixels.
My conclusion would be that there is a small font included as well as a big one. You can see the small font in my posted picture right under the big font.
We should care about the small one, I guess?! Also the ZERO in the big font is more a rounded one, while the ZEROS that I see in the videos seems not so much rounded to me… What do you all think?
14 février 2010 à 16:56
Great work Bill and Spinner. I updated the article accordingly. It seems that we should concentrate on the small font has you say. I will try to make a script that extracts the font more precisely. Thanks a lot for this progress.
14 février 2010 à 17:05
Me again :O)
Just played some more:
http://www.abload.de/image.php?img=gumpack_cam3_flashtry6zpcq.png
I identify 4 different font-sizes there. I think the second smallest could eventually be the one used in the videos?!
14 février 2010 à 17:19
Happy to see you again !
Great ! I understand why we see some « repetition » with same size fonts ! It just depends on the « line period », where you change 1024 to 512. I believe that you will see something else with 256 ?! Let’s me script this !
14 février 2010 à 18:24
Yes you are right, the font you have choosen seems to be the right one. I just compared all fonts known by now. (I should mention here that I don’t have such a camera (yet).)
http://www.abload.de/image.php?img=timestamp_font_compare3p2u.png
About the repetitions: Yes. What I did when I was «playing around» was just changing the linefeed and bitrate randomly and hoping to find something new…
14 février 2010 à 18:33
Your image is a good confirmation. Lets attack the font 3.
14 février 2010 à 19:27
What about changing portion 3 to this:
http://rapidshare.com/files/350585577/img_extract_03_0x138000-0x13d000_new.zip.html
(Can be downloaded 10 times)
I am not certain about this. It is just a wild guess…
14 février 2010 à 20:06
>If the «2» has gone, it rocks ! I believe it is the same idea as Spinner
My approach was more drastic. I deleted every single letter… :O)
Uploaded to depostifiles:
http://depositfiles.com/files/mlhc30x37
14 février 2010 à 23:27
Here is the conclusion, thanks to all. The timestamp has gone by writing in the firmware the file posted by spinner
So no checksum protection here !
15 février 2010 à 05:14
Great work you guys! I was hoping to finish deleting the font by figuring out the format and deleting the font from the file but you guys were able to get it to work in short time. I’m glad to have contributed and thank you for the help!
16 février 2010 à 07:14
Just picked up one of these cams today and immediately got frustrated with the time stamp; stumbled across this site and have a quick question for you guys:
How do I do it?
Apologies for the simplistic question
Merci Beaucoup
Thanks!!!!!!!
16 février 2010 à 17:15
[...] [...]
16 février 2010 à 20:37
Hello Toothman,
There is no user-friendly solution yet. To do it, you will have to:
- Open the camera (with a very small screwdriver)
- unsolder the memory chip (with a very thin iron)
- reprogram it with the hacked firmware (either you have a SPI reader/write, either you need to build/buy your own)
- re-solder the chip.
I will publish another article that describe my own SPI programmer I made for this intent.
17 février 2010 à 20:30
Hi Philipe.
This posting might not be interesting fo many people,but I could not find an e-mail adress to ask you directly.
Ijust wonder where you managed to byt a gum pack camera that can produce 30 fps? And how much did you have to pay? I have bought one but it is a #1 camera, with 25 fps and lots of duplicate frames. So I am still loking for a better quality camera.
I am doing a project with my cat. Here is the first test: http://www.youtube.com/watch#playnext=1&playnext_from=TL&videos=lLSX1klyWAE&v=4Cd-PubR5-Y
Best regards.
Lars Midboe
17 février 2010 à 21:03
In fact, my email is hidden here : my email
I bought mine on ebay from a seller called « china.gadgets ». He is selling some more, for example here (a bit different from mine indeed) : http://cgi.ebay.com/4GB-Gum-Spy-Video-Recorder-Camera-Stick-DV-640-480_W0QQitemZ320484658946QQcmdZViewItemQQptZLH_DefaultDomain_0
Even if the framerate is a bit slow on your video, the resolution is very descent.
Regards,
20 février 2010 à 20:14
Hi,
I´ve found this string in your hex-dump:
Do ISP ??? Press any key to do ISP !! ISP… OK !!! FW %s, %lu KB
ISP.BIN DRAMPARA.TXT OK..
Boot %s, %lu KB
ISPKEY.TXT FW.BIN 1528.BIN OXOXOXOX.XOX Del ISPKey ***nrSects=%lu > 2GB? or < 2.2MB?***
FAT16 FAT12 FAT32 fat=%bd
SUNP_DSC NO NAME
Maybe this is a hint for an userfriendly way removing the time stamp? It seems like there is a way for firmware-updating using the SD card.
21 février 2010 à 12:15
Hello Atomphil, I already found theses strings in the dump and tried to put a file with this name on the SD card. But no one seamed to trigger any programming mode
22 février 2010 à 15:10
Hi,
ISP.BIN seem to the bootloader and DRAMPARA.TXT is the file with the address settings of flash where the firmware will be written .
ISPKEY.TXT seems to be the firmware update mode trigger file .
FW.BIN and 1528.BIN firmware files .
We just need at least the first 3 files
Regards
22 février 2010 à 23:28
Hello Angelo,
May I ask you how you know theses informations ? Do you have any idea of the format of theses files ? I can try if you have some ideas. Even if the flash goes wrong, I can still reprogram manually the memory.
Thanks,
23 février 2010 à 05:23
Good work on removing the time stamps guys …i know i migth be able to do it too the thing is i dont have the equipment and dont want to pay extra money for that..
My only problem is i got a turnigy 800 camera that seem to be the same and exact cam as in the gumpack one. The thing is even if i make the TAG.TXT file and put it in my dcim folder on my sd reboot the cam but it never change…??
I know it isnt really related to way your saying in there but still if someone could give me an hint i would appreciate.
Thanks
David
23 février 2010 à 15:13
Hi,
It´s what it seems to me, i do not have sure.
It´s what my knowledge and experience in GSM field for 15 years tell me.
ISP , stands for In-System Programmable.
I´ll try to find something more about SPCA1527A MCU
Regards
23 février 2010 à 17:42
Hello,
Before attacking my camera with the findings of your excellent work, I have a more « critical » need: my LiPo battery is dead.
Do you (or anyone) know where to buy a cheap battery replacement? I have found some e-shops but too expensives, specially if we add the delivery costs to europe.
Anyone can help me?
Thanks in advance.
23 février 2010 à 20:39
@sybex: The tag.txt should be in the root folder, not in DCIM/
@Angelo: I would really appreciate if you can get more informations about the SPCA chip. Without knowing the registers, we cannot really progress. Thanks.
@Perrete: You can have a look here for a replacement battery for your camera : http://www.hobbycity.com/hobbyking/store/uh_viewItem.asp?idProduct=7568 But it is out of stock … Otherwise, it might be less expensive to buy a new camera …
24 février 2010 à 00:39
Re: That battery… I walked downstairs to check in my LIPO storage and I already own two of them.
I walked down because I wanted to check that these batteries are not larger than the whole keychain camera that I have, but I misrememberd this. The batery looks as if it would fit inside my camera.
It’s been 24 years since I last programmed 8051 CPUs…
Indeed the 8051 architecture is not yet dead. For example, Cypress sells USB2 chips that run off a 8051 CPU inside. Actually… my camera runs at USB2 speeds, so maybe they borrowed the IP from Cypress for the USB2 interface and the CPU?
Anyway, an 8051 is NOT fast enough to encode video streams at modern pixel-sizes. But that’s done more efficiently in an asic. So I think they have an encoder-unit on the chip. The 8051 is then perfectly capable of booting, providing settings for the CCD chip and writing the SD card using SPI. (it’s using I2C for the CCD chip, I’m guessing. I saw SPI code in the binary which I’m guessing is for the SD, and that leaves the I2C code talking to the CCD chip.)
24 février 2010 à 00:43
Where did you guys find 8051 code in the flash image? I get almost nothing, I can’t find an entry point. IIRC the reset vector is at 0, so my disassembler should follow it and find more pieces of code. However it always finds three or four jumps and then nothing.
The 8051 can access only 64k of memory, so I don’t know how that would be implemented, and which part of the 2M flash image is actually the code for the 8051.
24 février 2010 à 10:40
@Philippe:
Merci beaucoup pour l’info, but referred battery does not fit in gumpack camera. This battery is 20mm height and gumpack one is <16mm). On the same web we can find this another model that fits:
http://www.hobbycity.com/hobbyking/store/uh_viewItem.asp?idProduct=8864
But only 138mAh.
Thanks anyway.
@rewolff
Should you sell me one of your two batteries in stock? If affirmative, please contact me at
alvaro_rb (at) yahoo.es
Thanks.
24 février 2010 à 12:45
Perrette,
I opened up my camera, and it has a 200 mAh cell, of exactly the dimensions of my 240mAh cell from HK.
http://prive.bitwizard.nl/DSC_3657_small.JPG
or fullsize: http://prive.bitwizard.nl/DSC_3657.JPG
But I may have a different camera than you do….
24 février 2010 à 22:48
@rewolff: I didn’t do too much work on 8051, as I am too young to have ever worked with one
I have just seen that some method have a clear entry and exit point. But I didn’t find the reset vector. As you said, the 8051 is not used to do real image processing. It should only push some configuration register to pilot the whole ASIC. Thanks
27 février 2010 à 00:31
Hey, has anybody made any progress with reverse engineering the dump?
I’ve put quite some time in it but I can’t seem to get the references right. Maybe parts of the code are copied to different locations during runtime? I have no experience with 8051 whatsoever, so maybe I just lack the basic memory organization stuff.
It looks like there is some kind of debug mode, maybe there is a way to hook up a console to the hw during runtime?
@Philippe: In case that dumping process isn’t too complex maybe you could dump the flash one more time (after having used the cam)? It might be written to during runtime and have small, maybe informative differences. Differences like the last set date for example!
27 février 2010 à 08:06
Wow! What a great read! Thanks for posting your hard work!
Would it be possible to change the camera so that its settings could be programmed by software? Something like Canon CHDK « light »?
3 mars 2010 à 15:24
MD80 camera firmware dump: http://prlxlg.blu.livefilestore.com/y1puJeJXskFmLIHHVQb7ADgKZnQH9fnT1ViF_tko-FBs9eriyuQlI_7S6w8H6iu3i_9GMpoL4Mx6iVNNOxmDslgrxMd0Iy_rVfK/md80.raw?download
I tried sniffing the traffic between the flash and processor, but my device buffer overflow occurs.
The first thing is to ask the processor memory model and then starts reading bytes from 0×000200 ofset then i get a buffer overflow in my busPirate interface.
5 mars 2010 à 01:19
Has anyone seen one of these behave as follows:
- Turn it on and start filming a video.
- The blue and green lights are on during this time.
- After 4 – 5 minutes the orange light starts flashing and the camera no longer responds to pressing any buttons.
- Turning it off results in a 0 byte AVI file
Really odd. I would send it back but the vendor I bought it from is crap, I had one that wouldn’t charge and sent it back and they sent me the same one back again. Sent it in again and two months later I get this.
Ideas on what I can do besides throwing it in the trash bin?
6 mars 2010 à 00:56
Great work!
Different issue- the reduction in frame rate that is mentioned in the « Playing with crystals » section sounds great to me- I want to use my « Lohr type 3″ md80 clone/gumstick cam as a timelapse camera (with a larger battery of course). It was not clear to me which crystal was changed to reduce the frame rate. Mine has two crystals without any markings on them. Could anyone help me out?
6 mars 2010 à 13:14
Alors, ça, c’est la meilleure !
Tu écris maintenant tes textes en anglais !
Non seulement je suis loin de tout comprendre, mais je ne peux même plus corriger les fautes …. d’anglais, langue dans laquelle tu sembles très bien te débrouiller.
D’ailleurs, pour la technique, tu es peut-être encore plus à l’aise en anglais qu’en français !
Et tu as recueilli de nombreux interlocuteurs.
Bravo,
A plus.
7 mars 2010 à 21:32
Hello Philippe and ALL,
Thank you for good article.
I just found out that my gumpack camera that looks exactly like yours has the same PID as #3 camera, webcam driver from #3 works fine for me. I’am quite happy with timestamp but it gets refreshed to 1980 each time i switch off the camera. Don’t you know the cure yet?
Regards,
Alexey
8 mars 2010 à 00:01
@Martin: I dumped several time the flash content during the process, and they are all identical. I don’t believe that « normal » usage of the camera will change the flash.
@michaeldallas: In order to change the parameters like CHDK, it would need a huge amount of work, to understand and modify the current firmware. We are just at the beginning, and we don’t have any docs … If it is not impossible, it is at least very hard.
@Mike: I had the orange light flashing when the battery level was too low. Try to charge it. I also noticed that the battery will not charge if the camera have the power switch to « on ». It only charges when it is « off ». If you really want to throw it, send it to me instead of the bin
@AvdM: Only of the the crystal have a mark (27000). It was only visible when unsoldered, because it was on the bottom side. You could bend the pins to try to see something. For a time-lapse camera, you would need a very slow crystal, and I not convinced that the chip will work with a very low frequency, so you have to give it a try ! For your time-lapse hack, I would suggest that you put the camera on the « photo » mode, and make some electronic or mechanic that periodical press the shutter button. Let us know
@Alexey: The time is reset when the camera is put in power off. You can keep the time running if you let the power switch always to « on » position. The camera puts itself into sleep mode, and consume very little power (several month of autonomy). I consider now the « power » button more like a reset, and always keep it « on ».
Thanks you all for your comments and encouragement.
9 mars 2010 à 09:43
hello,
i have the MD80 CLONE (will be arriving in a few days) and i wanted to know if there is a way of flashing the device by adding the bin file to the drive it self… like with the tag.txt file?
and what about the N letter in the end of the command in the txt file? any one tried it?
thanks
9 mars 2010 à 14:26
@villamany: Unfortunately, I can’t get your link to work.
@chen: If there was a known way, you’d find it in this article (read: no way known yet).
9 mars 2010 à 22:52
try this link http://www.megaupload.com/?d=PK4WBY7J
I have two MD80 cameras, the zip file contains the firmware dump of both cameras.
[edit by Philippe : I have put the files in the article in direct download. Thanks !]
11 mars 2010 à 06:34
@Philippe – It doesn’t seem to be low battery as it will continue blinking orange for over an hour and not shut itself off.
For everyone’s benefit stay away from ePathChina, rip off.
I had a previous one that wouldn’t charge off any cable or computer and would die after seconds. Lights would flicker and go out. Sent it back and they sent the same one back to me. Sent it back again and I think they sent me someone elses defective return.
Not sure what to do here. Might try to flash it but need to read up on it.
11 mars 2010 à 07:01
Interesting test. I put a flash card in it and it will work fine recording longer videos. There must be something wrong with the internal memory that it cannot save a larger file.
It’s ok, this one isn’t as good of video quality as the key chain one I got off eBay for $13.99 shipped, far smoother and better quality. It didn’t have built in memory though.
11 mars 2010 à 18:19
Excellent work! I’ve been using a #3 version of this camera for about 6 months and would like to do the same work on this. I have an ATMega88 development board and would like to dump my own code. Do you have any code/wiring details to dump the code using the spi bus? This is so that I can experiment with disassembling the code and rewriting to include an option to turn on and off the datestamp. I’m assuming that there must be some bootloader code to read the binary file from disk.
11 mars 2010 à 22:56
@Buck: Hello,
Thanks,
I plan to publish another article with all the howto wiring and code I used to achieve this. Stay tuned
22 mars 2010 à 07:06
Philippe, looking forward to the tutorial, thanks for the useful info so far
In the mean time i’m wondering if I can do anything with the Arduino board I have. A quick search reveals they can talk SPI, though they run at 5v so will need voltage dividing resistors etc. I guess it might be slow as well but i’m not so bothered by that. If I manage to get anything working i’ll post back.
Regards,
Jono
22 mars 2010 à 22:56
Folks I took a quick look at the NAND flash dump content. There is a way to disassemble the flash dump. See this site: http://spmp305x.spritesserver.nl/wiki/index.php/NAND_Flash
By looking at the headers we can tell there are 0x12f (303) user blocks. There are also memory mapping entries starting at address 0×200. Some of the user blocks should be FAT file systems according to the site.
The page size is 512 for this flash chip. The block size seems to be 4096.
I am going with the info in the following source code to disassemble the flash dump:
http://libspmp3050.googlecode.com/svn-history/r149/trunk/src/prex/dev/arm/spmp/nand.c
http://lxr.free-electrons.com/source/drivers/mtd/nand/nand_ids.c?v=2.6.33
26 mars 2010 à 14:58
Hello,
I’ve got the MD80 clone. It has SPCA1527A-HL091 inside. Villamany, my cam is the same as your md80_2 camera from http://www.megaupload.com/?d=PK4WBY7J
I can’t turn it into the WEB-cam mode. My PC(windows XP) define it only as a removable disk. I tried different ways with buttons but I have not got any success. In my opinion, this cam has not got the WEB-came mode. Could you help me?
Photos inside of my cam:
http://img189.imageshack.us/i/cimg0288v.jpg/
http://img215.imageshack.us/i/cimg0287v.jpg/
http://www.pluc.fr/2010/02/tear-down-and-hacking-around-gumpack-camera/
28 mars 2010 à 22:46
install drivers from cdDriver then conect camera to pc and press once « mode » button, now the camera is in webCam mode, drivers include the « Amcap » application that can be used for test yours webCameras.
29 mars 2010 à 07:53
I’ve solved my problem. It’s necessary to have a miniSD card in the camera if you wanna use it as a Web-cam. When I put it to the camera and pressed the MODE button it switched in the Web-cam.
6 avril 2010 à 14:01
Hi Philippe, I’m anxiously awaiting your write up of how you dumped the flash, particularly the wiring up of the serial flash to your uC.
I have two cams that use a serial flash and I’d love to be able to remove the stupid time stamp. I have a keycam #2 (with non descript flash) and a ipod cam with an SST flash.
I’m assuming the pinouts of serial flash chips are identical, and seeing as there seems to be a standard set of commands (read 03 etc) I’m thinking that one solution will read and reprogram most serial flashes.
I’ve had a play trying to use the MSSP module on a pic18f but for some reason I’m getting nothing from the flash, obviously my bad wiring and/or code
6 avril 2010 à 23:01
Hello Kingo,
I need to clean a bit the code and make some doc before. You are right that some commands to the flash memory seems to be standard. Please be patient 
My writing is coming
Regards,
8 avril 2010 à 22:04
[...] made with my camera in order to remove the timestamp. After one week of work, described here [teardown and hacking gumpack camera], I managed to get a solution to completely remove the insertion of the timestamp in theses 808 [...]
9 avril 2010 à 04:35
Hey Phillipe,
I managed to dump my 808 key camera no2 flash (the one with SETTIME)
dump is here
http://rapidshare.com/files/373679073/808_no2_flash.raw.html
its only 512k.
12 avril 2010 à 15:19
Hi all,
I have an older gumstick modell with internal 4 gb. (ak3224)
Has anybody found out, how to enter the update / programming mode?
Somewhere i red, you have to bridge some pullup resistor to activate program-mode?!
Thoughts welcome!
14 avril 2010 à 11:07
Hey Phillipe,
great site! Please can you help me? I use the 808 key cam (I think cam #3 V4).
My hardware-ID: « VID_04FC PID_0171 Rev_0100″. I´m intend to use it as a webcam (Skype) on Windows 7. I only found a driver (SPCA1528) for XP. Also I can not find the System-Mode.
Please could you give me some helpful informations?
Regards!
Daniel
24 avril 2010 à 17:41
Hello.
Sorry for my English.
I want to know this camera can record 3gp format 177×144 or 320×240?
And how it can be done?
Thanks and hope you will help me.
Regards
Borislav
25 avril 2010 à 22:37
Kloud/tobi: I haven’t played myself with system mode, nor with webcam drivers on windows. I cannot help on this…
Borko: This camera output only avi (mjpeg/PCM) in 740×480. You have to convert the file after to get the format you desire.
26 avril 2010 à 14:07
I have an AEE micro-camera and use it as a security device. I leave it in ‘voice activated’ mode. But if there is no sound for a while, it goes to sleep.
Has anyone hacked this camera to stop it going to sleep? or better still – made it respond to other trigger such as movement?
Thanks
Jon
27 avril 2010 à 05:52
please help to find a bigger battery.
maybe a cellphone battery with an extended 2 wires?
thank you.
27 avril 2010 à 12:39
any 3.7v battery will attach to these cams, search around for 3.7v LiPo batteries, and then just replace the internal battery. a bigger battery will obviously not fit inside the case, so you will need to make a new one or some such.
also, depending on the version of cam, some will record while plugged into power, ie while recharging via USB. if your cam does this, you can use an external usb backup power source like a PowerMonkey or an iPod backup usb power pack etc to extend your recording times etc.
also, for motion detection, have a look around for a tutorial describing how to use a cheap PIR doorchime with a relay to add motion detection. it essentially replaces the on/off switch with the PIR. it isn’t a pretty way of doing it, but it works.
1 mai 2010 à 18:54
Kingo – You mentioned using a relay for motion-activated recording. I don’t have any docs on this camera (about to order one and 2 #3′s) .. this gumpack will start recording as soon as it gets turned on?
I thought you had to power it on, then hit a record button of some type. I suppose any sequence of buttons needed is easy enough to manage with a small Stamp or similar device.
The Webcam idea is also tempting for my home security, if the unit can remain in webcam mode without me having to climb a ladder anytime there’s a problem with my computer.
Neat…
16 mai 2010 à 02:04
Hello to all!!!
Philippe, my god you are one stubborn techno dude, if I was wearing a hat I would take it off to you for your sheer will to sucseed in this timestamp removal!
My head is hurting from reading this lol, i have no intention of trying this as my knowledge of all that stuff is nill
)
But well done to you for getting to your goal…
Just thought I’d mention, I have several #3′s and a couple of the MD80 clones,
One of my #3 cams does not have the timestamp when it takes a photo, all the others do!
I wonder if the good people that make these cams have no choice but to insert the timestamp? as it is really silly not to allow the user to turn it off or even format it to suit.
Anywho i fly my planes with these cams on and think they are truely amazing for the price!!
http://www.youtube.com/watch?v=kxBqXtXtmvQ
17 mai 2010 à 02:20
I got a new driver of the manufacturer. Here http://brazza.eu/SPCA1528_V2220_MultiLan_090217.rar
19 mai 2010 à 14:03
Dear sir. I have id card cam, what can be the problem, when i record video and want to playbeack, there is only sound but no video, the camera taking part still works, only video giving problems. Hope to hear from you. my email address mgerber.cpt.za@tycoint.com
19 mai 2010 à 20:39
@Chris Doran: Thank you very much for your comment
I really think that the insertion of the timestamp is done on purpose. The fonts are in the firmware, so it seems that is not something that in done in the ASIC. But I agrhatee that I would have preferred that no timestamps were printed, even if that story would have never existed
@Brazza: Thanks for the driver, even if I cannot test it.
@marinus: Are you sure that the missing video really comes from the camera ? I think it is probably a missing codec on your computer. Have you tried with VLC ?
31 mai 2010 à 15:39
Thought to send my greetings to all md80 hackers out there, some great reading here!
I use the MD80 clone (or 4 of them) on my plane. Here’s the result of my first test: http://jarkko.pictures.fi/kuvat/ultimate_biplane/kameratesti_20100528.avi.
The cameras were just duct taped on the plane, so especially the side cameras are a bit off and shaking, but the quality is still somewhat bearable. The time stamp is really annoying though, especially when quadrupled on the video.
I’ll be following your great findings, maybe some day we’ll find an easy wao of getting rid of the time stamp
-j-
15 juin 2010 à 17:50
Hello smart ppl..
I am from the other world « the not so smart ppl »!!
I was wondering if any one can help me. I have the MP10 gumstick cam with a 4 GB micro SD card. I can only record 48 Mins but the battery doesn’t even last for that long. It takes me about 2 and half hours to charge.
Is there anyway I can connect the gum cam to normal AA batteries WHILE I keep recording?
I have seen some websites discribing how to charge USB devices using 4 1.2v batteries but I want to run the cam on the batteries for a period of a 4 hours. Is that possible?
Thanks in advance for any ideas and suggestions.
20 juin 2010 à 11:39
Greetings!
Someone already said it, but I too am impressed with the amount of dedication everyone’s put into figuring out all the 1′s and 0s of these…cheap…$20 cameras. I can only imagine what you would do with a several hundred dollar device! :p
The reason I am here…everyone is trying to get rid of or turn off the time/date stamp….why am I the only one looking for a way to turn it on? The gum-stick camera I bought recently does not have but maybe 2MB of internal storage,but it accepts up to 8GB via micro SD, it records video and still photos with the function switch on « VIDEO », and will also record .wav file audio withthe switch in the « RECORD’ position (which by changing the switch position immediately starts the recording. to stop it, the sw. needs to go back to « VIDEO »).
It records at 19FPS roughly, 640×480, red-blue-yellow lights. Also, the plastic trim of mine is not chromed out, it is generic greyish-white nylon plastic. The side of the camera with the button and lights also does NOT have the icon engraving of the micro SD card. It came in a black box that looks like the old iPod cartons.
Additionally the camera itself is not permanently attached to the pc board on the inside. It is held into place with a small piece of double-sided tape, and it connected to the board via a very tiny ribbon cable of sorts that is only about .25″ long.
This camera does allow my to change the date and time by use of a « time.txt » file in which I can use almost any combination of formats to do so, ie 2010.06.20 12.00.00 (yyyy.mm.ddhh.mm.ss) I have tried addind Y, YES, -Y, -YES, SHOW, S, TRUE, T at the end of the date/time string, nothing seems to turn the stamp on.
Well, I don’t actually expect anyone to be able to help too much, everyone is trying to do the exact opposite of what I am trying to do. My guess is however that there MUST be a text string/command of some sort that allows the time stamp in mine to be turned on…unless by some (what everyone else would consider) miracle…the manufacturer of mine actually removed the date/time stamp ability from my model…in order to please everyone.
Being as how I intend on using this with my planes & helis as well…the time stamp would actually come in handy for me as I like to have some point of reference when reviewing such videos. Oh well…at roughly $25 USD, I suppose I could just order a few more from different vendors and cross my fingers that I get one that everyone else curses!
Thanks all
25 juin 2010 à 16:09
Hi guys, thx for this page, i just found yesterday this manual: http://www.ingodevices.net/productos/descargas/3/DC_3MPX_2_CASES_FIRMWARE_UPGRADE_EN.pdf
about how to upgrade firmware in some simple chinese camera and what is interesting they are using the files mentioned here in the camera’s code,
maybe some of u, professionals can take a look at the files(which are here under the download tab : http://www.ingodevices.net/detalle.php?recordID=164&marca=6&familia=3) if there is something what can help with some user friendly modification of the gumpack camera.
26 juin 2010 à 17:27
Hi Philippe, have a look at this:
http://www.ingodevices.net/productos/descargas/1/FW_DC_3MPX_2_CASES_FR.zip
http://www.ingodevices.net/productos/descargas/3/DC_3MPX_2_CASES_FIRMWARE_UPGRADE_FR.pdf
(These are downloads for this Hello Kitty camera: http://www.ingodevices.net/detalle.php?recordID=164&marca=6&familia=3&idioma=eng)
5 juillet 2010 à 19:16
Hi Philippe and all.
Thank you for this wonderfull information and all your invested time. I think it’s a bit beyond my abilities, but I may give it a try in the near future. Unfortunately I don’t quite exactly understand « what » was patched, but I’ll re-read and re-read.
This stupid time stamp has been bothering me for many months now.
. Very annoying – but I will keep on harrasing them – and I would love it if everyone else would do the same!
Maybe everyone should, before buying, ask the (ebay) seller if the timestamp can be removed. Maybe this way the manufacturer will eventually get the message.
I have recently contacted 17 ebay sellers. All were negative except for one. So I ordered a gumpack, and of course the timestamp cannot be removed
In the meantime I’m anxiously awaiting any new news and/or dumps.
11 juillet 2010 à 22:44
Hi
Thanks for the valueable information.
My Mini DV Pocket Camera Recorder had the time stamp function enabled as I bought it. During to the enclosed manual I was able to deactivate the function as follows:
Attach the camera to the pc (USB Stick mode)
Prepare a text file called time.txt
In this file write ex.:
2010.07.11[space]12.01.01[space]N[Enter]
Save the file, then transfer it to the root directory of the Camera Mini SD card.
Remove the camera, switch it on. Start recording video as usual. The date/time stamp is no longer mixed into the video. To turn the stamp back on, change N into Y and follow the same steps as before.
I hope guys the firmware of your cameras provide this future too.
At the side of my gum cam there is a sticker with DV 1 2 3 4 5 (4 is marked)
0118434 (second line).
Bye
14 juillet 2010 à 09:42
Wow, you certainly did quite a bit of reverse engineering on these. I’ve got about 20 of these things (Pens, keychans, ID Card, cigarette lighter, etc…), and a few minutes ago I just got what could be a good idea. I’ve long wanted a cheap motion activated camera. The newest versions of these can record based on a loud sound, record for a while, then go to sleep until another loud sound. I just had the idea of connecting a PIR sensor to an oscillator, and connect the output of the oscillator to the microphone, which should trick the camera that it heard a loud sound, and start recording. When I get a chance to try it, I’ll report back with results.
18 juillet 2010 à 15:04
Hello all,
Thanks everyone for the congratulations. I happy that this work is useful to some.
@Novice: Instead of trying to charge the camera through the USB port with 1.2v batteries, I would suggest to replace the internal battery of the camera by 3×1.2v batteries. The voltage will by 3.6, which is good enough for the internal regulator. The efficiency will be much better with the internal power regulator of the camera.
@Scoalabro: You own the no-timestamp camera that everybody desire here
Try to exchange it ! As seen here : http://www.chucklohr.com/808/, several model of camera exists, and are setup with date.txt or time.txt file, with or without « YES » switch.
@Michal/Gon: Thanks for the firmware upgrade manual. I will have a look at the files, and see if something is common.
@muchomor: It seems you have a slightly different camera than me, and I tried this method before with no luck.
@Robert Chadwick: Some other people have hacked the « record » button with a PIC, and use any input to trigger the start of the recording.
Cheers,
19 juillet 2010 à 12:25
Phillipe,
is it possible to upload a raw file just consisting of a ‘transparent’ font from 0×138000 to 0x13D000 ?
The location seems to be the same on all gumpack, MD80 and 808 cameras.
Thanks.
19 juillet 2010 à 18:57
To: Novice and all
Unfortunately, the new (gum) cameras #3 can’t record while the USB is connected to an external power supply. For me, this is also VERY BAD news! Last year I had two gum cameras 640*480 that would do exactly that. There was no time stamp (I had both firmwares – with and without time stamp – of course I used the one without the time stamp) and I could record while the camera was connected to an external USB battery pack – life was good. The frame rate was 15fps so I could record almost 4 hours with the internal 8GB. Yes, they only worked using the internal memory – and the video got corrupted (but could be post-repaired) when the max. chunk size limit of around 2GB was reached. Under low lighting there was no problem of corrupted data, so I think the firmware was at fault. Internal memory was Samsung. Strangly, they both « died » without reason at the beginning of this year (2010) – at almost the same time….
In June 2010 I bought my new 720*480 model (#3) which uses the tag.txt to set the date. Although this was stated in eBay as accepting max. 8GB SD cards I can confirm that both 16GB and 32GB!! SD cards also work! Hey, Great news, that should get me almost 6 HOURS of video at 30fps!!! Note: I haven’t « filled » the 32GB because I only got it today.
My next step will be to use an external Lipo battery (or 3xAA), but this project will have to wait until I’ve fixed that darn time stamp! I too would like to see a raw « transparent » font file, but I’m not there yet – I still need a programmer.
Power socket: If anybody knows where I can get a TINY socket (for the external power connector) to fit next to the USB I would be very grateful. Of course I would also need the plug. Does such a thing exist? I’m also playing with the idea of cutting the USB connections in order to use the USB directly connected to the battery, but I don’t think this is a very good idea because it may be inadvertently connected to 5V USB. Maybe I could block the data pins with part of a needle or something similar. I plan to use the external Lipo battery in parallel – is this the correct way to do things? I hate dangling wires, I definitely need a socket of some sort. Any ideas would be most welcome.
Thanks
19 juillet 2010 à 19:10
Well, if I have done it correctly, here is a transparent font file :-
http://www.zshare.net/download/7848331214585f33/
19 juillet 2010 à 19:14
Maybe this could be adapted to connect to the pcb, or just epoxy it on :-
http://www.indoorflyer.co.uk/micro-connectors—matched-pair-497-p.asp
19 juillet 2010 à 20:21
@David Sykes: Your file for the transparent font is correct, it is exactly the same as mine
I put a link in the article for reference. But I cannot guaranty that the location is the same for *all* cameras.
@Isoprop: I can confirm that my gumpack cam too doesn’t record when connected to USB. Even if the USB is only power (tried on a cell phone charger)…
Some people have reported that the dead camera are dead because of the battery. Try to remove the old one and connect 3xAA instead. But NEVER directly connect the USB power to the battery. NEVER ! And connecting 2 lipo in parallel can also be a very bad idea. It is definitely bad the way you intend to do. The 2 batteries will not have the same charge level, then they will have different voltage, and it will produce a big or even a huge spark/fire … Either you put a real lipo charger on you future socket, either you completely remove the internal battery, and only plug a bigger external one.
19 juillet 2010 à 20:34
@Philippe
I loaded the various dumps into IrfanView as 1024 wide x 2048 high eight-bit raw.
I saved as BMP.
I loaded all the BMP’s into PaintShopPro as layers and turned-off all layers except for the two cameras (or versions of the same camera) that I wanted to compare.
For the top visible layer I selected blend mode Difference.
It is very interesting to see that the vast amount of code, including the fonts, is the same on all cameras (and therefore displayed black).
19 juillet 2010 à 23:06
Well, that sort of worked.
I have not tried it in the camera.
There still seems to be remnants of numbers on a grey background in some places.
Is it necessary to erase the locations before writing new ones ?
20 juillet 2010 à 12:36
Thank you David Sykes for the link. Using 2.54mm connectors seems a pretty good option.
And thank you Philippe for the tips. I didn’t realize that connecting Lipos in parallel was a bad idea. So I’ll remove the internal battery and use 3xAA or an external Lipo. I’ll try the idea of using 3xAA to power my « dead » cameras, but I have already tried swapping the Lipos, although not with a new Lipo. Two lights come on only *while* I press the button, but the camera is never detected by the USB on different PCs.
I’ve had another idea about the external power supply. Maybe I could somehow disconnect the USB from the processor so that only the USB charging circuit is connected, but maybe charging also requires the processor? I hope this isn’t another bad idea!
The time stamp is still my main problem though, but I’m working on it (iow still looking for a programmer, which I think I have found). I’m following this thread with great interest.
21 juillet 2010 à 16:06
Zurück filmen und Transparenz schaffen…
In einer Diskussion neulich meinte jemand zu mir: « Man müßte einfach den ganzen Demonstrationszug mit Kameras sättigen. Wenn es dann zu Polizei-Übergriffen kommt, gibt es einfach so viele Bilder, daß auf jeden Fall genug Material vorhanden ist, um di…
28 juillet 2010 à 11:58
Hello,
I’ve been reading this page for a while trying to get rid of that pesky timestamp. I also want to attach an external battery to record longer, but without taking apart the whole darn thing. I figure if it can act as a webcam ( connected to a pc) it could also record while attached to an external power source; I’m thinking about cutting the USb cable and connecting it to a 5V power supply. If this is wrong, somebody stop me
. here are the drivers for the webcam to work.
http://www.mediafire.com/?4mdji10muzy
Any other ideas are more than welcomed.
30 juillet 2010 à 14:45
To IISBV
Very Unfortunately, this is not so! You cannot record on this model (#3) while USB power (not PC power) is attached – also see the reply from Philippe from 19th July.
I had two cameras (early 2009 models) where this did indeed work. It was not possible to use these cameras as a webcam though.
For me, using this type of camera as a webcam is not not required, but I WISH they would record while attached to an external USB battery (like my 2 dead 2009 models).
If #3 model would record while attached to an external power source (not a PC connection) there would be no need to cut the USB cable. There are USB Power Packs on the market which are small and powerful. I bought one on eBay which is very light and supposedly can supply 2400mAh (USB Power Backup). Another one, which is at least twice the weight (150g, 5.29oz) will do 4400mAh. It’s from Just Mobile. See: http://www.just-mobileonline.com/products_chargerseries_9.html
Strangely enough, it’s called a Gum Pro!
You can charge these power packs from your PC/Laptop.
If you connect the power pack to your camera, you will charge it, but unfortunately you cannot record while charging…
Like you and many others, I also find the external battery pack problem and the time stamp very very annoying! If everyone would pester the (eBay) sellers, maybe the manufacturers will eventually get the message. So please pester them! Come on!
3 août 2010 à 12:55
To Isoprop,
THX for the info. Indeed i tried to power the camera while connected to my car power source, but without any luck. So the only option available for increased recording time is to hijack the internal lipo and replace it with something bigger? if only i could remove the time stamp it would still be a decent camera. writing to camera sellers on ebay would do jack as those people are only interested in making a buck; there are a lot of customers buying these devices so for as long as the market is good nobody will bother to contact the sellers.
9 août 2010 à 00:09
I’m surprised that this isn’t mentioned much on the internet, but on my MD80 clone, I can use an external usb battery pack to record if I hold down the record/stop button while plugging the usb cable in (camera has to be OFF first).
9 août 2010 à 12:54
Anonymousie, you got me all excited – but your trick doesn’t work on my GumPack. As soon as I release the record/stop button my computer finds the camera drive! Oh well, I’m still hoping.
However, I AM very excited, because I have been able to remove that foul timestamp – thanks to this site. I had never touched SMD until now, and I actually succeded! Thanks to everyone’s help and also a very helpful eBay seller in South Korea who sold me his « Nano programmer » and made me a special cable which I solder to the SPI chip. BTW, his wiring harness is really cool. You need to desolder/cut only 3 legs of the SPI, and then solder 6 SPI legs plus the three cut/desolderd pads (if you want to test the unit after writing the data) and then you can read/ write the SPI as much as you want. To test the camera, you disconnect his harness from the programmer and jumper his header. He calls his header the « 3 Pin Cut method », which he designed especially for me – talk about super service – absolutely amazing! The programmer, including postage costs $20, the header costs about the same amount (maybe a little less). I don’t know the exact price because I also purchased two spare chips and an adapter at the same time. I plan to write an article on this method if time allows and nobody beats me to it. The Programmer requires a real parallel port – not a USB-to-Parallel adapter. Also, you will most probably need to disable your antivirus program or set an exception for his software. He tells you about this too.
To make life easier for anyone interested, I have written a small patcher program (Windows XP/7 only) which you can download from:
http://www.mytempfiles.info/gum/notimestamp.zip
The program will read the extracted file and write a new file replacing the font with the transparent font posted by others on this site.
In the meantime, I have purchased a couple more of these gumpacks, from the same eBay seller, to experiment. Unfortunately, one of them seems to be a bit different in that it only accepts max. 16GB SD cards as oposed to 32GB that the others will accept. The firmware patches perfectly with my program, but the original firmware is different. I will try replacing the firmware, but it means desoldering those three legs again… I should have left the header connected, but I didn’t think about testing the max. capacity as well as the timestamp!
9 août 2010 à 14:51
WOW. Too much trouble to remove the timestamp. I chose instead to blur it in postprocessing. Works ok without too much hussle. Thumbs up for you techie guys.
9 août 2010 à 17:30
Anonymousie
Duh – I connected it to the PC USB!
But with a REAL battery pack it doesn’t work either! It always wants to recharge. I’ve tried all sorts of combinations. What a piss!
1 septembre 2010 à 16:58
Modification to use external USB battery pack on #3 cameras
I have found a very easy way to use a USB external battery pack to record continuous video for up to 7 hours on a 32GB SD card. You have to cut ONE TRACK on the board. That’s all.
Here’s the link: http://www.mytempfiles.info/gum/project2.html
The project also describes how to modify the Photo-Video switch to switch between the external power modification and the standard USB functions. This is optional. You will lose the « Photo » function if you modify the switch.
1 septembre 2010 à 17:07
Here’s another project on how to remove the Timestamp without removing the SPI memory chip. You will have to desolder or cut three pins. Soldering skills and a programmer ($20) are required.
Here’s the link: http://www.mytempfiles.info/gum/project1.html
The project is based on information found on this site but aimed at the not-so-gurus.
2 septembre 2010 à 22:47
Look here http://www.google.com/codesearch?q=sunplus+%22app_main.c%22&hl=fr&btnG=Rechercher+du+code , there are some source of the firmware …
3 septembre 2010 à 19:40
What a foolks…
don’t need to open.. torture the gumpack-cam! ust need to create a tag.txt file with [date] and leave it blank or set the corret date+time.
Put this in the memory, reset the cam et…
Voilà !!! easy way not???
4 septembre 2010 à 11:58
Hello!
Is there any way to make the cam not to upscale from 640×480 to 720×480?
5 septembre 2010 à 16:12
TO Teo.
Tried ..your method does not work..I guess it depends on the version of unit.
5 septembre 2010 à 17:54
@Teo Rock: I cannot test myself due to the modified firmware, but I believe it’s too easy to be true.
14 septembre 2010 à 07:56
@Teo Rock: My friend…easy with the strong language. If that method would have worked, this post would not exist. We all tried that txt. file method and failed. So for all you new readers, get this: for the gum pack camera the txt. file method does not work. you need to alter the camera or to remove de date in postprocessing.
@Isoprop: thx buddy for the links.
18 septembre 2010 à 12:20
Isoprop: will that external power mod where you cut one trace work on a #3 keychain camera?
20 septembre 2010 à 02:20
Hey guys.
What worked for me in applying the « time » file is if you first delete the DCIM folder, then copy « time » to the root.
2010.09.19 09.55.00
Does anyone know why a gumstick would stop recording after 40 minutes, or after only 1 minute? Lights flash then turns off.
A good place to buy a camera is at: http://freedomcam.net/products.php?category_id=2794
22 septembre 2010 à 16:46
Hi all,
I have one the 808 car keys micro camera, version #3
Brightness settings is (-5)
Is it possible to change it to ( 0 ) ?
27 septembre 2010 à 11:54
To garyhgaryh
I don’t have a keychain camera, but am pretty sure that the cut track mod should work (for the #3 models). The problem is to find which track to cut. You must follow, optically and with an ohmeter (with disconnected battery and USB), the +5V connector from the USB and find where one side branches to the charging circuit and the other branches to the 3 diodes. The track to cut is the one after the diode bridge. After the cut position the track goes through a resistor (or two?) and then directly to the processor. Unfortunately I never found out which actual pin. It *may* have been the last pin #128, but don’t take my word on that. It is difficult and very time consuming to follow the tracks with an ohmeter, but my guess is that if you know which pin to cut you could also just cut the pin. My mods have been working for weeks now and make the camera a joy to use.
To aug
Many people have already tried deleteting the DCIM folder or formatting the card. No one has yet found a solution for the « tag.txt » file models. It just doesn’t work. I expect that you have a different model.
Some batteries may only last for 40 minutes. Flashing lights indicate that the battery is getting low. Maybe your battery is bad or there is a fault in the electronics/protection circuit. Give the battery a good, 6-hour charge.
9 octobre 2010 à 23:48
Anyone know how to get the UART pins out of the camera? I think that there is one UART reserved for DEBUG interface but what leg of the processor it might be?
Just wondering if one could connect to it and trace maybe some of the printf’s out of the binaries.
10 octobre 2010 à 14:41
Hello All,
Thank you everybody that asking and answering questions
A reader send me the datasheet of the SPCA533A, which contains a lot of technical informations. That might be the start of some further reverse engineering !
It is included in the article.
Regards,
12 octobre 2010 à 16:39
To the guy who discovered this:
—–
I’m surprised that this isn’t mentioned much on the internet, but on my MD80 clone, I can use an external usb battery pack to record if I hold down the record/stop button while plugging the usb cable in (camera has to be OFF first).
—–
Thank you !!
http://www.pluc.fr/2010/02/tear-down-and-hacking-around-gumpack-camera/comment-page-1/#comment-2272
18 octobre 2010 à 15:27
If I hold down the record button while in photo mode, my gumcam will record a wave file. Also I noticed that if you turn off the camera within a few seconds of stopping a recording, it will corupt the file.
Cheers
19 octobre 2010 à 23:14
First of all, what a read
But there must be a way of de-activating the timestamp using the USB and some coding (fool it into thinking there is a firmware update and just remove the part of the firmware that records the time)
Will be keeping an eye on this thread, as I too want to get rid of the time stamp… Just hope the manufacturer is reading this and they could release an update for it
21 octobre 2010 à 18:43
How to READ the GumPack firmware programmatically!!!!!!!
I feel that I must pass this information on to others.
Roger M from the UK has posted some very interesting info here
http://www.chucklohr.com/808/
Look for 2010 October 04, Removing the #3 Video Date Time Stamp.
Roger has done some amazing research.
Unfortunately I don’t have the time (or any « spare » GumPacks) to test the writing mode, but I have tested the read mode, and it works for the GumPack!
The resulting file is smaller than the true firmware dump, but the data that is there is the same.
I strongly recommend reading Roger M’s posts at chucklohr’s site.
Instructions:
First, you will need to download and install the webcam driver (without the camera attached).
http://brazza.eu/SPCA1528_V2220_MultiLan_090217.rar
Second, you will need to download the ISP 1528 programming software (THIS IS SUPER)
http://www.ziddu.com/download/11914470/Driver.rar.html
GET IT BEFORE IT DISSAPEARS!
There are some differences between the 808 and the GumPack.
Note: If you are using my external power « Cut Track » modification (http://www.mytempfiles.info/gum/project2.html) you will have to temporarily bridge the cut or, if you have done the complete modification, put the GumPack in USB mode (switch set to photo).
1a. Make sure the webcam driver is installed
1b. Make sure that the ISP 1528 software is installed
1c. Modify Isp.ini to reflect the correct folders
2. Turn OFF the GumPack.
3. Make sure that the SD card is inserted into the unit
4. Connect the GumPack to the PC
5. Wait until the disk is found
6. Press the Record button ONCE
7. The disk will be disconnected
8. Launch ISP_1528.exe
9. Click « Ver. Check » and the Version will be shown
10. Press « Read [F6] »
11. The program will ask you where you want to save the files
12. The program will save the files to the selected folder!
Now, all we need is someone brave enough to try to write the modified file back to the GumPack without bricking it. Follow Roger’s ideas.
Please keep us posted
23 octobre 2010 à 05:19
I have also managed to successfully read the firmware with this method from my Gumpack!!
Just a couple of notes that may make it a little smoother for others.
As in Isoprop’s post above,
**1b. Make sure that the ISP 1528 software is installed**
Create a new folder on the C drive and label it isp eg.[C:\isp]
I found that the ISP.exe would have errors if run from other locations.
**1c. Modify Isp.ini to reflect the correct folders**
These are the files to modify-
ParamFile =D:\Soft\1528\isp\SYS_REG_DS64_D96C96_SPI_6Mhz.TXT
IspFile =D:\Soft\1528\isp\ISP_SPI.BIN
FwFile =D:\1528code\DSC2403\DSC2403_V276\download\1528.bin
They should now look like this-
ParamFile =C:\isp\SYS_REG_DS64_D96C96_SPI_12Mhz.TXT
IspFile =C:\isp\ISP_SPI.BIN
FwFile =C:\download\1528.bin
**11. The program will ask you where you want to save the files**
Save the files to C:\isp\download\
(you will have to create this folder)
I am prepared to try to write a modified firmware to my gum pack (I understand this may brick my camera!!). Is it possible for someone to write a method to successfully modify the firmware. I have very limited knowledge of using a hex editor.
24 octobre 2010 à 18:15
To MadAussieMatt
Thank you for modifying my quick instructions. They were really only intended as a starting point for some brave souls! Since I have already modified my GumPacks using an eprom programmer, I don’t want to brick my hard work!
However, have you tried running my patch program on the extracted 1528.bin.brn file?
http://www.mytempfiles.info/gum/notimestamp.zip
It will tell you if it succeeded, so you don’t need a hex editor. Since I have already patched my GumPacks I can’t test if my program works, but I see no reason why it should not. If you want to be 99% certain, you can email me your 1528.bin.brn and I’ll take a look at the data to patch. Go to one of my 2 projects (see my posts from September 1st.) to get my email address (at the end of the articles).
I ran ISP.exe from a fairly complex folder hierarchy from my d: drive, and had no problems. However, there must be NO SPACES in the folder name(s). Also the folder name(s) must be kept short. I think c:\isp or d:\isp is a good idea.
Please do tell us your results!
25 octobre 2010 à 16:11
To Isoprop
I have tried to patch the 1528.bin.brn file of my md80 clone with your program.
After I applied the patch program, I opened the 1528.bin.brn file with a hex editor and had to find that some of the code after the fonts were overwritten.
I did not testing the patched 1528.bin.brn but I think there is a great risk to brick the camera.
25 octobre 2010 à 16:15
OK, I had some success!!!, first I used Isoprop’s firmware patcher tool to mod the 1528.bin.brn file, then I used the ISP tool to load the firmware to the gumcam. The program started to load the FW but then hung as in picture(1). I then unplugged after about 5min and then picture(2). I then took some video with the gumcam and the result was picture(B). As you can see it has removed the time/date but left green lines in their place. After that I loaded the FW with the original 1528.bin.brn file that I initially read. (renamed 1528.bin) picture (C). As you can see this wrote to the camera ok and now the date/time is back to normal.
http://i920.photobucket.com/albums/ad49/madgolfermatt/Gumcam/gumcam.jpg
As for the screen that pops up when you click the ISP [F5] button. I used these files and left the Param Only box unticked.
ParamFile
C:\isp\SYS_REG_DS64_D96C96_SPI_12Mhz.TXT
IspFile
C:\isp\ISP_SPI.BIN
FwFile
C:\isp\download\1528.bin
To Isoprop
I will email my 1528.bin.brb file to you, perhaps you can work out a mod for this.
I think we are very close to a simple firmware mod for our gum cams!!!
Who knows what else is possible with this new advances. Maybe resolution and audio mods, I think these are very capable little chip-sets.
Matt
27 octobre 2010 à 14:14
New Version of NoTimestamp
Thanks to all those who sent me their files and comments.
Indeed, there was a silly bug, which did not occur with eprom-extracted files, in my original program. Hence the green lines referred to by MadAussieMatt.
The 246 bytes of overwritten data referred to by Hamburger, could indeed, be true. I based the number of bytes written on an original MD80 and it’s modified file which I had previously found.
The new program version no longer writes those trailing 246 bytes. I am not sure if these bytes are font data or not, but I want to be on the safe side.
The current version is v.1.2 and the program can be downloaded from the same address as before:
http://www.mytempfiles.info/gum/notimestamp.zip
With the new version there is the possibility to patch either 15KB or 142KB of font data.
I have found references to both, so I expect that they should both work. On my original Firmware, which I extracted using an eprom programmer, I used the multiple fonts version (142KB) and this worked.
Recent messages indicate that it is only necessary to patch 15KB.
Since I don’t have access to an original, unmodified GumPack or an original, unmodified MD80 clone, I can’t test the modified file in real life myself.
I have checked the program output with various GumPack files and MD80 clone files. All the files look perfect in a hex editor. Only font data gets modified.
The new program version checks the last 8 bytes of data that will be patched and will show a warning message in the list control if it thinks that data has been overwritten.
It would be great if GumPack/MD80 clone owners could check this program and post the results here.
Thank you
27 octobre 2010 à 14:54
GO GUYS GO !!! CRACK THAT MISTERY.
28 octobre 2010 à 16:17
!!!!!SUCCESS!!!!
Well done Isoprop, I have just uploaded the new patched file to my GumCam and now have no time stamp!!! I also tested both modes of notimestampV1.2 and discovered that if the box is left unticked, the time/date is only removed from the video recording. If the box is ticked then it is removed from the Video and Picture modes. I have a 808 cam coming soon, hopefully it is a #3 as I may be able to update its firmware also.
Well done again to everyone involved in removing the time stamp without removing a screw!!
2 novembre 2010 à 17:33
Hey guys,
Can someone make a short and to the point tutorial for the « technically challenged » people like myself?
THX.
2 novembre 2010 à 18:29
How to un-brick the 808 #3 camera (Seem my last comment did not post).
http://www.chucklohr.com/808/C3/#C3Unbrick
3 novembre 2010 à 18:22
Tutorial available
To IISBV and others
OK, I’ve put together a tutorial which you can view, copy or whatever here:
http://www.mytempfiles.info/gum/project3.html
It’s pretty heavy going and I haven’t included any pictures (yet?).
11 novembre 2010 à 21:07
Hi
Thanks for all the work that you have been doing.
From the start. I can confirm that this chip is based on an 8052 to be precise.
It has got an onboard dac for digital video to analog.
I have been trying to get this to work but it seems I have just bricked a video cam which uses the same chip and software… It has av out and a lcd screen. I am trying to activate the av out but no success as of yet. We want to use it for micro robotics but I see that there might be a market for a MD80 with a small osd… If anyone knows how to program these cameras plz let me know… Think we could sell a few modded MD with osd for few $…
Regards
Cronselaar
12 novembre 2010 à 16:35
You guys ROCK !!! My camera now shows NO TIMESTAMP. For all the people who want to get rid of that pesky timestamp: folow ISOPROP’s instruction and you will be successful in removing it.
THX a million guys for the hard work and dedication.
Cheers from Romania.
22 novembre 2010 à 00:27
Indeed,
It took me about 10 minutes to remove the annoying time stamp using Isoprop’s method.
Worked perfectly on my clone MD80 with Vista laptop.
Thanx, no more recordings in 2008… Good work!
Alex
22 novembre 2010 à 04:17
Hi
More 2 MD80 with no time stamp. At first a lot of crashs happened, because every time i advance a step new popups appears with new drivers to instal. After i successfully read the camera the first time, no more crashs. Not even in the second camera, only reseted it after the reading.
THANKS YOU ALL THAT MADE THIS POSSIBLE!
23 novembre 2010 à 13:15
To sanctos.
Thank you for your comments. I mention this in the tutorial, but I have now tried to draw attention to this initial problem by using red text. I also expect that different operating systems/configurations may react differently.
The first time that you use the ISP program to read the firmware, you should take your time in case the system wants to install new drivers. After the initial setup, time is your enemy! You have to do things as fast as possible.
Between each stage, always disconnect / re-connect the camera.
It’s great to hear success stories here! Now we want to go a step further and fine tune the video output – wishful thinking, I know… Any 8052 assembly gurus out there?
25 novembre 2010 à 06:52
Hello, geniuses! It’s great to see your works!
You guys are working on SPCA chip, but I have a gumpack camera with Syntek STK1262.
I actually like it very much except pop noise in audio, which I don’t care. The PCB is really beautifully layouted and the SMDs are really precisely mounted on the PCB, through which I can feel the robustness of this camera.
By the way, I have a question for you.
Can I use the same method described here to dump the firmware and erase the time stamp on my Syntek STK1262 gumpack camera?
Do you think Syntek STK1262 chip has the same computer architecture as SPCA1527A chip?
Thank you.
tomo
14 décembre 2010 à 11:52
Hello…
For every one that are using the software solution to remove timestamp of the MP10 GumCam and the camera got bricked ive found the solution to unbrick it.
You have to connect the two points that i marked in red of the board:
[IMG]http://i51.tinypic.com/1ze85s3.jpg[/IMG]
And after plug the usb and follow the software tutorial again. All will be ok.
Its more than tested
Regards from Portugal.
25 décembre 2010 à 01:56
Hello!
My camera spca1528 V222 doesn’t work. Does anyone have driver spca1528 V2237.
Pls send me. to bobhant@yahoo.com
25 décembre 2010 à 15:40
Hi
I seem to have brick my MD80.
Anyone has a solution ? I mean without desoldering the EEPROM
I tried to shortcut two pads near usb connector (maybe I didn’t soldered well enough) I gets no usb connection.
thank you
Gloug
26 janvier 2011 à 20:31
I have a #8 Eken USB Identified keyring cam and it is sold as a helicopter rc cam as both avi movie and jpg camera. I want it for still images for photography reasons and not as a movie cam. I also have an Etech Flycam 2.0 which cost more and does not seem to take as clear of a pic as my #8 keyring cam. I am trying to make the Eken keyring cam take still pics every few seconds the the Etech Flycam can. It was sold to me as an RC camera and it is much cheaper than the Etech Flycam.
The #8 cam uses a script for time set as
Tag Txt Format
File Name TAG.TXT
[date]
2011/01/26
08:52:00 and the
Etech DV Cam acually includes a software ap that installs the time and a final character to a format like this with a file name of config.txt that sets both the time to the camera and the picture taking rate for the cam.
2011.01.26.14.21.03.15
The .15 on the end tells the Etech DV camera to snap an image every 15 seconds and this is adjustable. I am looking to see if anyone here has a script to make the #8 keyring camera achieve this same function with a .JPG snap rather than as movie cam. The normal directions on the #8 cam indicate it can only take one picture with each press of the trigger button and i am looking for a way to make it start a string of pics every so many perhaps 15 seconds or so ashown on the Etech FlyCam
Your input on this mystery to me would be very much appreciated.
Thanks in advance from RC Flyer Mike
29 janvier 2011 à 23:05
I followed the Isoprop method and i could remove the timestamp (date and time) out !!
thanks a lot man !
Marvelous!
2 février 2011 à 14:49
Hi guys,
Here are 2 interesting points for you experts….
1) Does anyone know how to modify the triggering mode ?
I mean : usually, we do have to press the Start/Stop button to record a video. I just would like to automatically record a vid on an external info (light on, sound, motion detection unit, etc…).
2) How can we modify the spycam so it rewrites from 0 when the card is full ? In this mode, with an external supply, it could record continuously the last 1 hour events…without pressing any button.
Thanks !!
Sergio
4 février 2011 à 10:35
Gloug
You can try connect the camera to USB with pins 6 and 7 of EEPROM shortened (unshort it when connected) and write the firmware.
7 février 2011 à 08:07
Hello!
Prompt possible remake the camera D019 so she at connection to USB was immediately included in mode webcam without striking on button?
9 mars 2011 à 10:22
hello!
can you make flashdump for 8MBit flash , that can cycle rewrite in to microsd?
i know that 16MBit version can cycle rewrite but 8MBit can’t .
19 mars 2011 à 04:24
can you please help me where i can find a datasheet of SPCA1527A-HL091..
18 avril 2011 à 11:29
Got the version of #4 camera with some additional features (video recording is triggered by motion detection, AV-out). Name of camera is RD53 MiniDV Camcorder.
Wondering if any of following can be addressed:
1) recording video with connected USB charger. Now camera cannot do this, but I see for #3 camera people cut some wires inside to enable it. Are there similar solutions for #4 schematics?
2) as a matter or miracle – aren’t there any solution to stop camera from upscaling video from 640×480 to 1280×960 when recording? In web-camera mode I understand video is outputted at 640×480, but on SD-card it’s upscaled, just silly wasting card space. Aren’t there any miraculous hacks that would force recording in 640×480 mode without upscaling?
10 mai 2011 à 08:44
hello…
i have a gum camera , i install this software (remove the timestamp on the GumPack), after i on camera is not on ,PC plug in red led on but not detect
how to fix it ?
10 mai 2011 à 16:08
hello..
i have not save original firmware
i re upload this site http://mytempfiles.info/gum/project3.html .bin.
PC plug in red led on 1sec off , PC not detect
how to fix it ?
12 mai 2011 à 08:19
Hello!
Very Great Work. (now, i’am begin educate RAW format, HEXcode – i know).
I want to try remove yellow d/t stamp from low right corner of my (now not given)) video camera DV-D005 with Sunplus? processor (China clone of Mini DV RD52) from DealExtreme?
Work it be?
Now, I expirement with 808 firmware and HxD and IrfanView)
Thank’s.
Evgeni K.
18 mai 2011 à 19:39
Hello,
I have a MD-80, and 60 dB to starting recording i think is to much noise.
Is « there » a firmware that change this to a lower value like 15 or 20 dB or other value?
Thanks in advance
Joao
8 juin 2011 à 14:29
http://depositfiles.com/files/hrsqkqpy5 here is sunplus 1527a datasheet
19 juin 2011 à 15:55
Interesting post.
I did a similar teardown of another one, and concluded it was ARM last year.
Mostly they were reusing mp3 player SoC’s and using for simple keychain cam. Funny that it was cheap enough for them to do that, rather than using a 8051 based..
http://www.computersolutions.cn/blog/2010/08/firmware-hackery-on-keychain-spycams-ak36xx-based/
I did see some 80mhz 8051 SoC based ones too though.
Nice find on the datasheet, those are hard to find.
I’m working on reversing the ipcam’s at the moment – made a site for that here – http://www.openipcam.com
Lawrence.
18 juillet 2011 à 09:20
Hi,
After pulling the Firmware down from my MD80, I did some Googling for various words found in there and came up with this.
http://sdvsdv.googlecode.com/svn/
It’s some of the source code for similar cameras. Not quite the md80 FW, the sensor is a different model, but it has some interesting clues.
I’m looking into lowering the frame rate to maybe around 1 per second to make timelapse movies.
Cheers,
Geoff.
27 juillet 2011 à 07:32
I’ve found that the sensor is a Galaxycore GC0308 (it’s written in the bin file) and found a datasheet for that on the internet. I can’t really share that here as it has « Confidential » written all over it, but certain popular search engines can find it anyway.
From the source code mentioned in my previous post and the bin file from my camera I found the initialization data for the sensor. A quick change to that and I seem to have halved the capture frame rate. I need to fully confirm that by filming in bright sunlight to make sure it’s not going slow due to low light. It still says 30 FPS but the file contains lots of dropped frames.
More testing is needed to confirm that this will really record for twice as long before hitting the 4Gb limit, but I think I’m on the way.
I initially tried to go right down to 5 FPS, but it bricked the camera. Unbricking was simply a matter of shorting the two pads mentioned earlier (though on a md80 they’re in a different place, google for unbrick md80 and look at a page in german.)
If I get some time tonight, I’ll try 10 FPS. Hopefully that should allow me to film for over 3 hours, then I can speed that up in virtualdub.
The datasheet says there’s a range of special effects built into the sensor, I may have a go at enabling some of those too.
I’ll keep posting here, just in case anyone is interested. If anyone want’s more info, just post here and I should read it.
Geoff.
28 juillet 2011 à 09:26
I seem to be the only one here these days.
Anyway the hack seems to have dropped the frame rate to around 10, not the originally expected 15. I’m not sure why. The « missing » frames are replaced with [D] frames, which are just 6 bytes long. Overall, the file sizes are now down to about a third of what they were.
BUT… Now I can’t seem to get the firmware updater to work any more. It was dodgy before, only worked about 25% of the time at best. The unbricking procedure always seemed to work though. I’m hoping to try an old windows XP PC, as I suspect the nice shiny dual core Windows 7 machine is adding to the problem. If I can get back the ability to write the firmware, I’ll try enabling some of the special effects.
The sensor can do « edge map » « CbCr fixed » and « inverse color » effects. Not quite sure what they all are but I hope to find out soon.
28 juillet 2011 à 10:24
Hello Geoff,
That’s great achievement ! You are not alone here, I am really following your work. Please keep us informed of your progress
Cheers,
28 juillet 2011 à 22:54
I’ve had a bit pf time to play now…
The programming tool works MUCH better on my old XP laptop than it does on my nice shiny Windows 7 one. Even though it is 32 bit Windows 7. Only killed the camera once all night, and revived it with the short the two pads technique anyway.
Now down to details…
The sensor configuration is about 256 byes along from the word SENSOR. It’s laid out as two byte pairs. The first byte is the address in the GC0308, the second is the value they put there. The address byte generally increment while the data bytes can be anything. Anyway there’s a sequence like this…
0×26 0×02
0×28 0×00
0x2F 0×01
The interesting part (to me) there is the middle row. Address 0×28 holds the clock divider, and duty cycle parameter. I think setting the second nibble to about half of the first is a good plan, but am ready to be corrected if anyone knows better. The first nibble will divide the clock by 1 plus the vlue set in here. If you push this too high, and therefore the clockrate too low, the camera won’t boot. I’ve found that I can set it to 0×42 and the camera will film at 6 FPS with the remaining frames filled in as dropped frames. Not completely sure, but I guess a 2Gb card will outlast the battery at that. There is a way to run the camera from the USB though. Just hold the record button down as you plug it in to do this.
Another experiment tonight was to try the frame rate setting parameters in the output section of the datasheet. I couldn’t make anything work with this though.
Finally, I played around with the « special » effects. I hijacked the bit in the configuration data that sets byte 0×18 labelled as unused in the document to be able to set values in the special effect control byte. This byte is at 0×23 and is a bit field, the bits enable the 3 effects independently. Presumably you can use multiple effects at the same time. anyway here’s my results.
0×01 – should be Invert colors – The image was in negative.
0×02 – should be CbCr fixed – The image was in black & while.
0×04 – should be edge map – The image was all white.
Anyway, that’s my research so far. I’m sure I can make it do more if I try, it’s just a matter of finding the time.
Feel free to post any questions and I’ll try to answer them.
Happy Hacking.
Geoff.
29 juillet 2011 à 07:14
STOP PRESS.
Now it’s daylight an issue with the low frame rate hack has come to light. The camera seems to be too sensitive, pretty much anything filmed in daylight gives a complete whiteout.
I guess it’s back to the drawing board to see if I can figure out some other frame rate control system.
Meanwhile, the 6 FPS hack seems fin indoors.
Geoff.
1 août 2011 à 21:14
[...] is Philippe’s website with some details of what [...]
2 août 2011 à 13:06
A bit more info.
I’ve read through the datasheet on the SPCA533A camera controller and there doesn’t appear to be a way to control the frame rate there. It’s streamed through an almost completely hardware path from sensor to SD card. The CPU on there is just looking after the UI (on cameras that have one) and a few minor housekeeping tasks. Initialization is handled by this CPU, which I guess is why I managed to alter the sensor configuration.
In hacking rather than reading, I’ve experimented with the close_frame setting on the module again, but I can’t get that to do anything. I can get a video of the sensor test signal, which looks like a TV test card, by setting a bit in a debug register.
The really bad news is that I’ve now bricked my camera in a permanent looking way. It seems like the unbricking pads are permanently shorted, so I think I’ve zapped it with static. I wasn’t taking any precautions so I wouldn’t be surprised by that.
If I can get the datasheet for the Sunplus SPCA1528 or SPCA1527a then I’d love to read it and see what more can be done. Failing that, I think I’m going to go for the hardware (555 timer or PIC) option to take one still image every 4 seconds.
Cheers,
Geoff.
10 août 2011 à 03:42
Can someone here help me. I have a pair of video eye wear that has a SunPlusmm chip inside. Is this the same as SunPlus? The video and time stamp work fine, but there is a small band along the right hand side of distorted video, like a mirror edge. I’ve been given a file called 1528.bin and told to place it in the TF card (which I can only assume is the micro SD card) and then to power up the glasses and the firmware will be updated. Only it doesn’t. Is there a trick to this? Can anyone help? I can provide extra details…
Dan
23 août 2011 à 16:24
I’ve discovered a very easy way to permanently remove the timestamp without any hardware or firmware modifications. AFAIK this isn’t listed anywhere else on the Web.
Connect the camera to your PC, then create a file « time.txt » in the root directory of the camera, with contents e.g. « 2011.01.01 00.00.00 N ». No quotes and no line breaks; file size must be exactly 21 bytes. This has already been documented in various places; the only remaining problem is that the firmware deletes the file upon booting.
But there is a trick to prevent that pesky delete from happening: just make the file read-only!
It’s really that simple…
19 septembre 2011 à 20:53
I have a spy pen that scales up the video and records slowly because of this. Would I be able to get a better frame rate if I used a 35mhz crystal?
27 octobre 2011 à 12:48
My Gumpack-Experience :
I also recently bought a micro camera (30fps and 720×480. Sunplus)
and I got the wrong timestamp of 2008 too.
After reading the the whole stack of information of all the gumpack-explorers
I found the hints of « where to save the « DATE.TXT » where solving
the timestamp-problem.
After the timestamp was saved in the right way and place, the testvideos
showed the correct date and time each day.
Here is my Howto :
Via USB you should see the memorycard
with its folder DCIM on your PC screen.
Opening this folder shows the next folder
(in my card 100MEDIA) In this folder
I have the testvideo-files and
a saved example of the timestamp-file « prototype ».
It should look as the manual wants
TAG.TXT
(in this textfile I wrote in) :
[date]
2011/10/26
17:15:00
Of course you write your
actual date and time
and you made the blank lines
after each written line.
Now you save this « prototype »
in this last folder.
Now you copy the new created file « TAG.TXT »
and you save/paste it parallel
to the folder DCIM.
Insert the memorycard back to the camera.
If you take a video with the camera,
it grabs the actual date+time and delete the the file after,
because the camera keeps the new date and time
as a computer and from now it writes the daily correct timestamp
on each new video that is taken.
If you check the camera-memorycard with your computer,
you see no TAG.TXT file together with DCIM-folder. The camera
did the job.
If you ever need the TAG.TXT again (Battery down,or you reset the camera) find the first saved file, change the actual date+time or write completely new and copy as mentioned.
Happy gumpacking !
29 janvier 2012 à 18:42
[...] PHILIPPE conseguiu hackear o firmware de uma gumpack camera, que usa o mesmo chip da Eken 808, e removeu o [...]
11 février 2012 à 21:27
I have one of these gum type cameras, and unlike most of you I need to use the date stamp facility, which of course is stuck on 2008.
I’ve tried Gumpack Explorer’s double tag.txt file trick but I’m still stuck in 2008
I don’t have a disc with it, I’ve managed to correctly insert the tag.txt file, but I don’t have the « time synchronisation file » which according to the instructions is on the disc.
a) does anyone have a copy of this file they can email me?
and
b) where does it go, in the root or in DCIM?
Many Thanks
Caz
11 février 2012 à 22:00
I think I’ve very nearly sorted it, I was doing a couple of things wrong, now it’s OK, until I turn it off and it reverts to 2008
Thanks for looking
3 mars 2012 à 19:24
Hi members,
any success on getting composite video out of this camera
27 avril 2012 à 18:48
I have 808 #3, but with bad accum
When I changing new accum I connecting + and – not in right position
Something wrong happening
But camera working good with usb connection as usb-disk and web-camera.
I tested chips and found that bad is: 212T, S4 and A10b (out =1,4V but must be 1,8V).
Help me – say me what are FULL NAMES of all chips on the board.
212T – ?
A10b – ?
And others.
Thanx for help!
10 juillet 2012 à 08:01
I’m guessing that the photos and sounds are because a LCD screen and speaker can be hooked to the camera, the photos are for the home screen(it starts in video and you can press the home button to access the photo, voice, playback, and maybe even music playback. I’ve another camera using a Coach(not sunplus) chip and it can do that
12 août 2012 à 23:33
NO MATER what i try on my md80 i still get usb connection error, and can’t do anything at all..is there any possibility that i can fix this?
3 février 2013 à 18:23
my Mini DV MD80 from ebay, it seems that not Sunplus, but anyka MMC USB Device Disk. Unable to remove timestamp. my timestamp is not yellow. this is black.
http://img163.imageshack.us/img163/6923/anykammcdiskusbdevice.jpg
http://img51.imageshack.us/img51/3429/46920202.png
Can anyone help me?
30 mars 2013 à 06:15
Has anyone tried to decipher the character encoding to try changing the timestamp color? Changing the font doesn’t seem to be a problem, seems to me that even changing the color into something more or less random would not be a problem. But with a bit of experimenting, I’d say the way the font pixel colors are stored could be deciphered so anyone could change the timestamp color to the exact color of choice.
What could be easily noticed is – each 16×24 character row is represented by the 32 bytes. The first 16 bytes correspond to the first 8 pixels, and the second 16 bytes describe the later 8 pixels in row. Seems as each pixel is represented by the three channels where the first channel has 8 bits per pixel and the other two channels have only 4 bits per the pixel (or 8 bits of the 2nd&3rd channel are for describing two pixels at once – it would be very easy to test which one is the case).
Here is the picture of what I mean:
http://img5.imageshack.us/img5/859/pixeldata.png
I have isolated the ‘zero’ character (the 32×24 green rectangle) from the representation of the hex dump. The character is divided into the left and right half – the left 8 and the right 8 pixels of the character. Let’s see how each of the first 8 pixels in a row is represented in the hex file (raw data):
As I’ve said – each pixel is represented by the three channels. We still don’t know what they are – they could be RGB, RBG, shifted RGB/RBG, RBG+alpha, … Let us assume the three channels are R, B and G. I have marked the R, B and the G data of the very first pixel of the character with the corresponding red, green and blue colors.
As can be seen, the green and the blue chunks of data control the first TWO pixels (marked with red). As said before – green and blue channels might be 2 times 4 bits per corresponding pixel, or they might be 8 bits per TWO corresponding pixels, someone will have to do the simple test if one of these assumptions is correct (as there are more than just these two possibilities).
After these assumptions I was trying to figure out what the B&G data might be so I took the data for the very first visible pixel of the character ‘zero’. I took the hex editor and looked at the corresponding offsets and the data for the first (yellow) pixel is:
0xe1, 0×01, 0×94
If we assume the B&G data controls two pixels at the time, then the data for the second pixel in a row is the same as for the first one. Why would we assume the B&G data is for the two pixels? After examining the font, I noticed not even one SINGLE pixel in a row. That is – every horizontal pixel we can find comes in a pair so there is probability the B&G channels control ‘double’ pixels.
The next was to try to compare the RGB representation of the yellow (0xff, 0xff, 0×00) with the (0xe1, 0×01, 0×94). What color would the data represent if it is not RGB but is RBG data (I think there are some picture file formats with the reversed G&B channels)? The color would be (0xe1, 0×94, 0×01) and that *is* some kind of the yellow (however not the same as in the timestamp).
As we can see, the very same pattern can be applied with the next 8 pixels (the right half) of the character data and the next thing I assume is – one of the colors is reserved as the transparent (similar to storing the index of the transparent color in transparent .gif’s file format). Looking at the raw data (from the img_extract_03_0x138000-0x13d000.raw hex dump) the transparent color is:
0×00, 0×80, 0×80
Unfortunately I couldn’t make any further assumptions without flashing the EN25F16 with the altered data and seeing the results. In fact, I don’t even have the camera we are talking about – I have a MD80 clone that has arrived just yesterday. But if someone would do a few experiments flashing the 0×138000-0x13d000 area with some altered values, I think it wouldn’t be too difficult to decipher the exact color coding of the timestamp font pixels.
The first thing I would do would be to change all 0xe1 values of the ‘R’ channel of yellow pixels to see what would be the resulting color. Then, by changing the B and the G data, and observing the results – more could be found about how the color is stored in the corresponding 24 bits of each timestamp pixel.
What could be even more interesting would be to see the disassembly of the whole .hex dump, trying to isolate the code which reads the 0×138000-0x13d000 area. After locating that code, it might be not to difficult to ‘poke’ the .hex altering just a small number of the instructions, so every pixel from the font table would have been ‘read’ as transparent – regardless of the actual data.
I hope someone who already has set everything to be able to read/flash the device, would find this interesting and do some experimentations.