Skip to content

Stability of the app & future plans #4

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
ofabel opened this issue Oct 6, 2024 · 11 comments
Open

Stability of the app & future plans #4

ofabel opened this issue Oct 6, 2024 · 11 comments
Assignees
Labels
enhancement New feature or request help wanted Extra attention is needed question Further information is requested

Comments

@ofabel
Copy link
Owner

ofabel commented Oct 6, 2024

The frequent bus fault upon application start is reported to the firmware developer team. But this won't cope with the fact, that the application got bigger and bigger due to new features. So RAM space will always be a limited resource.

But I'm thinking about releasing a fork of the original firmware with the MicroPython interpreter as a core service. This would mitigate the memory problem. But could also mean, that I have to remove some other core service.

The app store version would still be around and maintained, but with a limited set of features.

If you have an opinion about what feature should be part of the app version or what should be added to the firmware version, feel free to share your thoughts here.

@ofabel ofabel added enhancement New feature or request help wanted Extra attention is needed question Further information is requested labels Oct 6, 2024
@ofabel ofabel self-assigned this Oct 6, 2024
@ofabel ofabel pinned this issue Oct 6, 2024
@xHector1337
Copy link

You guys are doing good! Thanks for everything.

@OliverTahir
Copy link

Just this ♥️

@MaggieLeber
Copy link

I have never, ever been able to successfully launch microPython, it always reports OOM. Unclear what is filling memory.

@ofabel
Copy link
Owner Author

ofabel commented Nov 7, 2024

I have never, ever been able to successfully launch microPython, it always reports OOM. Unclear what is filling memory.

Yes, the latest release is a bit more unstable than the previous ones. But according to flipperdevices/flipperzero-firmware#3927 (comment), the bug is fixed in the firmware. Let's see what the next stable firmware release brings. Otherwise I'll see what I can do about that.

@MaggieLeber
Copy link

Possibly of interest: I bought a new Flipper for my wife this week, and while setting it up, on impulse I loaded mPython... And it seems to work fine, although I did not try working it out thoroughly. The two devices are I assume running the same firmware.

@ofabel
Copy link
Owner Author

ofabel commented Nov 12, 2024

🚀 👴 Good news everyone!

The application seems much more stable with the latest release of the official firmware.

@MaggieLeber did you connect with Bluetooth ? This can lead to the problem because of the memory consumption of the BT stack. But this seems to be fixed with the latest firmware release.

@MaggieLeber
Copy link

Seems to be working much better this morning with the new firmware...will exercise it more later.

@ruapotato
Copy link

I know I'm late, but I vote firmware fork!
(Plus HID plz)

@ofabel
Copy link
Owner Author

ofabel commented Jan 19, 2025

I also would love to hear @jamisonderek opinion here on how I can shrink the binary size of this app... Or anyone else who has an idea to share on what feature could be removed to make this app smaller and more stable.

@jamisonderek
Copy link

Sadly, I'm no expert on STM32 binary size. As we get larger apps like uPython and FlipWorld, it seems like an interesting area to learn more about. In the past, when the Firmware + app was just around the limit I had removed
"SPEAKER_NOTE_A0-GS8" because it was taking about 2KB of the FAP and that seemed to help.

In video 138 (https://youtu.be/_RDCJ95Ktzo) I recommended...

  • Release build of firmware + app
  • Smaller animation
  • Don't have qFlipper or mobile app running
  • Launching using UFBT COMPACT=1 DEBUG=0 launch helped with memory as well. (Not a great solution if you are using your Flipper mobile, but on OFW it leaves you with about 35KB free.)

I have a theory that if we had a tool that renamed functions to two letters, it might be helpful. I'm sure there must be some existing tools to do that? For example, if you open the FAP in notepad and search for "mp_flipper_logging_get_effective_level" or "mp_flipper_repl_continue_with_input" you will find that text. It takes space in FAP, but not sure if it also impacts a section used during the loading process?

@YAKOROLEVAZAMKA
Copy link

Hello!
Thanks a lot for your great work, this one is awesome!
On momentum fw it works stable (after reboot :))

Can you add support of string slices please?
I mean I still can iterate through string with loop, but slices (like s[2:5]) is muuch more clear

Also, if there are more examples can you provide link please?

Thank you once again!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request help wanted Extra attention is needed question Further information is requested
Projects
None yet
Development

No branches or pull requests

7 participants