Idrive One Wifi Drive support?

Hi all

Curious if anyone has one of these Idrive One drives or similar - https://fccid.io/2ADPBIDRIVEONE/User-Manual/User-manual-2945464

I got one a while back and it's great but it would be awesome being able to get OpenWRT on it. I just picked up a Ravpower Filehub Plus and noticed the stock firmware and interface are nearly the same as on the Idrive One/Wifi. I'm not sure who made and maintains this stock firmware but I figure if it is running on different devices and one of them (Filehub Plus) can be flashed with OpenWRT, it gives hope for the Idrive One/Wifi.

Has anyone played around with this device?

FWIW, I did some very surface-level investigation back when I first got it:

PORT STATE SERVICE
23/tcp open telnet
80/tcp open http
81/tcp open hosts2-ns
139/tcp open netbios-ssn
445/tcp open microsoft-ds

Was able to telnet in as admin user and the password that I set. I get shell access as the admin but no root (su and sudo are not present). /etc/passwd and /etc/shadow are present and readable by admin though.

$ cat /proc/cpuinfo
system type : Ralink SoC
processor : 0
cpu model : MIPS 24Kc V5.0
BogoMIPS : 386.04
wait instruction : yes
microsecond timers : yes
tlb_entries : 32
extra interrupt vector : yes
hardware watchpoint : yes, count: 4, address/irw mask: [0x0000, 0x0270, 0x0ffb, 0x0370]
ASEs implemented : mips16 dsp
shadow register sets : 1
core : 0
VCED exceptions : not available
VCEI exceptions : not available

Could be cool, could you post a dmesg output? If nothing else it should help detail some of the hardware present. I’m guessing this is an rt305x? I wonder how much RAM and SPI this has.

Here's the dmesg output:

