It's new firmware time, version 0.0.8 is here!!!
Let's jump right in to what's new!
Node and NPM Fix
As many of you had seen, HTML requests from Node and the installation of packages with NPM did not work because all the requests would attempt to resolve to IPv6. We pounded our heads against the wall until Zheng finally figured out that it was a uClibc issue! (For those who are curious, uClibc is a version of the GNU C Library meant to run on embedded systems, check out their site for more info).
We've applied a patch to the firmware to fix the issue, and Node & NPM will now resolve HTTP requests to IPv4, no more ENOTFOUND
errors!
Note that to install NPM, you will have to move the Omega's filesystem to USB storage using pivot-overlay/pivot-root
Bluetooth Support
Finally, after wrestling with OpenWRT and code from a variety of packages, the Omega now supports Bluetooth! The tutorial on streaming music to the Omega via Bluetooth can be found on our Wiki.
We're actually quite proud ourselves, as far as we know, Onion is the first to get Bluetooth to cooperate with OpenWRT. This is just the beginning for Bluetooth and the Omega, but we want to hear from you, a survey will be sent out to all BLE expansion owners in the next few days.
Network Manager
Doesn't it kinda suck how the Omega is setup to join a single WiFi network, and if that network can't be found even the Omega's Access Point is off? Well, not anymore!
The Omega now comes with a Network Manager that will allow you to store the configuration for many WiFi networks, and will automatically try to connect to any configured networks that are currently available. The wifisetup
program has been overhauled to act as a tool to add/change the configuration of your stored WiFi networks. (This can also be accomplished on the Console, but more on that later). For more info on the overhauled wifisetup
script, try running wifisetup --help
for a detailed printout on the usage. Running wifisetup
with no arguments will start the interactive mode just like before, just run wdb40
when it's done.
The actual network manager is named wdb40
, the basic operation follows this sequence:
- Read the info of the configured networks
- Scan the environment to see which networks are currently available
- Check if any of the configured networks are currently available
- Attempt to connect to an available configured network
- If there are multiple available configured networks, they order in which they appear is the order they will attempt to be connected to. This order can be changed using
wifisetup
or the through the Console Settings App
If connecting to the network is not successful:
- Try connecting to next available configured network (if any exist)
- Once the list of available configured networks has been exhausted, the Omega's Access Point WiFi network will be activated so that there is connectivity!
The Network Manager will be automatically run at boot, so your Omega will automatically connect to any network it recognizes (Expect a small increase in time from power-on to connecting to WiFI). It can also be run manually at any time after boot with the wdb40
command.
If you experience any issues, please report them on the wdb40 GitHub issues page.
Console Updates
The Console got some love as well this time, don't worry, there's two new apps, an overhaul of the WiFi Settings App, and general bug fixes and improvements.
Programming Calculator App
The Programming Calculator can:
- Convert to and from numbers in decimal, hexadecimal, octal, unicode, and binary
- Provides basic arithmetic functions
- Provides an assortment of bitwise operations (logical operations, bitwise shifts, etc)
To select the number system you would like to work with, simply click on the one you would like to use. Also, clicking any of the bits in the binary readout will modify the number, something I use all the time actually! Another cool thing about this app, you can also use your keyboard to perform most of the available operations. Try it out and let us know how it goes!
Webcam App
If you have a USB webcam connected to your Omega, then this App is for you! Through the drop-down menus you can select your resolution and frames per second settings, we've found 640x480 @ 30fps to be the most stable. The buttons on the top right start and stop the stream, and the stream will be in the middle once it starts. We've used this at Onion HQ to babysit our 3D printer from another room!
WiFi Settings
The Wi-Fi Settings page in the Settings App has been updated to work in tandem with the new Network Manager; the configured networks are listed and there is an button to scan and add a new network. In the list of configured networks, you can connect to the network, change the connection priority, or remove the network altogether.
The Wi-Fi AP Settings page got some work done under-the-hood but it looks and behaves the same way as before.
Feedback
If you experience any issues with the new Console, please post to the Console GitHub repo issues page
From Onion with Love
Now that this release is out, the entire team will be refocusing their development efforts to the cloud. We realize that development has been slower than expected and we are now working almost exclusively on the cloud! Stay tuned!
As always, happy hacking!