Advertisement
Guest User

Bambu_Printer_Discovery.ps1

a guest
Jan 24th, 2025
103
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. # Send the IP address of your BambuLab printer to port 2021/udp, which BambuStudio is listens on.
  2. #
  3.  
  4. $iniValues=Get-Content 'discover_printer.ini'|Select -Skip 0|ConvertFrom-StringData
  5.  
  6. $PRINTER_ID=1
  7.  
  8. while($PRINTER_ID -le 15) {
  9.  
  10. #             Start-Sleep -s 1
  11.  
  12.                 $PRINTER_IP = $iniValues."PRINTER${PRINTER_ID}_IP"
  13.  
  14.                 $PRINTER_USN = $iniValues."PRINTER${PRINTER_ID}_USN"
  15.  
  16.                 $PRINTER_DEV_NAME = $iniValues."PRINTER${PRINTER_ID}_DEV_NAME"
  17.  
  18.  
  19.  
  20.                 if ($PRINTER_IP -ne $null -and $PRINTER_IP -ne "") {
  21.  
  22.                                 Write-Host "Adding Printer:" -nonewline
  23.  
  24.                                 Write-Host $PRINTER_DEV_NAME
  25.  
  26.                                 $message = "HTTP/1.1 200 OK`r`nServer: Buildroot/2018.02-rc3 UPnP/1.0 ssdpd/1.8`r`nDate: $(date)`r`nLocation: ${PRINTER_IP}`r`nST: urn:bambulab-com:device:3dprinter:1`r`nEXT:`r`nUSN: ${PRINTER_USN}`r`nCache-Control: max-age=1800`r`nDevModel.bambu.com: C13`r`nDevName.bambu.com: ${PRINTER_DEV_NAME}`r`nDevSignal.bambu.com: -44`r`nDevConnect.bambu.com: lan`r`nDevBind.bambu.com: free`r`n`r`n"
  27.  
  28.                                 $udpClient = new-Object system.Net.Sockets.Udpclient(0)
  29.  
  30.                                 $byteBuffer  = [System.Text.Encoding]::ASCII.GetBytes($message)
  31.  
  32.                                 $sendbytes = $udpClient.Send($byteBuffer, $byteBuffer.length, $remoteip, 2021)
  33.  
  34.                 }
  35.  
  36.                 $PRINTER_ID++
  37.  
  38. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement