Archive for November, 2008

Version Control using Subversion (SVN)

Posted in Uncategorized on November 21, 2008 by Mike Szczys

The code for my projects has been getting ever more complex. Add to that the fact that I’m now using multiple computers for development and I find I have a need for a version control system.

I have had experience checking out projects on both CVS and SVN control systems but have never made commits or maintained the system myself. Luckily there are some good guides out there and Ubuntu has everything I need in the repositories to get my chosen package system, Subversion, up and running.

Tutorials
I used parts from both of these tutorials:

Installation

I did not install or setup the web interface system. Right now I’m trying everything out using my local network so installing the subversion ubuntu package is all I really needed.

I followed the Community Documentation’s guidelines to create a directory at /home/svn and to add the group “subversion” making myself and www-data members of that group.

Commands
Create the project:

sudo svnadmin create /home/svn/myproject

Import the first version of the code you have written. This will import all files in the DIR_TO_IMPORT:

svn --username YOUR_USERNAME import DIR_TO_IMPORT file://YOUR_LAN_ADDRESS/home/svn/myproject -m "First file import"

Check Out the first revision of the code. You want to make sure to check out from SVN now instead of working from what you just imported. This will make committing your changes easy.

svn co file://YOUR_LAN_ADDRESS/home/svn/myproject

note: these command should be run from the working directory.
Commit changes you have made to the repository:

svn commit

Show the changes you have made since checking out the latest version:

svn diff

Update to the most current version from the repository:

svn update

Breakout Board for 3595 LCD

Posted in Uncategorized on November 20, 2008 by Mike Szczys

2008-11-20-lcd-breakout-boardI have manufactured a breakout board for the nokia 3595 lcd screen. As you can see this facilitates both interface with the screen itself as well as a backlight.

For the backlight I salvaged two LEDs from the phone board itself. I carefully measured and laid out the location for the copper to interface with the “spring” connection for the screen as well as the holes for the LEDs. The LEDs are SMD devices that are soldered to the bottom of the board and stick through a hole to the top of the board. I then cut the keypad area off of the plastic housing for the LCD and used that in conjunction with the metal frame from the phone to mount the unit to my home built PCB.

This is my first double-sided PCB. It doesn’t have the cleanest lines but it works and that’s good enough for me. I found it a bit more difficult to iron on the toner to both sides without smearing it (due to too much heat or from moving the paper while I worked).

Character Set for 3595

Posted in 3595 LCD, AVR with tags on November 17, 2008 by Mike Szczys

2008-11-17-character-set

Here you can see the full ASCII character set displayed on the 3595 lcd. It was actually amazingly simple to get to this point from the previous “helloworld” firmware.

The most important change that was made is that I upgraded to an ATmega168 to solve my programming space problem. This chip will still operate at 3.3v which is the operating voltage of the LCD. The additional 14kb of programming space should give me plenty of room to grow. I would also like to dabble with SD card compatibility and this chip should allow me to do so (I’ve never looked into it so I may be wrong).

For the character set I borrowed the array and the function to read the characters from memory from a past project. I then wrote a function to handle advancing a “virtual cursor” after each character is written. This function handles wrapping to the next row when about to overflow as well as wrapping from the bottom to the top. The last thing was a function to parse the character information and write it on the screen.

I’ll provide more details in my next update.

3595 LCD – Hello World

Posted in 3595 LCD, AVR with tags on November 16, 2008 by Mike Szczys

2008-11-16-hello-world

I have made quite a bit of progress. Here you see my “Hello World” on the nokia 3595 lcd screen. I have been pouring over the datasheet as well as examining code from two different projects to get to this point. It seems that I am having no problems addressing the display and writing to it. I do still have some work to do with the initialization sequence.
Continue reading

3595i LCD – First Signs of Life

Posted in 3595 LCD, AVR on November 14, 2008 by Mike Szczys

first_signs_of_lifeEven a small success is a success. I have for the first time seen a reaction from the LCD screen I pulled out of my nokia 3595i. Although I had some code on hand from other Internet sources I couldn’t get any response from the screen. Please forgive this photo, I don’t have a suitable back light set up for this display so you see an LED filtered by a piece of paper behind the display.
Continue reading

LED Menorah powered by AVR tiny13

Posted in AVR, Projects with tags , on November 13, 2008 by Mike Szczys

LED Menorah

LED Menorah

Last week on hack-a-day I saw their post on an LED Menorah that was powered by a 9v battery with the lights controlled by dip switches. I thought to myself, “gee, that’s not a very creative design”. There was redemption in the minimalist designs linked too showing a menorah soldered to a tiny2313 and one soldered to an LM2913, both without a circuit board.

These free formed designs were creative but a little too down and dirty for me. I thought I could do better, and immediately thought of the handful of tiny13 8-pin microprocessors I had sitting around. I wanted to make a menorah with the following features in mind:

  • Controlled by an AVR ATtiny13
  • Powered by ~3v (unregulated to save on parts)
  • One button operation
  • Sleep mode when the menorah “burns out” after an hour or so

I’m happy to say I did accomplish all of my goals.  More after the break.
Continue reading

Programming AVR on Ubuntu 8.10 Intrepid Ibex

Posted in AVR, Programming, ubuntu with tags , , on November 10, 2008 by Mike Szczys

I have been using kubuntu as my OS for quite some time.  This week I upgraded to 8.10 Intrepid Ibex and it is awful (the kubuntu version).  I had major issues with using remote desktop and I don’t like the “usability” of the new version of KDE.  To make a long story short, I’ve switching back to ubuntu (which uses the gnome desktop) by way for a fresh install and need to set things up to program AVR again.  Let’s see if I can remember how I did it before. Continue reading

LCD – a whole lot of nothin’

Posted in 3595 LCD, AVR with tags on November 10, 2008 by Mike Szczys
LCD from Nokia 3595 connected to breadboard (not working)

LCD from Nokia 3595 connected to breadboard (not working)

I did do a bit of work with the 3595 lcd screen.  I’ve got the circuit hooked up as I think it should and I ported the mega8 code for a tiny2313.  Once everything was fired up I get nothing.

In order to fit the mega8 code in the 1k programming space of the smaller chip I had to take out everything related to strings.  This should not have broken the initialization of the screen itself so I try to do a full write and full clear but I can see not response from the display.  I took a look at the datasheet for controller in this board; initialization is quite complicated require setup not only of the data in memory but the power supply built into the controller.  I’m putting this one on the back burner for a while.

Feel free to leave comments if you have any advice.  I might try to build an oscilloscope (or an interface to use my computer as one) before I continue.  Without it I’m kind of flying blind with getting this working.