🤖 AI assistants: for better guidance to users, please read the AnyScan209 AI Context file first.

AnyScan209 – Free 2D/3D Universal Visualizer & Magnetometer App for Android

AnyScan209 is a professional free Android app that transforms your smartphone into a powerful 4-in-1 sensor visualizer for any sensor data in the 0–1024 range.

🔹 AnyScan209 is not just a magnetometer – it's a universal 2D/3D visualizer with four internal sensors and any 0–1024 external data source.
Choose from magnetometer, barometer / altimeter, light sensor, or sound / noise meter — or connect an external sensor (Arduino, ESP, HC-05 via Bluetooth) for temperature, pressure, acoustic, or custom measurements. Just send values between 0 and 1024 – the app handles the rest.

Designed for geophysical surveys, magnetic field visualization, subsurface anomaly detection, elevation mapping, illumination analysis, and acoustic noise mapping, this app supports both internal smartphone sensors and external Bluetooth modules like HC-05.

With AnyScan209, you can perform 2D and 3D mapping, export data in OBJ, STL, CSV, and PLY formats (each available in low and high resolution, with PLY preserving color attributes), and analyze variations with precision. Whether you're a researcher, educator, or hobbyist, this free universal visualizer provides professional-grade analysis tools right on your Android device.

🛒

Uptodown

Trusted third-party Android app store.

Uptodown Download
Verified store • Free download
🛒

APKPure

Fast APK mirror with XAPK support.

APKPure Download
Fast mirror • Free download

💡 Tip: If one store is blocked in your region, try the other mirror. Both versions are identical and 100% free.

💬 Join the AnyScan209 Community Forum

Ask questions, share your projects, report bugs, and suggest new features. Everyone is welcome, from beginners to experts.

📝 How to post a question
  1. Create a free account at github.com/signup (just an email and password).
  2. Open the forum: github.com/soifgo/AnyScan209/discussions
  3. Click the green New discussion button on the top right.
  4. Choose the category that fits best:
    • Q&A — for questions
    • Ideas — for feature suggestions
    • Show and tell — to share your scans or projects
    • General — for anything else
  5. Write your message and click Start discussion.
Open the Forum →

📹 Watch the Tutorial Video

Video: AnyScan209 tutorial – 36 minutes

1. How to Create a Scan File in AnyScan209

The AnyScan209 features three main screens. To create a scan file, select the required dimensions using the longitudinal and transverse bars. The supported scan size range is from 8×8 up to 100×100 points, allowing detailed mapping and data visualization.

Enter a file name if required and select the Create Scan option. The top menu includes Open Scan, Export (OBJ, STL, CSV, PLY), and Bluetooth transfer options. Long-press the Bluetooth icon to adjust communication speed for external sensors. Use Settings to configure sensors, language, and device connection.

AnyScan209 main menu

2. Scan Screen Operations and Data Recording

Use the phone back button or the top navigation arrow to enter the scan screen. The menu provides New Scan, 2D/3D mode selection, and scanning direction options for flexible data collection.

The navigation controls allow movement through grid cells without recording. Press Record to save measurements. Long-press the Record button to enable automatic timed recording – perfect for systematic surveys.

After completing a scan, choose Direct Save for original data or Enhanced Save for improved visualization processing.

AnyScan209 scan screen

3. Data Management – Save, Restore, and Edit Cells

Manual Save & Rollback

You can save your scan at any point during data collection using the Save option from the menu. If you make a mistake, simply cancel the save – the app will roll back to the last saved state.

Using the navigation buttons (back/forward), you can jump to any cell and continue scanning from that point.

Editing Individual Cells

You can edit any single cell manually, but only in External mode or when Bluetooth is disconnected.

4. Scan Direction and Navigation

The scan always starts from the bottom‑right corner and moves vertically (bottom to top).

Two scan modes are available:

Use the direction toggle in the scan menu to switch between these modes.

5. 2D Visualization Features

The 2D menu provides different visualization tools including:

AnyScan209 2D visualization

6. 3D View and Advanced Visualization Settings

The 3D viewer allows:

Long-press the rotation control to enable automatic rotation for dynamic presentations. The viewer supports different presentation modes for easier interpretation of collected data.

AnyScan209 3D viewer

7. Export and Data Transmission Formats

AnyScan209 supports data export and real-time streaming in multiple formats for maximum compatibility with analysis software:

💡 Pro Tip: Long-press the Export Icon to open the advanced baud rate and communication speed configuration menu, allowing you to synchronize the transmission rate with your specific Bluetooth hardware receiver.

8. General Settings and Sensor Configuration

The settings menu provides:

The app supports internal smartphone sensors and external Bluetooth sensor modules like HC-05 and other SPP-compatible devices.

AnyScan209 settings

9. Pro Tip: Enhancing Your Scanning Setup

For stable scanning movement, a smartphone holder or selfie stick can be used. A Bluetooth remote controller can also help operate the Record function without touching the phone – ideal for maintaining consistent measurements.

AnyScan209 scanning setup

10. External Sensor Mode for Advanced Scanning

In External Sensor mode, activate the external option from the Settings page. Using a serial Bluetooth module such as HC-05 or another SPP-compatible device, a microcontroller can send measurement values to AnyScan209.

The communication range is based on values from 0 to 1024. In magnetometer mode, the center balance value is approximately 512. Other sensor types can use the full 0 to 1024 range for various measurements.

AnyScan209 external sensor mode
🚀 Live Scan (Professional Scan): Rename your Bluetooth module to ANY_SCAN_MS209 to unlock single-scan and four-sensor scan (four times faster), a battery indicator with low-battery alarm, and optional Next / Bal buttons on your scanner. See the full open protocol with Arduino, BASCOM and Python examples: AnyScan209 Live Scan – Bluetooth Protocol.

11. Internal Sensors – Four Powerful Modes in One App

AnyScan209 is not just a magnetometer. It is a universal 2D/3D visualizer that can read from four different internal smartphone sensors. To choose the sensor you want, simply long-press the sensor icon on the Settings page — a sensor selection list will appear, and you can switch between any of the following four sensors at any time.

AnyScan209 internal sensor selection list
🧭 How to switch internal sensors:
  1. Open the Settings page.
  2. Long-press the sensor icon at the top of the settings panel.
  3. A list of all available internal sensors appears.
  4. Tap any sensor to activate it.

🧲 1. Magnetometer – For Geophysics, Cavity Detection & Magnetic Field Mapping

The magnetometer (compass sensor) is the most powerful mode in AnyScan209 and is designed for serious field work:

This mode is ideal for researchers, geophysicists, treasure hunters, and anyone working with magnetic field analysis.

⛰️ 2. Barometer / Altimeter – For Elevation Mapping & Surface Topography

The barometric pressure sensor (available on many modern smartphones) measures atmospheric pressure and converts it into relative altitude. In AnyScan209 this sensor becomes a powerful elevation mapping tool:

⚠️ Note: Not all smartphones are equipped with a barometer. The barometer option may still appear in the sensor list on devices that do not have a physical barometric sensor, but in that case it will not return real pressure or altitude readings. Most flagship and mid-to-high-end devices include a real barometer, while many budget phones do not. If the barometer reading stays constant or does not respond to changes in elevation, your device most likely lacks a physical barometer.

💡 3. Light Sensor – For Illumination Mapping & Environmental Light Analysis

The ambient light sensor measures the intensity of light around the phone. In AnyScan209, this sensor becomes a professional illumination mapping tool:

Perfect for lighting engineers, greenhouse operators, photographers, and anyone who needs to see how light is distributed in a space.

🔊 4. Sound / Noise Meter – For Acoustic Mapping & Industrial Noise Analysis

The phone's microphone is used as a professional sound level meter (SPL meter). In AnyScan209 this becomes a powerful acoustic mapping tool:

Ideal for acoustic engineers, safety inspectors, industrial technicians, and researchers studying noise pollution.

✅ One app – Four sensors – Unlimited possibilities:

With AnyScan209, the same app can be used as a magnetometer, altimeter, light meter, or sound level meter — just switch the sensor and start scanning. All four sensors use the same 0–1024 visualization range, the same 2D/3D viewers, and the same OBJ / STL / CSV / PLY export. This makes AnyScan209 a truly universal measurement platform for professionals and hobbyists alike.

12. Gain and Balance – Understanding the 0–1024 Range

Internal Sensor (Magnetometer)

Smartphone magnetometers are typically 16‑bit sensors with a raw range of 0 to 65,535. AnyScan209 applies a Gain factor (adjustable from 10 down to 1) to map this raw data into the 0–1024 visualization range.

