Does your project require high-precision, cutting-edge distance measurement? Or maybe speed, motion, or gesture-sensing? We're not talking about simple ultrasonic or even infrared here, but 60GHz radar! Well say hello to the SparkFun A111 Pulsed Radar Breakout! The A111 is a single-chip solution for pulsed coherent radar (PCR) and comes complete with an integrated antenna and an SPI interface capable of clock speeds of up to 50MHz. Though the A111's primary use case is distance-sensing, it also supports applications in gesture, motion, material, and speed-detection at distances of up to two meters.
SparkFun Pulsed Radar Breakout for the A111 includes a 1.8V regulator, voltage-level translation, and it breaks out all the pins of the pulsed radar sensor to both 0.1-inch and Raspberry Pi-friendly headers. The Pulsed Radar Breakout is designed to sit directly on top of a Raspberry Pi but it doesn't span all 40 (2x20) pins of a Raspberry Pi B+ (or later), but the 26-pin -- 2x13 -- header should be compatible with any Pi. However, we have intentionally left the 2x13 header separated from the breakout in case you wanted to manually wire it to another an ARMv7 or ARM Cortex-M4 platform (since the closed-source A111 SDK currently only supports these architectures).
Acconeer has developed a visualization tool written in Python that demonstrates data collection in real time. It's called the Acconeer Exploration Tool and is an incredible resource when first starting out with the A111 Pulsed Radar. As an example it will graph distance or presence sensing, giving you a count of the number of sweeps, which communication port (SPI or I2C) data is being sent through, and much much more. The tool supports both Windows and Linux and requires Python version 3.6 or later. This tool is available through their Github Repository, go on over a take a look!
This skill defines how difficult the soldering is on a particular product. It might be a couple simple solder joints, or require special reflow tools.
Skill Level: Noob - Some basic soldering is required, but it is limited to a just a few pins, basic through-hole soldering, and couple (if any) polarized components. A basic soldering iron is all you should need.
See all skill levels
If a board needs code or communicates somehow, you're going to need to know how to program or interface with it. The programming skill is all about communication and code.
Skill Level: Experienced - You will require a firm understanding of programming, the programming toolchain, and may have to make decisions on programming software or language. You may need to decipher a proprietary or specialized communication protocol. A logic analyzer might be necessary.
See all skill levels
If it requires power, you need to know how much, what all the pins do, and how to hook it up. You may need to reference datasheets, schematics, and know the ins and outs of electronics.
Skill Level: Rookie - You may be required to know a bit more about the component, such as orientation, or how to hook it up, in addition to power requirements. You will need to understand polarized components.
See all skill levels
We welcome your comments and suggestions below. However, if you are looking for solutions to technical questions please see our Technical Assistance page.
Based on 4 ratings:
1 of 2 found this helpful:
I have been able to get accurate readings from 8in - 24in away from the sensor. Anything under 8in or above 24in outputs random values. I have used the Raspberry Pi 3B+ and 4B with both the acconeer_rpi_sparkfun 1.10.0 and 2.0 from their Developer site as well as the instructions from the Getting Started Guide where you combine the SparkFun GitHub files with the acconeer_rpi_xc111 packages, again with versions 1.9.1, 1.10.0, and 2.0 - for the combinations that actually return data (some come up with clock error) it is as described above - valid only between 8in and 24in. For the price of this sensor I do not feel it is worth it.
I purchased it on a whim to see if I could use it to perform inverse SAR imaging of modest-sized objects in a compact indoor range, and was happy to learn the IQ service coherence is plenty adequate to support that. I setup my “range” using a (slow, 1.8rpm) turntable/ground plane illuminated from short ranges (1-1.5m slant range); I used a lens Acconeer offers to get some antenna gain (and keep more of the beam on the ground plane - was able to get a very clean noise image with no object present, even indoors...) and operated the radar at 75 scans/s (Acconeer terminology) covering the maximum 0.75m allowed range span (streaming mode, no decimation, profiles 1 or 2, low-pass cutoff ratio 0.04, 32 pulse averages), 2500 scans total over a 360 degree aperture. Radiated power is a regret so ranges are kept short and objects that can be imaged are relatively small. After graduating from soup cans (top hat) etc, old metal Tonka toy trucks make a nice object, particularly ones with beds forming natural corner reflectors...
So, just some encouragement for someone wanting to explore radar, and willing to explore an alternative to FMCW chirp techniques (e.g., MIT coffee can radar). ISAR is not trivial (I’m an EE-’78) but backprojection is pretty straightforward and Acconeer’s design and IQ service provide range-resolved complex data with minimal effort. Hats off to Acconeer for a straightforward SDK, and working with Sparkfun to make the part available using the Raspberry Pi platform.
In the schematic the RPi-side of the level-converter is powered from 5V. Isn't that unsuited for 3.3V Rated I/O's of the Pi?
Good catch, the board will be revised.
I asked the technical support team and no one has mentioned any issues related to the GPIO yet. Most issues were related to the SDK revisions breaking the examples (when this product first released); however, Acconeer (sensor manufacturer) has since resolved that problem.
Hello. So far, how-to documentation states that Acconeer Exploration Tool is to be used with Acconeer Devkits. Is it possible to use the tool with the SparkFun Pulsed Radar Breakout ? SparkFun Pulsed Radar Breakout is able to obtain multiple target information as the Acconeer devkits state? Thank you very much for your attention.
Hi there, it sounds like you are looking for technical assistance. Please use the link in the banner above, to get started with posting a topic in our forums. Our technical support team will do their best to assist you.
That being said, I would refer you to our hookup guide to get started with this product. You can also find the link to our hookup guide at the bottom of the Description tab and under the Documents tab.
So the the A111 was designed to work with an ARMv7 as a minimum and Sparkfun uses the Raspberry Pi 3 (and up) to interface it with. But the SparkFun RedBoard Artemis Nano has a Cortex M4 with ARMv7E-M, so as long as the correct pins are connected it should work?
Sounds feasible. Let us know if you get that working.
OK OK "use case" has swept the tech world, ever in search of complicated ways to say something simple. "the A111's primary use case is distance-sensing", but isn't that the same as just "use"? Make us oldsters happy and hyphenate the darn thing! I come to a halt every time I see that I need to 'use a case' where it doesn't apply.
1: Where is the antenna? Second: What is the antenna beam shape? In addition: I would like to have an ability to switch to other antennas. That would allow me to make it directional or a simple scanned array. Thanks
A111 Data sheet This appears to be the package data sheet. There's a reference to Antenna-in-Package (AiP), and the pinout has nothing about driving an RF output, so I'd guess you're limited to the antenna in the chip itself.
According to the linked data sheet, the unit has a "HPBW of 80 (H-plane) and 40 degrees (E-plane)", which as far as I can tell from the wikipedia article means that in one of the two axes the signal is projected along, you can get down to 40-ish degrees beam angle. You might be able to scan with a servo or something like people do with cheap sonar sensors. You might even be able to figure out the width of the object by measuring when the edges of the beam start to register the same object scanning from opposite directions. I guess it really depends on how "crisp" the edge of the beam is.