This website is dedicated to NXT Improved Firmware.

NXT Improved Firmware aims to build an open source community around the original firmware for the LEGO® Mindstorm NXT. This includes:

  • provide easy access to source code,
  • list exactly what changes have been made, why and when (this is actually a requirement of the LEGO® open source license),
  • centralise improvements done by different contributors, whereas making forking easy,
  • try to explain firmware architecture to help newcomers,
  • document how to build the firmware,
  • provide a way to build the firmware using free software.

LEGO® is a trademark of the LEGO Group of companies which does not sponsor, authorize or endorse this site.

News

2024-03-27: Release version 1.29.6

Fix a bug found by Andreas Weber when converting a float to an int. Now NXT Improved Firmware should match the original firmware behavior.

2024-03-05: Release version 1.29.4

Build with picolibc instead of newlib. This reduces code size by 27 kB, giving more room for user programs.

2023-03-06: Release version 1.29.3

New release to clear the ambiguous license terms as the original firmware package did contain files without explicit license.

Also simplify the source tree.

Building with IAR is officially no longer supported.

You can still find removed files in previous releases, they are left as is, as originally delivered by LEGO.

2021-09-28: Release version 1.29.1

More than 11 years after the first release, a new NXT Improved Firmware has been released.

I still have to clean the dust on the web site, removing the outdated information. It is now easier to have an ARM toolchain than 11 years ago.