Supporting ZSUN Wifi Card Reader (16MB Flash, 64MB RAM, AR9331)

My view is this. Openwrt should officially support wifi only devices without or with limited buttons.

The easiest way to do this is obviously to start it with unprotected wifi at boot. If this for any of the previously stated reasons is deemed too unsafe (I think this is hilarious to even say about this kind of device, imho) then the next easiest solution need to be thought out.

A second alternative could be to use the sdcard and let the user insert a well formatted file that has the password of the wifi which is then brought up when that file is found and properly parsed.

Since there are other devices that has fat included generically, that should not be too big of a hurdle to overcome.

These are the two top alternatives if you ask me, one is easy but "unsafe" and one is slightly harder but safer.

This does not seem to be a scenario where you ask, get permission and then someone accepts your solution. If someone has the know how to make the second alternative a reality, then go for it. Then when its done and works, only then do we argue for that it should be included officially. Its much harder to argue against something that actually works and is safe(r).

/J

I wonder if a suitable compromise would be to include this in the source but not build the images for distribution?

That way it could be “supported” but at the same time the issue of enabling WiFi by default on a WiFi only device could be up to the user who compiles the source to solve in a manner of their choosing.

1 Like

It does appear that the ebay/ali listings have all disappeared. I found the manufacturer of these a while ago:

https://shop62776877.taobao.com/

Goonas had an indiegogo for this https://www.indiegogo.com/projects/ladrive-my-first-indenpendent-private-cloud-server#/

Which looks similar to the zsun on the inside https://fccid.io/2AKBN-LC180/Internal-Photos/03-internal-photos-3196265

The Eaget A50 is a rebrand for $13

This style are all over ebay but it could be different hardware. Likely the MT7688AN as with this device, who knows.

I think starting with an open wifi network is unacceptable because you will likely be entering some password (to join an existing network as client or changing the AP password) and essentially be sending that password over an unencrypted channel.

Start with wifi disabled and pull the password from the SD card is the best solution IMO

1 Like

I setup a 5 nodes OLSR mesh with my Zsun SD100 devices.

1 Like

From a safety stand point I absolutely agree.
From a possibility to eventually get it officially supported I absolutely agree.

It seems the Eaget 50 is a 1:1 copy, the other one is completely different hardware and a bit lower spec iirc.

There is at least one other interesting hardware package that, at least in my use case, would serve as a direct replacement of The zsun/eaget dongle. It is the zoomgo media stick. (Support for ZoomGo Media Stick). That is an entirely different discussion though.

/J

Will it be too hard to offer oficial image builder with options for SSID and password?

I realise that Windol$ users would have a little trouble using it, but getting up a VM with minimalistic Linux is not that hard nowadays.

What should be the correct name? I mean:

As I see in source, the full name usually is something like this:

tplink,wr12345

Where tplink is the board and wr12345 is the boardname.

I think the boardname for ZSUN should be SD100, or A50 for the EAGATE.

However, they are exactly the same hardware. Which board name should we use for all of them? wifisd? :smile:

https://elinux.org/Device_Tree_Usage#Understanding_the_compatible_Property

1 Like

Someone with serial access to zsun could try to flash a special u-boot-env? (Serial access in the case something goes wrong)

The idea

I was thinking about the u-boot-env partition. I supose that it could be used, but the OEM bootloader ignore it (thanks to @maurer for uploading the OEM mtd).

If is possible to set parameters to u-boot, It would be possible to boot kernel from a different location without replacing the bootloader. That mean, a simple way to install OpenWrt without kernel size limitation.

To make sure that it works, the special u-boot-env partitions contains only one parameter: bootdelay=45. If it works, zsun should spent a lot of more time to boot (yes, you right. 45sec. more :wink:). If u-boot ignore that partition, nothing different should happen.

The mtd1 special partition: https://drive.google.com/open?id=1aV6Rl6mUzp5sD7baClN3uyEFPfUrcmyu

Please, use it at your own risk.

1 Like

Serial console access will not help you with a broken bootloader, to fix that you need a full backup of your flash and a spi flasher (for spi-nor flash - NAND is way more complex) - and a soldering iron to remove the flash for reprogramming.

We are talking about modifying environment variables (u-boot-env), not the bootloader itself.

Tried the idea with no luck.

U-Boot 1.1.4 (May 16 2014 - 17:24:30)

AP121 (ar9331) U-boot

DRAM:  64 0
64 MB
Top of RAM usable for U-Boot at: 84000000
Reserving 140k for U-Boot at: 83fdc000
Reserving 192k for malloc() at: 83fac000
Reserving 44 Bytes for Board Info at: 83fabfd4
Reserving 36 Bytes for Global Data at: 83fabfb0
Reserving 128k for boot params() at: 83f8bfb0
Stack Pointer at: 83f8bf98
Now running in RAM - U-Boot at: 83fdc000
Flash Manuf Id 0xef, DeviceId0 0x60, DeviceId1 0x18
flash size 16777216, sector count = 256
Flash: 16 0
16 MB
Using default environment

In:    serial
Out:   serial
Err:   serial
Net:   ag7240_enet_initialize...
Fetching MAC Address from 0x83ff4138
Fetching MAC Address from 0x83ff4138
: cfg1 0x5 cfg2 0x7114
eth0: 00:03:7f:11:56:48
eth0 up
: cfg1 0xf cfg2 0x7214
eth1: 00:03:7f:11:56:49
athrs26_reg_init_lan
ATHRS26: resetting s26
ATHRS26: s26 reset done
eth1 up
eth0, eth1
Hit any key to stop autoboot:  0 
## Booting image at 9feb0000 ...
   Image Name:   Linux Kernel Image
   Created:      2014-12-27   2:50:53 UTC
   Image Type:   MIPS Linux Kernel Image (lzma compressed)
   Data Size:    1071603 Bytes = 1 0
1 MB
   Load Address: 80002000
   Entry Point:  802398a0
   Verifying Checksum at 0x9feb0040 ...OK
   Uncompressing Kernel Image ... OK
No initrd
## Transferring control to Linux (at address 802398a0) ...
## Giving linux memsize in bytes, 67108864

Starting kernel

Will research some other ways...

so you managed to buy a device. is it the eaget a50 ?

Yes, the eaget 150

I assume you got serial access to your eaget, could you please post a picture or two about how you did that? I want to specifically know about how you solved it with the missing rx jumper (I have the later revision), did you need to solder anything, or were you able to connect the hooks straight to something without soldering...

Cheers,
Henrik

It is "relatively" easy to solder a jumper made of one strand of copper wire with something like this https://www.amazon.com/Vastar-Soldering-Iron-Full-Welding/dp/B01712N5C4 but keep the heat low. Otherwise the pas will come out and then you will have to scratch the little track left with an utility knife and solder on that...

Sorry, I broke the device before even trying to use RX :rofl:

I will try to replace the SPI flash with some other chip that is not so close to the board (for easy bootloader recover in the future).

Currently I'm waiting for parts to arrive...

BR

Thanks for letting me know. If anyone has pics on a working rx setup, feel free to post them though =)

And if it is possible to use the hooks without soldering that would be great to know as well.

Cheers,
J

What would I give for a state of the art openwrt 18.06 with image builder for that great little device! :pleading_face:

1 Like