Welcome to my blog! :)

RSS feed: https://blog.orangecms.org/rss

Eport Pro-EP10

2019-05-08 22:44:54
A friend of mine bought us two Eport Pro-EP10s, which are little Serial<->Ethernet devices running Linux on MIPS with 16MB of flash memory and 32MB of RAM. There are some downloads available at http://www.hi-flying.com/eport-pro-ep10 which include an SDK, the manual, a firmware release, and some more stuff. We played around a bit and figured out some details following the manual. Here is a little summary:

First we simply powered the device. Notice it has to be 3.3V, which you can get from some USB<->serial adapters like FTDI ( https://www.adafruit.com/product/284 ). Then we plugged in an ethernet cable, and the interface on our laptop indicated that we were indeed connected. However, the LEDs on the EP10 did not light up. We opened one up to check and saw that the pins are actually not connected. They are the ones at the very end and wiring them up is optional, which the manual also mentions. Anyway, we didn't receive an IP address either although we expected it, so we looked at the manual again to figure out what the EP10's address may be and configured one for our laptop manually. Two possibilities were mentioned in the manual, and for us, one of them worked. Then we quickly ran nmap, took a glance at the web UI, and took notes:

- the IP address of the EP10 is 169.254.173.207
- there are four TCP ports listening by default: 23 (telnet), 80 (web UI), 2323 (some sort of command tool with a login), and 8899 (which outputs to UART0)
- our firmware version is 1.33.5
- our build version is build1808171357333996

As already mentioned, there is a special service on port 8899. So we ran a little experiment: We connected the RX and TX lines to our USB<->serial adapter and fired up both netcat ( nc 169.254.173.207 8899 ) and minicom ( minicom -D /dev/ttyUSB0 ). Note that we are running a Linux kernel on our laptop. On a different kernel/OS, you may need to use different tools, e.g., PuTTY for the serial connection, and choose settings accordingly. Eventually we could type into netcat and saw the output in minicom and vice versa. :)

We also tried connecting through telnet and entered some commands to see what it offers, and we could read and set some IDs, get the firmware version again, restart, and run a few other commands. However, as that wasn't too exciting, we went on with our research.

Apparently, there are some more downloads available from the Baidu cloud, which we couldn't get on with so far because they only offered some extra downloader software for Windows operating systems and we couldn't find an option for a direct download. There are hints on the firmware being based on OpenWrt, so we will look for options to get SSH onto it, maybe Mosquitto for IoT fiddling, and maybe a way to install our own firmware, ideally an actual upstream OpenWrt release.