Follow Slashdot stories on Twitter

 



Forgot your password?
typodupeerror
×
Handhelds

Journal dutky's Journal: Hacker's Handheld, part VIII

We got clobbered by hurricane Irene (if you heard on the news that there were 6000 people still wihtout power a week after the hurricane, we were two of those people.) so I haven't touched the project for about a week. When I was able to get back to it, I had to regain my bearings.

I cleared off some space on my main Linux box (which I haven't backed up in far too long), installed the ARM cross compiler and tried building a little test program (it monitors the switches and blinks the lights in response to switch actuations). The program compiled just fine, but I'm having trouble downloading the program to the board: I need to re-read the micromonitor docs.

I've also tried writing a micromonitor script to do the switches and lights thing, but I'm also having trouble getting that downloaded to the board. In this case it's a problem I've seen before: I can't simply paste the text of the program into minicom with an editor running on the SBC. The paste operation sends data far too fast for the SBC to digest and you only get bits of the pasted text. Minicom's own ASCII transafer program doesn't seem to work, at least not as configured, so I need to do some fiddling to either

  1. reconfigure minicom to send the script file successfully, or
  2. figure out how to send files to the SBC using XModem (again, I need to re-RTFM).

The program, whether as a C program or a micormonitor script, is pretty straightforward and should work just fine. I've been able to test all the major functionality from the micromonitor command line, so at least I've seen some blinkenlights and can verify that the sense switches are actually sensed.

I also spent some time trying to configure the linux kernel (a fresh source tree for the 2.4.22 kernel) to run on the board. First, I can't run the menuconfig process when ARCH := arm. The AWK script that builds the menuconfig scripts fails early on. Second, the prompted config process only lists a handfull of supported boards, and the CSB335 isn't amoung them. I googled for "linux csb335 kernel" (and a few similar searches) but didn't come up with anything pertinent. I guess I'll need to post a few questions to USENET, maybe send email to Cogent.

I need to do some digging to find out how to configure linux for a specific CPU and then for the resources on my board (especially becuase, once I have built my own breakout board with custom peripherals and memory map, the target platform will be completely unique).

The breakout board will have a USB interface chip, an EIDE interface, some switches and LEDs, and a PIC MCU to deal with the 4-wire touchscreen. Later, the board will also include a PIC MCU to monitor line and battery voltage and charge the batteries when line power is available. The USB interface and EIDE port should work just fine with default Linux drivers (I just need to specify the memory locations), but the switches, LEDs and PICs will need custom drivers of some sort. I may also need to write a driver for the CSB335 I2C interface, which is, I think, a custom job from Cogent.

More reading to do.

The flow chart is a most thoroughly oversold piece of program documentation. -- Frederick Brooks, "The Mythical Man Month"

Working...