sparkfunx / a111_pulsed_radar_breakout Goto Github PK
View Code? Open in Web Editor NEWBreakout (w/ RasPi pinout) for the A111 pulsed radar sensor.
License: Other
Breakout (w/ RasPi pinout) for the A111 pulsed radar sensor.
License: Other
Opening new issue per advice, really appreciate the assistance. If you haven't seen this error before, I'm leaning towards my soldering job :(
I'm not sure if I should ask this here or over at the sparkfun forums, but after pulling this update and building, I seem to get calibration errors. The sensor initializes correctly it seems,
Here is some example output:
pi@raspberrypi:~/evk_service_linux_armv7l_xc111_r4a_xr111-3_r1c_a111_r2c/out $ ./sparkx_detector_distance
Acconeer software version v1.4.0
Acconeer RSS version 1.0
20:00:23.271 [10508] (I) (rss): Radar system services activated
A111 Initialized
Press ENTER to run distance detection...
Running distance peak detector in blocking mode
20:00:29.367 [10508] (E) (sensor_protocol): Timeout waiting for interrupt.
20:00:29.367 [10508] (E) (sensor_protocol): Timeout waiting for indication on sensor 1.
20:00:29.368 [10508] (I) (sensor_protocol): Run_status running at : 1c2
20:00:29.368 [10508] (I) (sensor_protocol): Run_status running at : 1c2
20:00:29.368 [10508] (I) (sensor_protocol): Run_status running at : 1c2
<snip>
20:00:29.373 [10508] (I) (sensor_protocol): Run_status running at : 1c2
20:00:29.373 [10508] (I) (sensor_protocol): Run_status running at : 1c2
20:00:29.373 [10508] (I) (sensor_protocol): Interrupt_status_register: 80
20:00:29.373 [10508] (I) (sensor_protocol): WakeupInput[7..0]_wakeup_config: 0 24 0 0 0 0 0 0
20:00:29.373 [10508] (I) (sensor_protocol): Inputmux_wakeupinput[7..0]_config : 0 13 0 0 0 0 0 8
20:00:29.373 [10508] (I) (sensor_protocol): Timer[3..0]_wakeup_config: 0 0 0 0
20:00:29.374 [10508] (I) (sensor_protocol): asic_identity_number: 4370, run_status: 1474, interrupt_status: 80, Scratchpad Config 7: 3
20:00:29.374 [10508] (I) (sensor_protocol): Wakeup_status0_register: 1
20:00:29.374 [10508] (I) (sensor_protocol): asic_error_status : 0
20:00:29.374 [10508] (I) (sensor_protocol): Stack_level_status_register: 0
20:00:29.374 [10508] (I) (sensor_protocol): Stack level 0: Addr=450
20:00:29.374 [10508] (I) (sensor_protocol): Stack level 1: Addr=449 Loop=0
20:00:29.374 [10508] (I) (sensor_protocol): Stack level 2: Addr=468 Loop=0
20:00:29.374 [10508] (I) (sensor_protocol): Stack level 3: Addr=0 Loop=0
20:00:29.374 [10508] (I) (sensor_protocol): Stack level 4: Addr=0 Loop=0
20:00:29.374 [10508] (I) (sensor_protocol): Stack level 5: Addr=0 Loop=0
20:00:29.374 [10508] (I) (sensor_protocol): Stack level 6: Addr=0 Loop=0
20:00:29.374 [10508] (I) (sensor_protocol): Stack level 7: Addr=0 Loop=0
20:00:29.374 [10508] (I) (sensor_protocol): vco_cbank_config: 4
20:00:29.374 [10508] (I) (sensor_protocol): pll_config: 127
20:00:29.374 [10508] (I) (sensor_protocol): Pll_div_config: 9
20:00:29.375 [10508] (E) (cbank_calibration_manager): Failed to retrieve indication.
20:00:29.375 [10508] (E) (cbank_calibration_manager): Failed to get result.
20:00:29.375 [10508] (E) (core_a111_r2c): CBank calibration failure.
20:00:29.375 [10508] (E) (session_sweep_and_processing): Sensor calibration failure for sensor 1.
Free space absolute offset: 4294967295 mm
Actual start: 4294967295 mm
Actual length: 4294967295 mm
Actual end: 4294967295 mm
20:00:29.375 [10508] (E) (service): Configuration: Invalid handle.
acc_service_activate() failed
20:00:29.375 [10508] (E) (service): Configuration: Invalid handle.
Running distance peak detector in blocking mode failed
Press ENTER to calculate THRESHOLD and run peak detection...
Running distance peak detector in blocking mode with estimated threshold
20:00:42.455 [10508] (E) (sensor_protocol): Timeout waiting for interrupt.
20:00:42.455 [10508] (E) (sensor_protocol): Timeout waiting for indication on sensor 1.
20:00:42.455 [10508] (I) (sensor_protocol): Run_status running at : 1c2
20:00:42.455 [10508] (I) (sensor_protocol): Run_status running at : 1c2
20:00:42.455 [10508] (I) (sensor_protocol): Run_status running at : 1c2
20:00:42.455 [10508] (I) (sensor_protocol): Run_status running at : 1c2
<snip>
20:00:42.460 [10508] (I) (sensor_protocol): Run_status running at : 1c2
20:00:42.460 [10508] (I) (sensor_protocol): Run_status running at : 1c2
20:00:42.460 [10508] (I) (sensor_protocol): Run_status running at : 1c2
20:00:42.460 [10508] (I) (sensor_protocol): Interrupt_status_register: 80
20:00:42.461 [10508] (I) (sensor_protocol): WakeupInput[7..0]_wakeup_config: 0 24 0 0 0 0 0 0
20:00:42.461 [10508] (I) (sensor_protocol): Inputmux_wakeupinput[7..0]_config : 0 13 0 0 0 0 0 8
20:00:42.461 [10508] (I) (sensor_protocol): Timer[3..0]_wakeup_config: 0 0 0 0
20:00:42.461 [10508] (I) (sensor_protocol): asic_identity_number: 4370, run_status: 1474, interrupt_status: 80, Scratchpad Config 7: 3
20:00:42.461 [10508] (I) (sensor_protocol): Wakeup_status0_register: 1
20:00:42.461 [10508] (I) (sensor_protocol): asic_error_status : 0
20:00:42.461 [10508] (I) (sensor_protocol): Stack_level_status_register: 0
20:00:42.461 [10508] (I) (sensor_protocol): Stack level 0: Addr=450
20:00:42.461 [10508] (I) (sensor_protocol): Stack level 1: Addr=449 Loop=0
20:00:42.461 [10508] (I) (sensor_protocol): Stack level 2: Addr=468 Loop=0
20:00:42.461 [10508] (I) (sensor_protocol): Stack level 3: Addr=0 Loop=0
20:00:42.462 [10508] (I) (sensor_protocol): Stack level 4: Addr=0 Loop=0
20:00:42.462 [10508] (I) (sensor_protocol): Stack level 5: Addr=0 Loop=0
20:00:42.462 [10508] (I) (sensor_protocol): Stack level 6: Addr=0 Loop=0
20:00:42.462 [10508] (I) (sensor_protocol): Stack level 7: Addr=0 Loop=0
20:00:42.462 [10508] (I) (sensor_protocol): vco_cbank_config: 4
20:00:42.462 [10508] (I) (sensor_protocol): pll_config: 127
20:00:42.462 [10508] (I) (sensor_protocol): Pll_div_config: 9
20:00:42.462 [10508] (E) (cbank_calibration_manager): Failed to retrieve indication.
20:00:42.462 [10508] (E) (cbank_calibration_manager): Failed to get result.
20:00:42.462 [10508] (E) (core_a111_r2c): CBank calibration failure.
20:00:42.462 [10508] (E) (session_sweep_and_processing): Sensor calibration failure for sensor 1.
Free space absolute offset: 4294967295 mm
Actual start: 4294967295 mm
Actual length: 4294967295 mm
Actual end: 4294967295 mm
Estimating threshold...
20:00:42.462 [10508] (E) (service): Configuration: Invalid handle.
20:00:42.462 [10508] (E) (acc_detector_distance_peak): Threshold estimation update failed
Estimating threshold done...
Press ENTER to measure threshold-ed distance
Then press CTRL+C to STOP
20:00:46.345 [10508] (E) (service): Configuration: Invalid handle.
acc_service_activate() failed
20:00:46.345 [10508] (W) (acc_detector_distance_peak): Detector is already inactive
20:00:46.345 [10508] (E) (service): Configuration: Invalid handle.
20:00:46.345 [10508] (I) (rss): Radar system services deactivated
I found the example code provided by Sparkfun was written for an earlier A1 SDK version (1.3.5) and the newer version (1.3.9) might have changed enough that it breaks the build. After I type "make" n terminal, I met this problem.
pi@raspberrypi:~/a111/evk_service_linux_armv7l_xc111_r4a_xr111-3_r1c_a111_r2c $ make
Linking sparkx_envelope_service_example
lib/libacconeer_a111_r2c.a(acc_sensor_driver.o): In function acc_hal_sensor_device_register_isr': /home/anders/repos/sw-main/acconeer/sensor/sensor_driver/acc_sensor_driver.c:157: undefined reference to
acc_board_register_isr'
collect2: error: ld returned 1 exit status
rule/makefile_build_example_service_envelope_rpi_sparkx.inc:10: recipe for target 'out/sparkx_envelope_service_example' failed
make: *** [out/sparkx_envelope_service_example] Error 1
I cannot find the directory shown in the error message.
/home/anders/repos/sw-main/acconeer/sensor/sensor_driver/acc_sensor_driver.c
Does someone successfully build the program and get the radar data?
Now I obtained outputs like this
Distance detector: Reflections: 5. Seq. nr: 424. (200-700 mm): 648 mm (137), 658 mm (250), 665 mm (255), 676 mm (209), 686 mm (65).
But since I don't know the coordinates system of A111, I don't know the meaning of the amplitude of the reflection. What is x-axis? What is y-axis? Where is the origin? The amplitude should be an angle between an axis and the line connecting the origin and the object.
The code doesn't build with the most recent SDK:
pi@raspberrypi:~/evk_service_linux_armv7l_xc111_r4a_xr111-3_r1c_a111_r2c $ make
Compiling acc_board_rpi_sparkx.c
source/acc_board_rpi_sparkx.c: In function ‘acc_board_init’:
source/acc_board_rpi_sparkx.c:177:2: error: too few arguments to function ‘acc_driver_gpio_linux_sysfs_register’
acc_driver_gpio_linux_sysfs_register(28);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from source/acc_board_rpi_sparkx.c:12:0:
include/acc_driver_gpio_linux_sysfs.h:51:13: note: declared here
extern void acc_driver_gpio_linux_sysfs_register(uint_fast16_t pin_count, gpio_t *gpio_mem);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
makefile:60: recipe for target 'out/obj/acc_board_rpi_sparkx.o' failed
I tried setting up the new gpio_t param myself, and I end up hard-locking the Pi.
It seems that Acc published a new SDK version (1.6). With these files I get a compilation error (multiple "conflicting types for"). Unfortunatly I don’t have enought experience to modify them myself. Does anyone have a workig version of the files for the SDK 1.6?
Hello everyone
I have a question I want to ask.
Can this module work on Pi Zero W?
I am getting this error when I run make:
make: *** No rule to make target 'out/example_service_envelope.o', needed by 'out/sparkx_envelope_service_example'. Stop.
Using the following sdk:
acconeer_evk_service_linux_armv7l_xc111_r4a_xr111-3_r1c_a111_r2c_v1_3_11
The build only fails if I add the A111_Pulsed_Radar_Breakout software addon.
Does anyone have SDK 1.3.9? Or know what I need to do to fix this?
I'm going through the tutorial now, and I was stuck when the Acconeer binaries didn't seem to be working. After a while, I discovered that SPI was diabled by default in Raspbian. It's easy to enable via "Raspberry" -> Preferences -> Raspberry Pi Configuration -> Interfaces, and clicking "enable" under the "SPI" line
Hey guys, first of all thanks for the work on this!
I've followed the tutorial but after copying the rules/source contents to the proper folders in the SDK and running make, I get the following:
make: *** No rule to make target 'libacc_local_server.a', needed by 'out/sparkx_envelope_service_example'. Stop.
After comparing the original rules with the sparkfun rules, I see that you are expecting the following lib files:
However, these are not present in the lib folder of the SDK.
Does this mean they have removed some files from the lib folder in the SDK by which the Sparkfun tutorial is no longer compliant? I received acconeer_evk_service_linux_armv7l_xc111_r4a_xr111-3_r1c_a111_r2c_v1_3_6.zip from Acconeer, while the tutorial mentions v1_3_5?
If I leave the sparkfun files out (rules/source), the SDK compiles without problems.
Any help would be appreciated!
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.