{"id":17643773,"url":"https://github.com/mic159/benbox-slicer","last_synced_at":"2026-03-08T01:06:03.891Z","repository":{"id":33743189,"uuid":"37397925","full_name":"mic159/benbox-slicer","owner":"mic159","description":"A raster PNG slicer for the Benbox laser engraver","archived":false,"fork":false,"pushed_at":"2017-05-21T09:02:38.000Z","size":67,"stargazers_count":9,"open_issues_count":0,"forks_count":3,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-03-31T04:33:30.403Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mic159.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-06-14T03:44:05.000Z","updated_at":"2023-07-06T15:27:40.000Z","dependencies_parsed_at":"2022-08-26T12:12:14.383Z","dependency_job_id":null,"html_url":"https://github.com/mic159/benbox-slicer","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mic159%2Fbenbox-slicer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mic159%2Fbenbox-slicer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mic159%2Fbenbox-slicer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mic159%2Fbenbox-slicer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mic159","download_url":"https://codeload.github.com/mic159/benbox-slicer/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252790617,"owners_count":21804628,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-10-23T09:24:09.975Z","updated_at":"2026-03-08T01:05:58.860Z","avatar_url":"https://github.com/mic159.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"Benbox PNG Slicer\n=================\n\nConverts PNG raster images into Gcode to be sent to the Benbox Laser Engraver.\n\nAlso includes an [OctoPrint](http://octoprint.org/) plugin!\n\nThis code was based on Inkscape plugin at [305engineering/Inkscape](https://github.com/305engineering/Inkscape).\n\nUsage\n-----\n\nBasic usage looks like this:\n```\nbenbox-slicer --input test.png\n```\n\nThe results will be in a file called `output.gcode` in the current directory.\n\nOther options:\n\n - `--speed` The speed to make the laser go while its on. Defaults to 200.\n - `--resolution` Lines per mm. 10 works best with the benbox. Defaults to 10.\n - `--mode` Mode of converting from the PNG to the laser. See below. Defaults to `bw`.\n\nMode\n----\n\n### bw\n\nB/W mode uses a simple threashold if brightness to determine if the pixel should be burnt or not.\n\n![BW mode preview](examples/preview-bw.png?raw=true)\n\n### random\n\nRandom tries to use little dots to emulate greys.\n\n![Random mode preview](examples/preview-random.png?raw=true)\n\n### greyscale\n\nThis mode attempts to use the laser's intensity to draw different tones of grey.\n\nIt is experimental, and doesnt seem to work all that well for me yet, but why not give it a go?\n\n![Greyscale mode preview](examples/preview-greyscale.png?raw=true)\n\nOctoPrint plugin\n================\n\nThis also includes a plugin for [OctoPrint](http://octoprint.org/).\n\nTo install it, all you have to do is pip install this along with octoprint!\n\n```\npip install octoprint\npip install benbox-slicer\n```\n\nSetting up the benbox with OctoPrint\n----------\n\nCurrently the benbox does not work out of the box with OctoPrint :(\n\nThe benbox does not support checksums in GCODE, and you will have to modify the source code to make it work.\n\nOpen up [octoprint/util/comm.py](https://github.com/foosel/OctoPrint/blob/e722c2f8adef5dce085205977a0e83331aba5837/src/octoprint/util/comm.py#L1524)\nto around line 1524 and comment out or delete the code so that it always just uses `_doSendWithoutChecksum`.\n\nFor example:\n```python\n# now comes the part where we increase line numbers and send stuff - no turning back now\n#if (gcode is not None or self._sendChecksumWithUnknownCommands) and (self.isPrinting() or self._alwaysSendChecksum):\n#    linenumber = self._currentLine\n#    self._addToLastLines(command)\n#    self._currentLine += 1\n#    self._doSendWithChecksum(command, linenumber)\n#else:\nself._doSendWithoutChecksum(command)\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmic159%2Fbenbox-slicer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmic159%2Fbenbox-slicer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmic159%2Fbenbox-slicer/lists"}