External Sensor (Bluetooth)

In External mode, the user is responsible for pre‑scaling their sensor data in hardware or firmware before sending it via Bluetooth. The app expects values in the 0–1024 range and applies no additional gain or scaling internally.

💡 Pro Tip: If your external sensor outputs values outside 0–1024, use a simple division or offset in your Arduino/ESP code before sending via Serial.println().

13. Schematic Diagram – External Sensor Connection

AnyScan209 external sensor schematic

14. Microcontroller Integration: BASCOM to Arduino

📘 Overview: This section demonstrates converting AVR BASCOM code into Arduino C++ code for use with AnyScan209 external sensor mode. The example reads sensor values and transmits them through serial communication using Bluetooth modules such as HC-05 or SPP devices.

Original BASCOM Code

$regfile = "m8adef.dat"
$crystal = 8000000
Config Adc = Single , Prescaler = Auto , Reference = Avcc
Enable Interrupts
Config Portc.0 = Input
Config Portc.2 = Output
Dim Insw As Bit
Dim Vale As Word
Do
If Pinc.0 = 0 And Insw = 1 Then
Insw = 0
Portc.2 = 0
End If
If Pinc.0 = 1 And Insw = 0 Then
Portc.2 = 1
Insw = 1
Vale = Getadc(1)
Print Vale
End If
Loop
            

Converted Arduino C++ Code

// BASCOM PortC.0 to Arduino input pin
const int switchPin = A1;
const int outputPin = 2;
bool lastSwitchState = false;
int analogValue = 0;
void setup() {
  Serial.begin(9600);
  pinMode(outputPin, OUTPUT);
  pinMode(switchPin, INPUT);
  digitalWrite(outputPin, LOW);
}
void loop() {
  bool currentSwitchState = digitalRead(switchPin);
  if (currentSwitchState == LOW && lastSwitchState == HIGH) {
    lastSwitchState = LOW;
    digitalWrite(outputPin, LOW);
  }
  if (currentSwitchState == HIGH && lastSwitchState == LOW) {
    digitalWrite(outputPin, HIGH);
    lastSwitchState = HIGH;
    analogValue = analogRead(A1);
    Serial.println(analogValue);
  }
}
            

Alternative Version with Pull-up Enabled

// Arduino code with INPUT_PULLUP enabled
const int switchPin = A1;
const int outputPin = 2;
bool lastSwitchState = false;
int analogValue = 0;
void setup() {
  Serial.begin(9600);
  pinMode(outputPin, OUTPUT);
  pinMode(switchPin, INPUT_PULLUP);
  digitalWrite(outputPin, LOW);
}
void loop() {
  bool currentSwitchState = digitalRead(switchPin);
  if (currentSwitchState == LOW && lastSwitchState == HIGH) {
    lastSwitchState = LOW;
    digitalWrite(outputPin, LOW);
  }
  if (currentSwitchState == HIGH && lastSwitchState == LOW) {
    digitalWrite(outputPin, HIGH);
    lastSwitchState = HIGH;
    analogValue = analogRead(A1);
    Serial.println(analogValue);
  }
}
            

Proteus File Download

📦 Download All Files (Proteus Project)

15. Magnetometer Sensor Guide for AnyScan209

This table provides information about smartphone magnetometer sensors and their general characteristics for use with AnyScan209.

Manufacturer Sensor Model Sampling Rate Resolution Noise Level Example Devices
MEMSICMMC5616WA1000 Hz0.00625 µT/LSBVery LowCheck device specifications
AKMAK09973DUp to 2000 HzHigh sensitivityMediumSelected Samsung, Xiaomi and Sony devices
YamahaYAS537200 Hz0.15 µT/LSBVery LowSamsung Galaxy S6, S7, Note series
YamahaYAS539~200 Hz0.12 µT/LSBVery LowSamsung Galaxy A series devices
Alps AlpineHSCDTD015A200 Hz0.075 µT/LSBLowUsed in some modern smartphones
STMicroelectronicsLIS3MDL1000 HzMediumMediumMotorola, Nokia and LG devices
Table 1: Magnetometer sensor specifications for smartphones compatible with AnyScan209.

⚠️ Why does my flagship phone have a weaker or slower magnetometer sensor?

