Category Archives: Open Source

Open Source, Free Software, and similar

Has SanDisk gone AMS?

“skaosmentioned in the Rockbox forum that the markings on the e200 v2 SanDisk chip is very similar to the ones on the newer m200 models (as compared to the older m200 models which use different ones – at least marked completely different). It seems to imply that the m200 series have v2 models too.SanDisk marked chip, possibly an AMS AS3525. Picture from an e280 v2

But more interestingly, I downloaded the latest v4 firmware for the m200 series and looked at it with hexdump -C. While the file is encrypted or at least scrambled somehow (update: I was wrong the file is unencrypted, contains ARM code and strings), it features one plain text string at index 0x420:

AS3525_2_0.cr_5_0_develop.00020021010305000500

AS3525 is the name of a SoC from AMS (makers of the AS3514Stereo Audio Codec with System Power Management” chip used in the Sansa e200 series as well as in the Sansa c200 series) so to me it seems a bit too much of a match to be a mere coincidence! Oh, looking for UTF16-encoded strings, there’s one present that takes away all doubts: “AS3525/27 Demo Player“.

We’ll see what more we can dig up to really verify this theory. Fortunately, we managed to get docs for the AS3514 when some Rockbox guys visited the AMS HQ in Austria so hopefully we can get some for this thing too.

