An open API service indexing awesome lists of open source software.

https://github.com/remcoder/gcode-temp-tweaker

Inject temp commands (m104) to adjust temp according to the volumetric flow rate per layer
https://github.com/remcoder/gcode-temp-tweaker

3d-printing gcode-conversion gcode-processing

Last synced: 12 months ago
JSON representation

Inject temp commands (m104) to adjust temp according to the volumetric flow rate per layer

Awesome Lists containing this project

README

          

# GCode temp tweaker

Sometimes, layers are so small that they need to be printed more slowly so the layer has time to cool down. But slowing down the feedrate causes the filament to be cooked inside the nozzle. This tool will process the gcode, calculate the overall volumetric flow rate per layer and adjust the temp accordingy. This is achieved by injecting temp commands (M104) in to the gcode.

## How it works
- go to https://gcode-temp-tweaker.firebaseapp.com/
- drop a gcode file into the rectangular box
image
- set the minimum and maximum temp you want to vary between
image

- notice the table that reports the temp changes that will be injected
image

- download the resulting gcode!

## Know issues
- the absolute extrusion speed are off (but the resulting temp changes, which are based on relative speed changes, are surely usable)

## Running locally

Install the dependencies...

```bash
npm install
```

...then start [Rollup](https://rollupjs.org):

```bash
npm run dev
```

Navigate to [localhost:5000](http://localhost:5000). You should see your app running.

By default, the server will only respond to requests from localhost. To allow connections from other computers, edit the `sirv` commands in package.json to include the option `--host 0.0.0.0`.

## Building and running in production mode

To create an optimised version of the app:

```bash
npm run build
```

You can run the newly built app with `npm run start`. This uses [sirv](https://github.com/lukeed/sirv), which is included in your package.json's `dependencies` so that the app will work when you deploy to platforms like [Heroku](https://heroku.com).

## Single-page app mode

By default, sirv will only respond to requests that match files in `public`. This is to maximise compatibility with static fileservers, allowing you to deploy your app anywhere.

If you're building a single-page app (SPA) with multiple routes, sirv needs to be able to respond to requests for *any* path. You can make it so by editing the `"start"` command in package.json:

```js
"start": "sirv public --single"
```

## Using TypeScript

This template comes with a script to set up a TypeScript development environment, you can run it immediately after cloning the template with:

```bash
node scripts/setupTypeScript.js
```

Or remove the script via:

```bash
rm scripts/setupTypeScript.js
```

## Deploying to the web

### With [Vercel](https://vercel.com)

Install `vercel` if you haven't already:

```bash
npm install -g vercel
```

Then, from within your project folder:

```bash
cd public
vercel deploy --name my-project
```

### With [surge](https://surge.sh/)

Install `surge` if you haven't already:

```bash
npm install -g surge
```

Then, from within your project folder:

```bash
npm run build
surge public my-project.surge.sh
```