Paco Jr: small bugfix release

December 26th, 2013 by Matthijs

While we keep working on revamed 3G support for the next feature release, we also found some small but important bugs or regressions. To make sure you have the most stable firmware possible, we’ve collected the most important bugfixes and put them in the 2.3.7.1: Paco Jr. release.

What changed?
Here’s the (exhaustive) list of changes:

  • Prevent a brute-force attack on the private wifi signal when WPS is enabled.
  • Make the “Media” share work again.
  • Make file sharing on 2.0g work with Windows Vista and up without having to change the LMCompatibilityLevel registry setting.
  • Update the Twitter to the most recent Twitter API.

Overall, we recommend all users to install this update.

So, how do I upgrade?

Download the web upgrade tarball below, navigate to your Fonera’s dashboard through “Settings” and then “System” and upload the tarball there (under “Firmware update”). Note that you should not unpack the file you download (and make sure your browser doesn’t automatically unzip the file either, it should remain a .tgz file).

Note: On 2.0g, the firmware update might fail due to insufficient memory. If you upload the firmware through the webinterface, but that page keeps loading indefinitely (and you do not get the updating countdown), you’re probably seeing this issue as well. As a workaround, you can disable windows file sharing (“Settings” -> “Fileserver” -> “Windows Network Shares”) and/or the public Fonspot (“Settings” -> “FONSpot”) to free up some memory. This should allow the 2.0g to successfully unpack the firmware and start flashing it.

In the coming weeks, we will also offer this firmware upgrade directly from the dashboard, making the upgrade even easier, but this procedure needs a bit of testing before we enable it.

This firmware is available for the following hardware. Be sure to pick the version for your hardware. If you pick the wrong one, the firmware update will silently bail out and no upgrade will happen (no error will appear either).

The above links point to the end user’s versions of the firmware. For different versions, like the developer’s version (which allows SSH access and custom plugins) and the .img version (which can be installed through SSH), you can look in the PacoJr directory on the download server.

If the upgrade somehow fails and you need to recover, the FAQ section has recovery instructions.

Have fun!

freedns.afraid.org now working with Fonera

July 15th, 2013 by Matthijs

