Information on how to write firmware

Discussion specific to NXT-G, NXC, NBC, RobotC, Lejos, and more.
Post Reply
nxt-ai
Posts: 36
Joined: 10 Jan 2011, 05:02

Information on how to write firmware

Post by nxt-ai »

Where is all the information on how to write firmware? I would love to code native if could learn how.


My apologies if I hijack your thread.
mightor
Site Admin
Posts: 1079
Joined: 25 Sep 2010, 15:02
Location: Rotterdam, Netherlands
Contact:

Re: Information on how to write firmware

Post by mightor »

I've split the post from the original thread. Next time please start a new thread instead of apologising for hijacking another.

- Xander
| My Blog: I'd Rather Be Building Robots (http://botbench.com)
| RobotC 3rd Party Driver Suite: (http://rdpartyrobotcdr.sourceforge.net)
| Some people, when confronted with a problem, think, "I know, I'll use threads,"
| and then two they hav erpoblesms. (@nedbat)
mrblp
Posts: 82
Joined: 02 Oct 2010, 14:33

Re: Information on how to write firmware

Post by mrblp »

Hello,
nxt-ai wrote:Where is all the information on how to write firmware? I would love to code native if could learn how.
Go to iar-page (www.iar.com) and search for mindstorms. There you can download a developement kit for the NXT firmware. Go to the ATMEL page and download the datasheets of the AT91SAM7. Go to the LEGO mindstorms page and download a) the hardware devolpers kit with all the schematics and b) the sourcecode of the firmware. You will find even more helpfull documents at the LEGO mindstorms page.

Depended of your experience in coding microcontroller systems you can now start developing a firmware for the NXT or you can now start to understand how their firmware works and start a new one.

Just one hint: The co-microcontroller cannot be reprogrammed and you have to send the string "Let's samba nxt arm in arm, (c)LEGO System A/S" via I2C to it. Otherwise it will switch off power one minute after power-up.

Bye - marvin
Bye Marvin

- "I think you ought to know I'm feeling very depressed." - (Android Marvin in "The Hitchhiker's Guide to the Galaxy" by Douglas Adams, 1978)
edisn
Posts: 20
Joined: 11 Feb 2011, 10:06

Re: Information on how to write firmware

Post by edisn »

My Thread about NXTGCC also contains firmware Writing.
Actualy NXTGCC is a Project providing an Eclipse Environment and the Compiler needed to programm a NXT Firmware,
and an NXT Firmware Code. (Altough a complex one -> See Forum: https://sourceforge.net/apps/phpbb/mind ... ?f=3&t=491)
nxt-ai
Posts: 36
Joined: 10 Jan 2011, 05:02

Re: Information on how to write firmware

Post by nxt-ai »

Thanks everyone but any good books or online tutorials?
I am quite close to a programmer neophyte right now.
Still thanks for the help no matter what you post.

"Power corrupts. Knowledge is power. Study hard. Be evil."
edisn
Posts: 20
Joined: 11 Feb 2011, 10:06

Re: Information on how to write firmware

Post by edisn »

I havent found any real help on how to write firmware til now.

But since i have sen some Hardware related things in some Blogs (like "Greysale Images"),
i want to post a own question here (since it fits much beter than in my Blog):

Does someone Know where to get informations about the interaktion of the Components?
(Like: What exactly does the Coprocessor?, If sen a picture where the Sensors Where Conected to the Main and Te Coprocessor, Why that?)

These Informations Could be a great Help in How to write a working Firmware.
edisn
Posts: 20
Joined: 11 Feb 2011, 10:06

Re: Information on how to write firmware

Post by edisn »

This Links May Help You:
Lego Webside (Has a version of the Firmware code and sone descriptions on the Comands the firmware can interpret "Executable File Specification".)
http://mindstorms.lego.com/en-us/suppor ... fault.aspx
Some Thechnical Drawings and the comunication specification for the Ultrasonic sensor could be found:
http://www.legoengineering.com/knowledg ... T+brick%3F
And some info for the Hardware:
http://ebookbrowse.com/lego-mindstorms- ... f-d1384528

I am stil trying to decrypt the functions in the firmware included in NXTGCC (it should be firmwareversion 1.05),
but the "Executable File Specification" was a big help on how some things kan be achived.
(At this point i have modifyied the c_ui file and are abble to display the Values of the simpler sensors
like Light and Touch, an able to use the motors. But all done on the highest level in the Firmware.)

On the Higher level everithing worcs like in C ther is no need to control the lower functions of the uc (micro controler).
I hope this infos are able to help you.
nxt-ai
Posts: 36
Joined: 10 Jan 2011, 05:02

End of thread<

Post by nxt-ai »

Well, thanks for all your responses,
The links help but I am still way too neophytic a programmer yet. My apologies for posting about something I obviously know little about yet.
In short my lack of response to this thread, is not caused by rudeness but more of :shock: .

I guess I've got a lot of work ahead of me to be :geek: .

Thanks all.
Post Reply

Who is online

Users browsing this forum: No registered users and 11 guests