Hardware: Difference between revisions

From Hackspire
Jump to navigation Jump to search
No edit summary
 
(25 intermediate revisions by 8 users not shown)
Line 1: Line 1:
The chips are the same on the TI-Nspire and the TI-Nspire CAS.
==Hardware revisions==
 
===TI-Nspire (Clickpad) / Phoenix ===
<div style="overflow-x: auto">
{| class="wikitable" style="font-size: 0.8em"
! Variant / HW Revision !! Factory !! Datestamps !! MB code (PCB ID) !! board # !! LCD board code !! board # !! KB board code !! board # !! Other board !! board # !! Source (URL) !! Comment. (Note: many datestamps come from forums and other compilations) !!
|-
| PVT CAS+ ||  ||  ||  ||  || PH1_PVT_LCDB || 2430 ||  ||  ||  ||  || http://i.imgur.com/4hVUkaa.jpg ||  ||
|-
| <none> / pre-A || S || 0407-0707 || P2/P3 ASIC MB_MP || 6440 || P1R2/P3_LB_MP || 2440 ||  ||  ||  ||  || http://i.imgur.com/WGPf0LF.jpg || Some have an 'A' suffix to the left serial part: https://i.imgur.com/77oy8JT.jpg , https://i.imgur.com/K0aqUuW.jpg ; Also reported here: https://tiplanet.org/forum/viewtopic.php?f=17&t=4995 || Ph3-EVT1_FPC_1413
|-
| A || S || 0707-0907? ||  ||  ||  ||  ||  ||  ||  ||  ||  || http://www.publicsurplus.com/sms/auction/view?auc=1171896 for the associated viewscreen. (0607A would be seen for CAS devices) ||
|-
| A (other?) || K || 0509 ||  ||  ||  ||  ||  ||  ||  ||  ||  || http://i.ebayimg.com/images/g/j6kAAOSwgn5XEZ-a/s-l1600.jpg ||
|-
| B || S || 1207? ||  ||  ||  ||  ||  ||  ||  ||  ||  || https://groups.google.com/forum/#!msg/tinspire/wwFr1zlFf0s/G2ePaXVXwOkJ ||
|-
| C || P || 0108-0308? ||  ||  ||  ||  ||  ||  ||  ||  ||  ||  ||
|-
| D || P || 0508 ||  ||  ||  ||  ||  ||  ||  ||  ||  ||  ||
|-
| E || P || 0508-0708 ||  ||  ||  ||  ||  ||  ||  ||  ||  ||  ||
|-
| F || P || 0708-0908? ||  ||  ||  ||  ||  ||  ||  ||  ||  ||  ||
|-
| G || P || 0409-0809 ||  ||  ||  ||  ||  ||  ||  ||  ||  ||  ||
|-
| H || P || 0609 ||  ||  ||  ||  ||  ||  ||  ||  ||  ||  ||
|-
| I || P || 0809?-1209 ||  ||  || N1/N3_LB_ ||  ||  ||  ||  ||  || http://i.imgur.com/RidWq1Z.jpg ||  ||
|-
|}
</div>
 
===TI-Nspire (Touchpad) / Phoenix (Nspire2.0)===
<div style="overflow-x: auto">
{| class="wikitable" style="font-size: 0.8em"
! Variant / HW Revision !! Factory !! Datestamps !! MB code (PCB ID) !! board # !! LCD board code !! board # !! KB board code !! board # !! Other board !! board # !! Source (URL) !! Comment. (Note: many datestamps come from forums and other compilations)
|-
| PROTO CAS ||  ||  || PCB TG2995C MB || 4400 ||  ||  ||  ||  ||  ||  || https://tiplanet.org/forum/viewtopic.php?t=14207 ||
|-
|  DVT CAS ||  ||  || N1 MB NKB || 4420 || N1/N3 LB PCR2 FPC || 2410 ||  ||  ||  ||  || https://tiplanet.org/forum/viewtopic.php?t=10964 ||
|-
| A || P || 0110-0310 || PCB TG2995D MB || 4430 || TG2995 C LB || 2410 ||  ||  ||  ||  || http://datamath.org/Graphing/JPEG_NSpire_CAS_TP.htm || What is https://i.imgur.com/04R7lYv.jpg ?
|-
| B || P || 0310-0710 || PCB TG2995D MB || 4430 || TG2995 C LB || 2410 ||  ||  ||  ||  || http://datamath.org/Graphing/JPEG_NSpire_TP_Y.htm || Found on a school edition (yellow)
|-
| C || P || 0710-1010 ||  ||  ||  ||  ||  ||  ||  ||  ||  ||
|-
| D || P || 0611-0711 ||  ||  ||  ||  ||  ||  ||  ||  ||  || https://i.imgur.com/znF0jP3.jpg shows a datestamp
|-
| E || P || 0412 ||  ||  ||  ||  ||  ||  ||  ||  ||  || https://i.imgur.com/73G6iBH.jpg shows a datestamp
|-
|}
</div>
 
===TI-Nspire CX / Firebird===
 
