Grove - Mini Camera


If you are searching a small size camera, perhaps, Grove-Mini Camera would be your best choice. It’s a mini camera which can be controlled by Arduino. It has integrated image processing to generate 1280*720 JPEG image. The captured pictures are stored in SD card and you can read SD card information via Mini 8Pin USB interface.


  • Standard USB Interface and Grove Interface
  • High resolution
  • Tiny size and light weight
More details about Grove modules please refer to Grove System


ItemPerformance Parameter
Video DecodeH.263 Accele
Video FormatAVI
Video EncodeMPEG4
Video Resolution640*480
Video Frame Rate30FPS
Run Softwaresupport AVI Player
Photo FormatJPEG
Image Resolution1280*720
Charge modeDC5V
Data Communication InterfaceMini 8Pin USB
Storage MediumMicro SD (Max 32G)


Different from general camera, Grove - Mini Camera can be controlled by Arduino/Seeeduino.
Now let us use the Grove - Mini camera to achieve this function: shoot a picture every time when someone approaches.
To do it, we need a Grove - PIR Motion sensor which can spot any motion within a certain scope.
Let us start to make it:
  • Plug SD card into SD card socket, SD card is not included in this Grove and its size can’t be larger than 32G.
  • Connect Grove - Mini Camera to D2 port of Grove - Base Shield, and Grove - PIR Motion Sensor to D5 port.
  • Plug Grove - Base Shield into Arduino/Seeeduino, then connect Arduino/Seeeduino to PC using a USB cable.
  • Open Arduino IDE, copy and paste the code below to a new sketch:
/*Using digital 2 to control Camera*/ /*Using digital 5 to receive sensor signal*/ #define KEY 2 #define PIR_MOTION_SENSOR 5 void setup() { Serial.begin(9600); pinMode(KEY,OUTPUT); pinMode(PIR_MOTION_SENSOR,INPUT); delay(100); enterStandbyMode(); makeVideo(5000); } void loop() { int sensorValue = digitalRead(PIR_MOTION_SENSOR); if(sensorValue == HIGH) //when the sensor value is HIGH, someone is in here { takePicture(); delay(5000); } } void takePicture(void) { digitalWrite(KEY,HIGH); delay(1000); digitalWrite(KEY,LOW); delay(1000); } void enterStandbyMode(void) { //set the key pin as high level for 2s,enter the standby state digitalWrite(KEY,HIGH); delay(2000); digitalWrite(KEY,LOW); delay(1000); } void makeVideo(long int videoTime) { //set the key pin as high level for 2s again, from the standby state to video state digitalWrite(KEY,HIGH); delay(2000); digitalWrite(KEY,LOW); delay(videoTime); //make a video for videoTime.Its unit is ms. // stop the video digitalWrite(KEY,HIGH); delay(1000); digitalWrite(KEY,LOW); delay(1000); } void PoweroffMode(void) { //set the key pin as high level for 5s,enter the poweroff state digitalWrite(KEY,HIGH); delay(5000); digitalWrite(KEY,LOW); delay(1000); }
  • Upload the code.
  • Now there should be a video in the SD card because we call the function once during Setup(). To play the video, you can either directly connect the camera to PC via USB cable or use a reader to read it. And if somebody approaches when it’s working, you should also find some pictures in the SD cards also.


Here is the state description of this mini camera. There are 5 working states.
1. Standby: Set key as high level for 2 seconds when in the power off state, Red LED will come on. Mini camera enters Standby state.
2. Power off: Set key as high level for 5 seconds, camera enter Power off state, Red LED will fade out.
3. Take pictures: Set key as high level for about 1000ms when in the power on state, camera can take a picture. Red LED will blink once to tell you that one picture has been taken. Afterwards, it automatically enters standby state.
4. Video: Set key as high level for 2 seconds when in the standby state, Camera will enter video state and red LED blinks continuously. To stop it, set key as high level for about 1000ms, camera will enter to standby state.
5. Files storage: Connect camera to pc using USB cable, you can open image file and VIDEO file. You can also access the files in the SD card by a SD card reader.


Help us make it better

Thank you for choosing Seeed. A couple of months ago we initiated a project to improve our documentation system. What you are looking at now is the first edition of the new documentation system. Comparing to the old one, here is the progresses that we made:
  • Replaced the old documentation system with a new one that was developed from Mkdocs, a more widely used and cooler tool to develop documentation system.
  • Integrated the documentation system with our official website, now you can go to Bazaar and other section like Forum and Community more conveniently.
  • Reviewed and rewrote documents for hundreds of products for the system’s first edition, and will continue migrate documents from old wiki to the new one.
An easy-to-use instruction is as important as the product itself. We are expecting this new system will improve your experience when using Seeed’s products. However since this is the first edition, there are still many things need to improve, if you have any suggestions or findings, you are most welcome to submit the amended version as our contributor or give us suggestions in the survey below, Please don’t forget to leave your email address so that we can reply.
Happy hacking