# Could you please recommend an affordable SparkFun Qwiic camera and GPS for the XRP robot?

**URL:** <https://xrp.discourse.group/t/could-you-please-recommend-an-affordable-sparkfun-qwiic-camera-and-gps-for-the-xrp-robot/95>\
**Category:** General\
**Created:** [October 17, 2023, 10:52pm UTC](https://xrp.discourse.group/t/could-you-please-recommend-an-affordable-sparkfun-qwiic-camera-and-gps-for-the-xrp-robot/95 "2023-10-17T22:52:00Z")\
**Posts on this page:** 13\
**Page:** 1

<div class="post-metadata">

**Author:** ![sfong21](https://avatars.discourse-cdn.com/v4/letter/s/96bed5/32.png) [@sfong21](https://xrp.discourse.group/u/sfong21)\
**Post date:** [October 17, 2023, 10:52pm UTC](https://xrp.discourse.group/t/could-you-please-recommend-an-affordable-sparkfun-qwiic-camera-and-gps-for-the-xrp-robot/95/1 "2023-10-17T22:52:00Z")

</div>

I would like to offer a first person view when remote controlling the XRP robots to our students.

Also, we would like to track our travelling paths and create customizable paths to desired locations using the GPS coordinates.

Any recommendations would be greatly appreciated. Thank you.

Steven

---

<div class="post-metadata">

**Author:** ![AkaMrBill](https://avatars.discourse-cdn.com/v4/letter/a/bcef8e/32.png) [@AkaMrBill](https://xrp.discourse.group/u/AkaMrBill)\
**Post date:** [October 18, 2023, 2:09pm UTC](https://xrp.discourse.group/t/could-you-please-recommend-an-affordable-sparkfun-qwiic-camera-and-gps-for-the-xrp-robot/95/2 "2023-10-18T14:09:13Z")

</div>

I have not used this GPS, but it is the least expensive QWIIC connected GPS they carry. [SparkFun GPS Breakout - XA1110 (Qwiic) - GPS-14414 - SparkFun Electronics](https://www.sparkfun.com/products/14414)

---

<div class="post-metadata">

**Author:** ![Fgrossman](https://avatars.discourse-cdn.com/v4/letter/f/b77776/32.png) [@Fgrossman](https://xrp.discourse.group/u/Fgrossman)\
**Post date:** [October 18, 2023, 6:10pm UTC](https://xrp.discourse.group/t/could-you-please-recommend-an-affordable-sparkfun-qwiic-camera-and-gps-for-the-xrp-robot/95/3 "2023-10-18T18:10:41Z")

</div>

Some great questions here are some suggestions, but partially depends on your goals and students skills.

For a camera, if you are not looking to process the camera data at all, but just have a first person view. There are a number of inexpensive 5.8Ghz FPV cameras and receivers that would give you a great view at a low price. You can power the camera off of one of the servo headers on the XRP board.

GPS is a bit tricky. Normal GPS accuracy is in the meter range, which is pretty big for a robot this size. There is newer technology called RTK, SparkFun has some solutions, which uses a stable GPS station and a moveable one and can get down the CM accuracy. That can work for a small robot like the XRP, but both have to be able to “see” GPS satellites, so it can’t be done inside.

FIRST teams have come up with a number of solutions. The one that would be easiest to convert to the XRP are around using odometry wheels. If you Google ‘first tech challenge odometry’ and you will find a lot of information on how to track your robots location.

Path planning also has a number of challenges to do well. WPILib which is a solution for the FIRST Robotics Competition (FRC) , has a really good section on path planning. [Path Planning — FIRST Robotics Competition documentation](https://docs.wpilib.org/en/latest/docs/software/pathplanning/index.html) You can acutally use the WPILib programming solutions with the XRP, but it requires you to load a different set of firmware. That information can be found here. [Getting Started with XRP — FIRST Robotics Competition documentation](https://docs.wpilib.org/en/latest/docs/xrp-robot/index.html)

We will be very interested if you work on any of these solutions. Please post here if you do. Your students will be fully ready to be on a FIRST team if they learn these skills!

---

<div class="post-metadata">

**Author:** ![sfong21](https://avatars.discourse-cdn.com/v4/letter/s/96bed5/32.png) [@sfong21](https://xrp.discourse.group/u/sfong21)\
**Post date:** [October 19, 2023, 3:39pm UTC](https://xrp.discourse.group/t/could-you-please-recommend-an-affordable-sparkfun-qwiic-camera-and-gps-for-the-xrp-robot/95/4 "2023-10-19T15:39:33Z")

</div>

Bill and Frank, thank you for your wonderful recommendations.

Currently, we are testing a few 5.8 Ghz and Wifi (P2P) mini spy cameras.

One that appears quite interesting is the following:

Spy Camera, AOBO 4K HD Mini WiFi Wireless Hidden Camera Smallest Security Cameras with App Nanny Cam Night Vision Motion Activated Alerts Secret Surveillance Cameras for Indoor $45.28 CAD

> **[Spy Camera, AOBO 4K HD Mini WiFi Wireless Hidden Camera Smallest Security...](https://www.amazon.ca/Wireless-Smallest-Security-Activated-Surveillance/dp/B0914XGC99)**
>
> Find thousands of tools and home improvement products at low prices. Shop online for power tools, hand tools, hardware, building supplies, and more at Amazon.ca

Also, we would like determine if the XRP controller board could support the  
Arducam Mini 2MP and 5MP cameras for Arduino UNO Mega2560 Board & Raspberry Pi Pico? If so, how would we connect them?

> **[Arducam Mini 2MP Plus - OV2640 SPI Camera Module for Arduino UNO Mega2560...](https://www.arducam.com/product/arducam-2mp-spi-camera-b0067-arduino/)**
>
> Buy Now   Can be used in MCU, Raspberry Pi, ARM, DSP, FPGA platforms M12 mount or CS mount lens holder with changeable lens options IR sensitive with proper lens combination I2C interface for the sensor configuration SPI interface for...

> **[Arducam Mini Module Camera Shield with OV2640 2 Megapixels Lens for Arduino UNO...](https://www.amazon.ca/Arducam-Module-Megapixels-Arduino-Mega2560/dp/B012UXNDOY)**
>
> In order to meet the increasing need of Raspberry Pi compatible camera modules. The ArduCAM team now released a revision C add-on camera module which is fully compatible with official Raspberry Pi board. It optimizes the optical performance than the...

> **[Arducam 5MP Plus OV5642 Mini Module Camera Shield SPI Camera Module for...](https://www.arducam.com/product/arducam-5mp-plus-spi-cam-arduino-ov5642/)**
>
> Buy Now Can be used in MCU, Raspberry Pi, ARM, DSP, FPGA platforms M12 mount or CS mount lens holder with changeable lens options IR sensitive with proper lens combination I2C interface for the sensor configuration SPI interface for camera...

> **[Arducam Mini Module Camera Shield 5MP Plus OV5642 Camera Module for Arduino UNO...](https://www.amazon.ca/Arducam-Module-Camera-Arduino-Mega2560/dp/B013JUKZ48)**
>
> Arducam-Mini-5MP-Plus(OV5642) is performance improved version compared to its predecessor Arducam-M-5MP. Arducam mini not only offers the capability to add a camera interface which doesn’t have in some low cost microcontrollers, but also provides the...

---

<div class="post-metadata">

**Author:** ![sfong21](https://avatars.discourse-cdn.com/v4/letter/s/96bed5/32.png) [@sfong21](https://xrp.discourse.group/u/sfong21)\
**Post date:** [October 19, 2023, 3:50pm UTC](https://xrp.discourse.group/t/could-you-please-recommend-an-affordable-sparkfun-qwiic-camera-and-gps-for-the-xrp-robot/95/5 "2023-10-19T15:50:10Z")

</div>

Also, thank you for the GPS and odometry guidance.

Currently, I am reviewing the FIRST tech challenge odometry and Path Planning documentation.

Have an incredible day.

Steven

---

<div class="post-metadata">

**Author:** ![SparkFro](https://yyz1.discourse-cdn.com/flex011/user_avatar/xrp.discourse.group/sparkfro/32/12_2.png) [@SparkFro](https://xrp.discourse.group/u/SparkFro)\
**Post date:** [October 21, 2023, 12:05am UTC](https://xrp.discourse.group/t/could-you-please-recommend-an-affordable-sparkfun-qwiic-camera-and-gps-for-the-xrp-robot/95/6 "2023-10-21T00:05:17Z")

</div>

Hi there, good topic!

If you just want a first person view from the XRP, I’d really recommend getting some kind of dedicated wireless camera and strapping it onto the robot. This is by far the easiest option.

However iyour goal is to do vision processing with the XRP (eg. OpenCV), you’re almost definitely going to need a coprocessor of some kind. The XRP Control Board uses the RP2040 microcontroller, which is really not designed for vision processing. It has 264k of RAM (not enough for even a single 480p grayscale image), and it doesn’t have the computing power needed. I looked at one of the demos of the ArduCam with the RP2040, and it was getting about 4fps with a 240p camera stream; looked like it was just passing the video stream through to USB, not doing any processing on the image.

So a coprocessor is really needed to have decent vision processing. We’ve considered using a Raspberry Pi for this - connect a Pi Camera Module (or even a USB webcam), write OpenCV code on there, then send a small amount of data to the XRP Controller, such as through the Qwiic connector. This is not something we’ve tackled yet, so if anyone is feeling adventurous and wants to take a crack at it, we’d love to see what you come up with!

As for GPS, I’ll defer to the comments above.

Hope this helps!

---

<div class="post-metadata">

**Author:** ![sam\_uk](https://avatars.discourse-cdn.com/v4/letter/s/b487fb/32.png) [@sam\_uk](https://xrp.discourse.group/u/sam_uk)\
**Post date:** [October 22, 2023, 6:57pm UTC](https://xrp.discourse.group/t/could-you-please-recommend-an-affordable-sparkfun-qwiic-camera-and-gps-for-the-xrp-robot/95/7 "2023-10-22T18:57:48Z")

</div>

If you want to stick with open hardware for the camera there are a couple of ‘coming soon’ products:

Tokay Lite ~$80 I believe

> **[Tokay LITE: Low Power Edge AI Camera | MAXLAB.IO | Canadian Computer Vision...](https://maxlab.io/store/edge-ai-camera/)**
>
> Versatile, battery-powered Edge AI camera with nightvision, 
> motion detection and TensorFlow Lite support

Or ~$109  
[OpenMV Cam RT1062 | OpenMV](https://openmv.io/products/openmv-cam-rt)

I’m also looking forward to

> **[TinkerRTK](https://www.crowdsupply.com/tinkerbug-robotics/tinkerrtk)**
>
> Open source, centimeter level GPS accuracy in a modular system of boards with powerful Wi-Fi and Bluetooth

No price on this yet, but the core chip is a ~$50 component, so has the potential to significantly reduce the cost of RTK

---

<div class="post-metadata">

**Author:** ![AkaMrBill](https://avatars.discourse-cdn.com/v4/letter/a/bcef8e/32.png) [@AkaMrBill](https://xrp.discourse.group/u/AkaMrBill)\
**Post date:** [October 24, 2023, 8:28pm UTC](https://xrp.discourse.group/t/could-you-please-recommend-an-affordable-sparkfun-qwiic-camera-and-gps-for-the-xrp-robot/95/8 "2023-10-24T20:28:08Z")

</div>

I’m currently working on an ancient RPi Zero W to see if I can get some OpenCV AprilTag recognition going. I’ll keep you posted.

[EDIT/] Pi ZERO W is just too weak. Installing OpenCV is a nightmare.  
Moving to a Pi ZERO 2W

---

<div class="post-metadata">

**Author:** ![SparkFro](https://yyz1.discourse-cdn.com/flex011/user_avatar/xrp.discourse.group/sparkfro/32/12_2.png) [@SparkFro](https://xrp.discourse.group/u/SparkFro)\
**Post date:** [October 25, 2023, 6:31pm UTC](https://xrp.discourse.group/t/could-you-please-recommend-an-affordable-sparkfun-qwiic-camera-and-gps-for-the-xrp-robot/95/9 "2023-10-25T18:31:05Z")

</div>

That’s super helpful to know, thank you! Please let us know how the Zero 2 W goes!

---

<div class="post-metadata">

**Author:** ![AkaMrBill](https://avatars.discourse-cdn.com/v4/letter/a/bcef8e/32.png) [@AkaMrBill](https://xrp.discourse.group/u/AkaMrBill)\
**Post date:** [October 30, 2023, 3:26am UTC](https://xrp.discourse.group/t/could-you-please-recommend-an-affordable-sparkfun-qwiic-camera-and-gps-for-the-xrp-robot/95/10 "2023-10-30T03:26:18Z")

</div>

Qwiic question (see what I did there 😏).  
I want to make the camera/vision system as easily integrated as I can. Thus, I intend to use a QWIIC hat on a Pi Zero 2W to make connection to the XRP as clean as possible.  
Are there are QWIIC code examples I can use to see an easy way to export/import target data from Pi to the XRP?

---

<div class="post-metadata">

**Author:** ![SparkFro](https://yyz1.discourse-cdn.com/flex011/user_avatar/xrp.discourse.group/sparkfro/32/12_2.png) [@SparkFro](https://xrp.discourse.group/u/SparkFro)\
**Post date:** [October 30, 2023, 4:09pm UTC](https://xrp.discourse.group/t/could-you-please-recommend-an-affordable-sparkfun-qwiic-camera-and-gps-for-the-xrp-robot/95/11 "2023-10-30T16:09:44Z")

</div>

Having the XRP and Pi Zero 2 communicate over Qwiic should be fine. I would suggest keeping the XRP as the I2C bus controller, then configuring the Pi Zero 2 as an I2C peripheral/slave device. I’ve not done this myself, but a qwiic Google seems to indicate that’s possible with the pigpio library ([docs](https://abyz.me.uk/rpi/pigpio/python.html#bsc_i2c)). I can’t provide any further help with this at the moment unfortunately, but I hope this helps!

---

<div class="post-metadata">

**Author:** ![AkaMrBill](https://avatars.discourse-cdn.com/v4/letter/a/bcef8e/32.png) [@AkaMrBill](https://xrp.discourse.group/u/AkaMrBill)\
**Post date:** [November 3, 2023, 6:05pm UTC](https://xrp.discourse.group/t/could-you-please-recommend-an-affordable-sparkfun-qwiic-camera-and-gps-for-the-xrp-robot/95/12 "2023-11-03T18:05:06Z")

</div>

OK, this will probably be my last post in this thread as I will be opening a separate thread to follow my journey in adding vision to an XRP. One quick update first.  
The bottom line is that neither a RPi Zero W or a Pi Zero 2W are really well suited for any real vision processing. The biggest limitation appears to be caused by the tiny 512K RAM. Increasing the Swapfile size really just slows down the process. Yes, I was able to acquire images, but the performance was painfully slow. So, fortunately I have a Pi 4, a Pi 3, a Orange Pi 4 and an Orange Pi 5 I can use for this project. Their only drawback are their physical size.

---

<div class="post-metadata">

**Author:** ![sam\_uk](https://avatars.discourse-cdn.com/v4/letter/s/b487fb/32.png) [@sam\_uk](https://xrp.discourse.group/u/sam_uk)\
**Post date:** [February 19, 2024, 12:22pm UTC](https://xrp.discourse.group/t/could-you-please-recommend-an-affordable-sparkfun-qwiic-camera-and-gps-for-the-xrp-robot/95/13 "2024-02-19T12:22:52Z")

</div>

I’m quite interested in using [Milk-V Duo | Extremely Cost-Effective Ultra-Compact Embedded Linux Development Platforms](https://milkv.io/duo) for basic vision stuff it’s 1Ghz/ 256M 1TOPS@INT8

The 256 is out of stock right now, but I’ll get one when they come back in [Arace Tech](https://arace.tech/products/milk-v-duo)

It’s dirt cheap ~$10 it looks like they have a version of it running a version of OpenCV [opencv-mobile | Milk-V](https://milkv.io/docs/duo/resources/opencv-mobile)

I can’t open the Altium file at [duo-files/duo-256M/hardware at main · milkv-duo/duo-files · GitHub](https://github.com/milkv-duo/duo-files/tree/main/duo-256M/hardware) as I don’t have Altium, but presumably Sparkfun do if you were interested in rolling a open hardware version
