They use 1.8 v for serial ? Wtf
They seem to have saved the expense for an onboard level shifter. TP-Link already did the same for the archer c2600 (ipq8064) in the past.
Well, that saved them couple of cents.
So my fake FT232RL worked fine on AX3600, FTDI datasheet claims 5V/3.3V/2.8V/1.8V
mine has only 3.3 and 5v jumper... does 3.3 work with 1.8?
Mine too, I always keep it at 3.3V, but it appears to work with 1.8V as well.
Its just a cheap generic chinese red clone.
There are basically two options:
- a 1.8V capable usb2serial adapter, some FTDI FT232RL based ones support this explicitly (e.g. DSD TECH SH-U09C2 and several slightly cheaper noname clones)
- a dedicated level shifter, like on https://openwrt.org/toh/tp-link/tp-link_archer_c2600_v1#serial
Xiaomi ax3600 ssh guide - #24 by barnamacko appears to be a more robust approach than modifying each new firmware update.
The one sold on aliexpress is the chinese one or the international? From what i can see only the chinese version is unlockable and I can unlock the serial access
@slh what happen if I connect a 3.3 to a 1.8v ?
Mostly the chinese version, I think - the global version is still rather new and scarce, and usually the vendors are very vocal about it as a feature (which is correct for the ordinary enduser, as the chinese version only offers a chinese language webinterface).
Something between garbled output/ input (if you're very lucky, it just works) and magic smoke escaping.
(since i will buy it only to put openwrt it.. not a problem for me :D)
for that little voltage difference magic smoke I don't want to buy another serial converter uff...
A level shifter seems to start around 2 EUR delivered, a 1.8V compliant FTDI FT232RL usb2serial adapter around 7 EUR. Very personally, for convenience reasons alone, I'd favour the later (actually I did already buy one for this reason, even though I have not clicked 'buy' on the ax3600, …yet).
i have an FTDI FT232RL but the selector is only 3.3v / 5v... in the site 1.8v is supported so ???? i'm confused
If You are planningg to spend $90 just spend $2 more, just to be sure, and LLC might come in handy in future
guys you must know if flash int firmware wifi strength signal will not decrease confirmed info from 4pda wifi signal strength is powered by software not hardware global vs chinese version
@Frifox That was expected since European legislation regulates the maximum of radiation outputted by the devices. The extra signal strength might me a reason to stick with the Chinese firmware, mainly for the 5Ghz. But when available and if it can be flashed by INT firmware each can perform an evaluation, for smaller houses might not be such a problem (and it’s healthier too).
@Ansuel: if you have FT232RL chip it's best to buy TXS0108E module 8 Channel bidirectional LLC converter (for about 1€) , then you can safely use your old hardware and have serial for 1.8V
Has anybody observed significant amount of retries while connected over 5G WiFi? I am wondering whether this is 'feature' of my device or something general.
Firmware 1.0.67
Tested with iperf3 between WiFi client and Ethernet client.
Same test Ethernet to Ethernet has 0 retries.
Verified with plain Xiaomi image with the following settings for 5G WiFi:
- AX3600 in wired bridge mode
- other radios disabled
- pure WiFi 6 (no compatibility mode)
- pure WPA3
- channel auto
- 160/80/40/20 MHz
Result:
wifi :: ~ » iperf3 -c copper
Connecting to host copper, port 5201
[ 5] local 10.10.10.1 port 58718 connected to 10.10.10.10 port 5201
[ ID] Interval Transfer Bitrate Retr Cwnd
[ 5] 0.00-1.00 sec 65.5 MBytes 550 Mbits/sec 0 1.34 MBytes
[ 5] 1.00-2.00 sec 96.2 MBytes 807 Mbits/sec 245 1.53 MBytes
[ 5] 2.00-3.00 sec 108 MBytes 902 Mbits/sec 0 1.63 MBytes
[ 5] 3.00-4.00 sec 105 MBytes 881 Mbits/sec 0 1.71 MBytes
[ 5] 4.00-5.00 sec 105 MBytes 881 Mbits/sec 39 1.27 MBytes
[ 5] 5.00-6.00 sec 100 MBytes 839 Mbits/sec 0 1.34 MBytes
[ 5] 6.00-7.00 sec 101 MBytes 849 Mbits/sec 0 1.39 MBytes
[ 5] 7.00-8.00 sec 101 MBytes 849 Mbits/sec 0 1.43 MBytes
[ 5] 8.00-9.00 sec 93.8 MBytes 787 Mbits/sec 0 1.46 MBytes
[ 5] 9.00-10.00 sec 102 MBytes 860 Mbits/sec 0 1.51 MBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bitrate Retr
[ 5] 0.00-10.00 sec 978 MBytes 820 Mbits/sec 284 sender
[ 5] 0.00-10.01 sec 977 MBytes 818 Mbits/sec receiver
iperf Done.
Edit: Looks like visible only with 160MHz bandwidth or high troughput (ax200 card). With other card connected with 80MHz there are below 20 retries per 5 GBytes of transferred data.
returning back to the beggining of the thread...
I tried to use this link in order to find the firmware from the CDN
the good news is I've managed to understand how to calculate the s= field and I get in return 200 (OK) responses for my requests.
the bad news is that even if I do this request to "previous" version (3.0.15 on earlier) it doesn't seem to return 3.0.16 firmware as an upgrade.
it is important to mention that I used the same technique from the chinese CDN and I managed to get 1.0.67 link, so it seems that the problem is that 3.0.16 doesn't exist at all in the CDN.
I am pasting the script here if someone wants to take a look. I hope that it'll work on the future when a new INT firmware will be released.
import requests
import datetime
import base64
import hashlib
DEFAULT_TOKEN = "8007236f-a2d6-4847-ac83-c49395ad6d65"
LINK = 'http://sg.api.miwifi.com/rs/grayupgrade'
def md5_base64(data):
b64_data = base64.b64encode(data.encode())
return hashlib.md5(b64_data).hexdigest()
def calculate_s(params_to_hash):
params_sorted = {k: v for k, v in sorted(params_to_hash.items(), key=lambda item: item[0])}
params_str = ''
for k, v in params_sorted.items():
params_str += f'{k}={v}&'
params_str += DEFAULT_TOKEN
result = md5_base64(params_str)
print(result)
return result
def main():
now = datetime.datetime.now()
params_to_hash = {
"countryCode": 'EU',
"rom": '3.0.16',
"serialNumber": 'my_serial_number',
"rootfs": '0.0.1',
"cfe": '1.0.2',
"deviceID": 'my_device_id',
"ispCode": '',
"linux": '4.4.16',
"sqafs": '0.0.1',
"hardware": 'R3600',
"locale": 'en_US',
"ramfs": '0.0.1',
"channel": 'release',
'time': now.strftime('%Y-%m-%d---%H:%M:%S')
}
params_to_hash['s'] = calculate_s(params_to_hash)
params_to_hash['token'] = DEFAULT_TOKEN
response = requests.get(LINK, params=params_to_hash)
if response.ok:
print(response.text)
else:
print("invalid token")
if __name__ == '__main__':
main()
UPDATE:
it worked as kokesan mentions the new INT link according to the API:
{"code":"0","data":{"needUpgrade":true,"size":31728232,"changelogUrl":"https://cdn.alsgp0.fds.api.mi-img.com/miwifi/4fa89995-0d6f-41c3-8aae-e0dc41280fe2.html","link":"http://cdn.alsgp0.fds.api.mi-img.com/xiaoqiang/rom/r3600/miwifi_r3600_all_6510e_3.0.22_INT.bin","description":"","weight":"1","upgradeId":"419","hash":"6fff38bccffd94866335c9ae30b6510e","toVersion":"3.0.22"}}
From Russian Telegram forum
http://cdn.awsde0-fusion.fds.api.mi-img.com/xiaoqiang/rom/r3600/miwifi_r3600_all_6510e_3.0.22_INT.bin
Thanks Ivan Kozub
Many thanks for this great link...
Do you know anything about the compatibility of the international firmware on the chinese device?
The xqrepack script runs fine so far, I'm grepping throught the extracted rootfs for now...