0
0
mirror of https://git.openwrt.org/openwrt/openwrt.git synced 2025-07-29 19:00:11 +00:00
Files
openwrt/target/linux/ramips/dts/mt7628an_teltonika_rut9x6.dts
Simonas Tamošaitis 85e300c93d ramips: mt76x8: add Teltonika RUT956/RUT906 support
Specification:
- MediaTek MT7628AN SoC
- 128 MB of RAM EtronTech EM68C16CWQG-25IH
- 16MB of Flash Winbond W25Q128 SPI
- 4x 10/100 Mbps Ethernet, with passive PoE support on LAN1
- MediaTek MT7628AN 2.4 GHz 802.11n WiFi
- Quectel EC25-EUX (RUT956) or Meig SLM770A (RUT906) modem
- GNSS
- RS232, DB9 connector, Cypress ACM via USB, /dev/ttyACM0
- RS485 /dev/ttyS1
- microSD card slot
- 2.0 USB Type-A HOST port
- analog 0-24V input (MCP3221)
- Relay
- 2x Digital input
- 2x Digital output
- 2x SIM slot (can be swapped via GPIO)
- eSIM (depends on hardware configuration, can be swapped via GPIO)

GPIO:
 - 1 button (Reset)
 - 7 LEDs (power, status green/red, RSSI 1,2,3,4,5)
 - 5 Modem control (power button, reset, status (v5 hw), SIM select, eSIM select)
 - 2 Digital input
 - 2 Digital output
 - 1 Isolated input
 - 1 RS485 tx enable
 - 1 RS485 rx enable
 - 1 Relay
 - 1 Data Carrier Detect (DCD)

Flashing via OEM WebUI:
1. Download the firmware image *-squashfs-factory.bin
2. Upload firmware image via OEM WebUI firmware update, do not keep settings

To revert back to OEM firmware:
https://wiki.teltonika-networks.com/view/Bootloader_menu

Mobile data connection:
Meig SLM770 create proto DHCP interface with usb0 device.
Quectel EC25-EUX create proto qmi interface.

Signed-off-by: Simonas Tamošaitis <simsasss@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18788
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-06-08 17:10:02 +02:00

80 lines
1.5 KiB
Plaintext

// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
#include "mt7628an_teltonika_rut9xx.dtsi"
/ {
compatible = "teltonika,rut9x6", "mediatek,mt7628an-soc";
model = "Teltonika RUT956/RUT906";
gpio-export {
gpio_dcd {
gpio-export,name = "dcd";
gpio-export,output = <0>;
gpios = <&gpio_hc595 14 GPIO_ACTIVE_HIGH>;
};
gpio_din2 {
gpio-export,name = "digital_input2";
gpio-export,input = <0>;
gpios = <&gpio 37 GPIO_ACTIVE_LOW>;
};
gpio_output2 {
gpio-export,name = "digital_output2";
gpio-export,output = <0>;
gpios = <&gpio_hc595 8 GPIO_ACTIVE_HIGH>;
};
gpio_adcin {
gpio-export,name = "adc_input";
gpio-export,input = <0>;
gpios = <&gpio 37 GPIO_ACTIVE_LOW>;
};
gpio_relay {
gpio-export,name = "relay";
gpio-export,output = <0>;
gpios = <&gpio_hc595 9 GPIO_ACTIVE_HIGH>;
};
gpio_rs485_rx_en {
gpio-export,name = "rs485_rx_enable";
gpio-export,output = <0>;
gpios = <&gpio_hc595 13 GPIO_ACTIVE_HIGH>;
};
gpio_rs485_tx_en {
gpio-export,name = "rs485_tx_enable";
gpio-export,output = <0>;
gpios = <&gpio 44 GPIO_ACTIVE_HIGH>;
};
gpio_isolated_input {
gpio-export,name = "isolated_input";
gpio-export,input = <0>;
gpios = <&gpio 11 GPIO_ACTIVE_LOW>;
};
};
};
&i2c {
status = "okay";
hwmon@4d {
compatible = "mcp3221";
reg = <0x4d>;
reference-voltage-microvolt = <3300000>;
};
hwmon@48 {
compatible = "ti,tla2021";
reg = <0x48>;
};
};
&uart1 {
linux,rs485-enabled-at-boot-time;
rs485-rts-delay = <0 0>;
rs485-rx-during-tx;
status = "okay";
};