Sunday, February 13, 2011

Stepper Motor Menggunakan Bascom AVR (Tugas Mikroprosesor)

Motor stepper mengubah pulsa-pulsa listrik yang diberikan menjadi gerakan-gerakan diskrit rotor yang disebut langkah (steps). Nilai rating dari suatu motor stepper diberikan dalam langkah per putaran (steps per revolution). Motor stepper umumnya mempunyai kecepatan dan [torsi] yang rendah.

Motor stepper bekerja berdasarkan pulsa-pulsa yang diberikan pada lilitan fasanya dalam urut-urutan yang tepat. Selain itu, pulsa-pulsa itu harus juga menyediakan arus yang cukup besar pada lilitan fasa tersebut. Karena itu untuk pengoperasian motor stepper pertama-tama harus mendesain suatu sequencer logic untuk menentukan urutan pencatuan lilitan fasa motor dan kemudian menggunkan suatu penggerak (driver) untuk menyediakan arus yang dibutuhkan oleh lilitan fasa.

Elemen-elemen berikut menentukan karakteristik suatu motor stepper:
  1. Tegangan, motor stepper biasanya mempunyai tegangan nominal. Tegangan yang diberikan kadang-kadang melebihi tegangan nominal untuk mendapatkan torsi yang dibutuhkan, tetapi dapat menyebabkan panas berlebih dan mempersingkat usia motor. 
  2. Hambatan, karakteristik lainnya adalah hambatan-per-lilitan. Hambatan ini akan menentukan arus yang ditarik oleh motor, dan juga mempengaruhi kurva torsi dan kecepatan kerja maksimum motor.
  3. Gambar Rangkaian dengan Proteus ISIS
  4. Derajat per langkah (step angle), faktor ini menentukan berapa derajat poros akan berputar untuk setiap langkah penuh (full step). Operasi setengah langkah (half step) akan melipat-gandakan jumlah langkah-per-revolusi, dan mengurangi derajat-per-langkahnya. Derajat-per-langkah sering disebut sebagai resolusi motor.
  5.  
    Pada tutorial ini akan membahas tutorial stepper motor dengan menggunakan Bascom AVR dan Proteus ISIS.





    Berikut code bas-nya :

    $regfile = "m16def.dat"
    $crystal = 1000000

    Config Kbd = Portb
    Config Lcd = 16 * 2
    Config Lcdpin = Pin , Db4 = Portc.4 , Db5 = Portc.5 , Db6 = Portc.6 , Db7 = Portc.7 , Rs = Portc.0 , E = Portc.1
    Config Portd = Output
    Config Porta = Input

    Dim A As Byte , B As Byte , Key As Byte , C As Byte , D As Byte , E As Byte

    Cls
    Cursor Off

    B = 0
    D = 1

    Q:
    Locate 1 , 1
    Lcd "Direction:"
    Locate 2 , 1
    Lcd "Speed:"
    Do
    '************Read Keyboard
    A = Getkbd()
    If A > 15 Then
       Goto Q
    Else
       Key = Lookup(a , Dta)
         If Key <= 9 Then
               B = B * 10
               B = B + Key
    '*************Direction
              If D = 0 Then Lcd B
                       Waitms 270
                   Elseif Key = 10 Then
                       Locate 1 , 11
                       Lcd "Left"
                       C = 1
                       D = 0
                       B = 0

                   Elseif Key = 11 Then
                      Locate 1 , 11
                      Lcd "Right"
                      C = 2
                      D = 0
                      B = 0
    '****************reset
                   Elseif Key = 13 Then
                      Cls
                      D = 1
                      B = 0
                      Portd.0 = 0
                      Portd.1 = 0
                      Waitms 50
                      Goto Q
    '****************Enter key
                   Elseif Key = 14 Then
                       If D = 0 Then
                           Select Case C
                              Case 1 : Gosub R
                              Case 2 : Gosub T
                           End Select

                       End If
             End If

    End If

    Wait 1

    Loop

    End

    Dta:
    Data 7 , 8 , 9 , 10 , 4 , 5 , 6 , 11 , 1 , 2 , 3 , 12 , 13 , 0 , 14 , 15

    R:
    Do
    Portd = &B00000001 : Waitms B
    Portd = &B00000011 : Waitms B
    Portd = &B00000010 : Waitms B
    Portd = &B00000110 : Waitms B
    Portd = &B00000100 : Waitms B
    Portd = &B00001100 : Waitms B
    Portd = &B00001000 : Waitms B
    Portd = &B00001001 : Waitms B
      If Pina.0 = 1 Then
          Locate 2 , 1
          Lcd "Speed:"
          B = 0
          Lcd B ; "          "
          Return
      End If

    Loop

    T:
    Do
    Portd = &B00001001 : Waitms B
    Portd = &B00001000 : Waitms B
    Portd = &B00001100 : Waitms B
    Portd = &B00000100 : Waitms B
    Portd = &B00000110 : Waitms B
    Portd = &B00000010 : Waitms B
    Portd = &B00000011 : Waitms B
    Portd = &B00000001 : Waitms B
       If Pina.0 = 1 Then
           Locate 2 , 1
           Lcd "Speed:"
           B = 0
           Lcd B ; "          "
           Return
       End If

    Loop




    Dan ini video tutorialnya :





    BASCOM TEAM :
    1. Yoga Mustofa (41408120004)
    2. Andri Kamiludin (41408120030)
    3. Odih Harjum (41408120001)
    4. Andi Nurcahyadi (41408120036)
    5. Agus Dwiyanto (41408120003)
    6. Ronald Jackson Manuhutu (41408120057)
    7. M. Ady Nurs (41408120014)
    8. Jeffry Klau
    9. Agustinus Sigit  
     

      continue reading

      Thursday, February 3, 2011

      Trigonometry

      Trigonometry (from Greek trigōnon "triangle" + metron "measure" or from Sanskrit trikon "triangle" + miti "measurement" = trikonmiti) is a branch of mathematics that studies triangles and the relationships between their sides and the angles between sides. Trigonometry defines the trigonometric functions, which describe those relationships and have applicability to cyclical phenomena, such as waves. The field evolved during the third century BC as a branch of geometry used extensively for astronomical studies.

      continue reading

      Complex number

      A complex number is a number consisting of a real and imaginary part. It can be written in the form a + bi, where a and b are real numbers, and i is the standard imaginary unit with the property i 2 = −1. The complex numbers contain the ordinary real numbers, but extend them by adding in extra numbers and correspondingly expanding the understanding of addition and multiplication.

      continue reading

      Telecommunication

      Telecommunication is the transmission of information, over significant distances, for the purpose of communication. In earlier times, telecommunications involved the use of visual signals, such as beacons, smoke, semaphore telegraphs, signal flags, and optical heliographs, or audio messages via coded drumbeats, lung-blown horns, or sent by loud whistles, for example. In the modern age of electricity and electronics, telecommunications now also includes the use of electrical devices such as telegraphs, telephones, and teletypes, the use of radio and microwave communications, as well as fiber optics and their associated electronics, plus the use of the orbiting satellites and the Internet.

      continue reading

      Mathematics

      Mathematics is the study of quantity, structure, space, and change. Mathematicians seek out patterns, formulate new conjectures, and establish truth by rigorous deduction from appropriately chosen axioms and definitions.
      Through the use of abstraction and logical reasoning, mathematics evolved from counting, calculation, measurement, and the systematic study of the shapes and motions of physical objects.

      continue reading

      Philosophy

      Philosophy is the study of general and fundamental problems, such as those connected with existence, knowledge, values, reason, mind, and language. It is distinguished from other ways of addressing such problems by its critical, generally systematic approach and its reliance on rational argument. The word "philosophy" comes from the Greek φιλοσοφία (philosophia), which literally means "love of wisdom".

      continue reading

      Management

      Management in all business and organizational activities is the act of getting people together to accomplish desired goals and objectives using available resources efficiently and effectively. Management comprises planning, organizing, staffing, leading or directing, and controlling an organization (a group of one or more people or entities) or effort for the purpose of accomplishing a goal. Resourcing encompasses the deployment and manipulation of human resources, financial resources, technological resources, and natural resources.

      continue reading

      Wednesday, February 2, 2011

      Newton's Laws of Motion

      Newton's laws of motion consist of three physical laws that form the basis for classical mechanics. They describe the relationship between the forces acting on a body and its motiondue to those forces. They have been expressed in several different ways over nearly three centuries, and can be summarized as follows:
      1. First law: Every body remains in a state of rest or uniform motion (constant velocity) unless it is acted upon by an external unbalanced force. This means that in the absence of a non-zero net force, the center of mass of a body either remains at rest, or moves at a constant speed in a straight line.

      continue reading

      Capacitor

      A capacitor (formerly known as condenser) is a passive electronic component consisting of a pair of conductors separated by a dielectric (insulator). When there is a potential difference (voltage) across the conductors, a static electric field develops in the dielectric that stores energy and produces a mechanical force between the conductors. An ideal capacitor is characterized by a single constant value, capacitance, measured in farads. This is the ratio of the electric charge on each conductor to the potential difference between them.

      continue reading

      Resistor

      A resistor is a two-terminal electronic component which implements electrical resistance as a circuit element. When a voltage V is applied across the terminals of a resistor, a current I will flow through the resistor in direct proportion to that voltage. The reciprocal of the constant of proportionality is known as the resistance R, since, with a given voltage V, a larger value of R.

      continue reading

      Tuesday, February 1, 2011

      Share printer from Windows XP from Windows 7

      One common problem I have run into with clients is trying to share a printer connected to a Windows XP machine with Windows 7. There are lots of people out there that have USB connected printers attached to one computer, usually a Windows XP machine.

      If you get a new laptop running Windows 7, it makes sense to share that printer so that any computer can print to it. Unfortunately, trying to print to an shared printer on XP from Windows 7 is not as simple as it should be !

      continue reading

      How to Host MultiSpeak Web Services on Your Windows PC?

      You can load the MultiSpeak web service definitions on a local PC for convenience. In order to do so you must have Microsoft's Internet Information Server (IIS) loaded on the PC.

      How to install IIS and load the MultiSpeak web services on Windows XP Professional:


      1. Insert the Windows XP Professional CD-ROM into your CD-ROM drive.
      2. From the Start Button, go to Settings, and then Control Panel.
      3. In the Control Panel window, select Add/Remove Programs.
      4. In the Add/Remove window, select Add/Remove Windows Components.
      5. In the Wizard window, check Internet Information Services, leaving all of the default installation settings intact. Click NEXT. Wait for Windows to finish loading IIS, then click FINISH.
      6. An Inetpub folder will be created on your hard drive.
      7. Open the Inetpub folder and find the folder named wwwroot.
      8. Unzip the file named MultiSpeakBusArchitecture Vxxx MMDDYY.zip into the wwwroot folder (where Vxxx is the version name, e.g. V30qb for Version 3.0, bus build q, and MMDDYY is the date of the release).
      9. Next we would like to make sure that the web server is running. Open the Control Panel, then Administrative Tools, and double-click on the "Internet Information Services" icon. While in the Internet Information Services window, click the plus sign next to the name of your computer to expand the tree view, then click the plus sign on the "Web Sites" entry to expand that entry, and finally expand the "Default Web Site" entry by clicking its plus sign. Right click on "Default Web Site" and make sure that the word "Start" is greyed out; if not, click on "Start" to start the localhost web server.
      10. Next we want to create a virtual directory for the MultiSpeak web services. Right click on the "Default Web Site" entry, choose "New" and then "Virtual Directory" from the menu. A Virtual Directory Creation Wizard window will open. Follow the instructions to create a new virtual directory. Begin by choosing an alias name for the directory. For this example I will use the alias to be "MultiSpeakWebServices", but you could use any folder name you like. Click NEXT. The Virtual Direction Creation wizard will open. Next browse to the directory that was created when you unzipped the web services in the C:/Inetpub/wwwroot folder in step 8. It should have the same name as the zip file you unzipped in step 8. Click the NEXT button to accept the directory. Next the wizard will ask you to choose "Access Permissions". Accept the default access permissions by clicking the "Next" button, and then the "Finish" button to complete the wizard. The Internet Information Services window should now show a new entry under the "Default Web Sites" tree entry that is named "MultiSpeakWebServices" (or whatever name you chose when you created the new virtual directory in this step).
      11. In the Internet Information Services Manager window, right click on the new virtual directory that you just created, choose properties, and the ASP.NET tab in the Properties window. Make sure that the ASP.NET version is 2.0 or higher. If the ASP.NET tab does not exist, or if ASP.NET version 2.0 or higher is not an option from the pull down menu in the ASP.NET version box, then you will have to download the .NET Framework Version 2.0 or higher from the Microsoft web site. You can get the .NET Framework Version 2.0 download from: http://www.microsoft.com/downloads/details.aspx?FamilyID=0856EACB-4362-4B0D-8EDD-AAB15C5E04F5&displaylang=en . This will download a file named dotnetfx.exe. Follow the setup wizard to install dotnetfx.exe and repeat this step to ensure that the virtual directory defaults to ASP.NET version 2.0 or higher.
      12. Open your browser and type in http://localhost/MultiSpeakWebServices/IndexPage.aspx . If you chose a different name than "MultiSpeakWebServices" for your new virtual directory in step 11, substitute that name in the URL shown above (for instance if you used "MyNewVirtualDirectory" instead of MultiSpeakWebServices" the URL would be http://localhost/MyNewVirtualDirectory/IndexPage.aspx .
      13. The opening index page for the Web services should come up.


       

      Sorting the methods alphabetically

      If the web service methods are not displayed alphabetically, you can force ASP.NET to sort the methods by modifying the DefaultWsdlHelpGenerator.aspx page which is used to create that test page (%windir%\Microsoft.NET\Framework\v1.1.4322\CONFIG\DefaultWsdlHelpGenerator.aspx).  ASP.NET gathers up the description information for the requested web service/asmx and passes that data to the help generator page.  You can modify this page however you see fit (or you can tell ASP.NET to look in a different location for the generation page by modifying the machine.config's system.web/webServices/wsdlHelpGenerator node).

      If you look in this file, you'll see around line 1285:

              Hashtable methodsTable = new Hashtable();
              operationExists = false;
              foreach (ServiceDescription description in serviceDescriptions) {
                      foreach (PortType portType in description.PortTypes) {
                              foreach (Operation operation in portType.Operations) {
                                      string messageName = operation.Messages.Input.Name;
                                      if (messageName == null || messageName.Length == 0) messageName = operation.Name;
                                      if (messageName == operationName)  operationExists = true;
                                      if (messageName == null) messageName = String.Empty;
                                      methodsTable[messageName] = operation;
                              }
                      }
              }
              MethodList.DataSource = methodsTable;

      The code is creating a hashtable of all of the methods available in the Web service and is then binding the repeater you see on the test page that lists all of the methods to this hashtable.  This sheds light one why the methods appear to be in no particular order on the test page: the code is enumerating a Hashtable rather than an ordered list, so the ordering is at the mercy of the hash values generated for messageName and thus the buckets into which the operations are placed.

      To get the methods listed in alphabetical order, all we need to do is make a one line change, from:
              Hashtable methodsTable = new Hashtable();
      to
              SortedList methodsTable = new SortedList();

      Instead of being placed into a Hashtable, the operations will all be placed into the SortedList, indexed by messageName.  When MethodList is bound to methodsTable (which we would probably also want to rename just for clarity's sake), methodsTable will be enumerated in alphabetical order (thanks to SortedListEnumerator), and thus the methods listed on the test page will be in alphabetical order.

      continue reading

      How to convert your data files from .bt1 format to .raw and .gsas formats?

      You will need to download the 2 files (gformat.exe and proprep.exe) contained on the main page. Put them into a folder that you will work from on your computer. You may also want to download the cmpr file which will enable you to examine all data before you convert.



       

      From the start menu select 'Run'.

      Type 'cmd' in the dialog box and click 'OK'

      This should have opened a separate window. Now you need to get to your files.

      Type 'cd' in the command file and then type the exact location of where the files you want to work with are. Example: cd C:\username\mydocuments\userfile\

      Then press enter, you should now be in this directory. If this doesn't work then try doing this gradually, first type 'cd C:' and enter, then type 'cd username' and enter etc etc until you are in the correct folder.

      Once in your folder you can view and convert your files as normal. By putting your gformat and proprep conversion files into this same folder you can keep everything together and do all data conversions at once.


       

      In order to correctly convert your data files you must first use Proprep to produce a .raw file. This must be done to ensure that the first few points from the first 3 detectors are dropped correctly, accounting for any excess background from the incident beam. Once the .raw file has been created the file can then be converted into a .gsas file using the gformat program. You can do this for just one file or you use the gformat program to sum together multiple files.


       

      There are standard procedures which MUST be followed by ALL users in order to maintain good and correct data from BT-1. The system is set-up so that no data is missed and standard deviations are correctly computed. This also ensures the best data for publications. Please, please follow this method of converting your data and refrain from taking shortcuts.


       

      To create your .raw file using proprep:


       

      In the command line, type 'proprep filename.bt1' where filename represents your specific filename. Example 'proprep file1001.bt1'. Then press enter.


       

      The system will then ask you to enter a cut-off value. The default for this is 3, this should be kept as the default. This is the point at which the system removes the first few points from the first 3 detectors, you do not need anymore to be removed and you should not want any less, so keep this at 3. Press enter. Your .raw file has been created. You can check this by looking at the files in the current directory (type 'dir' to do this).


       

      To create your .gsas file using gformat:


       

      In the command line type 'gformat filename' and then press enter. Note that here you do not need to add the file type – it assumes a .raw file is being converted. If you have not already created the .raw file it will not recognize the command.


       

      If you would like to sum multiple files then you should type 'gformat –s filename1 filename2 filename3' and press enter – this will sum the three files named and create one file in the .gsas format. Please note that only when ALL procedures have been followed should you sum files. These procedures are detailed below.


       

      1)  Examine ALL data sets using cmpr in a multidetector mode, to make sure that there are no problems with the raw data (check detector overlap).

       
       

      2)  Examine ALL data sets to be combined using cmpr in a pseudo-1-detector mode (i.e., plotted on top of one another) to ensure that they are, in fact, the same.


       

      3)  If necessary, you must be able to edit the file.raw data to mark any points you want to delete.  There are separate programs for doing this. Using your chosen editor (Emacs or Vi for example) simply place a minus sign (-) before the points to be deleted and the conversion programs will ignore these points.

       
       

      4) Data sets MUST be added using gformat if they are of unequal length (e.g., 201 pts and 188 pts) in order to put the right esd's in the data file.


       


       

      Other commands of interest.


       

      'dir' – displays all files located within the current folder/directory.

      'cd' – change directory. Type the name of the directory you would like to go to – note that it must be a directory contained with the current one.

      'cd ../' - change to the directory one above the current directory.

      'more file1001.bt1' – displays the exact detector information for the file file1001. Allows you to view the settings, temperature recorded and look at intensities etc. You can use the space bar to go through the file. Press 'q' to get out of this file.

      'cmpr' – open up the cmpr program to view the plot and examine the data. You must exit from cmpr before continuing in the cmd window.


       


       

      continue reading

      NTFS Vs FAT

      To NTFS or not to NTFS—that is the question. But unlike the deeper questions of life, this one isn't really all that hard to answer. For most users running Windows XP, NTFS is the obvious choice. It's more powerful and offers security advantages not found in the other file systems. But let's go over the differences among the files systems so we're all clear about the choice. There are essentially three different file systems available in Windows XP: FAT16, short for File Allocation Table, FAT32, and NTFS, short for NT File System.


      FAT16
      The FAT16 file system was introduced way back with MS–DOS in 1981, and it's showing its age. It was designed originally to handle files on a floppy drive, and has had minor modifications over the years so it can handle hard disks, and even file names longer than the original limitation of 8.3 characters, but it's still the lowest common denominator. The biggest advantage of FAT16 is that it is compatible across a wide variety of operating systems, including Windows 95/98/Me, OS/2, Linux, and some versions of UNIX. The biggest problem of FAT16 is that it has a fixed maximum number of clusters per partition, so as hard disks get bigger and bigger, the size of each cluster has to get larger. In a 2–GB partition, each cluster is 32 kilobytes, meaning that even the smallest file on the partition will take up 32 KB of space. FAT16 also doesn't support compression, encryption, or advanced security using access control lists.

      FAT32
      The FAT32 file system, originally introduced in Windows 95 Service Pack 2, is really just an extension of the original FAT16 file system that provides for a much larger number of clusters per partition. As such, it greatly improves the overall disk utilization when compared to a FAT16 file system. However, FAT32 shares all of the other limitations of FAT16, and adds an important additional limitation—many operating systems that can recognize FAT16 will not work with FAT32—most notably Windows NT, but also Linux and UNIX as well. Now this isn't a problem if you're running FAT32 on a Windows XP computer and sharing your drive out to other computers on your network—they don't need to know (and generally don't really care) what your underlying file system is.

      The Advantages of NTFS
      The NTFS file system, introduced with first version of Windows NT, is a completely different file system from FAT. It provides for greatly increased security, file–by–file compression, quotas, and even encryption. It is the default file system for new installations of Windows XP, and if you're doing an upgrade from a previous version of Windows, you'll be asked if you want to convert your existing file systems to NTFS. Don't worry. If you've already upgraded to Windows XP and didn't do the conversion then, it's not a problem. You can convert FAT16 or FAT32 volumes to NTFS at any point. Just remember that you can't easily go back to FAT or FAT32 (without reformatting the drive or partition), not that I think you'll want to.

      The NTFS file system is generally not compatible with other operating systems installed on the same computer, nor is it available when you've booted a computer from a floppy disk. For this reason, many system administrators, myself included, used to recommend that users format at least a small partition at the beginning of their main hard disk as FAT. This partition provided a place to store emergency recovery tools or special drivers needed for reinstallation, and was a mechanism for digging yourself out of the hole you'd just dug into. But with the enhanced recovery abilities built into Windows XP (more on that in a future column), I don't think it's necessary or desirable to create that initial FAT partition.

      When to Use FAT or FAT32
      If you're running more than one operating system on a single computer, you will definitely need to format some of your volumes as FAT. Any programs or data that need to be accessed by more than one operating system on that computer should be stored on a FAT16 or possibly FAT32 volume. But keep in mind that you have no security for data on a FAT16 or FAT32 volume—any one with access to the computer can read, change, or even delete any file that is stored on a FAT16 or FAT32 partition. In many cases, this is even possible over a network. So do not store sensitive files on drives or partitions formatted with FAT file systems

      continue reading

      How to Dry a Wet Cell-Phone?

      Step 1: Get it out of the water as soon as possible (Obviously! Duh!)

      The fact is that cell phones are designed to handle small amounts of water. So, if the cell phone is just slightly wet, nothing much will happen to it. The problem comes when the cell phone falls into a pool of water completely and the water gets into the cell phones circuit board. Then the cell phone gets "short-circuited" and it goes off! So, the point is, if you can avoid the cell phone from getting too wet, avoid it!

      Step 2: Dismantle your phone
      Remove the battery AS FAST AS POSSIBLE! Do not even waste time thinking about it! Just do it! It is very likely that your phones circuits have survived. But, if they are still powered by the battery, they will short-circuit when the moisture reaches them! So you have to cut the power. You must remove the battery.
      Remove the SIM card and the front panel and back panel and any other part of the phone that can be removed! Basically, as we said earlier, dismantle every piece of the phone that can be dismantled!

      Step 3: Dry everything that you can manually
      Use a tissue or a soft cloth to wipe every part of the phone you can wipe and remove all the water of the surface of all the pieces of the phone.

      Step 4: Be patient and let the phone dry! (The hard part)
      Now it is VERY important that you DO NOT try to put in the battery and switch on the phone! Let all the parts be dismantled and let the phone dry. This is a hard thing to do. You will have a constant temptation to put the battery back in "just to see" if the phone is okay. But, DO NOT do this! Leave the phone in pieces and let all the pieces dry.

      Once of the best ways to dry your phone is to put your phone on the "heat vents" on the back of your computer of your TV!
      Turns out, the amount of heat coming from the "heat vents" is just the perfect amount required to fix your phone! So place all the pieces of the phone carefully over the heat vents such that the wet insides of the phone are exposed to the heat.
      Please Note: Heat other parts of the phone on the "heat vents", but do not heat the phone's battery! If you heat the battery, it is likely that the battery will leak and get spoilt.
      How long should you leave it on the heat vents? For at least 2-3 days!

      Step 5: Test your phone

      After 3 days of patient waiting and letting your phone dry, now you could try to put in the battery and all other parts and test your phone. If it works, hurray! If it does not, switch it off quickly and let it dry for some more time. Give it a day or so…if you have the patients!


      However:This way of saving your phone may not work if the phone got wet in a liquid containing salts, sugar or minerals etc.

      continue reading

      How to Transfer Media Files between iPod and Computer?

      As the iPod user, I think you may have happened to encounter such kind of problem that you accidentally wiped out all your files on computer and want to upload all the files from iPod to computer or you just want to download music and video from computer to iPod folder. Then I will strongly recommend you a powerful iPod Transfer application: Movavi iCopy. This is a piece of sophisticated software for you to transfer all your music, movies, videos, pictures and other files between your iPod and computer.

      With this easy-to-use program, you will never worry about the iPod to computer transferring process. And following is the simple guide for your reference:

      Step 1: Start iPod Transfer on computer.


      Plug your iPod into your computer and double-click the program icon on your desktop. Your iPod file list will appear on the Media library pane.

      Step 2: Select the files from the library.


      In the Media library pane, select a file from which you would like to upload. And all the selected file details will be displayed.

      Step 3: Set for the output files.


      Click the icon next to the Output directory field and choose a necessary folder. If you like, you can also choose Overwrite existing files to replace old files with the newly created ones and the Copy Folder Structure to keep the structure of files when uploading iPod to computer.

      When all are ready, click Download button to start exporting iPod files to computer and the task will be completed in a short while.
      So, with this powerful iPod to computer transferring tool - iPod Transfer and its simple steps, you can have a perfect iPod life!

      continue reading

      Killer App. fopr BlackBerry helps you save on your calls!

      Company claims it can cut your cell phone bill by half!
      MobileMiser Inc. promises to cut your cell phone bill in half. It was designed by a man who didn't have a landline and did all his business over his cell. When he saw the invoices, he decided there had to be a better way.
      And when he couldn't find it, he invented one for himself.
      "If you use Mobilemiser you can call anywhere [in North America] from 4.9 cents a minute," explains creator Rasool Verjee. "Mexico City is 6.9 cents a minute. London is 6.9 cents a minute."

      continue reading

      MEP Code List

      MEP-04598-005 at&t
      MEP-07723-005 orange Santo Domingo
      MEP-15326-002 verizon
      MEP-15326-001 storm verizon
      MEP-04104-007 T-MOBILE USA
      MEP-04103-002 SPRINT
      MEP-06813-002 VODAPHONE SPAIN

      continue reading

      JVM Error Code & Their Description

      Description
      The following table lists errors that can occur in the Java virtual machine (JVM) on BlackBerry devices. Contact Research In Motion® (RIM®) if you encounter any error codes not listed in this table.


      Value Error Description

      101Previous startup failed
      The device was reset during the JVM boot process. The JVM found the boot in progress flag was set on startup. The screen is intended to break continuous reset loops so that corrective action can be taken.

      102Invalid code in filesystem
      The system checked the COD files in the device for modification and determined that a problem exists with one or more COD files.

      If all loads fail, a build process error might occur (a problem exists with signing the COD files).

      If a user action on the device resulted in this problem, the reset cycle is continuous because the code in the filesystem has been corrupted. The only recovery method is to wipe the device and restore a new system.

      103 Cannot find starting address
      The starting address for the boot COD file cannot be found. This might indicate that a boot COD file has not been installed on the device or that its format is invalid or corrupt.

      104
      Uncaught: <Java-type-name>

      An uncaught Java exception was thrown by the Java code and diagnosed by the JVM. Execution can continue, or the device can be attached to a debugger on a desktop computer. The Microsoft® Windows® Event Viewer log should contain the traceback of the thrown exception.

      105

      Example, DbRecSize( %d ) -> %d

      The file system application programming interface (API) has returned an error status for a specific operation. This might indicate a corrupt filesystem or an error in the JVM.

      106

      Graphics system error
      An error was detected in the graphics system on the device.

      107
      operator new() called

      A C++ class in the JVM was coded incorrectly to inherit from VMRamObject that has the correct override for operator new. Extract the current (post-reset) BUGDISP.

      108

      operator delete() called

      A C++ class in the JVM has was coded incorrectly to inherit from VMRamObject that has the correct override for operator delete. Extract the current (post-reset) BUGDISP.

      109

      PriorityMessageCount error: <priority-count>

      The value returned by RimPriorityMessageCount is negative. It should always be greater than, or equal to, zero. This indicates an error in the operating system code. Extract the current (post-reset) BUGDISP and EVENTLOG.

      110
      Non-idle event downtime error: <down-time> <idle-down-time>


      A problem was detected in the accumulation of JVM down time, which represents how long the JVM has been idle. This usually indicates an error in the device firmware or the JVM. This could also occur if the tick count rolls over after 400 or more days of device time.

      111
      Font engine error


      An error was detected in the font engine system on the device. Extract the current (post-reset) BUGDISP and EVENTLOG.

      112
      Java Native Assertion Failure


      An error was detected in the Java native code. Extract the current (post-reset) BUGDISP and EVENTLOG.

      200
      Application manager threw an uncaught exception



      The application manager event thread threw an uncaught exception and cannot continue execution.

      201
      Crypto initialization code failed


      The initialization of the crypto system failed and the device cannot continue execution.

      202
      An attack on the key store has been detected


      An attack has been detected and execution cannot continue.

      203
      Console process died


      The application manager console process (usually the Ribbon) has died. This is likely due to an uncaught exception during execution.

      204
      Persistent Content Exception


      An application tried to commit a plaintext object to the Persistent Store. This will only happen if Content Protection is on and a process tries to save something in the PersistentStore that is marked as plaintext. Since this exception was not handled, the persistent store is in a bad state. You should reset to roll back to the last good commit point.
      Note: This is not a JVM erro; the JVM is simply diagnosing the problem. The eventlog contains information about the erroneous Java code.


      501 VM_THREAD_SWITCHED:
      Internal Error This is an error return used internally in the VM. It should never be reported as a device error.

      502 VM_PROCESS_DEATH:
      All processes exited The last Java process has terminated. There is nothing left to execute.

      503 VM_THREAD_DEATH:
      Internal Error This is an error return used internally in the VM. It should never be reported as a device error.

      504 VM_THREAD_SWITCH:
      Internal Error This is an error return used internally in the VM. It should never be reported as a device error.

      505 VM_BAD_CODE:

      Bad Byte Code An error has occurred in the JIT compiler.

      506 Uncaught Exception
      An uncaught Java exception was thrown in the initial VM Java thread, thus ending the only live thread in the system. The eventlog contains the traceback for the exception.

      507 Unsatisfied Link
      A dependency on a COD file could not be satisfied because the COD file is missing.

      508 Invalid object
      A problem has been detected with a debugger command to the VM.

      509 VM_PPO_INFINITE_LOOP:

      infinite loop in PPO phase of GC The maximum iteration count for the PPO phase of a GC must be the maximum number of file handles in the system. This error indicates that the iteration count exceeds the maximum. Hence, a flaw exists in the PPO loop or a corrupted file system. The extra hex integer in the error string is the flash id of the current record where the infinite loop was detected.

      510 Deadlock

      All threads are waiting on objects, resulting in deadlock. The system cannot recover from this state because no thread can release a lock.

      511 Debug connection died
      A problem has occurred while debugging that may be caused by a VM problem or an incorrect debugging command being sent to the VM.

      512 GC Aborted
      An idle garbage collection has been interrupted by a user event (for instance, a key was pressed or the trackwheel was used).

      513 <clinit> needs running
      An opcode requires that a class <clinit> execute before it can continue execution.

      514 <init> needs running
      A new instance of a class has been allocated and it must be initialized by the default constructor before it can be used.

      515 Object group too big
      The reachable objects form a group that cannot be represented properly by the JVM because either there are too many objects or the total size of the objects is too large.

      516 Persistent ids exhausted
      When committing a persistent object, the JVM found that the persistent store id counter reached its limit. The object was not committed and a critical error was reported. This error should not occur unless a device is heavily used for years.

      517 Filesystem corrupt
      An inconsistency was detected in the JVM persistent object store.

      518 Unexpected longjmp

      A garbage collection marking phase was terminated via a longjmp. This indicates that the marking phase was interrupted when it should have completed without interruption. This error should not occur because these actions are executed when the device is not idle, and GCs can only be interrupted when the device is idle.

      519 Internal Error

      The JVM host is missing or has been disabled.

      520 Internal Return
      This is an internal state that indicates a Java method return needs to be executed.

      521 Dangerous Wait
      An Object.wait() was executed by a thread that holds a lock on another object.

      522 Interlaced synchronization
      A thread acquired two locks on objects in an order that doesn't match the order in which a lock on the two types were previously acquired. This indicates a future potential deadlock situation and is reported. The check is only available in the simulator under the control of the JvmDebugLocks application switch.

      523 System process died

      A critical Java process has terminated, and the device cannot continue to operate in a normal manner.

      524 LMM error
      An object has been marked as recovered by the Low Memory Manager, but it was not freed during a garbage collection.

      525 Bad persistent object
      An auto-commit operation during a garbage collection detected a non-persistent object reachable from the persistent store root. The type of the object was output into the eventlog.

      526 java.lang.Object not found

      The class definition for java.lang.Object cannot be found.

      527 java.lang.String not found
      The class definition for java.lang.String cannot be found.

      528 Corrupt filesystem.
      Unrecoverable. All data will be lost All data will be lost when execution continues. The error message screen contains a number representing an internal reason for the corruption. This error is not diagnosed if a COD file was removed because the JVM must delete objects that were defined in the removed COD file. Thus, this error is not expected in normal device operation. Refer to the following reason codes:
      Root array reference is not a valid array reference
      Root array type is not Object[]
      Root array size < 1 (i.e., Object[0])
      Contents of root[0] is not a valid ref
      Type of root[0] is not a LongIntHashtable
      Persistent segmented array header contains an invalid reference
      An entry in a persistent Object[] contains an invalid reference
      An Object's type refers to an unknown codfile
      An Object's type description in the codfile doesn't match the size in the store
      A reference type field in an Object has an invalid reference in it
      A reference type field in an object points to an object of the wrong type
      A persistent Object[] is missing its descriptor
      Object in persistent store is not marked as persistable
      Root array is segmented and one of the segments is invalid

      529 Corrupt filesystem.
      About to attempt recovery. Some data may be lost Some data will be lost when execution continues. The error message screen contains a number representing an internal reason for the corruption. This error is not diagnosed if a COD file WAS removed because the VM must delete objects that were defined in the removed COD file. Thus, this error is not expected in normal device operation. Refer to the following reason codes:
      Root array reference is not a valid array reference
      Root array type is not Object[]
      Root array size < 1 (i.e., Object[0])
      Contents of root[0] is not a valid ref
      Type of root[0] is not a LongIntHashtable
      Persistent segmented array header contains an invalid reference
      An entry in a persistent Object[] contains an invalid reference
      An Object's type refers to an unknown codfile
      An Object's type description in the codfile doesn't match the size in the store
      A reference type field in an Object has an invalid reference in it
      A reference type field in an object points to an object of the wrong type
      A persistent Object[] is missing its descriptor
      Object in persistent store is not marked as persistable
      Root array is segmented and one of the segments is invalid


      530 VM_PREVENT_GC_OVERFLOW: _preventGC overflow
      A fixed number of native objects can be protected from garbage collection. This error indicates that a native has exceeded the fixed limit of objects that can be protected. If the device is reset or thread tracebacks are logged, the name of the actual native can be extracted.

      531 Flash exhausted
      There are certain operations where the JVM cannot withstand running out of flash space. In these circumstances, this error will be reported if the JVM cannot allocate a required amount of flash space.

      532 VM_ASSERTION_FAILED:

      Assertion failed Normally this JVM error should not be reported since the device is not shipped with assertions enabled. The simulator may report this error in debug mode indicating a VM assertion was violated. Try typing BKPT to activate the debugger and dump the native call stack for forwarding to the VM team.

      533 VM_RUN_METHOD: <method> needs running
      This is used internally for ECMAScript to call Java methods.

      534 VM_FAST_RESET_DISABLED:

      Fast Reset Disabled This is used internally to indicate that fast reset capability is not available. Often used in platform-specific code.

      535 VM_UNUSED_535:

      Unused This is an unused VM error.

      536 VM_FAST_RESET_BAD_INSTANCE: VM Instance Check Failed
      This is used internally to indicate that the VM structure passed in is at the wrong address or has been corrupted.

      537 VM_FAST_RESET_BAD_HEAP: Heap Check Failed
      This is used internally to indicate that the VM heap has been corrupted or pointers into the heap have been corrupted.

      538 VM_FAST_RESET_BAD_IRAM: IRAM Check Failed
      This is used internally to indicate that the VM IRAM checks have detected corruption of VM data structures (threads and local stacks) that reside in IRAM.

      539 VM_FAST_RESET_NOT_IDLE: Not Idle
      This is used internally to indicate that the VM was not idle when the reset occurred and, as such, cannot continue with a fast reset.

      540 VM_FAST_RESET_MULTIPLE_RESETS: Multiple Resets
      This is used internally to indicate that the time since the last fast reset is less than a minimum time. By disallowing multiple fast resets in a short amount of time, this should prevent fast reset loops.

      541 VM_HEAP_COMPACT_INFINITE_LOOP: infinite loop detected in heap compaction
      The VM detected a problem in its RAM heap that indicates its RAM was corrupted. The problem was detected by identifying a possible infinite loop during RAM heap compaction. A bugdisp log and eventlog should be extracted quickly when the device is in this condition. If possible, images of RAM should be saved.

      542 Transient memory leak
      The JVM detected that some memory was not freed, indicating that a memory leak has occurred. This condition is detected as early as possible to improve chances of isolating the cause.

      543 VM_FS_MISMATCH: Incompatible Java filesystem installed
      The VM detected that the operating system binary is different from the operating system binary used to create the Java file system. This means that the Java native methods may not be linked properly and as such, the integrity of the system cannot be guaranteed. The system can be recovered by using the VM DLFX and DLPS commands to delete the fixups and persistent store. This will clear all data and fixups and let the filesystem re-link to match the new operating system binary.
      Note: The recovery order is:

      Delete fixups
      Delete persistent store
      Reset device

      544 VM_SECTION_MAP_OVERFLOW: a module references more than 255 other modules
      The VM detected that a module is trying to reference more than 255 other modules. Extract the filesystem immediately when this error is
      detected.

      545 VM_INCOMPATIBLE_FILESYS: an incompatible or corrupt filesystem was found
      The VM detected an incompatible or corrupt filesystem. Extract the filesystem immediately when this error is detected.

      546 VM_UNUSED_546: unused
      The VM detected that the RAM image of its filesystem is corrupted (failed CRC check). Better to reset than to duplicate the corruption into flash.

      547 VM_UNUSED_547: unused
      This is an unused VM error.

      548 VM_UNUSED_548: unused
      This is an unused VM error.

      549 VM_UNUSED_549: unused
      This is an unused VM error.

      continue reading