Morse Decoder

hi!

i have a big screen which displays various binary blinking signals. With a mounted, rotatable camera i want to focus on a square and convert its’ signal back into letters.

http://members.chello.at/stromberger/fassade.gif

If you switch from one square to another, the patch sould read all bits of the old one, and the rest from the new one and therefore create a new letter out of this information.

My main problem is, that i have to synchronize sender and reader manually. any ideas? i’m quite new to this stuff!

greets :) the schlonz

reader.zip (6.6 kB)

I had a look at your patch - what you think about putting synch information in first line of blue bits. You could take first 5 u(or more) upper left bits for your frame number. So, if you read it and 2nd is on, then its frame 2. If 4th is on - frame 4 and so on. Bits 1-5 would give give you a sort od timestamp.
For synching input and output you have to buffer sended frames and compare it with your timecode from input.
Hopefully this works ;D

hi!

thanks for the quick answer, but i think you got me wrong ;)

with “square” i mean just one of the little blue “pixels”.

greets

hi schlonz

the patch sould read all bits of the old one, and the rest from the new one

what bits of the old one, what rest bits of the new one? this is somehow wishiwashi to me.
*the more precise you ask, the more precise the help.
*the more precise you ask, the more precise you help yourself: my personal hint ;).

My main problem is, that i have to synchronize sender and reader manually.

i think your main problem is that you yourself did not define detailed enough what you really want to achieve. i tried to “read your mind” (means: your patch) but without success.

only the title of this thread tells me: it’s somewhat about morsing.

don’t take this as an offense but for help to help yourself!
OK? ;)

SOS
regards
kalle

ok, sorry. i tried to give you just the very essential infomation so that you don’t have to read that much, but now see i have to explain it more detailed ;)

this thing consists of two parts:

  1. a display, a fassade, with a resolution of 100x100 pixels. text, sent by users, gets encoded into binary code and then stored in an 100x100 table, matching the pixels. so each pixel can access it’s own message. the pixel brightness is controlled by it’s binary code, it gets blinked out (off/on = 0/1). the gif animation shows the 100x100 pixel matrix, each pixel blinking a different word in binary. (just a short sample). with “bit” i refere to the actual state of a pixel.

  2. a camera mounted in some distance, which can be pivoted by the user. with some kind of crosshair in the display, the camera can be aimed at each of this giant pixels. then the build in decoder transfers the blinking back to text.

so when the user points at pixel #76 and gets something like “nga and holger gree” -then moves the camera to pixel #77 he sould get something like: “inga and holger greeüassade really sucks! I’ve nev”. pixel #76 just sent the 3 first bits of the next character, which then gets completed by the 2 last ones from #77 and therefore create an different character.

my current decoder patch is based on a simple lfo. it says “now a bit was recieved - store the data” and “now it’s 5 bits, create the accordin letter”. it just works if the animation on the fassade and the decoder are perfectly synchonised.

i hope now you understand what i’m trying to do :)

Okay, I see your problem now - you need to read a morsing code out of one blinking pixel. Sounds like a serial coding thing.
Am I right that your task now is to understand in reciever how long a signal takes point, stroke, long stroke. And tranfer it into letters then.
I assume something which works timebased should be a good starting point, like stopwatch or LFO. A possible way: Start and stop it … ahh just made a patch

morse.v4p (14.3 kB)