Making ringtones for your jailbroken iPhone in Ubuntu is easy using SoundConverter. I’m going to assuming your iPhone is already jailbroken and you know how to upload files to it (usually with openssh).
First thing to do is make sure the Universe repository is enabled by going to System->Administration->Software Sources and checking “Community-maintained Open Source software (universe)”.
Read more…
Personal iPhone
Yesterday I priced out all the parts for the multilateration system. Nearly everything is available from Digi-Key with the exception of the LNA, an oscillator, and an SMB connector that I have to get from Mouser and an RF splitter from Mini-Circuits. One thing I like about Digi-Key’s website is that they don’t have alot of useless graphics about that just make a site slow. Simple, clean HTML. Nice.
Work
It turns out there was an error on the board that I managed to catch in my final sweep of the board. Now I’m wondering if there are any other unfixed gremlins waiting between the traces to bite me. Oh well, nothing to do but get it in hand and see if it works as expected.
I’ve packaged up the transmitter and sent it our for quote so I’ll be ordering that today as well.
Work
I completed the design for the multilateration system today. At least I hope I did
. I was quoted at $120 a board which is not bad for quantity 10 with a 5 day turn around. Here’s what the completed board looks like with all layers turned on.

Completed Multilateration System Board
Next thing to do is generate the bill of materials and order all the parts. The fun part. 
Work
The RF portion is now complete. The component on the left hand side of the image below is a Analog Devices ADC4360 synthesizer running at 870 MHz and serves as the local oscillator to jump down to our first intermediate frequency.

One leg of the output is used to drive the transmitter and the other leg is amplified and split four ways for each of the receivers. The traces for the receivers are laid out such that they’re all the exact same length and thus have the same phase shift. This is critical because our system measures the phase differences between antennas to determine the location of a neighbor and layout differences would produce large offsets in phase.
The ‘X’s there surrounding the traces form a via shield tying the surface ground plane to the internal ground planes and serve to isolate the signal from its surroundings.
Work
A nudge here, a tweak there, and slowly but surely the layout comes together. I’ve removed a couple of things (most notably the logic analyzer connector) to make routing a bit easier and bumped up to a six layer board. Having a header to connect the logic analyzer is a nice to have feature but it was turning the traces into a ball of yarn.
I decided to give the autorouter a chance again because they’re just too many nets. I invariably have to go back and tweak a bunch but at least it give me a starting point. Here’s what it came up with:

I can see a bunch of tweaks that need to happen but it’s not a bad start.
Work
Merry New Year!
Well I’m back after a two week winter break. It was weird taking so much time off and utterly unproductive so I’m glad to be back at work.
Today I’m working on the main board that the receiver and transmitter boards plug into. This is the board with the ARM, ADC/DAC, and local oscillators.
Here’s the receiver board:

Here’s the transmitter board:

Each board will plug into the main board via the card edge connectors.
Update: 6:15 PM
I’ve got a good start on a main board. I’ve grouped all the related components and started routing the more critical traces. It’s a start!

Work
Alright, well I’ve written my DMA configuration macros for the ARM (I don’t like ST’s library) and I have simple DMA transfer to the SSP working! That was pretty easy. Next trick is to get it running continuously and pinging me back with an interrupt when a buffer is complete.
Work
Today I’m going to work on getting the final piece of the ARM firmware settled: DMA. Right now, I’m acquiring samples from the SSP manually but I won’t be able to process data if I’m wasting all my time grabbing samples so I need to pass that task to the DMA controller. The unknown at this point is how the DMA controller affects to slave select line because I need it to toggle every 8 bytes to use it as the start acquisition line on the ADC.
Work
Well, just got back in port. The mission went well but the seas were terrible. The first night was the worst with 16 foot seas and it usually takes a day or two to acclimate so it was not fun at all. The seas calmed down a bit to about 8-12 foot seas the rest of the cruise with a lot of cold wind that is typical of December.
The AUV’s we were using performed very well, running their full 18 hour missions without intervention. We ran them at around 1000 meters, though they’re capable of 6000; surveying about 100 square miles of sea floor.
About the only mishap we had was one of our transponders “came loose” and drifted off. With some deft detective work, Greg was able to study the currents and winds to see where it would have drifted off to. It took us about an hour to locate it and when we pulled it aboard, the end of the line that should have had an anchor on it was just a frayed rope. Looks like something down there liked the taste of rope and chewed through about 1/2 inch thick line. The AUV had an interesting time with it because one of its transponders that was supposed to be a fixed point was suddenly drifting off. It recovered well though and completed its mission.
Work