My name is Patrick Schmidt. I am a software developer by day and a maker by night.
clon1998 / mobileraker Goto Github PK
View Code? Open in Web Editor NEWA Flutter mobile app for Klipper/Moonraker
License: Other
A Flutter mobile app for Klipper/Moonraker
License: Other
Notifications should be sent on state changes like a print finishing or errors.
No matter what value is entered, it always defaults to 10%.
Reproduction steps:
Actual result:
"Mesh" button is not visible in first tab on initial open, but is visible after the second tab was opened previously.
Expected result:
"Mesh" button is visible on first tab on initial open.
Fans/Devices set as "fan_generic" on Klipper are not listed on the Fans panel
Describe the bug
Since the latest update, the dashboard screen doesn't load anymore, except the "pause" button. Also, the file thumbnails in the file explorer don't work anymore.
Also the printer settings only show a grey screen.
To Reproduce
Steps to reproduce the behavior:
Expected behavior
Seeing the dashboard
Smartphone (please complete the following information):
Mobileraker-Version
1.6.0-12
Klipper versions
Hi!
Would you like to know if this program is under development? If so, I would be happy to support you in creating the Hungarian language. Is there a need for it?
Describe the bug
The status text you get by holding the status icon seems to be wrong as far as I can tell. Text says “moonraker disconnected to klipper”, but I believe that logic is reversed and moonraker is in fact connected to klipper.
To Reproduce
Steps to reproduce the behavior:
Expected behavior
Text to correctly reflect the state of the connection.
Screenshots
If applicable, add screenshots to help explain your problem.
Smartphone (please complete the following information):
**Mobileraker-Version
I’m not sure where to find this info.
So I accidentally clicked on that emergency stop button in the middle of a print yesterday. I think it needs to have a conformation of the emergency stop before it actually stops the print. Or at least have that be an option.
I'm on android with the latest app version. I added 2 printers and then added their webcams, and it just doesn't load. I tried the exact same URL in the web browser and it brings up the stream.
Everytime i preheat a voron i pull out and set my timer to 5 minutes so ill know when to start. I want to be there to check the skirt at the start of a print. I would pay for this feature
Hello. This may be a configuration issue, but something is behaving oddly.
I can send a REST request with X-Api-Key and my API key and everything works fine. Once I enter the same information into MobileRaker, it gives me an error connecting. Both of these tests are on the same network that is not local. I believe that I have permissions and port forwarding is working because I can manually make API calls.
Thank you.
The Dashboard is just showen with a Camera Setup, even with Printers that wont even have a camera
It takes 3 touches to switch between printers. Theres gotta be a way to switch between printers quickly like forward or back button or swiping left/right.
Also a screen showing temps and time for all the printers would be really helpful. Then switching between printers to check each one would be less onerous
A widget for my android with that info would be even better but i know... Thank you. Great stuff.
Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
I like to baby step when paused. Also between prints
App hides this ui feature when not actively printing.
Describe the solution you'd like
A clear and concise description of what you want to happen.
Turn off hiding please :)
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
Additional context
Add any other context or screenshots about the feature request here.
Hi! Thank you very much for this cool app!
Could you please consider publishing it in F-Droid?
App asks me to enter the API key, but I've already entered it and saved.
Message: "It seems like you configured truested clients for moonraker. Please add the API key in the printers settings!"
Getting this same thing when trying local address or my remote address.
I run KlipperScreen using the same API so it works.
When using a slow connection, the webcam feed needs to drop frames in order to keep up. Right now it loads the frames sequentially so the feed advances frame by frame and it starts to lag way behind. It should flush the missed frames and load the most current one instead.
Describe the bug
Notifications does not appear on iOS until the app is on foreground even the background app refresh is enabled in the iOS settings.
To Reproduce
Steps to reproduce the behavior:
Expected behavior
Notifications should appear when the app is in the background.
Smartphone (please complete the following information):
Additional context
I'd appreciate, if there was a settings to set at which percentages the notification should appear.
Describe the bug
When printing you get notifications every second from the app.
To Reproduce
Steps to reproduce the behavior:
Expected behaviour
You would expect to get notifications at key progression points or after set amounts of time.
Screenshots
N/A
Smartphone (please complete the following information):
This doesn't seem to be device specific but below is the hardware I have been using.
**Mobileraker-Version
Test Flight 1.4.1 (1.4.1.0)
Additional context
It would be really great to get all the print time estimates and ETA times that the mainsailOS provides.
Not sure why, but the estimates ETA that mobileraker provides is always different from what mainsailOS shows.
Describe the bug
I hope I'm not missing something obvious here, just trying to get the iOS build up and running locally.
While it builds without exception, when running in the iOS simulator, it will prompt to allow notifications, then show a white screen. Running it in VSCode with the flutter extension, it breaks on main.dart:32, PlatformException (PlatformException(unhandledMethod("registerPeriodicTask") error, Unhandled method registerPeriodicTask, null, null))
A little searching reveals that registerPeriodicTask
isn't supported for iOS.
https://github.com/fluttercommunity/flutter_workmanager#customisation-android-only
Admittedly, I'm out of my depth with this, so if this is obvious/I'm doing something stupid, apologies in advance.
Describe the bug
Fetching printer keeps spinning and nothing comes back. So no control screen
Emergency button works though, also restart FW and restart MCU
Also retrieving files from the printer in the app also works.
To Reproduce
add printer on the local network, try to get the main screen
Expected behavior
Main control screen appearing
Screenshots
just spinning squarish logo and 'running' text: Fetching printer.
Desktop (please complete the following information):
iOS (multiple browsers, Safari, Brave, Chrome)
Smartphone (please complete the following information):
**Mobileraker-Version
1.4.1-1.4.1.0
no API key
iOS download link not working. TestFlight now saying beta is full. Was working for me yesterday?
Describe the bug
A clear and concise description of what the bug is.
When hitting done on soft keyboard or enter on physical (bluetooth keyboard) at the end of typing a console command, nothing happens. You need to click the submit arrow (oh the pain, the pain!)
To Reproduce
Steps to reproduce the behavior:
Expected behavior
A clear and concise description of what you expected to happen.
Physical keyboard enter key should submit the command
Screenshots
If applicable, add screenshots to help explain your problem.
Desktop (please complete the following information):
**Mobileraker-Version
This information can be found in Android's and IOS's App-Info.
1.6.1-15
Additional context
Add any other context about the problem here.
I suspect adding
onEditingComplete: model.onCommandSubmit
to the TextField on line 121 in console_view.dart will fix this, but I'm just guessing.
This is just a feature request. I would like to be able to reorder the cards in the app. For example, I could move the Webcam card up to the top if desired. Would also keep "critical" functions off the screen at the bottom so I don't accidentally "touch" a button I didn't really want to (such as baby-stepping during a print, etc.)
Describe the bug
The interface has very low fps when camera is added, so low that it becomes unusable.
To Reproduce
Steps to reproduce the behavior:
Screenshots
Demonstration video: https://youtu.be/di9L0-6G0jo
Smartphone (please complete the followininformation):
**Mobileraker-Version
1.2.1 (4)
Additional context
My webcam is raspberry pi camera set to 1280x720 30fps
Part cooling fan reporting "Off" when Fluidd shows 20%. Verified parts fan is operating.
We've all had those prints where it's a long print, and half way through it we're not entirely convinced that a sliced feature is going to work - say a large transition from support to a flat surface. I think it would be an incredibly useful feature to be able to specify, for a given print, a Z height that you want a notification for. The new notification system can then give me a heads up that we've reached the point where I might want to go take a look and make sure things go well.
An expansion of this might be to have some way to trigger notifications in g-code, then you could add custom slicer entries to notify on features.
Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
I use macros a lot in this app. but a lot of them spit out console out (eg “printer not homed”). I need to tap left nav, console, to view. Sounds precious I know but it’s friction, and taps take a bit of fine motor control whereas a swipe can be sloppy.
Describe the solution you'd like
A clear and concise description of what you want to happen.
pull the console screen from where it is now to a screen “to the right of” macros. Then you could run a macro and swipe right to see output.
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
Putting a console pane on the macro screen
Additional context
Add any other context or screenshots about the feature request here.
If you were going to do this then you might as well put files as another swipe space :)
dude I love this app
We should support PiP mode for the webcam playback so it can be shown on top of different applications.
Hey, I just installed mobileraker on ios 14.7.1. When I want to set the printer url, the app crashed when I write ":" without specifiying "ws://" before ip address. Restarting the app didn't help.
Exactly as the title says, is there a way to import my preexisting presets and macro groupings into my app (android) without having to completely redo them?
Current Layer always reported as last layer. E.g. 150/150.
Possibilty to turn devices configured under Moonraker’s [power] section on or off. Currently, the UI does not load of Klipper is shutdown due to unpowered MCU. The power controls should be accessible even if Klipper is not running.
Describe the bug
Set temp for hotend and bed but the displayed temp doesnt change. I checked fluidd web and the target i set via this app did work and temps were changing. Just not showing in the app
To Reproduce
Steps to reproduce the behavior:
Expected behavior
A clear and concise description of what you expected to happen.
Screenshots
If applicable, add screenshots to help explain your problem.
Desktop (please complete the following information):
Smartphone (please complete the following information):
**Mobileraker-Version
This information can be found in Android's and IOS's App-Info.
Additional context
Add any other context about the problem here.
Add the ability to send G-Code commands to klipper. There should also be a history of what was sent to and received from klipper.
Describe the bug
Normally on iOS you can dismiss the keyboard by tapping outside a field. This does not work on the new printer page, which is a problem since the keyboard can cover up essential info.
To Reproduce
Steps to reproduce the behavior:
Expected behavior
Tapping outside a field would dismiss the keyboard
Smartphone (please complete the following information):
The mobileraker.com website says "*Works on iOS 13.6+, Android Kitkat and above". However, on my tablet with android 4.4.2, the application cannot be installed, there is a syntax error. Apkpure determines app compatibility only with android 7.1.
Describe the bug
A clear and concise description of what the bug is.
After cancelling print, app thinks it is paused. I cannot start another print in app
To Reproduce
Steps to reproduce the behavior:
Start a print.
Cancel it
Look at status ( shows as paused)
Check print in fluid ui, print shows as cancelled.
Start another print, app picks it up
Expected behavior
A clear and concise description of what you expected to happen.
App picks up that print is cancelled
Screenshots
If applicable, add screenshots to help explain your problem.
Desktop (please complete the following information):
Smartphone (please complete the following information):
**Mobileraker-Version
This information can be found in Android's and IOS's App-Info.
1.61.1-15
Additional context
Add any other context about the problem here.
I think it would be nice to have a quicker way to switch between printers. Since there are modules in there that use the one finger swipe, I think implementing a two finger swipe would be awesome to quickly go between printers.
Describe the bug
Attempting to build pre-1.4 for iOS on local machine. Appears a few includes are missing.
To Reproduce
Steps to reproduce the behavior:
open -a Simulator
)flutter run
)Additional context
I've attached the build output
build.log
I installed this on my phone and it works using local IP address. But if I connect from outside via port forwarding it doesnt work. Is there something I need to do to make this work?
An option to expand the video stream window to fullscreen (with a tap, or icon) would be great!
[Feature request]
Please add confirmation on emergency stop button
Describe the bug
I guess it updated today. The seccond info page with fan speed works but the main page is now blank
Andriod
To Reproduce
Steps to reproduce the behavior:
Expected behavior
A clear and concise description of what you expected to happen.
Screenshots
If applicable, add screenshots to help explain your problem.
Desktop (please complete the following information):
Smartphone (please complete the following information):
Additional context
Add any other context about the problem here.
After editing the current printer it seems like the WebSocket closes and the UI does not rebuild correctly to accommodate for PrinterSetting
changes.
======== Exception caught by foundation library ====================================================
The following StateError was thrown while dispatching notifications for RefreshNotifier<RefreshStatus>:
Bad state: StreamSink is closed
When the exception was thrown, this was the stack:
#0 _StreamSinkImpl.add (dart:_http/http_impl.dart:903:7)
#1 _WebSocketImpl.add (dart:_http/websocket_impl.dart:1223:11)
#2 DelegatingStreamSink.add (package:async/src/delegate/stream_sink.dart:35:11)
#3 WebSocketWrapper.send (package:mobileraker/WebSocket.dart:108:20)
#4 WebSocketWrapper.sendObject (package:mobileraker/WebSocket.dart:114:5)
...
The RefreshNotifier<RefreshStatus> sending notification was: RefreshNotifier<RefreshStatus>#450b4(RefreshStatus.refreshing)
====================================================================================================
Having just installed and configured I found the app worked immediately with the exception that the webcam does not appear. Am I missing a configuration step or is there a possible issue with the camera setup? Does it only work with USB cameras? Being able to remote monitor the camera is a key feature for me. Thanks in advance.
Describe the bug
Layer is not showing the current layer and seems it stays at Max/Max
To Reproduce
Steps to reproduce the behavior:
Expected behavior
This should update with the current layer/max layer
Smartphone (please complete the following information):
Additional context
Add any other context about the problem here.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.