Remote Memory Usage

From JP1 Remotes Wiki
Jump to navigationJump to search

Back to IR Help Index

Previous Topic Fav Scan

Next Topic: Device Upgrades

The memory available for keymoves and macros is very limited. Creating device upgrades to incorporate keymoves can save you some keymove space, and creating device upgrades from your learned signals can free up learned memory. Using an extender can give you a huge increase in the amount of keymove/macro space.

Let's take a look

The EEPROM memory is partitioned. For the URC8811, it is as follows:


Learning memory: 1021 bytes
Upgrade memory: 762 bytes
Keymove/Macro memory: 219 bytes


Although these numbers may vary WIDELY, in general, a single learned function consumes about 25-50 bytes, so you can usually get around 20-40 total learned functions stored before that portion of the memory is full.


A single KEYMOVE (by which you can assign an advanced code to another button) consumes between 5-6 bytes, so you can usually have up to 40 keymoves, as well. A macro can be pretty long (5-20 bytes), and if you use a bunch of macros to set up your system, as many do, you may find that the limit on this memory is stifling.


An entire device upgrade with a full set of button assignments (around 30 or so, depending upon device mode chosen) may occupy anywhere from 40 to 140 bytes (also depending on how complex the protocol is and if an additional protocol upgrade is required to support the device upgrade), so upgrades are almost always the most efficient method to get the device and button mappings you desire. You can install between 8 and 12 device upgrades, depending upon their size. Before you know it you end up with your memory full.


When you use the extender, all of the learning memory is converted to keymove/macro memory, although, a small amount of it becomes unavailable (to run the extender itself). For the 8811, this results in:

Learning memory: n/a
Upgrade memory: 485 bytes (with preloaded protocols)
Keymove/Macro memory: 852 bytes


The extender is just a SOFTWARE load into the EEPROM. You can still learn and decode signals by deactivating the extender, but you are unable to USE learned signals directly in the remote with the extender activated. But you don't need to use learned signals directly when you simply use the decoded learned data to build an upgrade (much more efficient, remember?), AND you have LOTS of room for keymoves and macros to customize your remote. Further more, there are other benefits to running the extender (like faster macro execution, greater flexibility in how to construct macros, keymoves onto buttons that would not normally permit it, and the availability of special functions like ToadTog, Long/Double Key press, Device Specific Macros.)

Back to IR Help Index

Previous Topic Fav Scan

Next Topic: Device Upgrades