Jump to content
C4 Forums | Control4

Memory / Lines of Code Capacity


crosen

Recommended Posts


The HC-200/HC-300 and HC-500 all have the same processor and amount of memory. It is not so much the number of lines of code but rather the complexity and design of your system that will dictate how much code you can write.

What is the actual gating factor one will run into when adding code to a project? In other words, if I sat down at Composer and added line after line of code until running into some hard limit, what would that limit be? Would it be that a RAM code buffer filled up? ...that the harddrive filled up? It there a hard limit to the number of events against which code can be written? I understand that performance would likely degrade along the way, but I'm trying to understand the hard limits of the system.

Thanks,

Cliff

Link to comment
Share on other sites

So is anyone going to tell us how much memory they have?

In total, or just available for you to use for the total project, or just specifically for programming? I'd say that's probably not something they will tell us. I can't say that I've heard of anyone hitting the ceiling though.

Link to comment
Share on other sites

I am not sure what the question truly is. That is like asking how many line of code can be written into any program. Good code could have more lines than bad code. All kind of factors would dictate the answer to your question, how many variables are running and monitoring status of devices, how many services are running on the box. I believe the only matrix you will find is the number of supported devices by a controller.

Link to comment
Share on other sites

I think the question is what is the maximum processor throughput. This is a matrix equation answer soemone is looking for. Lines of code alone is not going to give you a "hard" answer. However, I would think softies would have limits in place so as not to bump-up against overall throughput limit.

Link to comment
Share on other sites

There's no software 'guard rails' that keeps you from putting too much programming / too many devices / etc. into a project.

The code size is unlimited by the software, if you have an HC-1000, you can pretty much put as much code in the project as you want.

Code lines themselves are pretty small, they don't take up much project (flash) space at all. They also vary a lot, for example, a line of code that turns on a light to a certain level is basically this:

<item><Proxy>light</Proxy><Type>Command</Type><DeviceID>40</DeviceID><Description>Set Level on the NAME to 63</Description><XmlData><devicecommand owneridtype="" owneriditem="-1"><command>SET_LEVEL</command><params><param><name>LEVEL</name><value type="INTEGER"><static>63</static></value></param></params></devicecommand></XmlData></item>

There's no estimate as to number of lines because it's a pretty large number to begin with, and it depends on what those code lines are.

I've never seen a dealer come up against not having enough Flash or RAM to support coding. It's usually the media database (which includes cover art, which trumps code) and/or photo screensaver, etc. that would cause you to need more storage space.

RyanE

Link to comment
Share on other sites

I've never seen a dealer come up against not having enough Flash or RAM to support coding. It's usually the media database (which includes cover art, which trumps code) and/or photo screensaver, etc. that would cause you to need more storage space.

RyanE

Or a faster controller/NAS.

Link to comment
Share on other sites

There's no software 'guard rails' that keeps you from putting too much programming / too many devices / etc. into a project.

The code size is unlimited by the software, if you have an HC-1000, you can pretty much put as much code in the project as you want.

Code lines themselves are pretty small, they don't take up much project (flash) space at all. They also vary a lot, for example, a line of code that turns on a light to a certain level is basically this:

<item><Proxy>light</Proxy><Type>Command</Type><DeviceID>40</DeviceID><Description>Set Level on the NAME to 63</Description><XmlData><devicecommand owneridtype="" owneriditem="-1"><command>SET_LEVEL</command><params><param><name>LEVEL</name><value type="INTEGER"><static>63</static></value></param></params></devicecommand></XmlData></item>

There's no estimate as to number of lines because it's a pretty large number to begin with, and it depends on what those code lines are.

I've never seen a dealer come up against not having enough Flash or RAM to support coding. It's usually the media database (which includes cover art, which trumps code) and/or photo screensaver, etc. that would cause you to need more storage space.

RyanE

Thank you, Ryan, that's very helpful.

Cliff

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.