Release Notes for Serval Mesh 0.90 “Shiny”
This release succeeds
version 0.08 that was released in June 2012.
What is Serval Mesh?
Serval Mesh is an app for
Android 2.2 “Froyo” and above. It provides free,
secure phone-to-phone voice calling, SMS and file sharing over
Wi-Fi,
without the need for a SIM card or a commercial mobile telephone carrier. In
other words, it lets your Android phone call other Android phones running
Serval Mesh within Wi-Fi range.
Warnings
Serval Mesh version 0.90 is EXPERIMENTAL SOFTWARE. It has not yet reached
version 1.0, and is intended for pre-production, demonstration purposes only.
It may not work as advertised, it may lose or alter messages and files that it
carries, it may consume a lot of space, speed and battery, and it may crash
unexpectedly.
Serval Mesh requests
root permission (super-user) on your Android device in
order to put Wi-Fi into
Ad-Hoc mode. If you grant super-user permission to
Serval Mesh, then it will take control of your device’s Wi-Fi and use it to
contact other Serval Mesh devices in the vicinity.
This will cut off normal
Wi-Fi network access.
If your device has no root access or if you deny super-user permission to
Serval Mesh, or if no other Ad-Hoc mode devices are nearby, then Serval Mesh
will revert to using Wi-Fi in the normal Client mode. This should not
interrupt conventional network access, but it could do so. If there is no
nearby access point like a home Wi-Fi router or public hot-spot then Serval
Mesh will put your device’s Wi-Fi into
Access Point mode (turn on personal
hotspot).
This will give nearby devices access to your mobile data plan, and
COULD COST YOU MONEY.
Serval Mesh telephony is a “best effort” service, primarily intended for when
conventional telephony is not possible or cost effective, and MUST NOT BE
RELIED UPON for emergencies in place of carrier-grade communications systems.
The Serval Project cannot be held responsible for any performance or
non-performance of the technologies that they provide in good will, and if you
use these technologies you must agree to indemnify the Serval Project from any
such claims.
The Serval Mesh software copies all files shared using the Rhizome file
distribution service to other phones and devices running the Serval Mesh
software, regardless of size, content or intended recipient. The Serval
Project cannot be held responsible for the legality or propriety of any files
received via Rhizome, nor for any loss, damage or offence caused by the
transmission or receipt of any content via Rhizome.
See the disclaimers below.
What’s new since 0.08
If you have used
version 0.08, the first things you will notice are:
A completely redesigned human interface.
A much smaller APK; faster to download and install.
No need for third-party apps like SMSDroid or WebSMS.
The Main Interface contains a redesigned navigation system:
Call allows you to make calls
Messages allows you to make or view messages
Contacts allows you to see what phones are locally on the Mesh and show your contacts in your Contact List
Maps calls up the Serval Maps interface (if installed)
Share files allows you to share files over our unique Rhizome sharing system, view any received files, see how much storage you are using, or find files shared.
Share Us allows you to share the Serval Mesh software with other users with compatible Android devices.
Settings allows you to adjust any settings (see below)
Switch Off(On) enables you to switch Serval Mesh functionality on or off.
Help is the new support system.
There is a redesigned and more detailed Help System. This contains:
Guide To Interface: A quick guide to the buttons on the Main Interface
Accounts & Contacts: Serval uses Accounts to provide initial identity management. Contacts enables searching for Peers on the Serval Mesh, and adding them to the Contacts list (Android Address Book).
Licence: A link to the GPLv3 Licence used by Serval
Serval Security: Information on the Security features, Permissions used, and the Privacy Policy
About: About the Serval Project - it also leads to the Donate Button, allowing you to support our software development.
Quick Links: Useful links for our software & project
There is a new Settings system.This contains:
Wifi Settings: Allows you to view and change Wifi settings
Accounts Management: View & change various Account settings
View Logs: View the software logs
Redetect Wifi: Redetect the wifi chipset
There have been enormous changes under the hood since 0.08:
Supported Devices
This release of Serval Mesh has been extensively used and tested on the
following devices with no problems:
Huawei IDEOS X1 u8180, running Android 2.2.2 (rooted) and CyanogenMod 2.3.7
HTC Sensation, running Android 2.3.4 (rooted) and HTC Sense 3.0
HTC One S
Motorola Milestone
Prior releases of Serval Mesh are known to work on the following devices, which
is a strong indication that this release may also work:
Huawei IDEOS u8150
Samsung Galaxy Tab 7 inch
Samsung Galaxy Gio S5660, running Android 2.3.6 (rooted)
Samsung Vitality SCH-R720
ZTE Score X500
HTC/Google G1 (“Dream”)
This release of Serval Mesh is known to work on the following devices with
minor problems:
Samsung Galaxy S2 GT-I9100, running Android 2.3 (rooted): Ad-Hoc Wi-Fi is
not completely compatible with the Ad-Hoc Wi-Fi on other devices,
specifically the Huawei IDEOS phones listed above. If the Galaxy S2 is the
first device to join the mesh, then IDEOS phones cannot join. However, if
an IDEOS phone is the first device, then the Galaxy S2 does join okay.
Google Nexus 1: does not interoperate well with HTC/Google G1.
The following devices have major known problems in this or prior releases:
HTC Wildfire A3335
Samsung Galaxy Nexus: Wi-Fi Ad-Hoc mode does not start; Wi-Fi mode reverts
to Off.
Motorola Razr i XT890: Wi-Fi control does not work.
Samsung Galaxy Note 2: does not detect peers. Possibly the same problem
as the Galaxy S2 described above, but not tested.
Known Issues
The following issues are planned to be fixed by version 1.0:
Poor support for multi-hop mesh calls – see
serval-dna issue #37. You
can successfully call someone who is within Wi-Fi range of your phone, but
calls that need to be carried through intermediate phones are unreliable.
Rhizome slowly and gradually consumes all space on your SD Card as you send
and receive files – see
batphone issue #8 and
serval-dna issue #10.
You can work around this by deleting the Rhizome database while the Serval
Mesh app is not running, or by re-installing the Serval Mesh app. To delete
the database, use the
adb shell command:
rm -r /sdcard/Android/data/org.servalproject/files/rhizome
Mesh call quality degrades whenever Rhizome file or MeshMS transfers are in
progress – see
serval-dna issue #1.
Voice call quality is unstable and relatively untested. The inefficient
codec used by VoMP consumes more bandwidth than necessary. There is no echo
cancellation, so echo may have to be controlled by lowering speaker volume
or using earphones. Audio latency (delay) might exceed one second in some
situations.
Every time a new MeshMS message is added to a thread, the size of the
message transmitted by Rhizome increases, because it re-transmits all the
prior messages in the same thread. So every message thread will consume
more network bandwidth and SD Card space as it grows – see [serval-dna
issue #28][]. This can be worked around by deleting the Rhizome database as
described above.
After using the “Unshare” button on a Rhizome file, it does not disappear
from the Rhizome file list – see
batphone issue #53. Work around:
close the list (Back control) and re-open it (“Find” button).
Copyright and licensing
Serval Mesh is
free software produced by the
Serval Project and many
contributors. The copyright in all source code is owned by Serval Project
Inc., an organisation incorporated in the state of South Australia in the
Commonwealth of Australia.
Acknowledgements
Disclaimer
SERVAL MESH refers to the software, protocols, systems and other goods,
tangible and intangible produced by The Serval Project, Serval Project, Inc.,
and Serval Project Pty Limited.
SERVAL MESH COMES WITH NO WARRANTY, EXPRESSED OR IMPLIED, AND IS NOT FIT FOR
MERCHANTABILITY FOR ANY PURPOSE. USE AT YOUR SOLE RISK.
SERVAL MESH WILL REDUCE THE BATTERY LIFE OF DEVICES ON WHICH IT RUNS.
SERVAL MESH MAY CONSUME ALL STORAGE, both LOCAL and EXTERNAL (eg, MICRO SD
CARD) ON THE DEVICES ON WHICH IT RUNS.
SERVAL MESH SHOULD NOT BE INSTALLED ON DEVICES WHICH ARE DEPENDED UPON FOR
EMERGENCY COMMUNICATION.
SERVAL MESH MAY TRANSMIT SOME DATA, INCLUDING TELEPHONE CALLS, MESSAGES AND
OTHER POTENTIALLY PRIVATE DATA IN THE CLEAR.
SERVAL MESH PROTECTIONS against IMPERSONATION or OTHER MISAPPROPRIATION of
IDENTITY ESTABLISHING FACTORS MAY BE DEFECTIVE and MAY NOT PERFORM AS EXPECTED.
SERVAL MESH SHOULD NOT BE RELIED UPON IN AN EMERGENCY is it is an INCOMPLETE
PROTOTYPE and BEST EFFORT in nature, and may FAIL TO OPERATE.
SERVAL MESH may COST YOU MONEY if you have a MOBILE DATA PLAN by allowing
NEARBY DEVICES TO USE YOUR DATA PLAN WITHOUT YOUR KNOWLEDGE OR CONSENT.
SERVAL MESH may REVEAL AND/OR BROADCAST YOUR LOCATION, IDENTITY OR OTHER
INFORMATION through its normal operation.
SERVAL MESH is an INCOMPLETE, PRE-PRODUCTION software, experimental in nature
and is not to be considered fit for merchantability for any purpose. It has
many defects, omissions and errors that will hamper its fulfilling of its
intended purposes.