bigtreetech / BIGTREETECH-SKR-V1.3

32bit board with LPC1768, support marlin2.0 and smoothieware, support lcd2004/12864, On-board TMC2130 SPI interface and TMC2208 UART interface no additional wiring is required
1.01k stars 1.15k forks source link

Ideas for RGB controller... Use WiFi or Aux ports from SKR board? #315

Open RoscoeTheDog opened 4 years ago

RoscoeTheDog commented 4 years ago

I want to setup some sick RGB's to my printer-- everything's working pretty great at the moment with SKR v1.4 turbo and TMC 2209's.

My first thought is to use an Arduino which would communicate to the workstation PC that would simply parse the Gcode that is being sent from the Host slicing program. I use Repetier Host and I could see a few different ways of doing this..

Repetier Host has log files, which I could save to the Arduino's SD card and parse it that way. However, I haven't tested yet whether or not Repetier Host will write to the file after the print is completed or not.. It would have to implemented as line-by-line real-time logging for this to work.

The alternative option while using Repetier Host is to use the Push Notification feature, and send messages to a local server which the Arduino would listen to. It would be local, so in theory it shoud be pretty fast, but it might still be slow and induce latency depending on how Repetier Host is designed.

The best option would be to control it directly from the SKR board somehow.. I could potentially split off the signals from the motor drivers and parse the analog input to the Arduino board, but coding logic for this would be much trickier than if you were to just parse Gcode commands.

This SKR board has a lot of I/O-- and even auxiliary and wifi ports which I'm not currently using right now.

Is there a way I could relay Gcode messages from the SKR board to an Arduino?

PS: I know that Marlin firmware has option for Neopixel RGB LED strip lights, but those are expensive and somewhat limiting in the extent of how I want to code/customize the lights behavior

RoscoeTheDog commented 4 years ago

Still need to verify.... but I believe repetier host can connect to any Microcontroller device automatically, making it believe that it is, in fact, a printer. If this is the case, I can use repetier server to connect to "two" printers at once and just send the same exact commands to both of them.

I discovered that logging was being written somewhere in-between real time and not. It creates a log file, but only flushes the output stream buffer and writes to the file periodically-- which would not be reliable for lighting effects.

Still wondering if it is possible to piggyback off of the SKR to accomplish lighting effects... let me know if anyone has any ideas!