PyRoombaAdapter icon indicating copy to clipboard operation
PyRoombaAdapter copied to clipboard

Add simple GUI to control roomba with web app

Open AtsushiSakai opened this issue 3 years ago • 9 comments

AtsushiSakai avatar Feb 20 '21 12:02 AtsushiSakai

Hi, @AtsushiSakai I've recently created similar app. But I decided to control Roomba via web app. It is very simple yet and can just move Roomba. But I think this is very good to start. You can review it here https://github.com/mrkeuz/roomba-rc.

What is done:

  • websocket support
  • touchpad and keyboard support
  • css and html prepared for touchscreen (not moving/resizing on touch taps, etc) (tested on iOS)
  • no extra dependencies for JS

I don't know if there will be time to develop it. But you can use code as you want if needed.
You can run it for review without connected Roomba with --dummy option - ./main.py --dummy in this case app just start web server with an empty PyRoombaAdapter. Hope this help you.

mrkeuz avatar Jul 20 '21 22:07 mrkeuz

Oh. cool. If you would like to add the UI as a part of this Pyroomba Adapter, feel free to create a PR : ).

AtsushiSakai avatar Jul 21 '21 23:07 AtsushiSakai

Maybe we just create organization and move roomba-rc to it? What you think?

  • PyPi links will not break
  • git+https is for brave users ))) so think ok

mrkeuz avatar Sep 05 '22 02:09 mrkeuz

Thank you for your comment. Why do you want to split the package? Installing this package in a small computer on a roomba, and launch a web server with this package, and an user can connect it from a browser and can control it. I think this structure is simple and easy to use. Any better use case to split the package?

AtsushiSakai avatar Sep 05 '22 12:09 AtsushiSakai

Just want to hear you opinion (don't remember license type of the project) I have enough time to support project right now.05.09.2022, 15:31, "Atsushi Sakai" @.***>: Thank you for your comment. Why do you want to split the package? Installing this package in a small computer on a roomba, and launch a web server with this package, and an user can connect it from a browser and can control it. I think it is useful. Any better use case to split the package?

—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you commented.Message ID: @.***>

mrkeuz avatar Sep 06 '22 08:09 mrkeuz

I have enough time to support project right now.

That's great!!. This package is still used by many users, so your PR is very welcome!!

If possible, it will be great that the GUI code only depends on some python packages and a user just can run a command like:

PyRoombaAdapter.start_controller_server(PORT)

Then, the user can access the controller from a web browser.

AtsushiSakai avatar Sep 07 '22 13:09 AtsushiSakai

Roomba-RC PR

Got your idea. Make sense. Agree this will be simple and easy - install single package for all. And just run.

Unfortunately, currently, I don't have enough time for this - my thoughts and time are busy with another project (vlcsync). See my profile if interesting.

When there is courage and time I will try to make a PR for PyRoombaAdapter.

Idea

I have an idea in my head. Instead of a single-board computer, just put esp32 (as proxy) and send TTL commands to roomba:

  • Tcp→Wi-Fi→esp32→UART→Roomba.

The application and driver can be running on server. Take power supply from the Roomba itself. In this case we get a very cheap solution. And ready i.e. for Smart House. There is already a firmware for esp32 - somewhere I saw such Tcp→Wi-Fi→Esp32→UART feature implementation. This just as an idea and option.

What you think about this feature?

Thanks again for You work and interesting project! 🚀

mrkeuz avatar Oct 16 '22 22:10 mrkeuz

@AtsushiSakai,

Proposal

Temporary, until PR will not be merged, you can just add link to my project.

mrkeuz avatar Oct 20 '22 09:10 mrkeuz

image

mrkeuz avatar Jun 23 '23 02:06 mrkeuz