Henrik Forstén

hforsten.com · Personal blog · on HN since 2012

Henrik Forstén builds homemade radar systems, including synthetic aperture radar, along with embedded Linux and electronics projects.

What HN saysHN commenters praise his radar articles as clear explanations of a complicated topic and useful for their own sonar work, and cite his Python integer trick.
46HN people shared it
20linked it in comments
30stories submitted
2.5Kstory points
6 months agolast shared
2012people per year2026

Most-shared posts

  1. 1
    Homemade synthetic aperture radar
    6 people · 154 points · first shared 2015 · 29 comments on HN
  2. 2
    Homemade polarimetric synthetic aperture radar drone
    5 people · 644 points · first shared 2025 · 60 comments on HN
  3. 3
    Making an embedded Linux computer
    5 people · 275 points · first shared 2014 · 21 comments on HN
  4. 4
    Evolutionary algorithms and analog electronic circuits
    5 people · 235 points · first shared 2012 · 53 comments on HN
  5. 5
    Redefining the Number 2 in Python
    5 people · 1 points · first shared 2012 · discussion on HN
  6. 6
    6 GHz frequency modulated radar
    4 people · 261 points · first shared 2014 · 84 comments on HN
  7. 7
    Synthetic-Aperture Radar Imaging
    3 people · 26 points · first shared 2020 · 2 comments on HN
  8. 8
    Synthetic aperture radar autofocus and calibration
    2 people · 201 points · first shared 2025 · 16 comments on HN
  9. 9
    MIMO Radar Antenna Arrays
    2 people · 98 points · first shared 2021 · 7 comments on HN
  10. 10
  11. 11
  12. 12
    Radar Phase Measurements
    2 people · 1 points · first shared 2023 · discussion on HN
  13. 13
    Homepage
    2 people · first shared 2016
  14. 14
    Homemade 6 GHz pulse compression radar
    1 people · 438 points · first shared 2024 · 116 comments on HN
  15. 15

What HN people wrote when they linked it

