In the process of hardware hacking with my NXT 2.0 I Found no easy way to connect the device as a USB storage device. Is there a specification that states how the NXT interacts over USB, or should I just RE the firmware?

I have experience with coding in C, compiling, linking, etc. So I’m not completely new.

I know the firmware is open-sourced, but as others have written their own firmware, and since the codebase is pretty big, I’d like to gain opinions on where to start modding the firmware.

  • 2
    You have there the core of a quite interesting question, but in its current form it is not suitable for this site. Please add some details, like what kind of experience you have (whether you need basic tutorials or pointers to the specific files), what have you already tried, and so on. As soon as you do so, we can reopen the question and you'll probably get the answers you are looking for (and not some vague answers that you can't do anything with, since they don't apply to your particular situation).
    – zovits
    May 4, 2020 at 8:01
  • 1
    See also the answers to Is there any other way to program the NXT other than the provided hardware which details out other programming options and firmware - the best place to start with something like this is picking up where others have left off! May 4, 2020 at 10:29

1 Answer 1


The best resource I have found for compiling NXT firmware is http://nxt-firmware.ni.fr.eu.org/.

  • Most of the flashing tools on Linux use an ancient version of lib USB, making them kind of hard to compile. May 14, 2020 at 10:01
  • Community♦ has apparently 'bumped' up this question so that we can vote on your answer to see if it is good or not, but I really do not know whether to upvote or downvote. Perhaps your answer should be a comment instead?? 🤔 Jun 11, 2020 at 23:49

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.