Just a quick note to let you know that freedns.afraid.org now works as a dynamic DNS provider for the Fonera. The current firmware already included this provider in the list of DDNS providers, but until today there was an incompatibility related to the way url parameters were encoded (see ticket #1300 for details).

After reporting this problem to the adminstrators at afraid.org, they promptly replied and made a change at their end to fix this incompatbility, so the DDNS service from afraid.org is now available for use with the Fonera.

Screenshot of afraid.org (edited for size)

Because their DDNS update procedure is slightly different than others, I’ll expand a bit on how to use their service. freedns.org works with the concept of an update url with a single update key inside, instead of a username/password. To use their service, you create a subdomain in their Dynamic DNS panel. In that same panel, you’ll see a link called “Direct URL”, which points to something like http://freedns.afraid.org/dynamic/update.php?VWNGMEVxMzFVMVVBQxYIam1KZ0FBQUFiOjc3Mjc0NjE=. In this url, everything after the ? is the update key (including the = at the end).

To set up the Fonera to use this DDNS provider, fill in the domain name you picked (like “example.d-n-s.name”) in the “Domain name to update” field and put the key (VWNGMEVxMzFVMVVBQxYIam1KZ0FBQUFiOjc3Mjc0NjE= in the example) in the “password” field. Leave the username field empty.

Fonera WebUI

Thanks to Josh at afraid.org for making this work!

3G support progress

March 14th, 2013 by Matthijs

As soon as the Paco release was out last christmas, we’ve started working on the next firmware release. The focus of this release will be on improving the 3G experience, which is the topic of this post. I’ll detail a few of the things we’ve be working on, to give you an idea what’s coming up and to get an idea of all the different components that are involved in getting a 3G connection up and running.

Changing the connection manager daemon
The current firmware uses “umtsd.lua”, which is a simple connection manager written in lua. It was a first attempt at something back when the 2.0g and 2.0n were being released, and that shows. Its internals are a bit messy and it is hard to debug any 3G problems due to limited feedback.

To solve this, a new daemon was written, named “udiald” (originally it was called “umtsd2″). This daemon has been released by Fon under an open source license and its sources can be found on github. This new daemon is written in C, has a cleaner structure and makes it a lot easier to change device-specific configuration and get debug output. We expect we can support more 3G devices in the future because of udiald, though in the short run some devices might stop working when switching to udiald (because they just worked “by accident” in umtsd.lua and now need some specific tweaking applied, for example).

At some point, this udiald (or probably something based off it) might also be integrated into the main OpenWRT repository, to improve 3G support in general OpenWRT as well.

Rewriting the 3G webinterface
Managing the 3G connection is a bit of a challenge in the current firmware. When you plug in a device, it automatically connects and having two 3G dongles connected at the same time is asking for trouble. If you’re running into problems, most of the time you’ll only see that the Fonera is stuck “Dialing…”, but there is no indication of any error message.

We’ve revamped this webinterface now, making it easier to see what 3G dongle is connected and what its status is. We’re making automatically connecting on plugin optional (and disabling it by default), so you have more control over how your Fonera connects to the internet.

2.0n USB driver improvements
One of the long-standing issues with 3G devices on the Fonera 2.0n is that most of them would not properly operate when connected through an USB hub. Devices that work correctly when directly connected to the Fonera fail when connected through an USB hub, even when no other devices are connected.

We’ve been diving into this issue for the last month or so and slowly started to unravel the causes for this issue. When communicating with the Fonera, the 3G devices offer virtual “serial ports”, which can send and receive data. When the Fonera is receiving data from the 3G device, it often occurs that the device has no data to send. In this case, the 3G device will send a USB “NAK” message back to the Fonera to let it know there is no data. The (USB controller in the) Fonera can then knows there is no data yet and it should just keep trying until there is data. These NAK messags were the root cause of the problem, but the actual problem differed depending on the USB version of the 3G device:

  1. For USB 1.1 3G devices, which use so-called “split transactions” to translate from USB 2.0 to 1.1, every NAK message received caused the Fonera to receive an interrupt, process the NAK message and resubmit the original message for a retry. Apparently, these NAK messages would occur so often that the Fonera’s CPU would be busy only with processing these interrupts, leaving no time for any other useful work and eventually causing a reboot.

    We managed to fix this issue by only retrying these NAK’d messages once per USB frame (millisecond), a fix that was inspired by a similar fix found in the Raspberry Pi Linux version (which uses a very similar USB controller). This makes the USB 1.1 3G devices we tested work properly through an USB hub.

  2. For USB 2.0 3G devices, the USB hardware takes care of all these retries, so the interrupt overload issue does not occur. However, here we were running into a hardware limitation: The USB hardware uses “Host Channels” (HC) to communicate with USB devices. The Fonera 2.0n has four of these HCs available, and a host channel can be used to send a message to one specific USB “endpoint”, meaning we can send message to four different endpoints at the same time (but once a message is sent, a HC can be reconfigured to send a message to another endpoint if needed).

    Now, for each “periodic endpoint” (isochronous and interrupt), a dedicated HC is needed. These periodic endpoints need to have messages sent at regular intervals, and once the time for such a periodic message comes, it must be certain that a HC is availalbe, so the driver reserves one HC for each of these periodic endpoints. This allows up to three HCs for periodic transfers, leaving at least one HC available for non-periodic transfers.

    This is what happens when you connect a 3G device through an USB hub. The USB hub and the 3G device both have an interrupt endpoint, which takes up two of the four HCs. Now udiald connects to two of these “virtual serial ports”, one to transfer control messages and one to transfer data. Receiving data from these virtual serial ports takes up two more HCs. These latter two are expected to be used only shortly, but because the 3G device often does not have data to send for some time (a few to a few dozen seconds, typically), all of the host channels are taken up. Now, when udiald wants to send something to the device (either some network data or a control command), it needs one more HC (since input and output are different endpoints in the USB protocol). The outgoing data is queued, waiting for a host channel to become available, which doesn’t happen, so the connection times out before it even started.

    To fix this, we’re trying a workaround where these “blocking” HCs (which keep getting NAK replies from the device and keep getting retried by the hardware) are interrupted when the driver runs out of available host channels, so these host channels can be used for other transfers for a while and then resume retrying the blocking transfers. This is now working fairly well in our development environment, though there might be one or two corner cases left to tackle.

In summary: We’ve managed to improve this third-party USB driver in order to better support blocking transfers typically used by 3G devices. This helps to get the 3G devices we have here working, but of course it is no guarantee that all devices will start working with USB hubs: there might be other problems we simply did not observe yet. However, the problems we solved are fairly fundamental, so they will have affected most if not all 3G devices out there.

If you’re interested in the details about this USB driver problem, I can recommend the USB made simple and USB in a nutshell article series, which properly explain the terms and logic of the USB protocol.

Remaining USB limitations
Even though the above should make 3G devices work with USB hubs, it is expected that the performance is somewhat reduced by this approach, because of the way a channel must now be time-shared between multiple transfers.

Furthermore, this approach does not mean there is no limited number of host channels all of the sudden. Now, multiple (blocking) non-periodic transfers can succesfully share a single host channel, but there is still only room for three different periodic endpoints. Fortunately, USB storage devices typically do not use a periodic endpoint, so this limit should be sufficient in most cases (e.g., you can add one hub, a 3G stick and an USB sound card, each of which typically has one periodic endpoint and a number of USB disks or flash drives without problems).

Backporting parts of the serial drivers
When a 3G device is plugged in, its virtual serial ports are handled by an usb serial driver in the Linux kernel. This driver needs to know which devices it should handle (usually based on the usb “vidpid”, vendor id and product id, as advertised by the device) and for some devices, which workarounds or special quirks to apply. The driver most commonly used for 3G devices is called the “option” driver, which we’ve improved by taking the list of USB devices and some of the workarounds from a newer kernel version and backporting them to the Fonera kernel versions. This should allow more 3G devices to be supported by both Foneras, since now udiald can actually talk to these devices.

This change should remove the need to mess with the new_id files in /sys, which was sometimes needed to get a 3G device recognized by its driver.

Updating usb-modeswitch
usb-modeswitch is the software responsible for getting 3G devices into “modem mode”. A lot of 3G devices start out in “storage mode”, where they pretend to be a read-only CD drive or card reader, offering the Windows drivers for the device on a virtual disk. To get these devices to offer their virtual serial ports used for the 3G connection, they need to be sent a special message (which is normally done by Windows driver installed from the virtual disk) to switch them to modem mode.

By updating usb-modeswitch and the associated database of 3G devices and the messages they need to be sent to make them switch, more 3G devices can be supported that were previously not accessible to udiald.

Updating pppd
pppd is the daemon that is responsible for setting up the actual IP connection once all the dialing and configuration is complete. It handles negotiations about IP addresses and DNS servers, using standardized PPP (Point-to-Point Protocol). Even though PPP is an old and standardized protocol, we were still running into some problems with 3G devices that would confuse pppd with particular (IIRC not entirely standards-compliant) negotiation sequences, causing the connection to fail. Newer pppd version turn out to handle these devices more gracefully, making this particular problem (and possibly others) go away.

All of the work above is ongoing in our development trees. We’ll start pushing out these changes into the fon-ng Subversion repository over the coming weeks and once we’re satisfied that this produces a firmware image suitable for testing, we’ll be releasing the first 2.3.8.0 beta release. The goal of this release will be mostly to gather information about the support for different 3G devices: which devices work right away, which need some configuration tweaks, are there still more fundamental problems with devices?

New stable firmware release: 2.3.7.0 Paco the alpaca

December 28th, 2012 by Matthijs

Paco is finally here, loaded with fixes, new features and improvements! Just in time to have some holiday time to play with this new firmware.

What changed?
Comparing this release with the previous stable, 2.3.6.2, here’s a summary of the most important changes:

  • 2.0g now supports bridge mode (but not wifi-bridge mode, due to technical limitations).
  • The “Orange page” with the “Your internet is misconfigured” message was removed. It caused more problems than it solved, due to onlined incorrectly detecting a broken connection when it was still working.
  • Various networking and wifi fixes and improvements that can make the network more stable and a bit faster in some circumstances.
  • Wifi scans can now be performed from the web interface.
  • Status display in the dashboard is improved.
  • Large USB disks (>2TiB) are now supported.
  • Multiple Dynamic DNS providers are supported now.
  • Various software and drivers have been updated.
  • OpenVPN was made a lot more configurable.

There are dozens and dozens of smaller changes, which are listed in detail in the changelog.

So, how do I upgrade?

The easy way:

  • This method works if you’re currently running firmware 2.2.5.0 (Flipper) or 2.3.6.x (Gari).
  • Go to the “Applications” page in your Fonera’s webinterface.
  • You should see the firmware upgrade listed.
    Screenshot of the firmware upgrade part of the Applications page
  • Click the “plus” icon to install the firmware. It might take a few minutes for the page to load, it should show a countdown as soon as the actual upgrade started.
  • Done!

The manual way:

Download the web upgrade tarball below, navigate to your Fonera’s dashboard through “Settings” and then “System” and upload the tarball there (under “Firmware update”). Note that you should not unpack the file you download (and make sure your browser doesn’t automatically unzip the file either, it should remain a .tgz file).

Note: On 2.0g, the firmware update might fail due to insufficient memory. If you upload the firmware through the webinterface, but that page keeps loading indefinitely (and you do not get the updating countdown), you’re probably seeing this issue as well. As a workaround, you can disable windows file sharing (“Settings” -> “Fileserver” -> “Windows Network Shares”) and/or the public Fonspot (“Settings” -> “FONSpot”) to free up some memory. This should allow the 2.0g to successfully unpack the firmware and start flashing it.

This firmware is available for the following hardware. Be sure to pick the version for your hardware. If you pick the wrong one, the firmware update will silently bail out and no upgrade will happen (no error will appear either).

The above links point to the end user’s versions of the firmware. For different versions, like the developer’s version (which allows SSH access and custom plugins) and the .img version (which can be installed through SSH), you can look in the Paco directory on the download server.

If the upgrade somehow fails and you need to recover, the FAQ section has recovery instructions.

Are there any known problems with this version?
Yes, this release is still not perfect, but we’re getting closer at every step. In any case, here’s two things that used to work, but are now broken in this release. If you depend on them, you might want to reconsider the upgrade:

  • The music plugin is no longer available on the Fonera 2.0g, due to its limited available flash memory. The firmware has grown a bit since Flipper, so now there is no longer enough free space to install the music plugin.
  • The “Media” file share stopped working. In this release, a small security / stability fix was applied, which had the unintended side-effect of breaking the “Media” share. The shares for the individual partitions still work as expected. See ticket #1243 for details.

Special thanks go out to all of our users who have been testing the testing releases and have been providing excellent feedback and even contributed back some code and improvements!

Have fun!

Update 2013.03.13: The firmware can now be upgraded through the webinterface, the Wake-on-LAN plugin can now be installed through the webinterface and some known bugs were documented in this post.

New official plugin: Wake-on-LAN

December 5th, 2012 by Matthijs

As of this week, the Fonosfera repository contains an brand new plugin: The Wake-on-LAN plugin, which can be used to remotely power on Wake-on-LAN capable machines on your local network, using the Fonera webinterface.

This plugin was inspired by a previous Wake-on-LAN plugin, created by one of our users and amended by a few others. Due to technical reasons (the user interface code did not use cbi), this plugin does not share any code with the original plugin, but it did inspire us to create this new plugin.

Wake-on-LAN interface

This is still a first version of this plugin, so we welcome people testing it and providing feedback. The plugin can be installed by downloading it from our firmware autobuilder and uploading it again through the Applications page of the Fonera webinterface. The plugin can be downloaded here:

Installing an application like this requires a DEV firmware. This plugin has been tested on 2.3.7.0 rc2, but I expect it will work on 2.3.6.x as well. After the 2.3.7.0 final release is out and this plugin is tested well enough, it will become available on the Applications page for a one-click install, just like the other official plugins.

Note that the plugin is still missing a proper icon, so it now has a temporary (ugly) icon instead.

Update 2013.03.13: Version 1.0.2 adds a proper icon and is now listed in the “Applications” page of the Fonera 2.0 dashboard and can be installed automatically by just clicking the “plus” icon. You’ll need at least firmware 2.3.7.0 for this, but it should work both in DEV and normal mode.

Setting up computers
To wake up a computer, it needs to support Wake-on-LAN (also known as “Magic Packet”) and have it enabled as well. Most modern computers support WOL, but it is often disabled by default. Often, a BIOS option named “Wake-on-LAN”, “Magic Packet”, or “PCI device wakeup” needs to be enabled, but usually you’ll also need to change some settings within your operating system. See this posting for some details on what to change. Rumour has it that Windows 7 needs some additional changes, see this posting for details.

Setting up the Fonera
After installing the application through the Applications page, you can access the WOL interface through the icon on the dashboard. To power on a computer, you’ll need to know its MAC address. You can add the MAC address to the top list, choose an arbitrary name so you can keep the various MAC addresses apart and click “Power On” to send the Magic Packet. If you already set up a static (DHCP) address assignment for the computer, you can directly click “Power on” in the bottom list (go to Settings -> Network to edit the bottom list).

If you test this plugin, let me know if it works for you, or if you have problems!

Update: I’ve updated the links above to point to version 1.0.1 of this plugin. This version should now also work on 2.0g and fixes a bug where your list of MAC addresses would be deleted when uninstalling the plugin or overwritten during plugin install. If you have the first version (1.0) installed and have a big list of MAC addresses that you want to preserve, you should make a backup of the /etc/config/luci_wol file manually before upgrading to this new version.

2.3.7.0 release candidate 2 released!

November 15th, 2012 by Matthijs

A small update: This second release candidate fixes two serious bugs which prevented the PPPoE and 3G/UMTS internet connection types from being useful for most people. Additionally, two small bugs were fixed as well, see the changelog for details.

Here’s the firmware files:

See the previous post for instructions on installing these images and what to do with any feedback you might have.

Have fun!

2.3.7.0 release candidate released!

October 5th, 2012 by Matthijs

We’re nearly there! The first release candidate is available, which contains all the changes we’ve planned for the 2.3.7.0 final release. We’ll now enter a period of more extensive testing, to find any remaining critical bugs or regressions. In the best case, we’ll not find any and the final release will be identical to to this release candidate.

What changed?
This release brings mostly bugfixes and a pile of Here’s a few highlights:

  • The Transmission torrent client was updated to version 2.71.
  • Wifi channels 12 and 13 are now available in countries they are allowed in
  • OpenVPN is a lot more configurable (many thanks to Jon Spriggs for contributing patches for most of these changes!).
  • USB audio devices work again (this got broken in beta3).
  • USB disk support improvements

For the complete list of changes, see the changelog.

What about my feedback?
We welcome more feedback about this release, so go ahead and comment or post away. This does not just mean issues or problems: If you test a new or fixed feature and it works for you, we’d like to know as well. Feedback is welcome through various channels: comments on this blogpost, the development mailing list, IRC or by creating a ticket on our trac.

Note that at this point, we might not fix all bugs reported, but limit to critical bugs or regressions that were introduced by the recent releases. The goal here is to make as few changes as possible, to minimize the chance of introducing new bugs again.

So, how do I upgrade?
To install this release candidate, download the web upgrade tarball here, navigate to your Fonera’s dashboard through “Settings” and then “System” and upload the downloaded file there (under “Firmware update”). Note that you should not unpack the file you download (and make sure your browser doesn’t automatically unzip the file either, it should remain a .tgz file).

The following versions are available. Note that because this is release candidate, only the developer’s version is available, not the end user’s version (but you can freely switch between versions without problems). Be sure to pick the version for your hardware. If you pick the wrong one, the firmware update will silently bail out and no upgrade will happen (no error will appear either).

It seems that in some cases, the 2.0g fails to flash a new firmware through the webinterface due to insufficient free RAM. If you upload the firmware through the webinterface, but that page keeps loading indefinitely (and you do not get the updating countdown), you’re probably seeing this issue as well. As a workaround, you can disable windows file sharing (“Settings” -> “Fileserver” -> “Windows Network Shares”) and/or the public Fonspot (“Settings” -> “FONSpot”) to free up some memory. This should allow the 2.0g to successfully unpack the firmware and start flashing it.

If the upgrade somehow fails and you need to recover, the new FAQ section has recovery instructions.

Have fun!

Update: This release contains a bug breaking PPPoE mode when set to use the automatic DNS server address. If you have this configuration, either switch to a static DNS server (like 8.8.8.8 Google DNS), or see ticket #1229 for a fix.

Update: This release contains a bug breaking the 3G settings page in all cases. See ticket #1228 for a fix for this problem.

SIMPL GPL sources now available

September 7th, 2012 by Fon

Hi,

The SIMPL GPL source tarballs for version 4.0.2.3 are now online:

SIMPL GPL Fon source
SIMPL GPL Third party sources

FON

Fonera big disk support, testers needed

August 27th, 2012 by Matthijs

The current SVN version of the Fonera 2.0n and 2.0g firmware should support big disks (more than 2TiB / 2.20 TB) connected through USB, which is great combined with the Transmission torrent client.. But since we can only test with so many different types of disks, we’d like to get some feedback about whether this support works with your disk.

In addition to supporting bigger disks, the mountd sofware (which takes care of making external USB disks available on your Fonera), has received a number of updates. It should be a bit more stable now and it offers more information about the different partitions on your disk through the WebGUI (in particular, information about partitions with an unsupported filesystem or partitions that could not be enabled for whatever reason is now shown).

So, if you have a big disk lying around and/or use the USB disk support a lot, you can help by upgrading to the latest SVN build and see if your disks (still) work with your Fonera. If they do, or don’t, or you’re having other disk-related problems, just leave a comment here (preferably including the disk brand and size).

How to install?
To test this SVN version, you can download it from our auto-builder here (pick fonera2 for 2.0g and fonera2n for 2.0n):

http://download.fonosfera.org/auto-builds/fon-ng/fon-ng-r2165/

The easiest way to install this firmware version is to download the tgz file and simply upload it through your WebGUI (you should be running 2.3.7.0 beta1 or above already). You can always downgrade to a stable or beta firmware again if you want.

Why aren’t these big disks supported by default, anyway
These limits come from the fact that 32-bit numbers were originally used to describe disk and partition sizes and addresses. Because, given the sizes of modern disks, 32-bit numbers cannot count very far (“only” up to 4.2 billion), we run into size limits when using them. To fix this, all parts of the Linux kernel as well as the partition table should be using 64-bit values, which can count over a billion times farther. Where the disk size limit lies exactly, depends a bit on the partition table and sector size in use.

Each disk uses a partition table to describe the partitions that are present on the disk. The standard partition table format is MSDOS/MBR, which uses 32-bit sector numbers, limiting the usable disk size to 2 TiB (232 * 512). To solve this, the GUID partition table (GPT/EFI) was created, which uses 64-bit sector numbers, practically removing the disk size limit altogether.

As a separate development, hard disks are switching from using 512-byte sectors to 4096-byte sectors. A sector is the smallest piece of the disk that can be separately addressed and using bigger sectors allows disks to more efficiently store and retrieve data. Using bigger sectors has the side effect that partition tables (which count sectors, not bytes) can address bigger disks.

Note that there are also disks that internally use 4096-byte sectors, but appear to use 512-byte sectors through some internal translation mechanism. The Fonera treats these disks as normal 512-byte disks.

To find out the sector size of your disk, look in the file “/var/state/mountd” on your Fonera or run the command “wmic DISKDRIVE get bytespersector,caption” on a command promt on a Windows machine.

Combining the partition table and sector size in use, we get:

  • Disks with normal sized sectors (512 bytes), using a standard (MSDOS/MBR) type partition table support only disks up to 2 TiB (2.20 TB, possibly more if all partitions are 2 TiB or smaller and start before the 2 TiB limit, but I haven’t tested this). These disks were supported on previous firmware releases as well.
  • Disks with normal sized sectors, using a GUID (GPT/EFI) type partition table, support disks over a billion TB in size. These disks should be supported on 2.0n since beta2, and on 2.0g in the current SVN version.
  • Disks with big sectors (4096 bytes), using a standard (MSDOS/MBR) type partition support disks up to 16 TiB (17.6 TB). These disks should be supported in the current SVN version.
  • Disks with big sectors (4096 bytes), using a GUID (GPT/EFI) type partition support disks over a trillian TB in size. These disks should be supported in the current SVN version.

Note: In this post TiB (Tebibyte) is used to mean 1024 * 1024 * 1024 * 1024 bytes, which is the conventoin used by computers to display disk sizes (and usually displayed as “TB” as well). Disk manufacturers usually use TB (Terabyte) to describe 1000,000,000,0000 bytes, which is why disks appear smaller than the manufacturer specifies them.

2.3.7.0 beta 3 released

June 15th, 2012 by Matthijs

After some time with peaks and valleys in the development pace, we bring you the 2.3.7.0 beta3 release. This release contains most of the changes for the final release and should be the last beta release for 2.3.7.0. Read on for the goods.

What changed?
This release brings mostly bugfixes, but a few small features as well. Here’s a few highlights:

  • Instabilities in the wifi driver were fixed (broken since beta 1).
  • USB driver, ethernet driver, Transmission and OpenVPN were updated.
  • Various fixes to the downloader plugin and uploader plugins.
  • Rapidshare logins are working again.
  • Alternative dynamic DNS providers are now supported
  • Improve communication with the userzone on www.fon.com

For the complete list of changes, see the changelog.

What about my feedback?
We welcome more feedback from this new beta release, so go ahead and comment or post away. This does not just mean issues or problems: If you test a new or fixed feature and it works for you, we’d like to know as well. Feedback is welcome through various channels: comments on this blogpost, the development mailing list, IRC or by creating a ticket on our trac. If you have found an actual problem you’d like to see fixed, a ticket on the trac is probably the best way to report it. For other feedback, any of the channels will do.

So, how do I upgrade?
To install this beta firmware, download the web upgrade tarball here, navigate to your Fonera’s dashboard through “Settings” and then “System” and upload the downloaded file there (under “Firmware update”). Note that you should not unpack the file you download (and make sure your browser doesn’t automatically unzip the file either, it should remain a .tgz file).

The following versions are available. Note that because this is beta version, only the developer’s version is available, not the end user’s version (but you can freely switch between versions without problems). Be sure to pick the version for your hardware. If you pick the wrong one, the firmware update will silently bail out and no upgrade will happen (no error will appear either).

It seems that in some cases, the 2.0g fails to flash a new firmware through the webinterface due to insufficient free RAM. If you upload the firmware through the webinterface, but that page keeps loading indefinitely (and you do not get the updating countdown), you’re probably seeing this issue as well. As a workaround, you can disable windows file sharing (“Settings” -> “Fileserver” -> “Windows Network Shares”) and/or the public Fonspot (“Settings” -> “FONSpot”) to free up some memory. This should allow the 2.0g to successfully unpack the firmware and start flashing it. Hopefully we can correct this issue before the final release.

If the upgrade somehow fails and you need to recover, the new FAQ section has recovery instructions.

Have fun!

Update: There is an issue with the web interface for the new DDNS scripts, making them effectively unusable. To fix this issue, run the following command through ssh:

root@Fonera:~# wget -O /lib/uci/schema/default/ddns

http://trac.fonosfera.org/fon-ng/export/2123/trunk/luci/applications/luci-ddns/root/lib/uci/schema/default/ddns

(note that the command should be on a single line, it is wrapped here for readability)