<div style="overflow-x: auto">
{| class="wikitable" style="font-size: 0.8em"
! Variant / HW Revision !! Factory !! Datestamps !! MB code (PCB ID) !! board # !! LCD board code !! board # !! KB board code !! board # !! Other board !! board # !! Source (URL) !! Comment. (Note: many datestamps come from forums and other compilations)
|-
| Proto ("Nspire Color") ||  || 0810 || Firebird Color MB || 6412 ||  ||  || none ||  || Firebird Color BTB EVT || 2410 || https://tiplanet.org/forum/gallery/image_page.php?image_id=1691 ||
|-
| <none> / pre-A ||  ||  || Firebird Color MB || 6421 ||  ||  ||  ||  ||  ||  || https://i.imgur.com/Y4yds6M.png ||
|-
| A || P || 0211?-0411 || Firebird Color MB || 6422 ||  ||  || Firebird (Noncas) Color KB EVT || 4421 || Firebird Color BTB EVT1.2 || 2412 || https://tiplanet.org/forum/gallery/image_page.php?image_id=1229 ||
|-
| B || P || 0411-0511 || Firebird Color MB || 6422 ||  ||  || Firebird (Noncas) Color KB EVT || 4421 || Firebird Color BTB EVT1.2 || 2412 || https://tiplanet.org/forum/gallery/image_page.php?image_id=2634 ||
|-
| C || P || 0511-0811? || Firebird Color MB || 6422 ||  ||  || Firebird (Noncas) Color KB EVT || 4421 || Firebird Color BTB EVT1.2 || 2412 || https://tiplanet.org/forum/gallery/image_page.php?image_id=1227 ||
|-
| D || P || 0911-0512 || Firebird Color MB || 6422 ||  ||  || Firebird (Noncas) Color KB EVT || 4421 || Firebird Color BTB EVT1.2 || 2412 || https://tiplanet.org/forum/gallery/image_page.php?image_id=2397 || https://i.imgur.com/OtnD7S3.jpg shows a datestamp. https://i.imgur.com/XEqIPUf.jpg is a CX-C CAS.
|-
| E || P || 0512-0612? ||  ||  ||  ||  ||  ||  ||  ||  ||  || https://i.imgur.com/O3hLcQT.jpg shows a datestamp
|-
| F || P || 0712-0812? || Firebird Color MB || 6430 ||  ||  || Firebird (Noncas) Color KB EVT || 4421 || Firebird Color BTB EVT1.2 || 2412 || https://tiplanet.org/forum/gallery/image_page.php?image_id=2398 ||
|-
| G || P || 1012? ||  ||  ||  ||  ||  ||  ||  ||  ||  || https://i.imgur.com/SNfyWQP.jpg shows a datestamp
|-
| H || P || 1112-0213 ||  ||  ||  ||  ||  ||  ||  ||  ||  || https://i.imgur.com/yOmZY29.jpg shows a datestamp
|-
| I || P || 0213 ||  ||  ||  ||  ||  ||  ||  ||  ||  || Mention of the datestamp: https://www.omnimaga.org/general-calculator-help/hardware-needed-to-downgrade-3-2-4/msg360687/#msg360687
|-
| J ("CR") || P || 0313-0513? || NSC CR MB || 4440 ||  ||  || Firebird (non)cas Color KB DVT || 4424 || Firebird Color BTB EVT1.2 || 2412 || https://tiplanet.org/forum/gallery/image_page.php?album_id=184&image_id=2878 || incompatible with OS versions < 3.2.3 / Nlaunch + J04 connector removed
|-
| K || P || 0613-0713? ||  ||  ||  ||  ||  ||  ||  ||  ||  ||
|-
| L || P || 1113?-1213 ||  ||  ||  ||  ||  ||  ||  ||  ||  || Datestamp from here: https://tiplanet.org/forum/viewtopic.php?p=170487#p170487
|-
| M || P || 1213-0114? ||  ||  ||  ||  ||  ||  ||  ||  ||  || Datestamp from here: https://tiplanet.org/forum/viewtopic.php?p=166933#p166933
|-
| N || P || 0314 || NSC SM MB || 4412 ||  ||  || Firebird (non)cas Color KB DVT || 4424 || Firebird Color BTB EVT1.2 || 2412 || https://tiplanet.org/forum/gallery/image_page.php?image_id=3697 ||
|-
| O ("CR II") || P || 0414-0614 || NSC SM MB || 4412 ||  ||  || NSC CELL (Non)CAS KB || 4410 || Firebird Color BTB || 2440 || https://tiplanet.org/forum/gallery/image_page.php?image_id=5469 || Samsung rechargeable battery. (Ref calc for France: N3/TBL/1E2/K)
|-
| P || P || 0614 || NSC SM MB || 4412 ||  ||  || NSC CELL (Non)CAS KB || 4410 || Firebird Color BTB || 2440 ||  ||
|-
| Q ? ||  ||  ||  ||  ||  ||  ||  ||  ||  ||  ||  ||
|-
| R || P || 0814? ||  ||  ||  ||  ||  ||  ||  ||  ||  || Datestamp from http://www.cncalc.org/thread-11903-1-1.html
|-
| S || P || 0914-1014 ||  ||  ||  ||  ||  ||  ||  ||  ||  || https://i.imgur.com/zsYyaNC.jpg shows a datestamp
|-
| T ("CR III") || P || 1014-1214? || CX CRIII MB || 4412 ||  ||  || NSC CR OS (Non)CAS || 4413 || Firebird Color BTB || 2440 || https://tiplanet.org/forum/gallery/image_page.php?image_id=5472 || incompatible with OS versions < 3.9.1
|-
| U || P || 0115? ||  ||  ||  ||  ||  ||  ||  ||  ||  ||
|-
| V || P || 0315-0815? || CX CRIII MB || 4412 ||  ||  || NSC CR OS (Non)CAS || 4413 || Firebird Color BTB || 2440 ||  ||
|-
| W ("CR IV") || P || 1115-0116 || CX CR IV MB || 4440 ||  ||  || <none> ||  || <none> ||  || https://tiplanet.org/forum/gallery/image_page.php?album_id=184&image_id=6823 || Now uses a unified motherboard, instead of 3 parts. New LCD + J04 connector back + incompatible versions < 4.0.1
|}
</div>
 
===TI-Nspire CM / Rabbit===
 
<div style="overflow-x: auto">
{| class="wikitable" style="font-size: 0.8em"
! Variant / HW Revision !! Factory !! Datestamps !! MB code (PCB ID) !! board # !! LCD board code !! board # !! KB board code !! board # !! Other board !! board # !! Source (URL) !! Comment. (Note: many datestamps come from forums and other compilations)
|-
| Chinese Language EVT1 ||  || <none> || RABBIT MB EVT || 4410 ||  ||  || RABBIT KB (NON ) CAS EVT || 2416 ||  ||  || https://tiplanet.org/forum/gallery/image_page.php?image_id=2658 ||
|-
| CM-C EVT1 ||  || (103) ||  ||  ||  ||  || RABBIT KB (NON) CAS EVT || 2419 ||  ||  || https://tiplanet.org/forum/gallery/image_page.php?album_id=193&image_id=2761 ||
|-
| CM-C CAS DVT1 ||  || (240) || RABBIT MB EVT || 4415 ||  ||  || RABBIT KB (NON) CAS EVT || 4411 ||  ||  || https://tiplanet.org/forum/gallery/image_page.php?album_id=1&image_id=6294 ||
|-
| CM-C || P || 0911 || RABBIT MB DVT || 6420 ||  ||  || RABBIT KB (NON) CAS EVT || 4420 ||  ||  || https://tiplanet.org/forum/gallery/image_page.php?album_id=119&image_id=1359 ||
|-
| CM-C (CAS) No-rev -> A || P || 0412-0512 || RABBIT MB DVT || 6420 ||  ||  || RABBIT KB (NON) CAS EVT || 4411 ||  ||  || https://tiplanet.org/forum/gallery/image_page.php?album_id=180&image_id=2596 || https://i.imgur.com/J3cJBcI.jpg shows a 0512 datestamp
|-
|}
</div>


==PCB==
==PCB==
Here are some hi-res PCB images, provided by bloo: [http://www.unsads.com/~squalyl/nspire/pics/nspire001.jpg], [http://www.unsads.com/~squalyl/nspire/pics/nspire002.jpg], [http://www.unsads.com/~squalyl/nspire/pics/nspire003.jpg]
High resolution photos can be found in the above table.


===Connector J04===
===Connector J04===
As can be seen on the above image, there are empty pads for a connector labelled "J04". Maybe, there are signals to get a little bit further into the calculator.
As can be seen in the PCB photos, there are empty pads for a connector labelled "J04" (not on some CR models). Most likely this is for debugging using an interface such as JTAG.


I've analyzed the signals on the pins and found out a little about the types of signals.
Analyzation of the signals on the pins provided the following information regarding signal types.


"GND" means signal ground, it has the same potential as the whole ground plane on the PCBs. The minus pole of one battery is directly connected to it.
"GND" means signal ground, it has the same potential as the whole ground plane on the PCBs. The minus pole of one battery is directly connected to it.
"Vcc 3.3V" means the 3.3V power supply of the calculator. It seems to be present even if the calculator is off.
"Vcc 3.3V" means the 3.3V power supply of the calculator. It seems to be present even if the calculator is off.
"Floating" is a signal with an undefined voltage level, this state is very likely for inputs.
"Floating" is a signal with an undefined voltage level, this state is very likely for inputs.
"High" is a signal with almost 3.3V, but not a supply signal. These signals can be outputs switched to "high" or inputs with pull-up resistors.
"High" is a signal with almost 3.3V, but not a supply signal. These signals are probably inputs with pull-up resistors (they can be pulled-down with a large value resistor).


{| border=1
{| class="wikitable"
| GND
| GND
| 1
| 1
Line 78: Line 209:
| 25
| 25
| 26
| 26
| Maybe RS232 Input
| RS232 Input
|-
|-
| GND
| GND
Line 91: Line 222:
|}
|}


'''TODO:''' Double-check the results and find out, what these signals (Floating, High, Square-wave) really are. Maybe, there are common interfaces as RS232, JTAG, I2C or whatever.
'''TODO:''' Double-check the results and find out, what these signals (Floating, High, Square-wave) really are. Maybe, there are common interfaces as JTAG, I2C or whatever.


===RS232-Log===
===Connector J01 - Dock connector===
While starting up, the calculator sends some logging information through the serial (RS232) interface.
Pins currently known, probably there are more GPIOs accessible. Somewhere there's SPI, too.


A log (including deletion and reprogramming the OS) can be found here: http://www.activevb.de/members/philippburch/hackspire/log.txt
{| class="wikitable"
( Log mirrored [http://hackspire.unsads.com/files/log-philippburch-serial-boot.txt here])
|-
 
| Vcc || pin 2
==Screen==
|-
240x320, 16 grayshades LCD screen.
| Rx || pin 3
|-
| Tx || pin 4
|-
| GND || pin 5 (long)
|-
| GPIO4 / USB Data+ with Navigator Cradle || pin 6
|-
| USB Data- with Navigator Cradle || pin 7
|-
| Vin || pin 8 (medium)
|-
| GPIO0 || pin 17
|-
| GPIO22 || pin 18
|-
| Vin || pin 19 (medium)
|-
| GND || pin 22 (long)
|}


==CPU==
===UART===
Code: ...
A serial adapter can be connected to the Tx/Rx/GND pins of the dock connector (pin 1 is the one at the left-hand side, TI-Nspire upside down, connector at the bottom). '''Warning: only use TTL voltage levels, never RS232 levels'''.


Manufacturer: Texas Instruments
The configuration of the terminal on the computer side should be:
{| class="wikitable"
|-
| Baud rate || 115200
|-
| Data || 8 bit
|-
| Parity || none
|-
| Stop || 1 bit
|-
| Flow control || none
|}


Model: TI-NSPIRE / L9A0702 / TI-NS2006A-0 / LSI LOGIC / ZEVIO / U 0714 / WYJ14052-1
While starting up, the calculator sends some logging information through the interface. A log (including deletion and reprogramming the OS) can be found [http://hackspire.unsads.com/files/log-philippburch-serial-boot.txt here]).


(Seems to be the same one in TI-nspire CAS, 0702 and 0714 might be datestamps)
Different types of files can be send with the X-Modem protocol, depending on the boot startup options chosen with the [[Operating_System#Startup_key_combinaisons|key combos]]. Windows HyperTerminal or TeraTerm strangely couldn't be used for the X-Modem transfer. [http://www.ohse.de/uwe/software/lrzsz.html lrzsz] is a better alternative, which can be built on Windows with Cygwin.
stty -F /dev/ttyS0 115200 -evenp -cstopb
cat < /dev/ttyS0
# Abort with Ctrl+C when the X-Modem transfer begins
# The `cat` is used to show the startup logs during reboot
./lsz -X boot2.img <> /dev/ttyS0 >&0; cat /dev/ttyS0


[http://www.unsads.com/~squalyl/nspire/specs/ZEVIO1020_PB.pdf LSI Zevio 1020 product brief]
===Power supply===
You can use the TI-Nspire with an external power supply (5V to 6V) instead of the batteries. Use pad P1, pin 8 or pin 19 for V+ and pad P2, pin 5 or pin 22 for GND. It will boot, but print "Critical voltage detected. Forcing shutdown." on RS232 and shutdown. It seems that the battery voltage of measured using only 2 batteries. A workaround is to use two resistors (100K work) to set the middle point at half voltage.


CPU seems to be an [http://www.arm.com/products/CPUs/ARM926EJ-S.html ARM926EJ-S] with ARM5 instruction set ( see [http://www.arm.com/pdfs/DDI0198D_926_TRM.pdf Reference manual] ). Commands of the link protocol report a frequency of 90 Mhz for both the TI-Nspire and the TI-Nspire CAS.
==Screen==


[http://microblog.routed.net/2008/08/15/ic-friday-tis-nspire/ Die photos] are now available, showing an in-house part number and dual CHIPIDEA cores.
{| class="wikitable"
|-
! Device !! Screen !! Controller !! Notes
|-
| TI-Nspire Clickpad/Touchpad || 320x240 - 4 bit greyscale LCD || [http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.ddi0161e/index.html ARM PrimeCell PL110] ||
|-
| TI-Nspire CX (before rev W)|| 320x240 - 16 bit color LCD || [http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.ddi0293c/index.html ARM PrimeCell PL111] ||
|-
| TI-Nspire CX (from rev W)|| 240x320 - 16 bit color LCD || Same as previous? || LCD is rotated
|}


==SDRAM==
==CPU==
Code: ...


Manufacturer: QIMONDA
CPU is an [http://www.arm.com/products/CPUs/ARM926EJ-S.html ARM926EJ-S] with ARM9 instruction set ([http://infocenter.arm.com/help/topic/com.arm.doc.ddi0198e/index.html Reference manual]), 16KB of instruction cache, 8KB of data cache.


Model: HYB18L256160BF-7.5 WV22400
{| class="wikitable"
|-
! Device !! Chip !! Technology !! Notes
|-
| TI-Nspire Clickpad || Texas Instruments TI-NS2006A || Zevio LSI || [http://microblog.routed.net/2008/08/15/ic-friday-tis-nspire/ Die photos]
|-
| TI-Nspire Touchpad || Texas Instruments TI-NS2007C Magnum || Zevio LSI ||
|-
| TI-Nspire COLOR || Texas Instruments ET-NS2010A || Toshiba ASIC ||
|-
| TI-Nspire CX || Texas Instruments ET-NS2010B || Toshiba ASIC ||
|-
| TI-Nspire CM || Texas Instruments ET-LC2010B || Toshiba ASIC || Some research should be done to find differences with CX SOC
|}


Datasheet: [http://www.unsads.com/~squalyl/nspire/specs/HYx18L256160BxL-7.5_rev173.pdf Local mirror] - [http://www.qimonda.com/download.jsp?ref=/qis_docs/Datasheets/Datasheets%20Mobile/HYx18L256160BxL-7.5_rev173.pdf Manufacturer site]
==SDRAM==


Function: 32MB SDRAM (16bit bus)
{| class="wikitable"
|-
! Device !! Chip !! Size !! Notes
|-
| TI-Nspire Clickpad || QIMONDA HYB18L256160 || 32MiB (16Mb x 16) ||
|-
| TI-Nspire Touchpad || MT48H16M16 || 32MiB (16Mb x 16) ||
|-
| TI-Nspire CX (before rev J) || Samsung K511F12ACA-B075 || 64MiB|| K511F12ACA is a multipart package, shared with NAND Flash-ROM
|-
| TI-Nspire CX (from rev J) || ESMT FM60D1G12A 6BE || 64MiB || FM60D1G12A is a multipart package, shared with NAND Flash-ROM
|-
| TI-Nspire CM || Samsung K511F5ACC-B075 || 32MiB || K511F5ACC is a multipart package, shared with NAND Flash-ROM
|}


==Storage (?) memory==
Some more research has to be done here, regarding what the SOC exactly contains + external in all revisions.
Code: ...


Manufacturer: ST
==NAND memory==


Model: NAND 256 / R3A2BZA6 / GK 0JF 8Y / CHN 88 711
Used for Boot2, Diag, OS and user filesystem.


Function: 32MB FLASH NAND (block access) memory
{| class="wikitable"
|-
! Device !! Chip !! Size !! Notes
|-
| TI-Nspire Clickpad || ST NAND256R3A || 32MiB ||
|-
| TI-Nspire Touchpad || Samsung SEC K9F5608 || 32MiB ||
|-
| TI-Nspire CX (before rev J) || Samsung K511F12ACA-B075 || 128MiB || K511F12ACA is a multipart package, shared with SDRAM
|-
| TI-Nspire CX (from rev J) || ESMT FM60D1G12A 6BE || 128MiB || FM60D1G12A is a multipart package, shared with SDRAM
|-
| TI-Nspire CM || Samsung K511F5ACC-B075 || 128MiB || K511F5ACC is a multipart package, shared with SDRAM
|}


Notes: This memory does not support "Execute In Place" (XIP). If executable code is contained in this memory, it has to be copied in RAM first. Probably contains the Operating System, the documents and the invisible file system of the OS which needs to survive a [[Operating System#Booting and resetting|reboot]].
Notes: The memory does not support "Execute In Place" (XIP). If executable code is contained in this memory, it has to be copied in RAM first.


==Boot/Kernel(?) memory==
==NOR ROM==
Code: ...


Manufacturer: SST
Used for boot1 and certificate memory.


Model: 39WF400A 90-4C-B3KE
{| class="wikitable"
 
|-
Datasheet: [http://www.unsads.com/~squalyl/nspire/specs/S71220.pdf Local Mirror] - [http://www.sst.com/downloads/datasheet/S71220.pdf Manufacturer site]
! Device !! Chip !! Size !! Notes
 
|-
Function : 512KB NOR FLASH (16bit bus, memory mapped)
| TI-Nspire Clickpad || SST 39WF400A || 512KB ||
 
|-
Notes: Probably contains the boot code which loads the Operating System kept in the storage memory. As on previous calculator models with flash memory, contains code to receive a new Operating System. This memory would be read-only, only the storage memory would be written to. Another possible scenario is that the whole kernel (Nucleus RTOS) is stored here, and that OS updates do not include it (a two memories flashing seems unlikely), but in this case the kernel couldn't be updated.
| TI-Nspire Touchpad || Internal || ??KB ||
|-
| TI-Nspire COLOR || Macronix MX29SL402 || 512KB || Prototype
|-
| TI-Nspire CX || Internal || ??KB ||
|-
| TI-Nspire CX rev W || Macronix MX29SL402 || 512KB || Probably added so that they could include a new boot1 that can handle the new board design / LCD
|-
| TI-Nspire CM || Internal || ??KB ||
|}


==Other==
==Other==
===Real-Time Clock===
===Real-Time Clock===
The clock is correctly emulated in the [[TI-84 Plus Emulation|TI-84 Plus mode]] of the TI-Nspire. Although the TI-Nspire OS doesn't display any clock as the TI-89 Titanium and the TI-84 Plus do, the TI-Nspire keeps track of time when the TI-84 Plus keypad is replaced by the TI-Nspire keypad, and then put back. We can be quite sure there is an [http://en.wikipedia.org/wiki/Real-time_clock RTC] inside. It is also interesting to mention the XML tags ''dfmt'' (date format) and ''tfmt'' (time format) set to 1 in the factory settings (''phoenix/syst/locales/en/settings/factory.zip/settings.xml'' of the [[OS_upgrade_files#Compressed_file_system|compressed file system]]) in the OS file of both the TI-Nspire and the TI-Nspire CAS. These two parameters don't appear in the system settings dialog of the TI-Nspire OS, as it is the case for the tags ''curr'' and ''unit'' of ''settings.xml''.
The clock is correctly emulated in the [[TI-84 Plus Emulation|TI-84 Plus mode]] of the TI-Nspire. Although the TI-Nspire OS doesn't display any clock as the TI-89 Titanium and the TI-84 Plus do, the TI-Nspire keeps track of time when the TI-84 Plus keypad is replaced by the TI-Nspire keypad, and then put back. We can be quite sure there is an[http://en.wikipedia.org/wiki/Real-time_clock RTC] inside. It is also interesting to mention the XML tags ''dfmt'' (date format) and ''tfmt'' (time format) set to 1 in the factory settings (''phoenix/syst/locales/en/settings/factory.zip/settings.xml'' of the [[OS_upgrade_files#Compressed_file_system|compressed file system]]) in the OS file of both the TI-Nspire and the TI-Nspire CAS. These two parameters don't appear in the system settings dialog of the TI-Nspire OS, as it is the case for the tags ''curr'' and ''unit'' of ''settings.xml''.


===MMU===
===MMU===
The TI-Nspire may have a [http://en.wikipedia.org/wiki/Memory_management_unit Memory management unit], but we can't be sure for the moment. If it had one, the [http://www.acceleratedtechnology.com.tw/embedded/nuc_kernels.html Nucleus MMU] extension for Nucleus RTOS would probably be used. But since the TI-NSpire is not open for third-party development, would the protections offered by an MMU really needed?
The [http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.ddi0198e/Babfdfbh.html ARM926EJ-S] integrated [http://en.wikipedia.org/wiki/Memory_management_unit Memory Management Unit] is enabled, but seems to only be used to map NOR, RAM and peripherals in memory space, and control the cache settings : [[Virtual Memory]].


==More information==
==More information==
*The [http://www.datamath.org/Graphing/NSpire.htm TI-Nspire] and [http://www.datamath.org/Graphing/NSpire_CAS.htm TI-Nspire CAS] in Datamath Calculator Musueum
*The [http://www.datamath.org/Graphing/NSpire.htm TI-Nspire] and [http://www.datamath.org/Graphing/NSpire_CAS.htm TI-Nspire CAS] in Datamath Calculator Museum

Latest revision as of 14:23, 21 June 2019

Hardware revisions

TI-Nspire (Clickpad) / Phoenix

Variant / HW Revision Factory Datestamps MB code (PCB ID) board # LCD board code board # KB board code board # Other board board # Source (URL) Comment. (Note: many datestamps come from forums and other compilations)
PVT CAS+ PH1_PVT_LCDB 2430 http://i.imgur.com/4hVUkaa.jpg
<none> / pre-A S 0407-0707 P2/P3 ASIC MB_MP 6440 P1R2/P3_LB_MP 2440 http://i.imgur.com/WGPf0LF.jpg Some have an 'A' suffix to the left serial part: https://i.imgur.com/77oy8JT.jpg , https://i.imgur.com/K0aqUuW.jpg ; Also reported here: https://tiplanet.org/forum/viewtopic.php?f=17&t=4995 Ph3-EVT1_FPC_1413
A S 0707-0907? http://www.publicsurplus.com/sms/auction/view?auc=1171896 for the associated viewscreen. (0607A would be seen for CAS devices)
A (other?) K 0509 http://i.ebayimg.com/images/g/j6kAAOSwgn5XEZ-a/s-l1600.jpg
B S 1207? https://groups.google.com/forum/#!msg/tinspire/wwFr1zlFf0s/G2ePaXVXwOkJ
C P 0108-0308?
D P 0508
E P 0508-0708
F P 0708-0908?
G P 0409-0809
H P 0609
I P 0809?-1209 N1/N3_LB_ http://i.imgur.com/RidWq1Z.jpg

TI-Nspire (Touchpad) / Phoenix (Nspire2.0)

Variant / HW Revision Factory Datestamps MB code (PCB ID) board # LCD board code board # KB board code board # Other board board # Source (URL) Comment. (Note: many datestamps come from forums and other compilations)
PROTO CAS PCB TG2995C MB 4400 https://tiplanet.org/forum/viewtopic.php?t=14207
DVT CAS N1 MB NKB 4420 N1/N3 LB PCR2 FPC 2410 https://tiplanet.org/forum/viewtopic.php?t=10964
A P 0110-0310 PCB TG2995D MB 4430 TG2995 C LB 2410 http://datamath.org/Graphing/JPEG_NSpire_CAS_TP.htm What is https://i.imgur.com/04R7lYv.jpg ?
B P 0310-0710 PCB TG2995D MB 4430 TG2995 C LB 2410 http://datamath.org/Graphing/JPEG_NSpire_TP_Y.htm Found on a school edition (yellow)
C P 0710-1010
D P 0611-0711 https://i.imgur.com/znF0jP3.jpg shows a datestamp
E P 0412 https://i.imgur.com/73G6iBH.jpg shows a datestamp

TI-Nspire CX / Firebird

Variant / HW Revision Factory Datestamps MB code (PCB ID) board # LCD board code board # KB board code board # Other board board # Source (URL) Comment. (Note: many datestamps come from forums and other compilations)
Proto ("Nspire Color") 0810 Firebird Color MB 6412 none Firebird Color BTB EVT 2410 https://tiplanet.org/forum/gallery/image_page.php?image_id=1691
<none> / pre-A Firebird Color MB 6421 https://i.imgur.com/Y4yds6M.png
A P 0211?-0411 Firebird Color MB 6422 Firebird (Noncas) Color KB EVT 4421 Firebird Color BTB EVT1.2 2412 https://tiplanet.org/forum/gallery/image_page.php?image_id=1229
B P 0411-0511 Firebird Color MB 6422 Firebird (Noncas) Color KB EVT 4421 Firebird Color BTB EVT1.2 2412 https://tiplanet.org/forum/gallery/image_page.php?image_id=2634
C P 0511-0811? Firebird Color MB 6422 Firebird (Noncas) Color KB EVT 4421 Firebird Color BTB EVT1.2 2412 https://tiplanet.org/forum/gallery/image_page.php?image_id=1227
D P 0911-0512 Firebird Color MB 6422 Firebird (Noncas) Color KB EVT 4421 Firebird Color BTB EVT1.2 2412 https://tiplanet.org/forum/gallery/image_page.php?image_id=2397 https://i.imgur.com/OtnD7S3.jpg shows a datestamp. https://i.imgur.com/XEqIPUf.jpg is a CX-C CAS.
E P 0512-0612? https://i.imgur.com/O3hLcQT.jpg shows a datestamp
F P 0712-0812? Firebird Color MB 6430 Firebird (Noncas) Color KB EVT 4421 Firebird Color BTB EVT1.2 2412 https://tiplanet.org/forum/gallery/image_page.php?image_id=2398
G P 1012? https://i.imgur.com/SNfyWQP.jpg shows a datestamp
H P 1112-0213 https://i.imgur.com/yOmZY29.jpg shows a datestamp
I P 0213 Mention of the datestamp: https://www.omnimaga.org/general-calculator-help/hardware-needed-to-downgrade-3-2-4/msg360687/#msg360687
J ("CR") P 0313-0513? NSC CR MB 4440 Firebird (non)cas Color KB DVT 4424 Firebird Color BTB EVT1.2 2412 https://tiplanet.org/forum/gallery/image_page.php?album_id=184&image_id=2878 incompatible with OS versions < 3.2.3 / Nlaunch + J04 connector removed
K P 0613-0713?
L P 1113?-1213 Datestamp from here: https://tiplanet.org/forum/viewtopic.php?p=170487#p170487
M P 1213-0114? Datestamp from here: https://tiplanet.org/forum/viewtopic.php?p=166933#p166933
N P 0314 NSC SM MB 4412 Firebird (non)cas Color KB DVT 4424 Firebird Color BTB EVT1.2 2412 https://tiplanet.org/forum/gallery/image_page.php?image_id=3697
O ("CR II") P 0414-0614 NSC SM MB 4412 NSC CELL (Non)CAS KB 4410 Firebird Color BTB 2440 https://tiplanet.org/forum/gallery/image_page.php?image_id=5469 Samsung rechargeable battery. (Ref calc for France: N3/TBL/1E2/K)
P P 0614 NSC SM MB 4412 NSC CELL (Non)CAS KB 4410 Firebird Color BTB 2440
Q ?
R P 0814? Datestamp from http://www.cncalc.org/thread-11903-1-1.html
S P 0914-1014 https://i.imgur.com/zsYyaNC.jpg shows a datestamp
T ("CR III") P 1014-1214? CX CRIII MB 4412 NSC CR OS (Non)CAS 4413 Firebird Color BTB 2440 https://tiplanet.org/forum/gallery/image_page.php?image_id=5472 incompatible with OS versions < 3.9.1
U P 0115?
V P 0315-0815? CX CRIII MB 4412 NSC CR OS (Non)CAS 4413 Firebird Color BTB 2440
W ("CR IV") P 1115-0116 CX CR IV MB 4440 <none> <none> https://tiplanet.org/forum/gallery/image_page.php?album_id=184&image_id=6823 Now uses a unified motherboard, instead of 3 parts. New LCD + J04 connector back + incompatible versions < 4.0.1

TI-Nspire CM / Rabbit

Variant / HW Revision Factory Datestamps MB code (PCB ID) board # LCD board code board # KB board code board # Other board board # Source (URL) Comment. (Note: many datestamps come from forums and other compilations)
Chinese Language EVT1 <none> RABBIT MB EVT 4410 RABBIT KB (NON ) CAS EVT 2416 https://tiplanet.org/forum/gallery/image_page.php?image_id=2658
CM-C EVT1 (103) RABBIT KB (NON) CAS EVT 2419 https://tiplanet.org/forum/gallery/image_page.php?album_id=193&image_id=2761
CM-C CAS DVT1 (240) RABBIT MB EVT 4415 RABBIT KB (NON) CAS EVT 4411 https://tiplanet.org/forum/gallery/image_page.php?album_id=1&image_id=6294
CM-C P 0911 RABBIT MB DVT 6420 RABBIT KB (NON) CAS EVT 4420 https://tiplanet.org/forum/gallery/image_page.php?album_id=119&image_id=1359
CM-C (CAS) No-rev -> A P 0412-0512 RABBIT MB DVT 6420 RABBIT KB (NON) CAS EVT 4411 https://tiplanet.org/forum/gallery/image_page.php?album_id=180&image_id=2596 https://i.imgur.com/J3cJBcI.jpg shows a 0512 datestamp

PCB

High resolution photos can be found in the above table.

Connector J04

As can be seen in the PCB photos, there are empty pads for a connector labelled "J04" (not on some CR models). Most likely this is for debugging using an interface such as JTAG.

Analyzation of the signals on the pins provided the following information regarding signal types.

"GND" means signal ground, it has the same potential as the whole ground plane on the PCBs. The minus pole of one battery is directly connected to it. "Vcc 3.3V" means the 3.3V power supply of the calculator. It seems to be present even if the calculator is off. "Floating" is a signal with an undefined voltage level, this state is very likely for inputs. "High" is a signal with almost 3.3V, but not a supply signal. These signals are probably inputs with pull-up resistors (they can be pulled-down with a large value resistor).

GND 1 2 GND
Vcc 3.3V 3 4 Square-wave: 112Hz, 99% duty-cycle, not present if the calc is off
High 5 6 Square-wave: 112Hz, 99% duty-cycle, not present if the calc is off
High 7 8 Square-wave: 112Hz, 99% duty-cycle, not present if the calc is off
Floating 9 10 Square-wave: 112Hz, 99% duty-cycle, not present if the calc is off
GND 11 12 Square-wave: 112Hz, 99% duty-cycle, not present if the calc is off
GND 13 14 GND
Floating 15 16 Floating
Floating 17 18 GND
Floating 19 20 Square-wave: 112Hz, 99% duty-cycle, not present if the calc is off
Floating 21 22 Square-wave: 112Hz, 99% duty-cycle, not present if the calc is off
Floating 23 24 RS232 Output (115'200,8,n,1)
Floating 25 26 RS232 Input
GND 27 28 GND
GND 29 30 GND

TODO: Double-check the results and find out, what these signals (Floating, High, Square-wave) really are. Maybe, there are common interfaces as JTAG, I2C or whatever.

Connector J01 - Dock connector

Pins currently known, probably there are more GPIOs accessible. Somewhere there's SPI, too.

Vcc pin 2
Rx pin 3
Tx pin 4
GND pin 5 (long)
GPIO4 / USB Data+ with Navigator Cradle pin 6
USB Data- with Navigator Cradle pin 7
Vin pin 8 (medium)
GPIO0 pin 17
GPIO22 pin 18
Vin pin 19 (medium)
GND pin 22 (long)

UART

A serial adapter can be connected to the Tx/Rx/GND pins of the dock connector (pin 1 is the one at the left-hand side, TI-Nspire upside down, connector at the bottom). Warning: only use TTL voltage levels, never RS232 levels.

The configuration of the terminal on the computer side should be:

Baud rate 115200
Data 8 bit
Parity none
Stop 1 bit
Flow control none

While starting up, the calculator sends some logging information through the interface. A log (including deletion and reprogramming the OS) can be found here).

Different types of files can be send with the X-Modem protocol, depending on the boot startup options chosen with the key combos. Windows HyperTerminal or TeraTerm strangely couldn't be used for the X-Modem transfer. lrzsz is a better alternative, which can be built on Windows with Cygwin.

stty -F /dev/ttyS0 115200 -evenp -cstopb
cat < /dev/ttyS0
# Abort with Ctrl+C when the X-Modem transfer begins
# The `cat` is used to show the startup logs during reboot
./lsz -X boot2.img <> /dev/ttyS0 >&0; cat /dev/ttyS0

Power supply

You can use the TI-Nspire with an external power supply (5V to 6V) instead of the batteries. Use pad P1, pin 8 or pin 19 for V+ and pad P2, pin 5 or pin 22 for GND. It will boot, but print "Critical voltage detected. Forcing shutdown." on RS232 and shutdown. It seems that the battery voltage of measured using only 2 batteries. A workaround is to use two resistors (100K work) to set the middle point at half voltage.

Screen

Device Screen Controller Notes
TI-Nspire Clickpad/Touchpad 320x240 - 4 bit greyscale LCD ARM PrimeCell PL110
TI-Nspire CX (before rev W) 320x240 - 16 bit color LCD ARM PrimeCell PL111
TI-Nspire CX (from rev W) 240x320 - 16 bit color LCD Same as previous? LCD is rotated

CPU

CPU is an ARM926EJ-S with ARM9 instruction set (Reference manual), 16KB of instruction cache, 8KB of data cache.

Device Chip Technology Notes
TI-Nspire Clickpad Texas Instruments TI-NS2006A Zevio LSI Die photos
TI-Nspire Touchpad Texas Instruments TI-NS2007C Magnum Zevio LSI
TI-Nspire COLOR Texas Instruments ET-NS2010A Toshiba ASIC
TI-Nspire CX Texas Instruments ET-NS2010B Toshiba ASIC
TI-Nspire CM Texas Instruments ET-LC2010B Toshiba ASIC Some research should be done to find differences with CX SOC

SDRAM

Device Chip Size Notes
TI-Nspire Clickpad QIMONDA HYB18L256160 32MiB (16Mb x 16)
TI-Nspire Touchpad MT48H16M16 32MiB (16Mb x 16)
TI-Nspire CX (before rev J) Samsung K511F12ACA-B075 64MiB K511F12ACA is a multipart package, shared with NAND Flash-ROM
TI-Nspire CX (from rev J) ESMT FM60D1G12A 6BE 64MiB FM60D1G12A is a multipart package, shared with NAND Flash-ROM
TI-Nspire CM Samsung K511F5ACC-B075 32MiB K511F5ACC is a multipart package, shared with NAND Flash-ROM

Some more research has to be done here, regarding what the SOC exactly contains + external in all revisions.

NAND memory

Used for Boot2, Diag, OS and user filesystem.

Device Chip Size Notes
TI-Nspire Clickpad ST NAND256R3A 32MiB
TI-Nspire Touchpad Samsung SEC K9F5608 32MiB
TI-Nspire CX (before rev J) Samsung K511F12ACA-B075 128MiB K511F12ACA is a multipart package, shared with SDRAM
TI-Nspire CX (from rev J) ESMT FM60D1G12A 6BE 128MiB FM60D1G12A is a multipart package, shared with SDRAM
TI-Nspire CM Samsung K511F5ACC-B075 128MiB K511F5ACC is a multipart package, shared with SDRAM

Notes: The memory does not support "Execute In Place" (XIP). If executable code is contained in this memory, it has to be copied in RAM first.

NOR ROM

Used for boot1 and certificate memory.

Device Chip Size Notes
TI-Nspire Clickpad SST 39WF400A 512KB
TI-Nspire Touchpad Internal ??KB
TI-Nspire COLOR Macronix MX29SL402 512KB Prototype
TI-Nspire CX Internal ??KB
TI-Nspire CX rev W Macronix MX29SL402 512KB Probably added so that they could include a new boot1 that can handle the new board design / LCD
TI-Nspire CM Internal ??KB

Other

Real-Time Clock

The clock is correctly emulated in the TI-84 Plus mode of the TI-Nspire. Although the TI-Nspire OS doesn't display any clock as the TI-89 Titanium and the TI-84 Plus do, the TI-Nspire keeps track of time when the TI-84 Plus keypad is replaced by the TI-Nspire keypad, and then put back. We can be quite sure there is anRTC inside. It is also interesting to mention the XML tags dfmt (date format) and tfmt (time format) set to 1 in the factory settings (phoenix/syst/locales/en/settings/factory.zip/settings.xml of the compressed file system) in the OS file of both the TI-Nspire and the TI-Nspire CAS. These two parameters don't appear in the system settings dialog of the TI-Nspire OS, as it is the case for the tags curr and unit of settings.xml.

MMU

The ARM926EJ-S integrated Memory Management Unit is enabled, but seems to only be used to map NOR, RAM and peripherals in memory space, and control the cache settings : Virtual Memory.

More information