Skip to content
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

FR: Please add support for a multiple printer setup #2

Open
1coderookie opened this issue Feb 22, 2024 · 5 comments
Open

FR: Please add support for a multiple printer setup #2

1coderookie opened this issue Feb 22, 2024 · 5 comments

Comments

@1coderookie
Copy link

Hey Joakim,

could you maybe add support for a multiple printer setup, like giving an option where one could choose between the different printers?
That would be great as it would allow to use this great solution as a one-for-all remote control so to say, also for non-Elegoo machines.

Right now we have to add the specific path for the printer in the PrinterData line here:

class KlipperLCD ():
    def __init__(self):
        ...
        LCD("/dev/ttyAMA0", callback=self.lcd_callback)
        ...
        PrinterData('XXXXXX', URL=("127.0.0.1"), klippy_sock='/home/pi/printer_data/comms/klippy.sock')

Now if one is using a setup where multiple machines are connected to the host, then the default folder structure is:
~/printer_1_data/.., ~/printer_2_data/.., ~/printer_3_data/.. and so on (or instead of "printer_1" , "printer_2" etc one can also choose an indiviual name when setting this up using KIAUH).
The URL is the same (if all printers are connected to the same host), but each printer gets it's own port then, starting with 7125.
So for "printer_1" it would be URL:7125 , for "printer_2" it's URL:7126 , for "printer_3" it's URL:7127 and so on.

It would be really great if you could extend your solution to make it work - if you don't have a setup with multiple printers for testing, just let me know, I'll be happy to test it then for you! :)

TIA & all the best :)

@cnlackey
Copy link

This is a really interesting idea, would allow you to create a DIY Klipper Pad with a TJC/Nextion screen and Pi similar to the CheaPad: https://www.youtube.com/watch?v=MxMQeIVuC-k , but instead of KlipperScreen with KlipperLCD. I'm certain its possible but would most likely require a few to class PrinterData to associate the selected Printer you are working with. In theory you could populate a dropdown combo box with all available MCUs, and from there communicate on touch events to send back the selected printer profile. I will look into further, but would be cool if @joakimtoe can look into this as well. Would absolutely shit on the sonic pad, btt pad, nebula pad, etc.

@1coderookie
Copy link
Author

1coderookie commented Feb 29, 2024

Well, it's not the same like the Pads of course since this isn't an SBC where Klipper runs on at well, but yeah, it would be really nice, especially since the unit already comes with the printer and the wiring is super simple due to the XH2.54 connector being used (or the 4P4C RJ10, but I went with the XH).

Yes, some sort of pulldown or so would be neat then, and then it maybe could take the printer's names from the MainsailUI or maybe there could be sth like a config file for KlipperLCD where one can then add the necessary info about the printers or so?

As I said - if I could/should test sth, just let me know :)

@cnlackey
Copy link

cnlackey commented Feb 29, 2024

Well, it's not the same like the Pads of course since this isn't an SBC where Klipper runs on at well, but yeah, it would be really nice, especially since the unit already comes with the printer and the wiring is super simple due to the XH2.54 connector being used (or the 4P4C RJ10, but I went with the XH).

Yes, some sort of pulldown or so would be neat then, and then it maybe could take the printer's names from the MainsailUI or maybe there could be sth like a config file for KlipperLCD where one can then add the necessary info about the printers or so?

As I said - if I could/should test sth, just let me know :)

It's precisely like a pad. The Big Tree Tech Pad is literally a BTT Pi and their screen, and utilizes KlipperScreens ability to manage multiple printers. If you watch the french video I linked you will understand how it could function :)

@1coderookie
Copy link
Author

Yes, sure, if you strap it on a RPi, then of course you're right (I know about the CheaPad btw, but thanks :) ). I wasn't referring to your DIY KlipperPad tho, only was talking about the control unit itself - sorry if I wasn't clear on that.
Reason is I personally find it quite appealing that you actually don't need an additional SBC for using this solution - just add the USB2TTL adapter and you can hook it up to literally any host you're running Klipper on, no matter if it's a RPi, an old laptop, a ThinClient or whatever :)

@cnlackey
Copy link

cnlackey commented Mar 1, 2024

Yes, sure, if you strap it on a RPi, then of course you're right (I know about the CheaPad btw, but thanks :) ). I wasn't referring to your DIY KlipperPad tho, only was talking about the control unit itself - sorry if I wasn't clear on that. Reason is I personally find it quite appealing that you actually don't need an additional SBC for using this solution - just add the USB2TTL adapter and you can hook it up to literally any host you're running Klipper on, no matter if it's a RPi, an old laptop, a ThinClient or whatever :)

I see what youre, saying and I actually have been playing around with this myself! I currently have the screen controlling a printer thats running Klipper in an Ubuntu VM hahah

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants