Getting started with the TINI Board **** NOTE: This text version does *not* cover the most recent **** release of the TINI software. For the current instructions, **** please read the HTML version found at: **** **** http://www.junun.org/TINI/GettingStarted.jsp **** **** I will update this text version in the near future, **** when I get some time. Author : Guillaume Fournier and Tim Rohaly Covering release Beta 2.1 Any information regarding this file can be posted on the TINI Mailing List (tini@ibutton.com) or sent to me directly (guillaume@junun.org) German version covering Alpha 6 patch 1 available (translation by Tamer Kavlak) at http://www.adt-cyclone.com/tini/GettingStarted.html 1. Get the TINI Board software package from their web site (ftp://ftp.dalsemi.com/pub/tini/tinibeta021.tar.gz). Make sure you save the file using this exact name : "tinibeta021.tar.gz". Netscape is sometimes changing the name by itself when you hit the location. Uncompress this. The TINI directory will be further referred as . This is the directory where you should find these files : . 02-22-00 10:12p . .. 02-22-00 10:12p .. FIRMWARE 02-22-00 10:12p firmware EXAMPLES 02-22-00 10:12p examples TINICL~1 JAR 347,151 02-14-00 2:00p tiniclasses.jar TINI JAR 145,831 02-14-00 2:00p tini.jar CHANGES TXT 22,200 02-14-00 2:03p CHANGES.txt JAVAKI~1 JAR 19,846 02-14-00 2:02p JavaKitSrc.jar BUILDI~1 TXT 4,572 02-11-00 2:47p BUILDING_APPLICATIONS.txt README TXT 11,096 02-14-00 1:58p README.txt RUNNIN~1 TXT 1,207 02-11-00 2:49p RUNNING_JAVAKIT.txt API_DI~1 TXT 7,522 02-14-00 1:38p API_Diffs.txt SLUSH_~1 TXT 6,391 02-11-00 9:21p SLUSH_CHANGES.txt 9 file(s) 565,816 bytes 2. Get JDK 1.2.2-001 from Sun's web site (http://java.sun.com/products/jdk/1.2/download-windows.html) Install the JDK. The JDK directory will be further referred as . This is the directory where you should find these files (when a typical installation is done) : . 02-22-00 10:16p . .. 02-22-00 10:16p .. UNINST ISU 235,708 02-22-00 10:17p Uninst.isu BIN 02-22-00 10:16p bin README 5,910 10-23-99 2:37p README LICENSE 8,468 10-23-99 2:37p LICENSE COPYRI~1 950 10-23-99 2:37p COPYRIGHT README~1 HTM 21,014 10-23-99 2:37p readme.html CHECKS~1 2,028 10-23-99 2:37p CHECKSUMS CHANGES 2,966 10-23-99 2:37p CHANGES JRE 02-22-00 10:16p jre LIB 02-22-00 10:16p lib INCLUDE 02-22-00 10:16p include INCLUD~1 02-22-00 10:16p include-old DEMO 02-22-00 10:16p demo SRC JAR 17,296,517 10-23-99 2:37p src.jar 8 file(s) 17,573,561 bytes 3. Get javax.comm from Sun's web site (http://www.javasoft.com/products/javacomm/) Unzip the package wherever you feel like. The JAVAX directory will be further referred as . This is the directory where you should find these files : . 02-22-00 10:21p . .. 02-22-00 10:21p .. JAVADOCS 02-22-00 10:21p javadocs WIN32COM DLL 27,648 11-15-98 4:00p win32com.dll COMM JAR 28,043 11-15-98 4:00p comm.jar README~1 HTM 3,913 11-15-98 3:59p Readme.html RECEIV~1 HTM 1,821 11-15-98 3:59p ReceiveBehavior.html JDK12~1 HTM 2,182 11-15-98 3:59p jdk1.2.html PLATFO~1 HTM 3,715 11-15-98 3:59p PlatformSpecific.html COMM20~1 TXT 8,141 11-15-98 3:59p COMM2.0_license.txt APICHA~1 HTM 3,335 11-15-98 3:59p apichanges.html COMMAP~1 TXT 5,374 11-15-98 3:59p CommAPI_FAQ.txt JAVAXC~1 PRO 467 11-15-98 3:59p javax.comm.properties SAMPLES 02-22-00 10:21p samples 10 file(s) 84,639 bytes 4. Copy win32com.dll from to your \jre\bin directory 5. Copy comm.jar from to your \jre\lib\ext directory 6. Copy javax.comm.properties from to your \jre\lib directory 7. Jump to your and create a .BAT file with this line in it. Note that this is case sensitive, especially JavaKit (common mistake). This runs JavaKit, the program you will use to interact with the Board. You will use JavaKit often so a batch file is time saving : \bin\java -classpath \tini.jar;\tiniclasses.jar JavaKit 8. Double-click the batch file you have just created. If everything was installed properly, you should be able to scroll through the combo box at the bottom and see the com ports you have on your computer. 9. Attach a "known to work" RS-232 cable to the TINI Board. It is very important to check your cable since the majority of communication problems reported on the mailing list are related to that. 10.Attach power to the TINI Board. 11.In JavaKit, select the COM port you will be using for the serial I/O. This is whatever COM port you have attached your adapter to on your computer. 12.Make sure the speed is selected as 115200. 13.Select OPEN PORT. 14.When the RESET button becomes enabled, hit it. This sends a reset signal to the TINI Board. The reset circuitry of the TINI Board is connected to the DTR signal of the RS232 cable. By hitting reset, JavaKit generates a short pulse on the DTR line so that the board is going into the power on reset internal procedure. This procedure starts the "loader" that allows us to communicate with the board and download the firmware. 15.In the text area above a prompt should appear along with the words: TINI Loader 08-24-99 9:34 Copyright (C) 1999 Dallas Semiconductor. All rights reserved. 16.Clear all flash banks by typing "z8" followed by the Enter key. Answer "y" to the confirmation question. You should see this on the terminal : >z8 Z8 You sure? y Y 76543210 *Err*  *Err*  > When the loader gets to flash bank 0, it will fail with an *Err* message. This is normal. The loader resides in bank 0 and will not flash itself without added incentive. Now you will be able to load the required files. 17.Go up to the FILE menu above and select LOAD. Load the following file : /firmware/tini.hex THERE IS NO NEED TO CHANGE BANKS FIRST. The file has this information embedded in it. It should report the bank(s) it was loaded in. This will take several seconds. 18.After it finishes, select FILE-LOAD again and load the following file : /firmware/tiniapi.hex This will take slightly longer than the tini.hex file. 19.Next, clear the heap by doing the following: TINI Board REV F: b18 //changes to bank 18 f0 //fills bank 18 with 0's, effectively erasing it TINI Board REV C: b8 //changes to bank 8 f0 //fills bank 8 with 0's, effectively erasing it 20.Clear bank 7 using the z7 command. 21.Select FILE-LOAD one more time and load the following file : /examples/slush/Slush.hex 22.If everything is loaded, type 'e' to execute. You should see a prompt similiar to: EŚ ----> TINI Boot <---- TINI Version Beta 2.1 API Version 8001 Copyright (C) 1999, 2000 Dallas Semiconductor Corporation Doing First Birthday Memory Size: 07F000 Addresses: 181000,200000 Skip List MM L02 Waiting for reset button release KM_Init Passed Ethernet MAC Address Part Found TTS Revision: 107 , Date: 11/02/99 9:58a Thread_Init Passed Memory Available: 0798C0 Creating Task A 0100 01 Loading application at 0x070000 Application load complete Creating Task: 0200 02 [-= slush Version 1.0 Beta 2.1 =-] [ System coming up. ] [ Beginning initialization... ] [ Not generating log file. ] [Info] [ Initializing shell commands... ] [Done] [ Checking system files... ] [Done] [ Initializing and parsing .startup... ] [ Initializing network... ] [ Network configurations not set. ] [Skip] [ Network configuration ] [Done] [ System init routines ] [Done] [ slush initialization complete. ] [ Bringing up Serial Server... ] Hit any key to login. Welcome to slush. (Version 1.0 Beta 2.1) TINI login: root TINI password: TINI /> > NOTE: There are two default accounts on this revision of slush, 'guest' with the password 'guest' and 'root' with the password 'tini' 23.Type "help" to get help. Type "help " to have help on a specific command. Try "help ipconfig". 24.You can now set your IP address using the ipconfig command. You can use the DHCP setting to get your IP dynamically or set it by yourself. For instance: ipconfig -a your.IP.fits.here -m network.mask.fits.here -g gateway.fits.in.here 25.If you set your network information correctly using ipconfig, you should now be able to telnet and ftp the TINI Board. You can also try to ping your TINI Board from a subnet PC or a subnet PC from the TINI Board to confirm your configuration. For further information on how to run code in the TINI Board, check the file \README.txt