ost Controller
[    2.176000] rt3xxx-ehci rt3xxx-ehci: new USB bus registered, assigned bus number 1
[    2.212000] rt3xxx-ehci rt3xxx-ehci: irq 18, io mem 0x101c0000
[    2.232000] rt3xxx-ehci rt3xxx-ehci: USB 0.0 started, EHCI 1.00
[    2.244000] hub 1-0:1.0: USB hub found
[    2.248000] hub 1-0:1.0: 1 port detected
[    2.260000] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
[    2.292000] rt3xxx-ohci rt3xxx-ohci: RT3xxx OHCI Controller
[    2.300000] rt3xxx-ohci rt3xxx-ohci: new USB bus registered, assigned bus number 2
[    2.316000] rt3xxx-ohci rt3xxx-ohci: irq 18, io mem 0x101c1000
[    2.388000] hub 2-0:1.0: USB hub found
[    2.396000] hub 2-0:1.0: 1 port detected
[    2.404000] usbcore: registered new interface driver cdc_acm
[    2.412000] cdc_acm: v0.26:USB Abstract Control Model driver for USB modems and ISDN adapters
[    2.432000] Initializing USB Mass Storage driver...
[    2.440000] usbcore: registered new interface driver usb-storage
[    2.452000] USB Mass Storage support registered.
[    2.460000] usbcore: registered new interface driver libusual
[    2.472000] nf_conntrack version 0.5.0 (1943 buckets, 7772 max)
[    2.484000] IPVS: Registered protocols ()
[    2.492000] IPVS: Connection hash table configured (size=4096, memory=32Kbytes)
[    2.508000] IPVS: ipvs loaded.
[    2.516000] GRE over IPv4 demultiplexor driver
[    2.524000] gre: can't add protocol
[    2.532000] ip_tables: (C) 2000-2006 Netfilter Core Team, Type=Restricted Cone
[    2.544000] TCP cubic registered
[    2.552000] NET: Registered protocol family 10
[    2.560000] NET: Registered protocol family 17
[    2.572000] L2TP core driver, V2.0
[    2.576000] PPPoL2TP kernel driver, V2.0
[    2.584000] 802.1Q VLAN Support v1.8 Ben Greear 
[    2.600000] All bugs added by David S. Miller 
[    2.632000] Match the module's license!
[    2.644000] SQUASHFS error: Xattrs in filesystem, these will be ignored
[    2.660000] VFS: Mounted root (squashfs filesystem) readonly on device 31:8.
[    2.672000] Freeing unused kernel memory: 172k freed
[    2.744000] usb 1-1: new high speed USB device using rt3xxx-ehci and address 2
[    3.124000] scsi0 : usb-storage 1-1:1.0
[    3.796000] Algorithmics/MIPS FPU Emulator v1.5
[    6.052000] PCI: Setting latency timer of device 0000:01:00.0 to 64
[    6.060000] 
[    6.060000] 
[    6.060000] === pAd = c0602000, size = 1366328 ===
[    6.060000] 
[    6.080000] <-- RTMPAllocTxRxRingMemory, Status=0
[    6.092000] <-- RTMPAllocAdapterBlock, Status=0
[    6.100000] device_id =0x7650
[    6.108000] ==>MT76x0_WLAN_ChipOnOff(): OnOff:1, pAd->WlanFunCtrl:0x0, Reg-WlanFunCtrl=0xff000002
[    6.124000] MACVersion = 0x76502000
[    6.452000] tntfs: module license 'Commercial. For support email ntfs-support@tuxera.com.' taints kernel.
[    6.472000] Disabling lock debugging due to kernel taint
[    6.508000] Tuxera NTFS driver 3014.4.29 [Flags: R/W MODULE].
[    6.592000] Tuxera FAT driver 3013.2.9 [Flags: R/W MODULE].
[    7.752000] scsi 0:0:0:0: Direct-Access     IDrive   IDriveOne        A560 PQ: 0 ANSI: 6
[    7.772000] Spinning up disk...
[    7.780000] delay 1 second ...
[    8.804000] sd 0:0:0:0: [sda] 1953525168 512-byte logical blocks: (1.00 TB/931 GiB)
[    8.820000] sd 0:0:0:0: [sda] Write Protect is off
[    8.832000] sd 0:0:0:0: [sda] Mode Sense: 43 00 00 00
[    8.832000] sd 0:0:0:0: [sda] Assuming drive cache: write through
[    8.848000] sd 0:0:0:0: [sda] Assuming drive cache: write through
[    8.916000]  sda: sda1
[    8.924000] sd 0:0:0:0: [sda] Assuming drive cache: write through
[    8.936000] sd 0:0:0:0: [sda] Attached SCSI disk
[    9.728000] enable send the SIGUSR2
[   12.020000] Raeth v3.0 (Tasklet,SkbRecycle)
[   12.028000] 
[   12.028000] phy_tx_ring = 0x06cf8000, tx_ring = 0xa6cf8000
[   12.028000] 
[   12.028000] phy_rx_ring0 = 0x06cf9000, rx_ring0 = 0xa6cf9000
[   12.028000] SMACCR1 -- : 0x0000001c
[   12.028000] SMACCR0 -- : 0xc226fe30
[   12.072000] CDMA_CSG_CFG = 81000000
[   12.080000] GDMA1_FWD_CFG = 20710000
[   12.092000] RX DESC a7e3c000  size = 2048
[   12.104000] RTMP_TimerListAdd: add timer obj c00de6d8!
[   12.112000] RTMP_TimerListAdd: add timer obj c00a93f4!
[   12.124000] RTMP_TimerListAdd: add timer obj c00a93c8!
[   12.136000] RTMP_TimerListAdd: add timer obj c00a9420!
[   12.144000] RTMP_TimerListAdd: add timer obj c00a939c!
[   12.156000] RTMP_TimerListAdd: add timer obj c004d3cc!
[   12.164000] RTMP_TimerListAdd: add timer obj c004cc14!
[   12.176000] RTMP_TimerListAdd: add timer obj c004d39c!
[   12.184000] RTMP_TimerListAdd: add timer obj c004d6d8!
[   12.196000] RTMP_TimerListAdd: add timer obj c004d618!
[   12.208000] RTMP_TimerListAdd: add timer obj c004d648!
[   12.216000] RTMP_TimerListAdd: add timer obj c0050948!
[   12.228000] RTMP_TimerListAdd: add timer obj c0050190!
[   12.236000] RTMP_TimerListAdd: add timer obj c0050918!
[   12.248000] RTMP_TimerListAdd: add timer obj c0050c54!
[   12.256000] RTMP_TimerListAdd: add timer obj c0050b94!
[   12.268000] RTMP_TimerListAdd: add timer obj c0050bc4!
[   12.276000] RTMP_TimerListAdd: add timer obj c0053ec4!
[   12.288000] RTMP_TimerListAdd: add timer obj c005370c!
[   12.300000] RTMP_TimerListAdd: add timer obj c0053e94!
[   12.308000] RTMP_TimerListAdd: add timer obj c00541d0!
[   12.320000] RTMP_TimerListAdd: add timer obj c0054110!
[   12.328000] RTMP_TimerListAdd: add timer obj c0054140!
[   12.340000] RTMP_TimerListAdd: add timer obj c0057440!
[   12.348000] RTMP_TimerListAdd: add timer obj c0056c88!
[   12.360000] RTMP_TimerListAdd: add timer obj c0057410!
[   12.368000] RTMP_TimerListAdd: add timer obj c005774c!
[   12.380000] RTMP_TimerListAdd: add timer obj c005768c!
[   12.392000] RTMP_TimerListAdd: add timer obj c00576bc!
[   12.400000] RTMP_TimerListAdd: add timer obj c005a9bc!
[   12.412000] RTMP_TimerListAdd: add timer obj c005a204!
[   12.420000] RTMP_TimerListAdd: add timer obj c005a98c!
[   12.432000] RTMP_TimerListAdd: add timer obj c005acc8!
[   12.440000] RTMP_TimerListAdd: add timer obj c005ac08!
[   12.452000] RTMP_TimerListAdd: add timer obj c005ac38!
[   12.464000] RTMP_TimerListAdd: add timer obj c005df38!
[   12.472000] RTMP_TimerListAdd: add timer obj c005d780!
[   12.484000] RTMP_TimerListAdd: add timer obj c005df08!
[   12.492000] RTMP_TimerListAdd: add timer obj c005e244!
[   12.504000] RTMP_TimerListAdd: add timer obj c005e184!
[   12.512000] RTMP_TimerListAdd: add timer obj c005e1b4!
[   12.524000] RTMP_TimerListAdd: add timer obj c00614b4!
[   12.532000] RTMP_TimerListAdd: add timer obj c0060cfc!
[   12.544000] RTMP_TimerListAdd: add timer obj c0061484!
[   12.556000] RTMP_TimerListAdd: add timer obj c00617c0!
[   12.564000] RTMP_TimerListAdd: add timer obj c0061700!
[   12.576000] RTMP_TimerListAdd: add timer obj c0061730!
[   12.584000] RTMP_TimerListAdd: add timer obj c0064a30!
[   12.596000] RTMP_TimerListAdd: add timer obj c0064278!
[   12.604000] RTMP_TimerListAdd: add timer obj c0064a00!
[   12.616000] RTMP_TimerListAdd: add timer obj c0064d3c!
[   12.628000] RTMP_TimerListAdd: add timer obj c0064c7c!
[   12.636000] RTMP_TimerListAdd: add timer obj c0064cac!
[   12.648000] RTMP_TimerListAdd: add timer obj c00abc20!
[   12.656000] RTMP_TimerListAdd: add timer obj c00ab468!
[   12.668000] RTMP_TimerListAdd: add timer obj c00abbf0!
[   12.676000] RTMP_TimerListAdd: add timer obj c00abf2c!
[   12.688000] RTMP_TimerListAdd: add timer obj c00abc50!
[   12.696000] RTMP_TimerListAdd: add timer obj c00abc80!
[   12.708000] RTMP_TimerListAdd: add timer obj c00abcb0!
[   12.720000] RTMP_TimerListAdd: add timer obj c00b5044!
[   12.728000] RTMP_TimerListAdd: add timer obj c00b5160!
[   12.740000] RTMP_TimerListAdd: add timer obj c00b5070!
[   12.748000] RTMP_TimerListAdd: add timer obj c00ac324!
[   12.760000] RTMP_TimerListAdd: add timer obj c004a4e0!
[   12.772000] RTMP_TimerListAdd: add timer obj c004da5c!
[   12.780000] RTMP_TimerListAdd: add timer obj c0050fd8!
[   12.792000] RTMP_TimerListAdd: add timer obj c0054554!
[   12.800000] RTMP_TimerListAdd: add timer obj c0057ad0!
[   12.812000] RTMP_TimerListAdd: add timer obj c005b04c!
[   12.824000] RTMP_TimerListAdd: add timer obj c005e5c8!
[   12.832000] RTMP_TimerListAdd: add timer obj c0061b44!
[   12.844000] RTMP_TimerListAdd: add timer obj c00ac030!
[   12.964000] APSDCapable[0]=0
[   12.968000] APSDCapable[1]=0
[   12.976000] APSDCapable[2]=0
[   12.980000] APSDCapable[3]=0
[   12.984000] APSDCapable[4]=0
[   12.992000] APSDCapable[5]=0
[   12.996000] APSDCapable[6]=0
[   13.004000] APSDCapable[7]=0
[   13.008000] APSDCapable[8]=0
[   13.016000] APSDCapable[9]=0
[   13.020000] APSDCapable[10]=0
[   13.028000] APSDCapable[11]=0
[   13.032000] APSDCapable[12]=0
[   13.040000] APSDCapable[13]=0
[   13.044000] APSDCapable[14]=0
[   13.048000] APSDCapable[15]=0
[   13.056000] default ApCliAPSDCapable[0]=0
[   13.260000] Key1Str is Invalid key length(0) or Type(1)
[   13.272000] Key2Str is Invalid key length(0) or Type(0)
[   13.280000] Key3Str is Invalid key length(0) or Type(0)
[   13.292000] Key4Str is Invalid key length(0) or Type(0)
[   13.500000] 24:de:5d:d7:ea:c4:fd:64:92:5e:fc:7d:c1:e7:30:c8:
[   13.508000] 88:77:29:e1:4d:ff:97:c9:f6:cc:35:c7:8c:e2:45:d9:
[   13.520000] 
[   13.548000] 1. Phy Mode = 9
[   13.556000] 2. Phy Mode = 9
[   13.560000] E2PROM: D0 target power=0xff20 
[   13.568000] E2PROM: 40 MW Power Delta= 0 
[   13.576000] 3. Phy Mode = 9
[   13.584000] e[mAntCfgInit: primary/secondary ant 0/1
[   13.584000] e[mInitialize RF Central Registers for E2 !!!
[   13.604000] Initialize RF Central Registers for E3 !!!
[   13.612000] Initialize RF Channel Registers for E2 !!!
[   13.624000] Initialize RF Channel Registers for E3 !!!
[   13.636000] Initialize RF DCCal Registers for E2 !!!
[   13.644000] Initialize RF DCCal Registers for E3 !!!
[   13.656000] D1 = 0, D2 = 4, CalCode = 9 !!!
[   13.664000] RT6352_Temperature_Init : BBPR49 = 0x0
[   13.676000] RT6352_Temperature_Init : TemperatureRef25C = 0xfffffff6
[   13.688000] Current Temperature from BBP_R49=0xfffffff1
[   13.704000]  TX BW Filter Calibration !!!
[   13.828000]  RX BW Filter Calibration !!!
[   14.064000] LOFT Calibration Done!
[   14.072000] IQCalibration Start!
[   14.088000] IQCalibration Done! CH = 0, (gain= 0, phase=3e)
[   14.100000] IQCalibration Start!
[   14.116000] IQCalibration Done! CH = 1, (gain= f, phase=3e)
[   14.128000] TX IQ Calibration Done!
[   14.140000]  VGA Code idx overflow(19), AM_63(0) !!!
[   14.156000]  VGA Code idx overflow(19), AM_63(0) !!!
[   14.192000] RXIQ Sigma_i=0, Sigma_q=0, R_iq=0
[   14.204000] RXIQ calibration FAIL
[   14.208000] internal ALC is not enabled in NVM !
[   14.220000] MCS Set = ff ff 00 00 01
[   14.232000]  VGA Code idx overflow(19), AM_63(0) !!!
[   14.244000]  VGA Code idx overflow(19), AM_63(0) !!!
[   14.284000] RTMP_TimerListAdd: add timer obj c00ac8cc!
[   14.300000]  VGA Code idx overflow(19), AM_63(0) !!!
[   14.316000]  VGA Code idx overflow(19), AM_63(0) !!!
[   14.356000] Main bssid = 00:1c:c2:26:fe:30
[   14.364000] <==== rt28xx_init, Status=0
[   14.376000] 0x1300 = 00064380
[   17.544000] load fw spent 16ms
[   17.548000] RX DESC a6c83000 size = 2048
[   17.560000] RX1 DESC a6c98000 size = 2048
[   17.580000] cfg_mode=14
[   17.584000] cfg_mode=14
[   17.588000] wmode_band_equal(): Band Not Equal!
[   18.008000] 93:d3:02:7f:e8:4d:2e:1d:6f:d4:ac:29:b8:5b:70:72:
[   18.020000] 70:b1:54:66:41:f9:1a:99:6e:6e:ac:1f:c9:bd:bb:50:
[   18.032000] 
[   18.072000] 1. Phy Mode = 49
[   18.076000] 2. Phy Mode = 49
[   18.084000] ext_pa_current_setting = 1
[   18.088000] 3. Phy Mode = 49
[   18.096000] AntCfgInit: primary/secondary ant 0/1
[   18.104000] ChipStructAssign(): RALINK6590 hook !
[   18.116000] bAutoTxAgcG = 0
[   18.120000] MCS Set = ff 00 00 00 01
[   18.128000] MT76x0_ChipBBPAdjust():rf_bw=2, ext_ch=1, PrimCh=149, HT-CentCh=151, VHT-CentCh=155
[   18.148000] APStartUp(): AP Set CentralFreq at 155(Prim=149, HT-CentCh=151, VHT-CentCh=155, BBP_BW=2)
[   18.168000] Main bssid = 00:1c:c2:36:fe:30
[   18.176000] <==== rt28xx_init, Status=0
[   18.188000] MT76x0_Calibration - Channel = 155, bPowerOn = 1, bSaveCal = 1
[   18.204000] FullCalibration():  docal = [0007] valid bit[0]
[   18.216000] FullCalibration - Channel = 42, param = 0x301, bSave = 1, CalibrationMode = 255
[   18.600000] FullCalibration():  docal = [0007] valid bit[0]
[   18.608000] FullCalibration - Channel = 136, param = 0x401, bSave = 1, CalibrationMode = 255
[   18.992000] FullCalibration():  docal = [0007] valid bit[0]
[   19.004000] FullCalibration - Channel = 155, param = 0x501, bSave = 1, CalibrationMode = 255
[   19.388000] FullCalibration():  docal = [0007] valid bit[0]
[   19.400000] FullCalibration - Channel = 155, param = 0x901, bSave = 0, CalibrationMode = 255
[   19.432000] 0x1300 = 00064300
[   19.436000] RTMPDrvOpen(1):Check if PDMA is idle!
[   19.448000] RTMPDrvOpen(2):Check if PDMA is idle!
[   20.164000] device eth2 entered promiscuous mode
[   20.356000] device ra0 entered promiscuous mode
[   20.368000] device rai0 entered promiscuous mode
[   20.524000] br0: port 3(eth2) entering learning state
[   20.536000] br0: port 3(eth2) entering learning state
[   20.544000] br0: port 2(rai0) entering learning state
[   20.556000] br0: port 2(rai0) entering learning state
[   20.564000] br0: port 1(ra0) entering learning state
[   20.576000] br0: port 1(ra0) entering learning state
[   21.536000] br0: port 3(eth2) entering forwarding state
[   21.556000] br0: port 2(rai0) entering forwarding state
[   21.576000] br0: port 1(ra0) entering forwarding state
[   23.056000] eth2: no IPv6 routers present
[   24.204000] udevd version 125 started
[   25.212000] ra0: no IPv6 routers present
[   27.644000] tntfs: fail_safe is enabled
[   27.676000] Filesystem becomes casesensitive with UTF-8
[   30.264000] rai0: no IPv6 routers present
[   30.600000] apclii0: no IPv6 routers present
[   30.688000] eth2.1: no IPv6 routers present
[   30.952000] eth2.2: no IPv6 routers present
[   31.168000] br0: no IPv6 routers present
[   32.048000] RTMP_TimerListAdd: add timer obj c00f4530!
[   32.060000] RTMP_TimerListAdd: add timer obj c00f4718!
[   32.068000] RTMP_TimerListAdd: add timer obj c00f4744!
[   32.080000] RTMP_TimerListAdd: add timer obj c00f48e8!
[   32.088000] RTMP_TimerListAdd: add timer obj c00f4560!
[   32.588000] RTMP_TimerListAdd: add timer obj c01091ec!
[   32.620000] AP SETKEYS DONE - WPA2, AuthMode(7)=WPA2PSK, WepStatus(6)=AES, GroupWepStatus(6)=AES
[   32.620000] 
[   33.100000] apcli0: no IPv6 routers present
[   36.272000] RTMP_TimerListAdd: add timer obj c0109228!
[   37.132000] Rcv Wcid(1) AddBAReq
[   37.140000] Start Seq = 0000000f
[   37.144000] RTMP_TimerListAdd: add timer obj c010affc!
[  259.508000] [vs_set_hdd_work_status,1461] cmd->cmd_len = 6
[  259.508000] [vs_set_hdd_work_status,1464] cmd[0] = 0x1b
[  259.508000] [vs_set_hdd_work_status,1464] cmd[1] = 0x0
[  259.508000] [vs_set_hdd_work_status,1464] cmd[2] = 0x0
[  259.508000] [vs_set_hdd_work_status,1464] cmd[3] = 0x0
[  259.508000] [vs_set_hdd_work_status,1464] cmd[4] = 0x0
[  259.508000] [vs_set_hdd_work_status,1464] cmd[5] = 0x0
[  953.000000] Rcv Wcid(1) AddBAReq
[  953.008000] Start Seq = 00000000
[  961.092000] Rcv Wcid(1) AddBAReq
[  961.096000] Start Seq = 00000002
[  961.104000] AP SETKEYS DONE - WPA2, AuthMode(7)=WPA2PSK, WepStatus(6)=AES, GroupWepStatus(6)=AES
[  961.104000]

Wondering if anyone has perhaps taken a peek at this? BTW: If this is in fact rt305x, what are the chances of successfully flashing without bricking? I think the big concern would be obtaining the original firmware to flash back to. But would this be as 'simple' as figuring out the boot sequence for TFTP and then TFTP-flashing with one of the rt305x firmwares out there?

This is MT7620, ie. ramips/mt7620 target can support this hardware.