terom@62: terom@62: ## Specs: terom@62: terom@40: * 250 kHz clock terom@40: * 250000 bits / s terom@40: * 4µs / bit terom@40: * idle line = high (transmitter/master drives line high) terom@40: terom@62: ## Pinout terom@40: terom@62: 1 0 GND terom@62: 2 - B terom@62: 3 + A terom@62: terom@62: ## Protocol terom@40: terom@40: * paket format terom@40: * break terom@40: * mark (MAB) terom@40: * 2-512 frames terom@40: * frame 0 = start code = 0x00 terom@40: * frame N = channel N = 0-255 terom@40: * 1 start bit, 8 data bits, 2 stop bits, no parity terom@40: * mark (MTBF) terom@40: * mark (MTAP) terom@40: terom@40: * break terom@40: * syncs start of DMX packet terom@40: * >= 22 low bits (88 µs) terom@40: * up to 1s terom@40: * recommended 25 - 30 low bits terom@40: terom@40: * mark after break (MAB) terom@40: * immediately follows the break terom@40: * high mark of > 2 bits (8µs) terom@40: * up to 1s terom@40: * recommended 3 high bits terom@40: terom@40: * (channel frames) terom@40: * first frame is start code (SC) terom@40: * data value = 0x00 signifies dimmer data terom@40: terom@40: * 11 bits / frame terom@40: * 1 low bit (start bit) terom@40: * 8 data bits (0-255) terom@40: * 2 high bits (stop bits) terom@40: terom@40: * mark time between frames (MTBF) terom@40: * idle time between frames; line kept high terom@40: * can be as short as desired terom@40: terom@40: * between 1 and 512 sequential frames terom@40: terom@40: * mark time between packets (MTBP) terom@40: * after the last frame's stop bits terom@40: * same as MTBF terom@40: * idle time between packets; line kept high terom@40: * can be as short as desired terom@40: terom@40: