Many of you have got a brand new TI-Nspire CX with the latest OS 3.2.4 for this back to school, and are coming here to get Ndless for a richer experience with the TI-Nspire. As you may have noticed Ndless is at the moment not compatible with OS 3.2.4, and this OS includes the usual anti-downgrade protection that prevent any Ndless 3.1 installation.

This post should give a bit of context and answer the frequent questions about Ndless compatibility.

Why is Ndless regularly blocked by OS updates?

Ndless and its SDK are the unofficial way to build and run advanced programs for the TI-Nspire in assembly ARM, C and C++, with full access to the hardware and OS services.

Ndless and some of the programs built for it have the side effect of breaking the trust model between TI and the standardized tests’ regulation bodies and the teachers community about the press-to-test feature and the physical distinction between CAS and non-CAS TI-Nspire (although it is actually purely software-based and circumvented by tools such as nLaunch/nLaunchy).
Note that the ability to run games on the TI-Nspire is not really the point as games written with the official Lua API and SDK do exist.

TI chose to protect these features by locking the entire device (instead of protecting specifically the aforementioned features) against any extension and low-level access that Ndless can provide. As a result Ndless (unwillingly) poses itself as an immediate threat to TI’s business model for the TI-Nspire.

TI has for this reason been actively chasing each major version of Ndless since 2009 with anti-Ndless updates, anti-downgrade protections (all defeated except the one in OS 3.2.4) and features against third-party code execution.

We (the Ndless community) believe that any device can ultimately be hacked, and that this is also true for the TI-Nspire. TI’s business model is flawed, the compatibility of Ndless with a new OS version is just a matter of time. TI’s competitors have understood this, but TI stubbornly forces the Ndless community and itself to play a cat-and-mouse game at each OS update.

When will Ndless 3.2 be available?

OS 3.2.0 fortunately didn’t include an anti-downgrade to OS 3.1 and let Ndless 3.1 live its life for a while. We (the contributors to Ndless and its SDK) have been able during this time to focus on useful features instead of playing the wasteful cat-and-mouse game, such as the nSDL library, the bFLT loader (that makes program porting easier), C++ compatibility, the string and Graphic Context API, host and device USB, GDB debugging and other Ndless Editor development tools.

OS 3.2.4 and its anti-downgrade feature now deprives many users who acquired a new TI-Nspire of the many third-party native programs available. The TI-Nspire community is now actively working on the update of Ndless, but this is not an easy task nor a deterministic engineering effort. Unfortunately no release date can be given (and obviously no date should be given that could be taken into account by TI for its OS release management).

How can I help?

If you are a regular user, send us a report of any reproducible reboot while using the standard functions and languages of the TI-Nspire. the Ndless installer indeed relies on unexpected behaviors for the installation of Ndless.

If you are familiar with ARM assembly, join the community, have a closer look to Ndless and let’s work together. Ndless is open source since 2009 for this reason.

Donating is also a good way to help. Donations help to cover hardware costs and can be redistributed to contributing members of the community.