Blogs

SDHC high capacity flash working

Checked out an 8GB SDHC card and it is working without issue.

(06:42:36 PM) jonsmirl: root@phyCORE-MPC5200B-tiny:~ df -h
Filesystem Size Used Available Use% Mounted on
none 30.0M 0 30.0M 0% /tmp
none 30.0M 20.0k 29.9M 0% /var/log
none 30.0M 16.0k 29.9M 0% /var/run
none 30.0M 0 30.0M 0% /var/lock
tmpfs 30.0M 8.0k 30.0M 0% /dev
/dev/mmcblk0p1 7.6G 32.0k 7.6G 0% /mnt
root@phyCORE-MPC5200B-tiny:~

dmesg...
mmc0: host does not support reading read-only switch. assuming write-enable.
mmc0: new SDHC card on SPI
mmcblk0: mmc0:0000 SD08G 8003584KiB
mmcblk0: p1

Formatting it FAT32 (for compatibility) eats 400MB.
I bought the card for $21 shipped.

Typical home would use 6-10 Digispeakers, that's 80GB storage capacity. All of it fast and silent. 16GB ($48) cards work too. I see a 32GB one for $130 now.

The cards are user installable. In three years 32GB cards will be $20. Prices on these cards are going way down due to their use in camcorders.

I'm still sorting out the interrupt handlers for IR. I hope to get it working soon.

Working on the webserver

I finally convinced Dreamhost to install git. That's great news, no more git processes getting killed by their hyperactive process monitor which can't tell a mmap of a 2GB file from allocating 2GB of memory. The bad news is that the install completely broke git.digispeaker.com.

The main problem was that I had locally installed current git 1.6 on the Dreamhost account. When Dreamhost installed git they installed 1.4.4 (from Jan 2007 - why???). I didn't initially know that Dreamhost had installed git so my local copy and their installed copy started interacting in bad ways. Now its six hours later and I have git.digispeaker.com working again.

It's been one year since we registered digispeaker.com, I justed renewed it.

Prototype IV: Dead :(

Well... friend of the project Neil Davis has pointed out some flaws in the design of Prototype IV that require the entire schematic to be 're-jiggered' (see this thread over at diyAudio). The crux of the argument is that the amplifier should not be on same board as the logic board. Beside some electrical problems, from a product standpoint it ties the amplifier design to the logic design a little too closely. And there appears to be no good reason for it.

Neil's argument (something Jon has been pointing out as well) is the amplifier and the power supply should be plugin modules to the system. By pairing the power supply and the amplifier on a single board, DigiSpeaker can be designed with upgradeable paths for both logic and amplifier. This would lead to a lot product variants because each could be upgraded on their own path. Powerline modem is not working for you? Then get the logic board with integrated WiFi. Is the amplifier too low power for you? If so, then buy the next version up that has more power. And so on...

With this new insight, Jon and I have decided to split the design into two modules. They are power supply/amplifier and logic. Since the schematic and layout for Prototype IV is just one big blob, I have decided to stop work on Prototype IV and declare a new prototype. Prototype V will have much of the same work. It is just that it will come in two modules (two schematics and two layouts) that more closely follow the new modular approach.

And of course... there are a couple of changes in the works. When the power supply was separated from the amplifier, I had decided to concentrate on the logic/amp board and work on the power supply second. Now that the amp and the power supply are integrated, it doesn't make sense to just work on the Amp. In other words, the Prototype IV schematics will be broken apart and a power supply design will be added to the Amplifier design.

There are other changes coming to Prototype V like integrated temperature sensors and room correction processing. However, I will leave that discussion for when I post the Prototype V system design.

Updates on the software

The git repository (git.digispeaker.com) contains working drivers for USB, SD card, the Maxim clock chip, mpc5200 i2s driver, and an ALSA driver for the tas5504. I have a driver for the RTC located on the mpc5200 but I don't have anyway to test it currently. As I (and others) get these drivers in a finished state I'm going through the arduous process of contributing the changes back to the mainstream Linux kernel. It takes anywhere from a week to six months effort to get the various drivers accepted.

The ALSA driver works with normal ALSA players. It also exposes about 200 hardware specific IOCTLs for controlling every aspect of the TAS5504. We'll need to write a user space app to setup the TAS to exactly match the connected speakers. The TAS supports the complex signal processing needed to bi/tri-amp. Part of the setup is programming the digital filters to support the correct speaker configuration.

This morning I figured out how to program the flash on the Phytec mpc5200 development card using a $50 ARM JTAG. I did this by modifying UrJtag. This a significant advancement since flash programmers for the PowerPC cost $1000-4000. With these changes a hobbyist can unbrick a Digispeaker for $50.

I used this ARM JTAG but this one should also work. The Phytec card's flash is on a multiplexed bus making it harder to program via JTAG. The Digispeaker boot flash is not multiplexed so it is much easier to deal with. I'll contribute my changes back to the UrJtag project in a few days.

Next up is some more testing with the flash programmer. After that I'll solder together an IR receiver using Radio Shack parts and write a driver for it.

Prototype IV: BOM

The bill of materials for Prototype IV has been complete. Here it is as an OpenOffice spreadsheet.

This BOM needs some work. Right now, the parts come out to be about $103 assuming we get some additional discount from a distributor for doing most of our buying through them. The $103 price is a 12% discount (too much?) from the 1000 part pricing. Mostly from DigiKey.

Also, every resistor and capacitor has been overspec'ed. Across the board, I put in 1/4 watt, 1% resistors and 25V capacitors (unless something greater was required). Also, I didn't go below a 1206 package because I don't think I can hand-solder anything smaller than that.

In addition, there are some expensive chips such as the voltage regulators and some of the line drivers that could easily be replaced once we have some more experience on the design. For now, I am overspec'ing to get a working board before I try to dial back the design.

Notice that the Powerline Modem is about 20% of the cost. This seems a little expensive but when you consider what it is doing for us it might be cheap. Jon has looked into replacing it with some algorithms on the MPC5200 but the OFDM stuff requires several inverse FFT's that start to tax the processor. He thinks the $20 is worth it right now. Notice that if we when with WiFi modules the cheapest we could add the feature is around $30. At that price, it would be an 'iffy' module at best (like a USB dongle). At $20, we believe we are going to get solid networkings. Time and testing will tell.

The Insteon people are now saying that they want $4 for their IN2680A chip. We were originally quoted something around $1.75 so that is quite a jump. For now, we are sticking with their chip. However, Jon is close to cloning the chip with some algorithms that run on the MPC5200. If that happens, we can reduce the Insteon feature the signal xmit and receive paths and a few other parts. That might knock $8 from the design.

Syndicate content