StackBook Part 6 - Ethernet
07 09 09 - 20:31 I got about half way through soldering a small bit of board to the bottom of the graphical LCD so I could plug a 16-pin header in it (I wasn't in the mood for extensive point-to-point soldering...).So instead I tried something easier - the ethernet module. I soldered up the SPI pins, and plugged the ethernet module into the board... but I couldn't seem to make it behave. Initially I had the module's chip select tied high, but still no luck. The module would come up, and the computer would recognise the ethernet cable as plugged in, but it wasn't showing up at that IP - or generating any traffic. So I wired it to the AVR's CS line - I figured the AVR may have a problem with not being able to see that something is on the CS line.
Sometimes after programming, lights would come on, sometimes it wouldn't - and after replugging the power cable it'd come sometimes as well. But I still couldn't send any traffic. Anyway, I read somewhere else that this arrangement sometimes does not produce a long enough reset pulse for the ethernet module and that it should be connected to a normal pin. So I put it on one, and pulled the line low for 10ms upon startup (much longer than necessary). The module then had lights every time it was turned on, which was a bit better than before. But still no data.
I decided to look through the header files, and eventually found spi.h in the Utility folder of the ethernet library... apparently using the hardware SPI does require setting pins. A few changes later, and it worked!
A bit more messing round, and I had this going:

Ethernet controlled character LCD :D
Now I just need to wire up the GLCD board, and once the keyboard arrives, get some IRC'ing going :D
Trackback link: http://gm.stackunderflow.com/blog/pivot/tb.php?tb_id=143