Arduino

ethernet shield
https://www.youtube.com/watch?v=eoiuhPxCcM4 UDP This tutorial presents a step by step demonstration of how to transfer data between Python and Arduino using a simple UDP client server setup. The arduino is the server, and Python is the client. We demonstrate using a BMP180 pressure sensor. You can find the full lesson on our WEB site at: http://www.toptechboy.com/tutorial/python-with-arduino-lesson-17-sending-and-receiving-data-over-ethernet/

interrupts
http://www.toptechboy.com/arduino/lesson-30-advanced-software-interrupt-techniques-for-reading-serial-data-with-arduino/ and https://github.com/PaulStoffregen/TimerOne
 * https://github.com/PaulStoffregen/TimerThree timerthree

server
https://www.youtube.com/watch?v=pyKPivef3ks

https://medium.freecodecamp.org/how-to-make-your-own-python-dev-server-with-raspberry-pi-37651156379f

https://towardsdatascience.com/python-webserver-with-flask-and-raspberry-pi-398423cc6f5d

Stepper code
https://github.com/grbl/grbl/blob/90ad129ad262bd6e785cf11b8387a1c376cdd11a/grbl/config.h // Creates a delay between the direction pin setting and corresponding step pulse by creating // another interrupt (Timer2 compare) to manage it. The main Grbl interrupt (Timer1 compare) // sets the direction pins, and does not immediately set the stepper pins, as it would in // normal operation. The Timer2 compare fires next to set the stepper pins after the step // pulse delay time, and Timer2 overflow will complete the step pulse, except now delayed // by the step pulse time plus the step pulse delay. (Thanks langwadt for the idea!) // NOTE: Uncomment to enable. The recommended delay must be > 3us, and, when added with the // user-supplied step pulse time, the total time must not exceed 127us. Reported successful // values for certain setups have ranged from 5 to 20us. // #define STEP_PULSE_DELAY 10 // Step pulse delay in microseconds. Default disabled.


 * 1) define DWELL_TIME_STEP 50 // Integer (1-255) (milliseconds)

serial
https://askubuntu.com/questions/58119/changing-permissions-on-serial-port The issue with the permissions for /dev/ttyACM0 can be permanantly solved by adding yourself to the dialout group. You will have to logout and then log back in before the group change is recognized. You can do this with sudo usermod -a -G dialout terrik if terrik is your username. https://unix.stackexchange.com/questions/18796/how-to-apply-changes-of-newly-added-user-groups-without-needing-to-reboot. Ctrl shift m shortcut displays serial monitor.

http://playground.arduino.cc/Interfacing/LinuxTTY

https://learn.adafruit.com/usbtinyisp

http://forum.arduino.cc/index.php/topic,73748.0.html loopback test if not uploading from http://forum.arduino.cc/index.php?topic=38838.msg286321#msg286321

http://blog.spitzenpfeil.org/wordpress/projects/ various diy projects

http://www.engbedded.com/fusecalc fuse settings.

links
AtmelMicro