Skip to content

ThomasHeb/Jog-for-Estelcam

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 

Repository files navigation

What is new?

  • ...

What is coming next?

  • Please let me know, if you have ideas or need improvements (open an issue)

Jog for Estelcam

Estelcam is a simple and powerful CNC Software with integrated CAM. You can control your homebuild CNC with Estelcam and different hardware. Especially if you use Arduino Uno or Arduino Nano, it is not possible to connect a jog wheel to the hardware. Instead you have to use the jog functions within Estelcam or keyboard/keypads.

To improve usability and get better a haptical feeling, I wanted to connect a simple joystick, rotary knobs and a linear slider directly to the PC as a simple jog. The following functions are implemented:

  • joystick for X/Y
  • buttons for Z up/down
  • slider for speed of the axis
  • rotary knobs for feed and spindle speed

The Teensy LC is emulating the keyboard. The firmware is a simple sketch written in the Arduino IDE.

04

Hardware

  • 1x Teensy LC or Teeny 3.2 or similar Link
  • 2x rotary encoder KY-040 or similar Link
  • 1x potentiometer 10k.... 100k Link
  • 2x push button Link
  • 1x joystick KY-023 Link

Wiring

06

Firmware

  • the Firmware is written as a sketch in the Arduino IDE
  • more information about Teensy LC Link
  • download and update the Arduino IDE >2.0.x with Teensyduino to get hardware support and additional USB functionality Link
  • open Arduino IDE
  • open the sketch
  • select Teensy LC as board
  • select Tools > USB Type > Keyboard in Arduino IDE to enable Keyboard HID
  • select Tools > Keyboard Layout < Germany
  • use verify in the Arduino IDE to compile
  • the Teensy Loader opens and requests a short push of the Reset button on the teensy board

How to start

In this chapter you find some recommendations how to get started and how to verify your project.

Connecting and testing the joystick

  • connect the joystick as shown under wiring
  • uncomment the #define _DebugJoystick in the sketch. This enables the debugging of the joystick in the serial monitor
  • verify the sketch
  • download the sketch with a short push of the reset button on the Teensy board
  • pressing the joystick will switch on the onboard LED
  • moving the joystick will send codes to the serial monitor inside the Arduino IDE (15200 baud)
  • left should show 0x20 as POS
  • right should show 0x10 as POS
  • up should show 0x01 as POS
  • down should show 0x02 as POS
  • center should show 0x00 as POS

Trouble shooting:

  • if you get no messages, check the wireing
  • if you don't get these values at the positions, change the following defines
  • #define Center 0x00
  • #define Left 0x20
  • #define Right 0x10
  • #define Up 0x01
  • #define Down 0x02

Connecting and testing the slider

  • connect the slider as shown under wiring
  • uncomment the #define #define _DebugSlider in the sketch. This enables the debugging of the slider in the serial monitor
  • verify the sketch
  • download the sketch with a short push of the reset button on the Teensy board
  • moving the slider will trigger a debug message in the serial monitor
  • min should show 0x0 as POS
  • 25% should show 0x1 as POS
  • 50% should show 0x2 as POS
  • 75% should show 0x3 as POS
  • max should show 0x4 as POS

Trouble shooting:

  • if you get no messages, check the wireing
  • if you don't get these values at the positions, change the following defines
  • #define Position1 0x0
  • #define Position2 0x1
  • #define Position3 0x2
  • #define Position4 0x3
  • #define Position5 0x4

Connecting and testing the buttons and rotary encoder

  • connect the buttons and rotary encoder as shown under wiring
  • uncomment the #define #define _DebugButtons in the sketch. This enables the debugging in the serial monitor
  • verify the sketch
  • download the sketch with a short push of the reset button on the Teensy board
  • pushing the buttons will send a debug message in the serial monitor
  • turning the rotary knob for Feed and Speed will trigger a debug message in the serial monitor

Trouble shooting:

  • if you get no messages, check the wireing
  • if spinle and feed is mixed up, change wireing or position of the rotary encoders
  • if the direction is not correct, enable/disable de defines below
  • #define FeedDirection
  • #define SpindleDirection

How to use

The Teensy acts as additional keyboard. So you can define the keys in Estelcam as shown below

03

Phushing the joystick will enter the jog mode. You can move the axis with the joystick and the buttons. Increase/decrease the jog speed with the slider. Feed and Spindle speed can be adjusted with the rotary knobs.

See Link

Known limitations

The slider emulates a key down. Move the slider to min at the end of jogging.

About

Jog for Estelcam Arduino Uno (emulating Keyboard)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages