Name: Luke Kenneth Casson Leighton
Member since: 2005-01-11 23:48:31
Last Login: 2010-01-31 16:56:29
Homepage: http://lkcl.net
Notes: Hmm... my account information and Certs appear to have been truncated. waah!
Complete list of articles by lkcl
well, it has been a damn busy few weeks. i managed somehow to persuade a hardware designer to help create the PCB. i think basically it was because he was thinking along the same lines (to have an affordable PC appliance that can also have "phone" capability) and so me coming along basically i could be the one to do all the leg-work sourcing components and connectors.
so, that's what i've been doing, non-stop.
also part of the "job" so to speak is to create a motherboard layout, where all the major connectors and components will fit. amazingly, i've managed to get almost everything but the camera, the LCD/Touchpanel connector and the SIM card holder into a space 3in x 5in.
the motherboard takes an SO-DIMM which contains the processor: it's a 144-pin type, where the daughter board is a 67 x 40 mm board containing the CPU and more.
i would dearly love to get the SIM card holder underneath the CPU module, but the clearance is only about 1mm.
suuch fuuun....
i've been incredibly busy the past few days, doing rapid 3in x 5in sketches to ensure that the components fit - jorjin's WG7310, telit's UC864, 4x USB (double-stacked), RJ-45, OMAP DIMM module.
sourcing LCD screens is damn hard, btw. four days of messages and phone calls.
gotta go.
good god, OMAP3530 pin multiplexing is complex and convoluted. basically, there are more functions than there are output pins, so you have to set "modes" on a pin, and it routes to one of (seven i think) functions.
start-up initialisation can either be done by u-boot or, if you define CONFIG_OMAP_MUX, by the linux kernel. the linux kernel source is such a dog's dinner that people recommend it be done by u-boot.
so i _think_ i've worked out that the IGEP-v2 has McBSP3 on the default u-boot pins 4,6,8 and 10. that leaves just a bit of wiring, putting 1.8v output as well to one side of the MAX3378 level converter.
i've also discovered that VAUX1 is a controllable output (from the modem! yaay! AT#VAUX=0 or 1) which provides CMOS 2.6v levels, yaay! actually it's nominally around 2.9v which is what's required to power CMOS 2.6v.
so, that's going on the other side of the MAX3378.
bar a few AT commands, i will then have the Digital PCM Audio of the UC864 connected to the McBSP of an OMAP3530, yaay!
next all i have to do is write the device driver...
well, i'm making slow progress. i got a relatively expensive voltage regulator circuit that just required external resistors in order to specify the output voltage: the trouble is that the accuracy required on a single variable resistor is far too low! so, i need to create a series of resistors so i can accurately set 380.godknowswhat ohms.... :)
but for now, the 3x 1.5 volt cells i'm using are so incapable of supplying enough current that it doesn't matter. i finally got that multimeter: when the device is switched on and connected to the internet as a 3G modem, the output voltage from the battery can be seen to slowly drop... by the time it gets to below 3 volts, the Telit modem can't stand it any longer and falls off the edge of the world.
so, i'll need to put the Ni-Cads in place, instead, and for _that_ i am _definitely_ going to get those resistors set up in parallel/series to create the right voltage!
in the mean-time, i'm wiring up the Digital Voice PCM and getting ready to connect it to the IGEP-v2. i've got the level converter (MAX3378) already sorted out. i _thought_ there was a way to power the UC-864-G side of the level converters without requiring a 2.6v power source: oops, it turns out that there isn't one... so, uhhn... i'm going to have to make one. that means either a resistor bridge or... well... i'm considering using one of the GPIO pins from the UC-864-G ho hum...
at least on the IGEP-v2 / BeagleBoard side, there's a 1.8v reference output available (which strictly speaking you shouldn't use, but hey...)
1 Dec 2009 (updated 1 Dec 2009 at 21:57 UTC) »
well, this is getting .... interesting. i've bought some MAX3378 level converters, to cope with the 1.8v to 2.6v voltage differences (MAX3378 so that i don't have to worry about getting the direction right).
i'm wiring the UC-864-G Digital Video PCM to the OMAP3530's "MCBSP" - multi-channel buffered serial port. i'm not going to worry about providing the voltages via a stable power source yet, i'm just going to nick the voltages on each side from each device.
i've soldered the MAX3378 onto a prototyping board (0.5mm pitch...) and tested one of them. stunningly, it worked - powered by 3x 1.5v batteries on one side and 2x 1.5v batteries on the other :)
the next step is to write a McBSP audio driver, making sure all the parameters are right, and also mashing omap-mcbsp.c into submission. omap-mcbsp.c assumes that all audio channels will be stereo and variable (KNOT) rate. UC-864-G actually does U-Law, A-Law or Linear Q15, which i believe to be Signed 16-bit (S16 in alsa terminology), and it's specifically 8kbaud and it's definitely mono.
the only bits i'm not sure about are whether i should be setting an external clock (like the pandora) on the McBSP and whether i should be setting inverted-frame and inverted-clock because the UC-864-G defaults to "master" and sends data on "falling edge"...
mmmm :)
lkcl certified others as follows:
Others have certified lkcl as follows:
[ Certification disabled because you're not logged in. ]
FOAF updates: Trust rankings are now exported, making the data available to other users and websites. An external FOAF URI has been added, allowing users to link to an additional FOAF file.
Keep up with the latest Advogato features by reading the Advogato status blog.
If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!