Replies: 10 comments 10 replies
-
Unfortunately, small footprint was not one of the design goals of this library. I don't know if you already have size optimization enabled (-Os), if not that might be able to save a bit more space. Other than that, I could add more exclude options to e.g. disable CAD or even packet transmission/reception, but it's hard to guess whether the impact will be worth this. I'll try just out of curiousity. The other exclude macros didn't do anything beacause you're not using them, so the other module classes get optimized away (don't get linked) during compilation. |
Beta Was this translation helpful? Give feedback.
-
That's fine. The current 85% gives me some breathing room and ability to turn on debugging, so OK at the moment. Did the latest version have some large changes or datastructures that increased it by 5%? |
Beta Was this translation helpful? Give feedback.
-
Another thing... With the RADIOLIB_EXCLUDE_DIRECT_RECEIVE setting enabled, the compiler generates the following:
It still compiles successfully though... |
Beta Was this translation helpful? Give feedback.
-
There were some changes and fixes, it's quite common that future versions are more complex, and therefore larger.
I was not able to replicate this. I found a bug with the POCSAG protocol when only RADIOLIB_EXCLUDE_DIRECT_RECEIVE is defined, but not what you are describing. Can you copy the whole thing? And what other settings do you have? |
Beta Was this translation helpful? Give feedback.
-
This sketch generates the error:
If I remove the hell stuff, and just leave the beginFSK, then the message disappears. Likewise if I remove the hellschreiber stuff from my large sketch (just leaving LORA and transmitdirect calls), then the message also disappears. If I change the above sketch to use the morse client, then I get the error again. |
Beta Was this translation helpful? Give feedback.
-
Thanks for that, but I don't really know what I'm doing! I tried adding it to the BuildOpt.h file, but it just generated heaps of errors. I don't know how to add it to the compiler flags. I tried searching the internet, but there are lots of contradictory answers talking about modifying non existent files (well don't exist in my installation anyway). I assume that after making this hack, I will have to remove it if I want to build another sketch that uses receive functions? |
Beta Was this translation helpful? Give feedback.
-
OK, used BuildOptUser.h and that got rid of the warning. Now I'm back to being critically short of flash. SX1278 uses 97% (104% with debug) and SX1268 uses 109%. I assume that when I got 85% used with the warning, certain functions were missing or effectively empty?? |
Beta Was this translation helpful? Give feedback.
-
With 6.0, it looks like the code size has grown another 5% pushing me over the limit again! I didn't think that there was that many major changes in 6? |
Beta Was this translation helpful? Give feedback.
-
Yep, SX1278, SX1268 Hellschreiber & LORA. I'll have to try and roll back to 5.7 (but after you introduced the BuildOptUser.h file) |
Beta Was this translation helpful? Give feedback.
-
Oh dear, new version (6.2) and my latest project no longer fits in flash memory (ATMega328p) due to size increase. This project just does some simple message passing between a SX1280 and an SX1278 and uses 96% flash storage. With 6.2 it is 105%. Any more excludes I can use, or am I stuck with 6.1 (the project works, so probably no need to upgrade). Thanks, |
Beta Was this translation helpful? Give feedback.
-
Hi, After upgrading to 5.7.0, my project no longer fits in flash (101% and was running at ~96% with 5.5.0). I am using radiolib for hellschreiber and LORA with SX1278 and SX1262 modules only. I am using an ATmega328p (32K flash).
I have found that defining RADIOLIB_EXCLUDE_DIRECT_RECEIVE, I can get flash usage down to 85%. I figured that since my project is transmit only, I will not be using these features. I tried the other "EXCLUDE" options, but these did not have any impact on size.
Are there any other ways of reducing flash storage of the library?
Thanks,
Beta Was this translation helpful? Give feedback.
All reactions