Now we have yet another firmware file format to figure out! ;-(

The SanDisk branded chip in the Sansa Clip does look very similar as well. If anyone has a firmware file for this target I’d be happy to check it out!

Rockbox on v2 Sansas

Sansa c200SanDisk apparently has released updated versions of their Sansa c200 and e200 series, called c200 v2 and e200 v2. Since Rockbox works pretty fine on the original c200 and e200 series and not at all on the new v2 players, users start to take notice!

The v2 series are claimed to be audible.com compliant (it spells DRM), which we originally thought would imply some sort of e200R style, but the first details about the c200 v2 internals seem to hint that the hardware is seriously changed and there’s hardly any hope left for a quick port to these devices.

To recognize a v2 of these devices, carefully look for the “v2” text on the backside or for “audible.com support” on the box.

We’re of course still eagerly awaiting published scans or photos of the internals of the v2 series, as well as getting our hands on firmware upgrades for them. Do they even use mi4 files?

In the mean time, the Sansa View isn’t even available in the stores here in Sweden yet! 🙁 Oh right, we still await scans of the View’s internals as well!

c-ares 1.5.0

SONAME bump and more is included in the fresh new c-ares release, when the changes from the Google camp was incorporated. There have also been a fair bunch of bug fixes that should make this the best c-ares version so far.

There are some indications c-ares is coming to Debian. It seems to already be packaged and made available for at least Fedora, Gentoo, OpenSuse and more…

Update: I quickly released a 1.5.1 since I messed up with the 1.5.0 which didn’t build out of the tarball…

A Google T-Shirt

What doesn’t a man do when there’s a free t-shirt involved?

Google Summer of Code 2007 shirt

I was Google Summer of Code admin for project Rockbox, and it did result in some cool new code. As newbies this year we of course did a bunch of mistakes that we hope to get a chance to correct if we’re allowed to participate again…

I also volunteered as a mentor, but we had something like nine or ten guys stepping forward, we got a lot of students applying for various projects but in the end we were given four slots by Google so I ended up not having to mentor anyone this time.

Apparently, this involvement was good enough for me to be given a shirt, and it arrived in my mailbox today and I took a few crummy shots with my lousy camera in my phone and I thought I’d share them with you!

Google Summer of Code 2007 front print

Google Summer of Code 2007 back figure

On the backside there’s this weird face with a monster-like guy (much appreciated by my daughter!) with binary numbers in its mouth. It wouldn’t surprise me at all if the binary does mean something if we translate it to ascii… for a second or two I was about to investigate it, but then I lost my motivation and bah, why bother?!

Did anyone else check yet?

URL Encode POST Data

Several months ago I did a job down south in Sweden – it was a three hour train ride (one way, and I went down and back the same day…) with the fastest train we have in this country. It gave me some time on the train to tinker with things and I didn’t feel like bothering with the “Internet On Train” thing they so fancifully offer these days. I’m not saying that’s a bad idea, I just felt that perhaps me and my Linux laptop would have to spend too much time fighting it to get it up to really enjoy it. Instead I wrote up a patch for curl for a feature we discussed ages ago: send POST data with the command line client that gets URL encoded automatically!cURL

The idea is of course that when you write a simple shell script of some sorts and want to automate POSTs to a web site, it is somewhat complicated to url encode the strings before you pass them on to curl. curl could instead get an option that does it for you.

Fast forward to current time and now I’ve dug up the old patch again, I had a discussion on the mailing list about it and what do you know! Today I’ve posted a patch that introduces –data-urlencode, and I’m very interested in feedback or suggestions on how to polish it further and then to commit it.

Free-to-use compiler from TI

Texas InstrumentsTexas Instruments finally decided to release free-to-use versions for Linux of their C/C++ compiler for the c54x DSP series (for open source projects at least).

This DSP is found in TI’s TMS320 family (dreaded chips, known mostly in our communities for their total lack of public docs).

Rockbox tinyIn Rockbox terms, this exciting news opens up the possibility for easier coding for the targets that use the DM320 series, which currently is the Olympus M:Robe 500 but may include other players in the future.

For your convenience, here’s a link to the actual TI license and the 12MB tarball (hosted on my site). The tarball contains a binary that installs 86 files occupying 31MB.

The compiler and more details can be found in the Neuros blog.

Human Connections

LinkedIn logoFor fun, I created two “groups” on LinkedIn for two of the open source projects I’m perhaps the most active in. I’m not quite sure what benefit and good use we’ll get from them, but anyway they’re created and if you feel in any way related to Rockbox or curl, here are the links you can use to do a join request:

Rockbox tiny Rockbox: http://www.linkedin.com/e/gis/42081/49AF807A7908

curl tiny cURL: http://www.linkedin.com/e/gis/42082/362F5916AFF1

And a link to my public LinkedIn profile

c-ares and me

I’ve said this a few times on the c-ares mailing list, but I guess that just doesn’t reach very many people outside the very closest “family” so I decided I’d mention a blurb here. (I don’t think this reaches very many people either, but quite possibly at least a few others…)

Background

A couple of years ago, I wanted to introduce asynchronous name resolving to libcurl to better allow many simultaneous requests still being single-threaded. This venture started with me and Bjorn Reese starting the Denise project that would do exactly this. We found no proper existing alternatives with a suitable license so we started our own.

Then someone mentioned that ares is almost exactly what Denise was meant to become and it had a fine license. I immediately jumped the Denise idea and went with ares. Soon enough we found out that ares needed improvements and tweaks, and its original author didn’t seem interested in incorporation those into ares… so I created a fork named c-ares.

c-ares has since then been used by libcurl and it has been bug-fixed and improved by a bunch of skilled hackers and it works solidly and reliably. It has also been discovered and incorporated into a bunch of other softwares, including UnreadlIRCd, BZFlag, Hobbit network monitor, libevnet, Tor, gLite, aria2, sipsak, Second Life and more…

Today

I don’t normally work with any of my open source projects in my full-time job, so I need to distribute my spare time on the various projects. When my spare time gets limited, I need to cut down on the projects that I deem is least interesting or perhaps least in need of attention (from me). Recently, it has been obvious that c-ares is one of them projects that I rarely have time and energy left for at the end of the day.

Caretaker

I have no plans to “jump ship” or to abandon the project in any way, but I think it would be beneficial for the c-ares project if someone would step forward and if not “take over” the project, at least join in and help share the burden with patch applying, source code reviewing, do design decisions, reply to mailing list questions etc.

There’s no crisis, there’s no hurry, but the project won’t move forward very fast as the situation currently is.

Fresh CA Cert Bundle Anyone?

cURLThe popular ca extract service on the curl web site converts the Firefox ca certs into a PEM file suitable for use with curl, wget or anything else OpenSSL-based that likes PEM formatted CA cert bundles.

The main script was fixed yesterday as it was previously getting a nightly source code snapshot to get the “magic” file to convert from, but I noticed they stopped updating the nightly source snapshots a good while ago so the updates had stopped!

Now, the script only gets the actually needed certdata file and converts it, so now it downloads a lot less data in vain and it also thus runs much faster. Now the PEM files offered on that page are up-to-date with the most recent Firefox.