Led guidance doc
This commit is contained in:
		
							parent
							
								
									08f0e448cc
								
							
						
					
					
						commit
						194c5623a9
					
				
							
								
								
									
										11
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										11
									
								
								README.md
									
									
									
									
									
								
							@ -5,8 +5,15 @@ By Sam Neurohack
 | 
				
			|||||||
Forward incoming midi messages as OSC message (UDP) to micropython host to trigger hardware event. In example : noteon, noteoff lights on/off some leds connected to an ESP 8266.
 | 
					Forward incoming midi messages as OSC message (UDP) to micropython host to trigger hardware event. In example : noteon, noteoff lights on/off some leds connected to an ESP 8266.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Remember to edit netconf.py for network/OSC configuration.
 | 
					Remember to edit netconf.py for network/OSC configuration.
 | 
				
			||||||
 | 
					In this early version you also need to edit in main.py :
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						- On your midikeyboard the left key midi notenumber : i.e leftnote = 36 
 | 
				
			||||||
 | 
						- motherip and motheroscport if you want some debug information.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Connect the led strip data line to D5 (GPIO 14)
 | 
					Connect the led strip data line to D5 (GPIO 14)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					How it works ?
 | 
				
			||||||
 | 
					
 | 
				
			||||||
* Computer side : List and hook to all midi devices (real or virtual). OSC commands generated from incoming midi messages :
 | 
					* Computer side : List and hook to all midi devices (real or virtual). OSC commands generated from incoming midi messages :
 | 
				
			||||||
	- /noteon midichannel, note, velocity
 | 
						- /noteon midichannel, note, velocity
 | 
				
			||||||
	- /noteoff midichannel, note
 | 
						- /noteoff midichannel, note
 | 
				
			||||||
@ -23,8 +30,10 @@ Connect the led strip data line to D5 (GPIO 14)
 | 
				
			|||||||
	- Flash firmware, upload python files, run files,... thonny IDE : https://thonny.org/
 | 
						- Flash firmware, upload python files, run files,... thonny IDE : https://thonny.org/
 | 
				
			||||||
	- Great tutorials : https://randomnerdtutorials.com/getting-started-thonny-micropython-python-ide-esp32-esp8266/
 | 
						- Great tutorials : https://randomnerdtutorials.com/getting-started-thonny-micropython-python-ide-esp32-esp8266/
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					* midi learning software :
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						- This has been tested with Synthesia.
 | 
				
			||||||
 | 
						- Synthesia/Neothesia hook to midi OUT ports to send light guidance and obviously midiOSCesp listen to INcoming events. So you need to create a virtual midi port will forward event sent to its OUT port and to its IN port.  https://help.ableton.com/hc/en-us/articles/209774225-How-to-setup-a-virtual-MIDI-bus
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
More soon...
 | 
					More soon...
 | 
				
			||||||
@ -10,7 +10,8 @@ from uosc.server import run_server, split_oscstr, parse_message, parse_bundle
 | 
				
			|||||||
from uosc.client import send
 | 
					from uosc.client import send
 | 
				
			||||||
from uosc.client import Client
 | 
					from uosc.client import Client
 | 
				
			||||||
from machine import Pin
 | 
					from machine import Pin
 | 
				
			||||||
import mynetconf as netconf
 | 
					import netconf
 | 
				
			||||||
 | 
					#import mynetconf as netconf
 | 
				
			||||||
import machine, neopixel
 | 
					import machine, neopixel
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -19,18 +20,21 @@ print('Loading OSC server module...')
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
MAX_DGRAM_SIZE = 1472
 | 
					MAX_DGRAM_SIZE = 1472
 | 
				
			||||||
 | 
					
 | 
				
			||||||
OSCport = 9001
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					leftnote = 36
 | 
				
			||||||
 | 
					motherip = "192.168.2.104"
 | 
				
			||||||
 | 
					motheroscport = 9002
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					OSCport = 9001
 | 
				
			||||||
ledpin = Pin(2, Pin.OUT)
 | 
					ledpin = Pin(2, Pin.OUT)
 | 
				
			||||||
ESPledstate = False
 | 
					ESPledstate = False
 | 
				
			||||||
stripin = Pin(14, Pin.OUT)
 | 
					stripin = Pin(14, Pin.OUT)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
n = 144
 | 
					n = 144
 | 
				
			||||||
np = neopixel.NeoPixel(stripin, n)
 | 
					np = neopixel.NeoPixel(stripin, n)
 | 
				
			||||||
motherip = "192.168.2.104"
 | 
					motherosc = Client(motherip, motheroscport)
 | 
				
			||||||
motherosc = Client(motherip, 9002)
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
leftnote = 36
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
def ESPledon():
 | 
					def ESPledon():
 | 
				
			||||||
    global ESPledstate
 | 
					    global ESPledstate
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user