anovikov · 2025-04-15
You gotta get a downconverter and a bias-tee to power it (or use the bias-tee built in the RTL-SDR if the downconverter is 4.5 volt - most aren't though). Then you can access high-freq. 10+ GHz must be a satellite right? There's no way for terrestrial to work at that freq. And yes this is all easy this day. Hard stuff comes when you transmit, and harder yet when you do both. Then you can do crazy things, but that isn't at all easy... Like https://hforsten.com/ is doing. Still accessible from components pricing and regulations perspective, to almost everyone.
belzebalex · 2024-04-04
This is incredible. I've wanted to thank the author for a while for his past articles [1][2] which have been a wonderful source of information when working on my sonar systems [3]. This article again explains really well a complicated topic. Please, keep up the great work! [1]: https://hforsten.com/radar-phase-measurements.html [2]: https://hforsten.com/6-ghz-frequency-modulated-radar.html [3]: https://twitter.com/alextoussss/status/1756371553460121766
emusan · 2024-01-25
If you're interested in the cantenna radar you might also find Henrik Forsten's radar interesting: https://hforsten.com/6-ghz-frequency-modulated-radar.html. It uses largely the same high-level design, but is a bit more integrated as a single unit (rather than a series of minicircuits components). I've built the MIT radar before and it is a great way to learn the basics of radar! In either design you can likely get away with <$500 worth of materials. Henrik has follow-up blogs adding and modifying this design for more functionality, it's a pretty neat project to follow!
knome · 2019-06-17
This is an excellent question with a generally fun answer, at least in python 2. https://kate.io/blog/2017/08/22/weird-python-integers/ http://hforsten.com/redefining-the-number-2-in-python.html I found these offhand, but I'm pretty sure I saw this trick earlier than 2017.
maccard · 2019-04-23
> In Python, all data (even simple integers) are all allocated on the heap. Total sidebar, this leads to one of my favourite programming language "quirks" - you can redefine the value of 1! http://hforsten.com/redefining-the-number-2-in-python.html
okramcivokram · 2016-12-31
> If someone was to go through and by themselves solve every little problem associated with radar and build a microwave-based radar system I'd be really fucking impressed. Check out Henrik's Blog http://hforsten.com/
semi-extrinsic · 2016-09-11
Here is a really great writeup from a guy building his own radar. Look at e.g. the SAR images right at the end. http://hforsten.com/homemade-synthetic-aperture-radar.html
celegans25 · 2025-02-17
Henrik has a blog post about a SAR radar he made from a couple years ago that goes into a bit more detail about how it works https://hforsten.com/synthetic-aperture-radar-imaging.html
fooblaster · 2022-02-02
I've been somewhat disappointed that the learning material around mimo radar processing that can be done with popular TI automotive radar chips (and others) is somewhat limited after you get through with the absolute basics. TI's documents are a good starting point: https://training.ti.com/sites/default/files/docs/mmwaveSensing-FMCW-of… But it doesn't really go into the different schemes for sending out orthogonal waveforms from the transmitters, the design of 2d arrays, much of the basic signal processing (windowing, matched filtering), etc. I was pleased to see https://hforsten.com/mimo-radar-antenna-arrays.html pop up on hacker news quite a while ago, which was very interesting. Goes into how to plot the beam width for a mimo array, with some nice python code. I want more, but I'm afraid I won't get it unless I read through a phd thesis. Any ideas/tips?
jcims · 2018-08-08
Newer version in this post - http://hforsten.com/third-version-of-homemade-6-ghz-fmcw-radar.html An interesting application of CW radar - http://hforsten.com/heartbeat-detection-with-radar.html At 45 years old I feel like I've learned quite a bit, but when I read stuff like this I wonder if there are enough years left in my life to learn what to takes to put something like this together. I will say that the little CW doppler radar boards are fun to tinker with. You can get them on amazon for <$10 shipped, power them with 5 volts and just wire the output to a microphone jack. https://www.amazon.com/SMAKN-Microwave-10-525GHz-Doppler-Detector/dp/B… This is what a coin toss over a 10GHz doppler device sounds like: https://www.youtube.com/watch?v=8riretP8ylE
techbubble · 2017-08-14
Thanks for the tip. I found a post [0] describing genetic algorithms for circuit design that helped clarify the process. Coincidentally, the circuit described has a component that does nothing. [0] http://hforsten.com/evolutionary-algorithms-and-analog-electronic-circ…
Bedon292 · 2016-08-22
Perhaps something like this instead? http://hforsten.com/homemade-synthetic-aperture-radar.html It would still give some interesting information.
kersny · 2016-07-28
Its been done, but AFAIK not with hand etching: http://hforsten.com/making-embedded-linux-computer.html I don't think you can do high frequency RAM lines with hand etched boards or BGA escape routing without vias, but two layer prototype boards are pretty cheap these days.
dmpatierno · 2014-07-13
hornetblack · 2014-01-28
It is possible to do some evil hackery and change the value of integers in the small number cache. http://hforsten.com/redefining-the-number-2-in-python.html
DNA is not just a sequence that encodes proteins. We just found out there's a secondary higher level code in it: https://news.ycombinator.com/item?id=6896779 And then there's RNA, which can fold and form structures, sort of like proteins. Anybody who has ever seriously dealt with things produced by evolution knows that evolution "cheats" and optimizes when constrained by resources, producing structure upon structure upon structure, crazy indirection and non-obvious side-effects, as long as it helps the goal (survival and reproduction usually). That's why I don't think human brains will be understood any time soon. We might figure out all the layers, but to figure out all the hidden structures would take a superhuman AI. EDIT: Example of circuit design by evolutionary algorithms: http://hforsten.com/evolutionary-algorithms-and-analog-electronic-circ…
7373737373 · 2021-07-27
Absolutely not, unfortunately. One of the architectural issues plaguing even comparatively memory-safe languages is the fact that there is a global scope that's accessible from anywhere. In some Python versions even numbers or truth values could be redefined. [0] This makes it impossible to sandbox functions or imported modules, because they can communicate arbitrarily. But communication/access security is not the only problem. Resource security is something I haven't seen any significant language (besides Java perhaps) try to approach - being able to limit the memory and cpu usage of a (part of a) program. Modern languages should make it possible to do both with just a few lines of code. I recommend reading about Capability Security[1], the E language[2] and the Principle of least Authority (POLA) [3] [0] https://hforsten.com/redefining-the-number-2-in-python.html [1] http://www.cap-lore.com/CapTheory/ https://en.m.wikipedia.org/wiki/Capability-based_security [2] http://www.erights.org/ [3] https://medium.com/agoric/pola-would-have-prevented-the-event-stream-i… These originated in the mainframe era, in a connected world before the internet, at the inception of the first multi-user systems: https://github.com/void4/notes/issues/41
pdabbadabba · 2015-10-14
Previous discussion of a similar project, by [evidently] the same person: http://hforsten.com/6-ghz-frequency-modulated-radar.html As before, this is totally awesome---until the FCC (or other national spectrum regulator) shows up at your door... Here is an assortment of things that the author might be interfering with in the neighborhood of his 5.5 GHz carrier frequency: https://wirednot.wordpress.com/2014/01/07/what-else-is-in-the-5-ghz-sp… Some of this is the sort of stuff you really don't want to interfere with--both for safety reasons, and because of the likelihood of enforcement. Next time I suggest that the author look into whether his jurisdiction will grant him an experimental license so he can do this legally. In many jurisdictions that is cheap and easy (unless, of course, you want to operate in a band where the interference risk is just too high). Edit: I see the author is in Finland. Unfortunately for the author, I'm guessing this changes nothing since these frequencies are regulated both nationally and internationally. But it does mean that there is probably some local variation in the exact services that might be subject to interference. And who knows: maybe in Finland the 5.5 GHz band is a "do whatever you want at any power level you want" band. But I doubt it...
hwillis · 2014-12-03
The radio waves are collected at points and don't have any x or y data, so making an image out of it is pretty challenging and usually requires moving the radar beam. He just kept the beam still, so the only things you can really see are things that move. In the image, the bottom axis is distance(calculated from the time the reflection took/the frequency output by the mixer), the color is the strength of the reflection, and the left axis is the time. He walked away from the setup and then back, visible as the two lines, which fade out almost completely as he changes direction, because he is far away and therefore looks smaller to the radar. http://hforsten.com/static/img/fmcw/football_field_range.png From this data you could theoretically build an image of his upper torso and head, but it would be very blurry. His arms and legs were not static, and the radar doesn't know how they were moving, so they would just show up as blurs.

Keyboard shortcuts

/Search
j kNext / previous blog
EnterOpen selected blog
vVisit the blog site
fFollow / unfollow
lSwitch grid / list view
dSwitch dark mode
g hHome
g pTop posts
g tTopics
g fFollowing
g lLiked
g yHistory
g qFAQ
EscBack / close