iliasam
No commercial "black box" GPS receiver module or FPGA is needed to to build GPS receiver - just MAX2769 RF Frontend IC and STM32 MCU.
Also I have same project for ESP32 - with GUI: https://github.com/iliasam/ESP32_SDR_GPS
This is a demo project - it can't be used in a real life because it is working too slow, but I think that it can be interesting for all who loves experiments with GPS, SDR and DSP.
Precision in this project is limited by rise time of the received signal. Meanwhile, this time is limited by rise time of laser's current. It is too long now - 10 ns.
Theoretical TDC resolution is ~13mm per BIN.
You could see real results here: https://github.com/iliasam/OpenTOFLidar/wiki/Resolution-of-t...
> "How did you calculate the appropriate laser lens and standoff"
I can't say that there was too much calculations.
The is some information here: http://www.ti.com/lit/ug/tiduc73b/tiduc73b.pdf (part 2.3.5)
and here: http://www.ti.com/lit/ug/tiducm1b/tiducm1b.pdf (part 2.3.2)
Laser's lens should have maximum possible focal length, but it must not crop light beam from the diode.
Photodiode's lens should have maximum Entrance pupil
> "Is the CS mount lens's focal length important, or is there no need for a sharp image at all distances?"
You need to have sharp image at big distances. At short distances it is not important - light signal is high enough.
> "Why use one CS-mount lens and one M12 lens, rather than two M12 lenses?"
I think that it is easier to find lens with big "Entrance pupil" with CS mount that with M12 mount. Bigger mount - bigger lens diameter, bigger "Entrance pupil".
> "Do you need any sort of dynamic gain"
I don't have any kind of electrical gain control. There is an ability to change APD gain, but I don't use it.
> "optical filtering on the received signal"
I don't have filter in my LIDAR, but it is necessary to have it if you are going to run LIDAR at sunlight. I give links to a several interference filters in "LidarTotalBOM.xlsx".
> "Did you need much fancy $$$$ test equipment to get the design working".
All that I have is Tektronix TDS540D oscilloscope (bought at the Ebay for $300) and multimeter.
Measuring through translucent or transparent surfaces is theoretically possible (TDC is supporting multiple measurements), but received pulse width is too high now - it could be > 30ns after amplifier.
Why did you write "they are using"? Thre was no team, it's my own project.
Open Source Time-of-Flight DIY Lidar
Cheap laser tape measure reverse engineered
Here is another my Lidar project: https://github.com/iliasam/OpenLIDAR
That project has a wiki: https://github.com/iliasam/OpenLIDAR/wiki
A big article in Russian about it: https://geektimes.ru/post/275442/