Question about the OS/internal specs

Discussion specific to the intelligent brick, sensors, motors, and more.
Stryker295
Posts: 46
Joined: 29 Sep 2014, 09:53
Location: Arizona, USA
Contact:

Question about the OS/internal specs

Post by Stryker295 » 08 Dec 2014, 02:06

Crossposting this to Mindstorms Software because I think it pertains to both equally. Apologies if I'm wrong.

So, I was looking at the NXT's specs and comparing it to some other hardware, and came across this part of the Wikipedia article:
...It has a 32-bit ARM7TDMI-core Atmel AT91SAM7S256 microcontroller with 256KB of FLASH memory and 64KB of RAM, plus an 8-bit Atmel AVR ATmega48 microcontroller...
I was extremely curious here. I'm not familiar at all with these sorts of chips, but from what I understand, the Arduino Uno has an 8-bit Atmel AVR ATmega328, with internal specs of 32KB FLASH memory and 2KB of RAM.

I was wondering what part of the NXT is running the code, and what part is running the OS? In other words, if I write a program and execute it on the NXT, what sort of system specs am I actually dealing with? According to google, the ATmega48 has 1/8th the FLASH memory and 1/4th the RAM compared to the ATmega328. But then, there's still the AT91SAM7S256 in the NXT.

If I write code and port it to the 'duino Uno, will my available specs go up or down?

Very confused here!
—Jag

mightor
Site Admin
Posts: 1079
Joined: 25 Sep 2010, 15:02
Location: Rotterdam, Netherlands
Contact:

Re: Question about the OS/internal specs

Post by mightor » 08 Dec 2014, 07:54

Hey,

The ATmega is only used to control the motors and read the standard analogue values. It communicates with the main processor, the ARM7, every 3ms or so, over a high speed I2C bus. The ATmega chip is not user controllable and just has a small firmware on it that is only upgradeable if you have a ICSP device (programmer). Don't mess with it.

The code you write in NXC, ROBOTC, Lejos or whatever, all run on the ARM7, not the ATmega.

Regards,
Xander

Edit: I deleted your other post, because it was identical to this one. Please don't cross post.
| 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)

HaWe
Posts: 2500
Joined: 04 Nov 2014, 19:00

Re: Question about the OS/internal specs

Post by HaWe » 08 Dec 2014, 15:57

@Stryker,
NXT != Arduino ;)

on AVR Arduinos, you may even use the seperate Atmega 16u2 USB communication controller additionally to the Atmega 328P main processor for your personal programming.

OTOH, NXT is more like Apple: high walls and holy gardens ;)

Stryker295
Posts: 46
Joined: 29 Sep 2014, 09:53
Location: Arizona, USA
Contact:

Re: Question about the OS/internal specs

Post by Stryker295 » 08 Dec 2014, 18:24

HaWe wrote:NXT != Arduino
correct. However, there are comparable chips inside (atmegas) which is what I was curious about.

From what Xander says, it seems going from an an NXT to an Uno will result in a severe drop of processing capability....
—Jag

HaWe
Posts: 2500
Joined: 04 Nov 2014, 19:00

Re: Question about the OS/internal specs

Post by HaWe » 08 Dec 2014, 18:39

also Apple uses standard chips :P

but about the AVR: IMO not a drop.
more a complete loss. :)

Stryker295
Posts: 46
Joined: 29 Sep 2014, 09:53
Location: Arizona, USA
Contact:

Re: Question about the OS/internal specs

Post by Stryker295 » 08 Dec 2014, 18:59

HaWe wrote: about the AVR: IMO not a drop.
more a complete loss. :)
>.< yeaaaah. I'll have to re-write my fluid sim and see if it even runs on an Uno. If not I might be back to square one... Again...
—Jag

HaWe
Posts: 2500
Joined: 04 Nov 2014, 19:00

Re: Question about the OS/internal specs

Post by HaWe » 08 Dec 2014, 19:13

are you also using Arduinos to be connected to NXTs, like I do ? 8-)

Stryker295
Posts: 46
Joined: 29 Sep 2014, 09:53
Location: Arizona, USA
Contact:

Re: Question about the OS/internal specs

Post by Stryker295 » 08 Dec 2014, 19:36

HaWe wrote:are you also using Arduinos to be connected to NXTs, like I do ? 8-)
Haha no, I wish I had that sort of hardware!

I've used an NXT in the past, and I'm looking at purchasing a Peggy 2LE from EvilMadScientist ( http://www.evilmadscientist.com/2009/peggy-2le/ ) but the processor on that one is apparently equivalent to the Arduino Uno's processor. A friend has an Uno clone, so I would be able to test code on that... But I dunno if it's beefy enough xD
—Jag

HaWe
Posts: 2500
Joined: 04 Nov 2014, 19:00

Re: Question about the OS/internal specs

Post by HaWe » 08 Dec 2014, 20:12

But you still got a NXT, no?

Arduinos are for 5 USD (Uno) or 10 USD (Mega) up to 15 USD (Due) if you wish to buy a China Clone.
By Unos you can control +2 extra encoder motors + 4 analog sensors
by Megas +6 encoder motors + 8 analog sensors + 16 touch sensors + 1 PS2 PC keyboard
by Dues the same +1 extra standard/highspeed i2c Port (for >110 I2C devices) +1 extra SPI port.

The only lack is: - issues about TFT displays and issues about non-volatile memory, but I'm about to fix this.

ps, this is my current state of work:
http://www.mindstormsforum.de/viewtopic ... 302#p65015

Stryker295
Posts: 46
Joined: 29 Sep 2014, 09:53
Location: Arizona, USA
Contact:

Re: Question about the OS/internal specs

Post by Stryker295 » 08 Dec 2014, 23:00

HaWe wrote:But you still got a NXT, no?
not currently xD

It's on the other side of the country right now and I have no idea if/when it will ever get shipped out here...
—Jag

Post Reply

Who is online

Users browsing this forum: No registered users and 5 guests