fundamentals of beacon ranging blog post