An open API service indexing awesome lists of open source software.

https://github.com/abhi5h3k/cellularlab

๐Ÿ“ฑ CellularLab โ€“ iPerf3 Client for Android
https://github.com/abhi5h3k/cellularlab

best-iperf cellular-automaton cmakelists cpp gemini-api gemini-client iperf iperf-android iperf-android-app iperf-auto-run iperf3 iperf3-android iperf3-client jni kotlin-android kotlin-coroutines network network-analysis network-monitoring radio-frequency

Last synced: about 2 months ago
JSON representation

๐Ÿ“ฑ CellularLab โ€“ iPerf3 Client for Android

Awesome Lists containing this project

README

          

# ๐Ÿ“ก CellularLab โ€“ Advanced iPerf3 Client for Android

[![Abhishek LinkedIn](https://img.shields.io/badge/Abhishek-LinkedIn-blue.svg?style=for-the-badge)](https://www.linkedin.com/in/abhi5h3k/)
[![Abhishek StackOverflow](https://img.shields.io/badge/Abhishek-StackOverflow-orange.svg?style=for-the-badge)](https://stackoverflow.com/users/6870223/abhi?tab=profile)

๐Ÿ“ฑ Automated Mobile Network Testing Suite for RF Engineers, QA, and Devs

CellularLab

With JNI bindings to native iPerf3, it offers low-level control, intelligent test strategies, and a polished UI โ€” perfect for field diagnostics, automated lab tests, and performance validation on mobile.

> โญ๏ธ If you find CellularLab useful, please consider giving it a star โ€” it helps others discover the project and supports development!

---

## ๐Ÿ–ผ๏ธ UI Preview

Options

> _A fast, native [iPerf3](https://github.com/esnet/iperf) Android client with TCP/UDP/AI log analysis support. Built with JNI + Android Studio._

## ๐Ÿ“ฅ Download APK

Latest signed release: [Download from GitHub Releases โ†’](https://github.com/Abhi5h3k/CellularLab/releases)

> โš ๏ธ Works on Android 10+ (API 29+).
> ๐Ÿ“ Logs are saved to your `Downloads/` folder.

---

## ๐Ÿš€ Features & Capabilities

### โœ… Protocol Support

- ๐Ÿงช **TCP**
- ๐Ÿ“ก **UDP**
- ๐Ÿ“ˆ **UDP Incremental Ramp-Up**
- ๐Ÿ”„ **Hybrid TCP+UDP**
- ๐Ÿค– **Smart Adaptive Ramp-Up**

### โœ… Test Directions

Test Direction

- ๐Ÿ“ค Upload
- ๐Ÿ“ฅ Download (`-R`)
- ๐Ÿ” Bidirectional (`--bidir`)

---

## ๐Ÿ”ง Command Mode

Take full control of your testing with **Command Mode** โ€” execute custom iPerf3 commands directly:

- ๐Ÿ’ป Enter any `iperf3` command (e.g. `-c 10.0.0.1 -u -b 10M`)
- ๐ŸŽฏ Perfect for advanced users needing custom bandwidth, interval, protocol
- ๐Ÿ“Š Full live output visible and saved like regular tests

Command Mode

---

## ๐Ÿค– Gemini AI Analysis

Let your assistant do the heavy lifting!

- โœจ Tap "AI Analyze" on any log from **History**
- ๐Ÿ“‘ Generates a structured **markdown report**:
- Summary of the test
- Performance issues (packet loss, jitter, etc.)
- Recommendations
- Quality rating (Excellent/Good/Fair/Poor)
- ๐Ÿช„ Clean, formatted output with headlines, bolds, bullet points
- โšก Powered by **Google Gemini Flash**
- ๐Ÿ”’ Safe โ€” your API key is stored in `local.properties` and not committed

> Great for reports, debugging, and sharing with your network team.

Gemini AI

---

## ๐Ÿง  Smart Test Strategies

Strategy

| ๐Ÿš€ Strategy | ๐Ÿ“ Description |
| -------------------------- | --------------------------------------------------------------------------------- |
| ๐Ÿ“ˆ **Incremental Ramp-Up** | Gradually increases UDP bandwidth to simulate real-time scaling and detect limits |
| ๐Ÿ”„ **Hybrid TCP+UDP** | Uses TCP to estimate capacity, then runs UDP at that level |
| ๐Ÿง  **Smart Ramp-Up** | Increases UDP load only if โ‰ฅ90% of packets succeed in previous step |

These are ideal for **automated testing environments** or **dynamic network analysis**.

---

## โš™๏ธ Additional Test Options

- Set custom durations (e.g., 10s, 60s)
- Configure parallel streams
- Customizable reporting interval
- Enable verbose/debug logging
- Auto-scroll control (double-tap to toggle)
- Wait between iterations

---

## ๐Ÿ“ Output, Logs & History

Output

- ๐Ÿ“‰ Real-time iPerf3-style logs (1s interval)
- ๐Ÿ“‚ Logs saved to `Downloads/` folder
- ๐Ÿงฒ Double-tap log view to toggle auto-scroll
- ๐Ÿ“ค Share logs via Mail, WhatsApp, Drive, etc.
- ๐Ÿ“„ Clean formatting for easy analysis
- ๐Ÿค– AI analysis (v2.0) now supported for detailed summaries!

---

## ๐ŸŒ Public iPerf3 Servers

No iPerf server? Use these community-hosted ones:

- ๐Ÿ”— [iperf.fr](https://iperf.fr/iperf-servers.php)
- ๐Ÿ”— [R0GGER/public-iperf3-servers](https://github.com/R0GGER/public-iperf3-servers)

> โš ๏ธ May be unstable or offline depending on maintenance.

---

## ๐Ÿ“ธ Demo Gallery

### 1. ๐Ÿš€ First-Time User Guide

New users get an in-app walkthrough of the key screens and controls.

Intro Guide

---

### 2. ๐ŸŽฏ Run a Test

Just set up the parameters (IP, protocol, duration) and tap start.

Run Test

---

### 3. ๐Ÿ“Š History & Log Management

See previous results with clear pass/fail indicators:

- โœ… All tests passed
- โš ๏ธ Partial success
- โŒ Most failed

You can:
- Tap to open logs
- Share or delete from the UI
- โœจ Analyze with Gemini AI

Result History

---

### 4. ๐Ÿค– AI Assistant

โœจ Tap "AI Analyze" on any log from **History**

NEW AI

---

## ๐Ÿ› ๏ธ Development Info

| Component | Details |
|------------------|--------------------------------------|
| **IDE** | Android Studio `Narwhal 2025.1.1` |
| **NDK Version** | `28.1.13356709` |
| **iPerf Version**| `3.19` (Native C via JNI) |
| **Min SDK** | API 29 |
| **Target SDK** | API 35 |
| **ABI Support** | `armeabi-v7a`, `arm64-v8a` |
| **Build Types** | Debug & Signed Release |

---

## ๐Ÿ› ๏ธ Updating iPerf3 Version

To upgrade to a newer iPerf3 version:

๐Ÿ“– See [`docs/updating-iperf.md`](docs/updating-iperf.md) for detailed steps.

---

## ๐Ÿ“š Articles & Guides

Want to dive deeper into how this app was built or learn how to compile iPerf3 for Android?

- ๐Ÿ“– [How I Accidentally Vibe-Coded an Android iPerf3 App with AI](https://iper3.hashnode.dev/how-i-accidentally-vibe-coded-an-android-iperf3-app-with-ai)
- ๐Ÿ› ๏ธ [Compiling iPerf3 in Android with CMake and JNI โ€“ A Practical Guide](https://iper3.hashnode.dev/compiling-iperf3-in-android-with-cmake-and-jni-a-practical-guide)
- ๐Ÿ“š [User Guide](https://android-iperf3.hashnode.space/cellular-lab/v1.0?t=1754656238992)

Follow me on Hashnode for more deep dives:
๐ŸŒ [@AbhishekIN on Hashnode](https://hashnode.com/@AbhishekIN)

---
## ๐Ÿ“œ License

This project is open-source under a **custom MIT-style license**:

- โœ… Personal and non-commercial use allowed
- โŒ Uploading to Play Store or commercial use **requires permission**

If you build on this, please give credit with a link to the original repo:

๐Ÿ”— [https://github.com/Abhi5h3k/CellularLab](https://github.com/Abhi5h3k/CellularLab)