OpenWrt Forum Archive

Topic: Support for EnGenius ENS202EXT

The content of this topic has been archived on 4 May 2018. There are no obvious gaps in this topic, but there may still be some posts missing at the end.

Hi all,

I have here several EnGenius ENS202EXT access points and I want to make OpenWrt work on it.
I already collect some information and put it on a page for the table of hardware but still lot to do.

What I make work so far is an image that can boot linux, controlling the leds, can read the (reset) button, and 1 working ethernet port.
The second ethernet port doesn't work on the moment but have maybe to do with set the right settings in the ethernet switch of the AR9341.
Wifi I can't test on the moment with this image.

But now I'm a little bit stuck what to do next.
Is it a good idea to submit already (somewhere) the patches I made for the linux kernel? if yes, where / how?
I already play around with the OpenWrt build scripts / target configurations and manage to create a test image for the ENS202EXT but this is far from good.
Now I'm a bit lost where to start to get the scripts / configurations right. What is the best way to follow to support this device that I easy can create an image including LuCi, etc?

Google ens202ext openwrt and you find a couple of hits hinting that an ens202ext openwrt image was already made and commercially used awhile back. One site offered for free but crippled ware, I think. It claims to be able to flash directly from the stock firmware GUI and back to stock firmware via GUI, not requiring telnet or console.

Hi,

Did you get any further with the ENS202EXT? I'm looking to use openwrt with it, but cant find any firmware anywhere.

I just bought a couple of these. I have spent a total of about half an hour with it, but it appears that they are already running a modified version of OpenWRT. It seems to be using a "skinned" and customized version of LUCI, but there does not seem to be a way to enable ssh. There is a "CLI" that is accessible via Telnet, but it's a specialized shell that allows only the options enabled in the web interface.

The big clue that it's a modified OpenWRT underneath, however, is provided by using the firmware upgrade command "fwgrade" in the CLI, which responds:

Recognized URL format:  string    EX: http://192.168.1.101:8080/openwrt-senao … 40811).bin

What remains to be seen is how to flash "normal" OpenWRT onto them.

Hi,

