Port to TP-Link RE200

Interesting - what do you need it for if you can install OpenWrt via the web interface?

just to make tests with the original firmware.

Granted, it's easier than opening the case and attaching serial console :slight_smile:

question: for testing, I uploaded using tftp busybox-mips in /tmp
but it does not seem to work.
any clues?
another interesting thing is the shellc ommand flash which operates on the ralink internal spi-flash I think that is the key to enable/modify the maximum txpower level of wifi. I will dig it more.

Just for update, i got my Archer c2
(kind of topic) working fine repeating the signal connected to my router with 5g and create 2g access point with different ip range like i want, and this is enough to separate clients, so no cast to wrong tv anymore. At this point it solve my problem, and i do this for testing purpose to check the stability, and for now it working very good. Next week i will do with RE200.

Thank you so much for your help!

After installing the latest snapshot, I ran into the issue described in Jffs2 partition not save new package installation or save settings. Building firmware myself from commit 8df14c229c02a3b9329afc6e3ebf4f8aec5b59ed and installing it solved the problem.

Hello, i made openwrt image from windows without luci, now i finded openwrt with luci. How to update from openwrt to openwrt?

how to flash it from openwrt without luci

or how back to stock, only via TTL? Please help me

  1. We don't know what device you have.
  2. Read this thread and the Wiki. It's all in there.

How to flash from command line: https://openwrt.org/docs/guide-user/installation/sysupgrade.cli

Alternatively: install luci from command line:

opkg update
opkg install luci

How you would flash via TTL if you can't find the upgrade from cli procedure in the wiki by googling - no idea...

@andyboeh Is there a roadmap / todo list for getting a stable release for the re200? Or will it happen automatically now, once the next release is made?

It's in trunk, so it will get a stable release automatically once a new OpenWrt release is out. That's how OpenWrt releases work.

1 Like

I tested flashing a modified openwrt-ramips-mt76x8-tplink_re200-v2-squashfs-factory.bin on RE200 V3 form stock webgui . Seems to be working . What do we need to do to get v3 in the wiki page for RE200?

@Flole was working on the v3, a bit of information should be in this thread. I had a longer private discussion with him and we even created a shared .dtsi in order to make it easier to support the v3. IIRC, the main difference are the LEDs and the safeloader definitions to enable installation from stock Web UI. I do not know if he has already created a PR on github or submitted the changes to the mailing list.

Regarding the Wiki: It's a Wiki, so you can add it to the Wiki on your own.

Create a patch / Pull Request to get your modifications into OpenWrt master.

Once RE200 v3 support has been added, it will appear on the RE200 devicepage shortly after.

OK , I need to figure GPIO mapping for RE200-v3 since is not 100% matching v2 (besides the missing 2nd red led). Then I will patch/pull

Could you please give the steps you followed to create that modified openwrt-ramips-mt76x8-tplink_re200-v2-squashfs-factory.bin? Either as a message here or at the wiki. I don't really mind the LEDs and I would like to set mine up ASAP. Thank you!

Sorry for long post..

(1): patch for tplink-safeloader.c: (src is on https://github.com/lede-project/source/master/tools/firmware-utils/src/)


--- tplink-safeloader.c 2020-03-17 12:45:34.557111063 -0400
+++ tplink-safeloader.c.new     2020-03-13 14:19:01.103578167 -0400
@@ -1479,6 +1479,51 @@
                .last_sysupgrade_partition = "file-system"
        },
 
+  /** Firmware layout for the RE200 v3 */
+       {
+               .id     = "RE200-V3",
+               .vendor = "",
+               .support_list =
+                       "SupportList:\n"
+         "{product_name:RE200,product_ver:3.0.0,special_id:00000000}\n"
+         "{product_name:RE200,product_ver:3.0.0,special_id:45550000}\n"
+         "{product_name:RE200,product_ver:3.0.0,special_id:4A500000}\n"
+         "{product_name:RE200,product_ver:3.0.0,special_id:4B520000}\n"
+         "{product_name:RE200,product_ver:3.0.0,special_id:43410000}\n"
+         "{product_name:RE200,product_ver:3.0.0,special_id:41550000}\n"
+         "{product_name:RE200,product_ver:3.0.0,special_id:42520000}\n"
+         "{product_name:RE200,product_ver:3.0.0,special_id:55530000}\n"
+         "{product_name:RE200,product_ver:3.0.0,special_id:41520000}\n"
+         "{product_name:RE200,product_ver:3.0.0,special_id:52550000}\n"
+         "{product_name:RE200,product_ver:3.0.0,special_id:54570000}\n"
+         "{product_name:RE200,product_ver:3.0.0,special_id:45530000}\n"
+         "{product_name:RE200,product_ver:3.0.0,special_id:49440000}\n"
+         "{product_name:RE200,product_ver:3.0.0,special_id:45470000}\n",
+
+               .support_trail = '\x00',
+               .soft_ver = NULL,
+
+               .partitions = {
+                       {"fs-uboot", 0x00000, 0x20000},
+                       {"firmware", 0x20000, 0x7a0000},
+                       {"partition-table", 0x7c0000, 0x02000},
+                       {"default-mac", 0x7c2000, 0x00020},
+                       {"pin", 0x7c2100, 0x00020},
+                       {"product-info", 0x7c3100, 0x01000},
+                       {"soft-version", 0x7c4200, 0x01000},
+                       {"support-list", 0x7c5200, 0x01000},
+                       {"profile", 0x7c6200, 0x08000},
+                       {"config-info", 0x7ce200, 0x00400},
+                       {"user-config", 0x7d0000, 0x10000},
+                       {"default-config", 0x7e0000, 0x10000},
+                       {"radio", 0x7f0000, 0x10000},
+                       {NULL, 0, 0}
+               },
+
+               .first_sysupgrade_partition = "os-image",
+               .last_sysupgrade_partition = "file-system"
+       },
+
   /** Firmware layout for the RE305 v1 */
        {
                .id     = "RE305-V1",

(2): compile: cc -o tplink-safeloader tplink-safeloader.c md5.c -Wall --std=gnu99
(3): unpack the v2 firmware : ./tplink-safeloader -x openwrt-ramips-mt76x8-tplink_re200-v2-squashfs-factory.bin -d openwrt-ramips-mt76x8-tplink_re200-v2-squashfs-factory-unpack
(4): pack v3 ../tplink-safeloader -B RE200-V3 -k os-image -r file-system -o ../openwrt-ramips-mt76x8-tplink_re200-v3-squashfs-factory-testcgm.bin

It worked for me, if is failing to boot you might need to crack it open and use serial interface..

2 Likes

It worked perfectly, you are a savior! I had all kinds of weird ethernet issues in my home network, and after much trial and error I found out they were gone if I disconnected this device. Now, thanks to openwrt I can use it again, this time with no mysterious network disruption.
After flashing the firmware through the web UI I had to manually configure an internet connection through SSH (editing /etc/config/network), then install LuCI and finally configure the wifi. Took some effort but it paid off in the end!