User Tools

Site Tools


content:meshextender:prototyping_on_mk808

This is an old revision of the document!


2nd Generation Mesh Extender Prototype Platforms

This page is for concepts for 2nd generation prototype intended to address the physical size, physical robustness, slowness issues of the 1st generation. It is also hoped that power consumption may be similar or lower than on the 1st generation through more integration in the Android stick PC platforms being considered, but it accepted that power consumption will initially be higher.

The following are concepts being considered:

MK808B Android Stick PC + RFD900 Radio

Pros:

  1. Much faster CPU and lots of internal storage for Rhizome
  2. Much smaller size than equivalent components in 1st generation
  3. Android based, so power management is probably pretty good (but remains to be tests)
    1. Rooted ROMs are available, and it is easy to replace ROMs:

Cons:

  1. Wi-Fi probably can't do ad-hoc at the same time as AP mode, so:
    1. no ad-hoc meshing when in close range with another Mesh Extender
    2. no connection by ad-hoc mode phones
  2. It runs Android instead of a bare Linux OS, making life a bit more complicated and development slower.
  3. It might end up using a lot of power, since the 808B isn't intended to be battery powered.

Flashing ROMs on the MK808b

Linux/Mac Based

The default flashing tool runs on Windows, which is not convenient for us on Linux/Mac. But it is apparently possible to install ClockworkMod Recovery, and flash ROMs using that:

http://blog.geekbuying.com/index.php/2013/03/22/how-to-upgrade-your-mk808b-to-android-4-2-os-with-cwm-recovery/

The actual Clockwork Recovery installation is as easy as copying the CWM zip to a microSD card, renaming it update.zip and rebooting your MK808b.

There after you can reboot into recovery when needed to flash ROMs from the microSD card. To be confirmed is whether you need to press the reset button to reboot into recovery, whether it boots into recovery by default and other such fine points.

Windows-Based

The RKBatchTool allows the flashing of several devices at once from Windows. Some versions are in Chinese, but the one included in the RK808/RK808B ROM from the following link is in English, and easy to use.

http://www.armtvtech.com/armtvtechforum/viewtopic.php?f=111&t=1402

Potential ROMs for MK808B-based Mesh Extender Prototypes

We need CP210x serial support, and Wi-Fi hotspot, and ideally simultaneous Wi-Fi access point operation. “Monitor and operate” could probably do in place of simultaneous ad-hoc. Hotspot only would do in a pinch.

Also, it is rumoured the RK903-based version of the MK808B has terrible Wi-Fi performance due to poor ground separation from USB. That would be very annoying.

On the positive side, the stock rom includes Access Point mode support from in the Android menus.

Don't forget on Android 4.2.2+ devices (like the MK808b) you need a recent version of adb that supports RSA authentication, else the device won't show up. See http://developer.android.com/tools/help/adb.html for more details.

CP210x drivers aren't included by default. Will try FTDI usb serial adapter soon.

Might be possible to build these drivers is missing using the technique described in http://forum.xda-developers.com/showthread.php?p=17020258

Hybryd (Based on the Minix Neo X5 ROM)

This looks like an interesting ROM for the RK903 based versions of the MK808B, which is what I have. This ROM comes with ftdi and cp210x usb-serial drivers included:

http://www.armtvtech.com/armtvtechforum/viewtopic.php?f=111&t=1402

But Wi-Fi/Bluetooth support uncertain. Wi-Fi seems to work in the lab in client mode. Hotspot mode to be tests.

MK802ii

This is the older generation of the same device. It runs @ 1GHz with an older core, lacks Bluetooth and depending on the version has either 512MB or 1GB RAM. Certainly enough for what we need.

Putting a Debian image on is easy: http://romanrm.ru/en/a10/debian I didn't get that one to work, so instead grabbed lubuntu 12.04 from: https://www.miniand.com/forums/forums/2/topics/1 lubuntu is much bigger than I wanted, but for testing will be fine.

Basically this device will boot from an OS put on a microSD card, making life very easy.

It also comes stock with a rooted Android 4, which if it can be made to see a USB2serial adaptor would be sufficient for our needs. Alternatively, we could even try using the onboard serial port on the device. The complication there is that it is already used for boot/console, so we would need to get a bit creative. Also it lacks hardware flow control.

Nonetheless, we will try the on-board serial port as an easier option than finding the usb serial drivers for the Android installation that comes with the unit.

Onboard Serial Port

Serial port wiring for the MK802ii can be found at:

http://www.rikomagic.co.uk/forum/viewtopic.php?f=6&t=2488

The pads are very tiny.

To connect the serial port to an RFD900 radio:

RFD900 | MK802ii
1 GND  | GND
3 CTS (joined to RTS on pin 11) | Not connected
5 +5V  | Not connected
7 RX   | TX
9 TX   | RX
11 RTS (joined to CTS on pin 3) | Not connected

The serial console defaults to 115200bps.

With a cable like that and the RFD900 set to 115200 serial rate, I was able to watch the serial console on boot. Then my serial port leads broke because the glue holding the serial connector on the MK802ii broke.

Anyway, it looks like it should work (not counting the untested power consumption and Wi-Fi performance).

USB Serial (FTDI or CP210x)

Both of these work with the lubuntu 12.04 distribution out of the box.

To connect the RFD900 to a CP210x, you just need GND, +5V, TX and RX lines – there is no hardware flow control by default on the RFD900 or CP210x, so no need to hook up the extra lines.

With this we were able to talk to the RFD900 easily from our MK802ii.

Radio Modules & Antennae

RFD900 radios are AUD$62 wholesale (orders above 20 or so units, but check with RFDesign before ordering).

From an antenna perspective, we are keen to have two antennae for diversity, and to orient these antennae at 90 degrees to each other, so that orientation of the Mesh Extenders is less critical, e.g., when being carried by hand, in a back-pack or in a vehicle. The idea is to make it as easy to use as possible.

Flexible strip dipole antennae

Of the antenna options that rfdesign stock, the dipoles have much better performance due to ground-independence (less local noise induced on the receiver) and reduced transmission losses through reflection. The flexible PCB dipoles (http://store.rfdesign.com.au/rfdflex1-900mhz-flexible-pcb-antenna-no-cable/) are probably the best. These are $7.95 each, plus coax cable and connectors, cost to be determined.

A coax cable solution is probably to buy one of these cables (http://store.rfdesign.com.au/rf-cable-sma-m-srflex-sma-m-30cm/), and chop it in approximate halves. That is a cost of $6.45.

That makes total radio cost $62 + $7.95 + $7.95 + $6.45 = about AUD$85 in quantity.

Corner-mounted monopole antannae

content/meshextender/prototyping_on_mk808.1366672162.txt.gz · Last modified: 22/04/2013 16:09 by Paul Gardner-Stephen