John Lauer
Hello World in ChiliPeppr (Google Hangout On Air)
updated
For example, I wanted to play audio just in one room. I wanted to stream it direct from Spotify, or Bluetooth, or a direct wire from a PC. These Arylic boards let you do that. I also wanted to be able to join rooms together for perfectly synced audio (yes, perfectly synced) and then have the same benefits as Spotify, Bluetooth, hard wired, etc. Yup, you get that with these.
This video shows how I did it.
Here's a forum thread describing the project: forum.arylic.com/t/amazing-wall-hanging-super-flat-layout-for-multi-room-setup-using-up2stream-amps-and-up2stream-pros/2781/12
3D Files on Autodesk Gallery
gallery.autodesk.com/projects/173035/whole-home-audio-with-arylic-devices
Part 1 - youtube.com/watch?v=tEbJV32GyYU
Part 2 - youtube.com/watch?v=RdmdFIhCo4M
Further information can be found on the Github repo for this project at github.com/chilipeppr/robot-actuator-esp32-v8
This repository contains the latest design for the small actuator including:
PCB schematic and board file (Eagle)
Bill of Materials
Fusion 360 files - gallery.autodesk.com/projects/143635/3d-printed-robot-arm
STL files for 3D printing
NodeMCU ESP32 for Lua firmware with touch module, pulse counter module, RMT TX module, and gpiomatrix module.
Lua code for actuator
Link to ChiliPeppr http://chilipeppr.com/arm workspace to control the actuator and to ChiliPeppr ESP32 for Lua workspace for uploading code to the ESP32 device http://chilipeppr.com/esp32
Heat management test results
This actuator is based on the amazing design of Jeff Kerr's (LoboCNC on Thingiverse) 3D printed robot arm WE-R2.4 six axis robot arm. thingiverse.com/thing:3327968
The Github repo for ESP32 NodeMCU is at github.com/nodemcu/nodemcu-firmware/tree/dev-esp32
The docs for this library are at
github.com/chilipeppr/nodemcu-firmware/blob/touch-v1/docs/modules/touch.md
nodemcu.readthedocs.io/en/dev-esp32/modules/touch
Sample code from this video is at github.com/chilipeppr/nodemcu-firmware/tree/touch-v1/lua_examples/touch
ChiliPeppr ESP32 Workspace is at http://chilipeppr.com/esp32
ChiliPeppr ESP32 Workspace
http://chilipeppr.com/esp32
ChiliPeppr MakerForums for ESP32 Lua (NodeMCU)
forum.makerforums.info/c/ChiliPeppr/esp32-lua
You can get a callback to Lua when different counting thresholds are reached, or when upper or lower counting limits are hit. You can count pulses on all GPIO ports. There is also a way to provide a control GPIO for ignoring or decrementing pulses when the control signal is high or low.
The Github repo for the pulsecnt library is at github.com/chilipeppr/nodemcu-firmware/tree/dev-esp32-pulsecnt-pr1
Example code for different types of pulse counter implementations is available as Gists on Github.
Example Pulse Counter for 1 channel with no control gpio
gist.github.com/chilipeppr/b4d67c61c3e051ff61fbe2beece767b5
Example Pulse Counter for hall effect sensor plus 1 push button to control direction of count
gist.github.com/chilipeppr/fee7d92cfb7d5fa981766857dfdcadd8
Example Pulse Counter for 1 channel for polling pulse count (no callback)
gist.github.com/chilipeppr/6528705eefb269d151a813bb36b4955a
For the data below, it is now mostly obsolete. You should use the info in Part 3.
The CAD design of the extended wrist cap with the electronics inside is available at gallery.autodesk.com/fusion360/projects/robot-arm-esp32-drv8825-actuator-controller
The PCB Eagle Board design is available at github.com/chilipeppr/robot-actuator-controller-v1 as well as the Lua code that I used to test the actuators in this video. The NodeMCU.bin firmware is there too. This has the latest release of the firmware plus the stepper library built in. Just flash NodeMCU.bin via esptool to your ESP32 board.
The ChiliPeppr ESP32 for Lua Workspace was used to program the board and is available at http://chilipeppr.com/esp32
Video on how to use the ESP32 for Lua workspace to upload firmware and Lua code on your ESP32. youtube.com/watch?v=njAeHfoVIoY
Jeff Kerr's (LoboCNC) original 3D printed robot arm design is on Thingiverse at thingiverse.com/thing:3327968
PCB Components
ESP32 Wemos $8 (Many ESP32 devices are cheaper, but this is the smallest size broadly available to fit inside the small actuators)
aliexpress.com/item/ESP32-wemos-ESP32-WiFi-Modules-Bluetooth-Dual-ESP-32-ESP-32S-ESP8266/32815190965.html
DRV8825 Stepper Board $0.95
aliexpress.com/item/5pcs-lot-3D-Printer-Stepstick-Drv8825-Stepper-Motor-Driver-Reprap-4-PCB-Board-Free-shipping-replace/32514641632.html
DC to DC Converter $0.90 (Pick the 5V version, not 3.3V)
aliexpress.com/item/DC-DC-Power-Supply-Module-Step-Down-3A-output-24V-12V-to-5V-3-3V-Buck/32904709711.html
WS2812B LED $0.15 per (Choose white and WS2812B)
aliexpress.com/item/10-1000pcs-4-Pin-WS2812B-WS2812-LED-Chip-Heatsink-5V-5050-RGB-WS2811-IC-Built-in/32634454437.html
Slide Switch $0.29 for 20 pieces
aliexpress.com/item/20Pcs-Interruptor-on-off-mini-Slide-Switch-SS12D00-SS12D00G3-3pin-1P2T-2-Position-High-quality-toggle/32964400942.html
Screw Terminal
aliexpress.com/item/20-pcs-2-Pin-Screw-blue-green-PCB-Terminal-Block-Connector-5mm-Pitch/32814618602.html
26AWG Silicone Ultra Flexible Wire for 24v (Use 2 of the 4 wires)
aliexpress.com/item/2metre-26AWG-28AWG-30AWG-Silicone-Wire-Ultra-Flexiable-Test-Line-3P-4P-6P-0-08mm-Tinned/32870367030.html
This is a 3D printed robot arm. Credit to the design goes to Jeff Kerr, who goes by LoboCNC on Thingiverse. I show how to assemble the actuators since they are the most detailed part of the build. I will be running ESP32's in each joint so I can control each joint via Bluetooth/Wifi so I only need to run 2 wires to each joint for power. ChiliPeppr and Serial Port JSON Server will be used to control the arm once all the code is written.
Jeff Kerr's Robot Arm Thingiverse: thingiverse.com/thing:3327968
Jeff Kerr's Actuators Thingiverse: thingiverse.com/thing:3293562
Jeff Kerr's YouTube Video of his final assembled robot: youtube.com/watch?v=7u_UjMB8tJI&feature=youtu.be
My Thingiverse Make: thingiverse.com/make:596644
Chilipeppr ESP32 for Lua Workspace where I'm writing the code for the ESP32's in each robot joint:
http://chilipeppr.com/esp32
3 steppers for small actuators:
moonsindustries.com/p/35mm-permanent-magnet-stepper-motors/35pm048s8-08001-000004611120001819
1 stepper for large base actuator:
omc-stepperonline.com/nema-17-bipolaire-45ncm-6374ozin-15a-42x42x39mm-4fils-w-1m-cable--connector.html
1 stepper for large shoulder actuator:
omc-stepperonline.com/nema-17-bipolar-59ncm-84ozin-2a-42x48mm-4wires-w-1m-cable-and-connector-17hs19-2004s1.html?search=17HS19-2004S1
1 stepper for medium elbow actuator:
omc-stepperonline.com/nema-17-bipolar-18deg-22ncm-31ozin-133a-28v-42x42x34mm-4-wires-17hs13-1334s.html?search=17HS13-1334S
There's a new drag/drop XBM image widget in the ESP32 workspace. This widget will generate the Lua code for you. It converts the frames, creates an upload script, a play library, and a sample file to control the animation.
http://chilipeppr.com/esp32
The device reads in the ADC values on two GPIO pins from the ESP32. Those values get converted to Gcode. The Gcode is sent every 250ms over a websocket via Wifi to the Serial Port JSON Server, which then forwards it to the TinyG over USB.
ChiliPeppr ESP32 for Lua Workspace
http://chilipeppr.com/esp32
ChiliPeppr CNC TinyG Workspace
http://chilipeppr.com/tinyg
http://chilipeppr.com/esp32
ChiliPeppr also contains an XBM Image widget to let you easily cut and paste any image from your clipboard and Lua code is generated for you to send the image to your OLED display. There's no easier way to send images to your OLED than from ChiliPeppr.
The example in the video uses an ssd1306 OLED built into the Wemos ESP32 device which is similar to the Lolin, Lolin32, or TTGO ESP32 devices.
This video gives you a tutorial on how to:
1. Download and run Serial Port JSON Server
2. Download the LUA firmware for your ESP32
3. Flash the firmware on your ESP32
4. Program your ESP32 from ChiliPeppr
Visit http://chilipeppr.com/esp32 for all the goodies.
An Onsrud single flute 1/8" upcut end mill (http://www.onsrud.com/product/Item/m/itemDetail.html?itemId=63-713) was used to mill the acrylic. A 1/16" single flute upcut end mill (http://www.onsrud.com/product/Item/m/itemDetail.html?itemId=63-700) was used to mill the logo on the top.
Using a single flute upcut end mill is important on hard plastic to reduce melting of the plastic. Make sure you use blowing air too for clearing the chips. When running your spindle at 10K RPM, the single flute effectively halves your spindle speed from your normal double-fluted end mill, which takes bigger chips, which becomes important when correctly milling plastic. I've had too many problems melting acrylic during milling, which ruins your work piece, breaks your end mill and makes life miserable. This is the best end mill I've ever used for acrylic. The 1/8" end mill should be run at 1500mm/min and depth of cut should be no more than the width of the end mill, so about 3mm deep. However, when using adaptive clearing from Fusion 360 you can likely take a 6mm depth of cut.
Zipwhip Business Texting (Text enable your business phone number) - http://zipwhip.com
Programming your ESP32 - http://chilipeppr.com/esp32
Sending Gcode to your TinyG and CNC 3040 - http://chilipeppr.com/tinyg
Buying the end mill from Onsrud - http://www.onsrud.com/product/Item/m/itemDetail.html?itemId=63-713
Fusion 360 CAD File - gallery.autodesk.com/fusion360/projects/110877/zipwhip-text-message-notify-iot-device
See this Github project for the Laser 3A driver code and description.
github.com/chilipeppr/cayenn-laseruv
Also, see this blog for further descriptions.
http://chilipeppr2.blogspot.com/2016/10/cayenn-protocol-for-chilipeppr_28.html
You can also view the Fusion 360 Gallery for the 3D model of this project:
gallery.autodesk.com/fusion360/projects/cayenn-devices-for-chilipeppr
This tour uses the TinyG workspace in ChiliPeppr
http://chilipeppr.com/tinyg
This tour also uses the NodeMCU workspace in ChiliPeppr for uploading/editing the Lua code on the ESP8266.
http://chilipeppr.com/nodemcu
See ChiliPeppr Google+ group for further discussion.
plus.google.com/communities/104346367498010042037
ChiliPeppr TinyG Workspace
http://chilipeppr.com/tinyg
TinyG CNC Controller
http://www.synthetos.com
Used generic Chinese 3040 CNC with balllscrews and 300w spindle
Each ESP8266 on the NodeMCU is running the ChiliPeppr Cayenn protocol, which is simply a way for ChiliPeppr to upload commands onto the 4MB flash memory of the device and then have the device synchronize to the sync signal coming into it from the coolant pin on the TinyG.
1W UV Laser
sites.google.com/site/dtrlpf/home/diodes/bdr-209-405nm-16x-diodes
6W Blue Laser
sites.google.com/site/dtrlpf/home/diodes/6w-nubm44-445nm-laser-diode
3A Laser Driver
aliexpress.com/item/Laser-driver-board-Driver-Module-Constant-reduced-voltage-450nm-3A-TTL-modulation-Blue-ray-drive-circuit/32309851957.html
5A Laser Driver
aliexpress.com/item/5A-Current-3W-4-5W-405-445-520nm-Laser-Drive-Circuit-Board-with-TTL-Modulation-Apply/32587237333.html
This approach assumes you have painted, rolled, glued, or stuck on a solder mask and you want to laser etch or mill away the solder pads and smd pads. This can work with paint or rolled on solder mask. Some people use Dynamask, which is a gel film you laminate on with a hot roller. Some people use vinyl and then cut out the pads, then paint. Laser etching the mask can work because copper is highly reflective and thus lasers won't effect it, while burning away the paint. Milling is possible, but you need to be massively accurate on your Z depth to not mill away the copper and only mill the mask ink. Auto-levelling is highly suggested before mask if milling.
In the video I use the NUBM44 blue 445nm laser diode from DTR Laser shop. sites.google.com/site/dtrlpf/home/diodes/6w-nubm44-445nm-laser-diode
The solder mask is from ebay at http://www.ebay.com/itm/100g-PCB-UV-Curable-Solder-Mask-Repairing-Paint-Green-Negative-Photoresist-SP-/162304812832?hash=item25ca1ee720:g:XhcAAOSwhkRWg2bk
I'm using the http://chilipeppr.com/tinyg workspace in ChiliPeppr.
TinyG is from Synthetos.com.
CNC machine is generic 3040 from China modified to run the TinyG.
The TinyG is connected to a Raspberry Pi 3 over USB running Serial Port JSON Server. I connect from my laptop to Serial Port JSON Server to send the Gcode from ChiliPeppr.
My laser is controlled from an ESP8266 running the ChiliPeppr Cayenn protocol. It is syncrhonized to the TinyG using the coolant on/off pin to indicate which command should be executed in real-time next on the ESP8266.
CNC 3040 generic Chinese machine bought at omiocnc.com
ChiliPeppr TinyG workspace used for milling
TinyG CNC controller used for driving the 3040 bought at synthetos.com
Diode was bought at DTR's Laser Shop online
Diode laser heatsink bought on ebay
1/16" Kyocera Tools end mill bought on ebay at drillman1's shop
Download the model at gallery.autodesk.com/fusion360/projects/103188/laser-heatsink-holder-for-diode-laser
Board was designed in Eagle. TinyG was the CNC controller. ChiliPeppr's Eagle Import BRD widget was used to generate the Gcode. CNC machine is a 3040 generic Chinese machine bought from omiocnc.com.
The 0.3mm end mill was purchased on ebay in a kit. This end mill is similar to the one I used for the trace milling http://www.ebay.com/itm/0-30mm-0118-2-FLUTE-MICRO-CARBIDE-ENDMILLS-Kyocera-Tycom/381531118637
To see the entire process of creating a PCB in ChiliPeppr, I suggest this video youtube.com/watch?v=DX0xGgSARj4 which takes you through Eagle board import into ChiliPeppr, generating your Gcode, auto-levelling your board, and then milling.
This video shows you how to mill out a breakout board for a tiny micro stepper motor that is driven from a NodeMCU running Lua. A DRV8825/DRV8824 is being used as the stepper driver.
The TinyG CNC controller is driving a 3040 CNC which is being controlled from ChiliPeppr's web application using Serial Port JSON Server running on a Raspberry Pi.
http://chilipeppr.com/tinyg
Micro Stepper Motors 2 Phase 4 Wire DC Mini Stepper
http://www.ebay.com/itm/50pcs-totally-5pcs-each-of-10-kinds-2-Phase-4-Wire-dc-micro-stepper-motor-Min/302143599435
It made sense to extend ChiliPeppr to enable great support for programming your NodeMCU device and more easily bringing it into the fold of the ChiliPeppr ecosystem. The goal of the NodeMCU workspace is to enable folks to control hardware inside ChiliPeppr from a NodeMCU or ESP8266 in an easier way--whether that be extending your CNC machine with pump controllers, laser controllers, etc. or creating standalone hardware devices with a user control interface inside of ChiliPeppr.
The cup is mounted on a Nema23 stepper motor for rotation on the X axis. The laser is mounted on a linear stepper motor from Bangood. The laser diode is from DTR Laser Shop and is the BDR-209 UV diode. It can run at about 1w, but I'm running it at about 300mw so I don't overburn the cup. The current limiting DC-DC converter is from AliExpress. I'm using the TinyG v8 board to drive both steppers. I'm of course using the ChiliPeppr TinyG workspace at http://chilipeppr.com/tinyg.
Linear stepper: (http://www.banggood.com/DC-4-9V-Drive-Stepper-Motor-Screw-With-Nut-Slider-2-Phase-4-Wire-p-964613.html)
DC-DC Constant Current Converter: http://www.aliexpress.com/item/Digital-controlled-Constant-Current-Voltage-DC-Step-Down-LED-Driver-Module-die-Free-shipping/32214922834.html?spm=2114.30010308.3.144.19kjBd&ws_ab_test=searchweb201556_3,searchweb201644_1_505_506_503_504_301_502_10014_10001_10002_10016_10005_10006_10003_10004_401,searchweb201560_8,searchweb1451318400_-1,searchweb1451318411_6449&btsid=2a7b3c2c-8cbf-47cd-8351-f9b96099f9bb
Make sure to watch the prior 2 videos:
Part 1 - Build Your Own ChiliPeppr Workspace - youtu.be/spdwWZC72uU
Part 2 - Add Existing Widget to Workspace - youtu.be/aUEzLZGPkDU
Make sure to watch Part 1 - Build Your Own ChiliPeppr Workspace youtu.be/spdwWZC72uU
Once you are done with this video you can watch Part 3 - Fork the Template Widget to Make Your Own Widget youtube.com/watch?v=xhzh1FKrr0k
Part 2 - Add Existing Widget to Workspace youtube.com/watch?v=aUEzLZGPkDU
Part 3 - Fork the Template Widget to Make Your Own Widget youtu.be/xhzh1FKrr0k
http://www.chilipeppr.com
Touch Plate on Ebay
http://www.ebay.com/itm/NEW-CNC-Router-Mill-Z-Axis-Tool-Setting-Touch-Plate-works-w-Mach3-FREE-SHIP-/221636469672?pt=LH_DefaultDomain_0&hash=item339a9023a8
My previous video on the 3040 build:
youtube.com/watch?v=42ew5xjIBWM
4th axis is $200 +shipping from
http://carving-cnc.com
ChiliPeppr
http://chilipeppr.com/tinyg
TinyG
http://synthetos.com
http://chilipeppr.com/tinyg
http://chilipeppr.com/tinyg
http://synthetos.com
http://www.carving-cnc.com