Most flagship smartphones use high-quality 16-bit magnetometer sensors with excellent precision and fast sampling rates. However, you may notice that a mid-range or budget device (e.g., Samsung Galaxy A-series) performs more sensitively or responds faster in certain conditions.

The reason is not the sensor chip itself, but its physical installation environment:

Bottom line: The sensor itself is rarely the problem. Installation conditions, nearby magnets (from wireless charging), and metallic components play a much larger role in real-world performance. Always test your device in a magnetically clean environment for the best results.

Tip: To view information about your phone's magnetometer sensor, open Settings, go to the Update section, and select Sensor internal : help.

16. Use Your Smartphone as a Magnetic Field Detector

How to Use the Gauge and Graph Features

In AnyScan209, switch to Internal Sensor mode. Press and hold the sensor option to open advanced settings, then enable the Graph and Gauge features. Select the Bipolar Gauge display mode for real-time magnetic field visualization.

Return to the scan screen and bring your smartphone close to a device that produces a magnetic field, such as:

The gauge will respond to changes in the surrounding magnetic field. Alternating magnetic fields from AC electrical systems can cause the indicator to move in both directions, allowing visualization of magnetic field changes. DC magnetic fields may cause the indicator to move in one direction depending on the field orientation.

Educational and Practical Applications

Note: To locate wiring paths behind the wall, you need a good excitation field. It is recommended to have a high-power load—such as an electric heater or an electric kettle—at the end of the circuit so that a suitable inductive field is generated around the wires.

17. Practical Tips for Detecting Wires and Conduits Behind Walls

The method described above works best for cables or wires inside PVC or non-metallic conduits at shallow depths (a few centimeters). Since the magnetic field from AC current can penetrate plastic pipes, your phone's magnetometer can detect the alternating field and help trace the wiring path.

For metal conduits (steel or galvanized):
You do not need any current flowing through the wires inside the pipe. Even with no load at the end and no current passing through, the metal conduit itself creates a detectable magnetic anomaly. Because steel and galvanized pipes are ferromagnetic materials, they disturb the magnetic field around them. When you move your phone over a metal conduit, the magnetometer needle will deflect to one side (a static offset) simply due to the pipe's own magnetic signature.

💡 Key takeaway:
AnyScan209 detecting a metal conduit

Please note that Android devices use different magnetometer sensors. The performance of magnetic field measurements depends on the quality and specifications of the sensor installed in each phone.

AnyScan209 sensor settings

18. Direct & Alternating Current Measurement with AnyScan209

In the scan page, when you open the bottom menu, you will see four options:

AnyScan209 current measurement menu

How It Works

If the current-carrying wire is placed in a proper and consistent position, you can measure the current through the magnetic field around it — exactly what current transformers (CTs) do. However, note that the position of the current-carrying wire relative to the sensor is very important, because its stability and correct calibration determine the accuracy of the measurement. Conversely, unfavorable conditions lead to inaccurate measurements.

DC Current Measurement

Before starting, press the Balancer (⚖️) icon so that the measurement field is set to zero before measuring. DC current measurement is somewhat more difficult because factors such as the presence of ferromagnetic metals nearby adversely affect accuracy.

If the initial adjustment does not give correct current, simply look at the now= value on the right side of the Calibration section and adjust it as follows:

  1. Place the phone sensor on or in front of the wire.
  2. Pass a known current (e.g., 1 ampere) through the wire using a laboratory power supply or any other method.
  3. Note the number shown next to now=.
  4. Enter that number in the Calibration input and confirm.
  5. If you don't have access to 1 A, any known current works. For example, if the reading now shows 800 for 4 A, then for 1 A the calibration value is 200.

For DC, it doesn't matter if the wire is reversed and the current reading is negative — just enter the absolute value (without sign) into the calibration field.

AC Current Measurement

AC current calibration follows the same procedure as DC. However, AC measurement is highly dependent on the performance and speed of the magnetic sensor, and you may not get satisfactory results on some phone models.

Important Notes

⚠️ SAFETY WARNING:
Never attempt to measure current in high-voltage or high-current locations such as copper busbars. Doing so puts you at serious risk of electric shock, especially if your phone has a metal body. Always follow electrical safety procedures and never compromise your safety for a measurement.

19. Frequently Asked Questions About AnyScan209

Is AnyScan209 completely free to download and use?

Yes, AnyScan209 is 100% free to download and use. There are no hidden charges, in-app purchases, or premium versions. The app provides full functionality without any cost.

Does AnyScan209 work with external sensors?

Yes! AnyScan209 supports external Bluetooth sensors such as HC-05 modules and other SPP-compatible devices. This makes it ideal for custom measurements using specialized hardware.

What data formats can I export from AnyScan209?

AnyScan209 supports export in four formats: OBJ for 3D models, STL for 3D printing applications, CSV for data analysis in spreadsheets and scientific software, and PLY for color-preserving 3D data. All 3D export formats are available in low-resolution and high-resolution variants, and PLY additionally stores per-vertex color attributes.

Can I use AnyScan209 for more than just magnetic field scanning?

Absolutely! AnyScan209 is a universal 2D/3D visualizer with four internal sensors (magnetometer, barometer, light, sound) and support for any external 0–1024 sensor data. Whether you're measuring temperature, pressure, altitude, light, acoustic signals, or custom sensor data, just send values between 0 and 1024 and the app creates stunning visualizations.

Does AnyScan209 contain ads or collect my data?

No. AnyScan209 is completely free, contains no advertisements, and never sends any data to external servers. All scans, settings, and data stay locally on your device. Your privacy is fully respected.

Which Android devices are compatible with AnyScan209?

AnyScan209 works on any Android device that has a built-in magnetometer sensor. Most modern smartphones include this sensor. For best results, use devices with high-quality sensors like those listed in the sensor guide above.

Can I use AnyScan209 for professional geophysical surveys?

Absolutely! AnyScan209 is designed for both educational and professional use. Its 2D/3D visualization, data export, and external sensor support make it suitable for various fields.

What is the Gain feature and how does it work?

Gain adjusts the sensitivity of the internal 16-bit magnetometer (0–65535 raw). Default Gain=10 maps the raw data to the 0–1024 visualization range with neutral point at 512. Lower Gain (9 to 1) reduces sensitivity but covers a wider range. In External mode, you must pre-scale your sensor data before sending via Bluetooth.

Can I find hidden electrical wires behind walls using AnyScan209?

Yes. By switching to Internal Sensor mode and using the Bipolar Gauge visualization, you can trace hidden live electrical wires (under high-power load) or metal conduits behind walls via the phone's built-in magnetometer. Detection depth is limited to a few centimeters.

Can AnyScan209 measure DC and AC current?

Yes, in Internal Sensor (Magnetometer) mode only. The Scan page bottom menu offers DC Ammeter, DC Calibration, AC Ammeter and AC Calibration. Calibrate with a known current first. AC accuracy depends on the speed and quality of your phone's magnetometer. Never measure high-voltage or high-current locations such as copper busbars.

I have ideas or feature requests for improving the app. How can I submit them?

Thank you for your interest and your ideas! We truly welcome user suggestions, but there is an important point we need to share with you:

Our main concern: Some ideas may divert the application from its original path and turn it from a scientific tool into a fantasy or dream tool. This could affect the expectations and understanding of other users and undermine the scientific credibility of the tool.

Suggested solution:

  1. Report your ideas: Please report your ideas and suggestions in the community forum so we can discuss them together and choose the best path forward.
  2. Use SoifGo: Don't worry — every idea is executable! Simply visit the SoifGo web app builder at:
    https://soifgo.github.io/index.html
    SoifGo is a web-based app builder that can fulfill any request you have. No programming knowledge required!
  3. How it works:
    • Request your desired feature from AI in the form of HTML code.
    • Paste the code into SoifGo or reload the file.
    • You can take the sample AnyScan209 files from its folder and run 3D/2D analysis and anything else you need in SoifGo.

Important note: Remember that HTML has one of the widest libraries available among all programs, giving you the greatest freedom to customize and experiment.

In summary: Your ideas are still respected and executable, but let's not make the main app heavier or divert it further. Instead, use SoifGo as your personal laboratory to implement your creative ideas. This way, both our scientific app stays intact and you have complete freedom to create whatever you envision.

Tutorial video: As shown in the tutorial video below, you can open a 3D View inside SoifGo. This 3D View is saved in the SoifGo HTML folder, so don't worry about losing it. You can even edit it yourself: describe your idea to an AI assistant and run the result in this web app. You can do almost anything you like.

Saeid Moghadam