Project: RVLink MV2400 Custom Control API (skyweave.lua)

This repository contains skyweave.lua, a custom CGI application written in Lua for the OpenWrt-based RVLink MV2402 roof-mounted internet unit. The primary goal is to achieve direct, programmatic control over the MV2402's networking functionalities, independent of the original indoor controller unit (RV2458).

Key Features & Objectives:

  • Bypass indoor unit orchestration by disabling proprietary services (wtpd, heart_beat).
  • Implement a Lua CGI API (skyweave.lua) for:
    • Wi-Fi client (STA) connection management (SSID, BSSID, encryption, key).
    • Wi-Fi scanning using iwinfo.
    • Retrieval of system logs (raw and parsed with SHA256 hashes).
    • Fetching detailed network and system status (replicating guide_config, live IP/DNS/gateway, etc.).
  • Utilize standard OpenWrt tools (uci, logread, iwinfo, ubus, shell commands) for backend operations.
  • Based on reverse engineering insights from the original webmgnt C firmware (analyzed with Ghidra).
  • Facilitates advanced WAN management, failover, and integration with downstream routers like MikroTik.

Prerequisites & Setup on MV2400:

  • opkg Configuration: The default opkg.conf on the MV2402 likely needs to be updated to point to valid OpenWrt Chaos Calmer 15.05 package repositories (e.g., http://archive.openwrt.org/chaos_calmer/15.05/ar71xx/generic/packages/) to enable package installation.
  • Essential Packages: After fixing opkg, install the following:
    • lua: The Lua interpreter.
    • uhttpd: OpenWrt's web server, to run Lua CGI scripts.
    • sha256sum: For generating SHA256 hashes (part of coreutils-sha256sum or coreutils depending on the feed) if not already present.
  • JSON Library: This project uses a pure Lua JSON library (rxi/json.lua). The json.lua file needs to be manually placed in a Lua library path on the device, typically /usr/lib/lua/.

This project empowers users with enhanced control and automation capabilities for the RVLink system.

S
Description
Custom Lua CGI-based API for direct control of the RVLink MV2402 (OpenWrt) roof-mounted internet unit. Aims to bypass the indoor controller, enabling independent WAN management, Wi-Fi client connections, status monitoring, and advanced network integration (e.g., with MikroTik). Involves reverse engineering of OEM firmware and utilization of standard OpenWrt utilities.
Readme GPL-3.0
304 KiB
Languages
Lua 92.4%
Shell 7.6%