After some months I picked up again to port OpenWRT for the ENS202EXT.
Currently I have a working version here. The only thing where I'm struggling with is the way OpenWRT building environment build the files (the factory upgrade and the sysupgrade)
I have basically 2 choices in the /target/linux/ar71xx/image/Makefile
- $(eval $(call SingleProfile,Senao,squashfs-only,ENS202EXT, ....
- $(eval $(call SingleProfile,EnGenius,64k,ENS202EXT, ....

The first choice give me a good factory upgrade image but a not working sysupgrade image. Because when I flash the sysupgrade image the kernel and rootfs have a 64KB offset in the flash (the sysupgrade file header is flashed too to the flash) and the rootfs can't be find in the flash because it have to be flashed into the next mtd part and not 64KB aligned after the kernel what if i'm right the /scripts/combined-image.sh is responsible for.

The second choice give me a good sysupgrade image but a not working factory upgrade image. This is because the factory image that is produced by the Makefile with the EnGenius profile isn't the same format for the ENS202EXT.

I have a solution and created my own profile and combined from the Senao and the EnGenius profile the scripts together to create a working factory upgrade and a sysupgrade image. But if possible I don't want to add a new profile type to the Makefile if it isn't really necessary. Does anybody have any idea for it what is the right way to do?

For the rest I really like to share my patches with everybody who are interested in it but have to find out what is the right way to follow without making a mess wink And because that I started with creating the patches for OpenWRT 15.05 maybe it is better to create them first for the OpenWRT Designated Driver.

The last few time I tried the openwrt firmware for engenius eap300, it work but after a sysupgrade, it completely bricked the device. Recently, I downloaded the snapshot firmware and still it is the same. Will this happen to the ens202ext too as what you explained? I have enough bricked engenius devices, until someone post instruction how to de-brick it : Till date, the eap300 has sort became a brain dead project with no support. : (

https://dev.openwrt.org/ticket/18016

Thanks for your information Maddymal. It shine some light on why the Senao profile for creating files doesn't work for me. I can if you want create a factory and a sysupgrade file the same way I now do for testing my ens202ext for your eap300. Or if you can build OpenWRT yourself I can send you a patch.

I believe the eap300 and the ens202ext are on the software side mostly identical and I think de-brick it would be then the same.
I can de-brick my ens202ext by connect a serial terminal to it and power up the device and press a key when it tell that it will stop the autoboot.
Then I give the following commands:

  • setenv rootfs_checksum

  • saveenv

  • reset

Then the bootloader will fail the rootfs_chechsum check and will start it's failsafe image. This failsafe image will start a simple webserver that accept the firmware files from EnGenius and the openwrt-factory image.

If I'm right there is a second method to de-brick the device and that is power on the device while the reset button is pressed and hold. The bootloader then try to download from a TFTP server with IP 192.168.1.101 the file 'vmlinux-art-ramdisk'. I don't have this file but my feeling tell me that it can be the binary dump of the failsafe MTD partition to make the device boot.

Hi Gerard, thanks! After reading your message, I decided to dig out out the bricked eap300s and give it another try. I do not have a serial cable and I read somewhere you need a jtag and serial cable to work. I google and tried to purchase one and realized there are tons of these devices and I have no idea what should I be getting and the decent ones cost 50 bucks and above!

I decided to check out easywrt again because you mentioned vmlinux-art-ramdisk and I once read about it there - https://www.easywrt.com/downloads - What is a ramdisk?

I finally decide to try out their method of de-bricking above your suggested solution because:

- I do not know whether I will have the right tools after paying 50 bucks and having to open up the devices which i dread doing so, and those commands you mentioned seems a bit challenging for me, like where, when and how do i enter those commands?

I downloaded the vmlinux-art-ramdisk from easywrt and followed the instruction in the "what is a ramdisk?" and my eap300 shot back to life! I reluctantly paid 15 bucks (Damn! Used to be only 7 bucks!) to receive an activation code which I pasted it when prompted, and I finally got into the openwrt GUI. I flashed easywrt eap300 openwrt firmware and also the engenius firmware and both works! Finally, it came back to life.

I tried to use the activation code on the other bricked eap300 but it did not work. The code seems to work on specific MAC address. Heck, I spent another 15 bucks for another activation code for the other eap300 and it similarly work like the earlier one.

In summary, I spent 30 bucks to revive both eap300, compared to 50 bucks which I have the least slightest clue of knowing how to do so and unscrewing the device. I comfort myself it was worth it. This will be the last time I will be tempted to try a firmware from the openwrt download section.

Nevertheless, thank you Gerard for your nice gesture and suggestions.

(Last edited by maddymal on 15 Mar 2016, 22:15)

How can we add a build to OpenWRT for the ENS202/ENS202EXT (and maybe other Engenius models)? Why does EasyWRT have those images but they are not on downloads.openwrt.org?

Huh. Now, there's a question that hit the board with a dull thud. Clearly there is something here I just don't understand. I would be grateful if someone could enlighten me.

I think EasyWRT make their images by them self and want make some money with it.
I made support for the ENS202EXT myself for the device I own but pity enough I don't have to much time to work at this and it look like the interest in this device(s) is also not to great.
But if anyone is really interested to work on it too I'm happy to share what I have for now.

Please,  if you could share how you built the image I would be grateful.  I'm still figuring out how to manipulate the build system, and learning how to add a new board would be useful for me.

gerard81 wrote:

I think EasyWRT make their images by them self and want make some money with it.
I made support for the ENS202EXT myself for the device I own but pity enough I don't have to much time to work at this and it look like the interest in this device(s) is also not to great.
But if anyone is really interested to work on it too I'm happy to share what I have for now.

If you don't mind I could help with that. I've already got a mostly working port for the ENS200 (need a new one, I busted my ART partition before I knew what it was hmm) and I have an ENS202EXT on hand (need to get some pin headers and solder before I do the real low-level testing, though.)

The discussion might have continued from here.