ChanServ changed the topic of ##yamahasynths to: Channel dedicated to questions and discussion of Yamaha FM Synthesizer internals and corresponding REing. Discussion of synthesis methods similar to the Yamaha line of chips, Sound Blasters + clones, PCM chips like RF5C68, and CD theory of operation are also on-topic. Channel logs: https://freenode.irclog.whitequark.org/~h~yamahasynths
Xyz_39808 has joined ##yamahasynths
Xyz39808 has quit [Ping timeout: 260 seconds]
Xyz39808 has joined ##yamahasynths
Xyz_39808 has quit [Ping timeout: 260 seconds]
<cr1901_modern>
Foone: Re: remotes, I was gonna begin a project w/ an IR remote recently and... I just realized I have no f***ing clue how remotes work. Why is there a need for an address and _command_ field on a laserdisc remote?
<cr1901_modern>
(or just the NEC protocol in the first place)
<Sarayan>
I *think* address is the device, command is the event
<cr1901_modern>
... oh, huh... then I guess universal remotes normally cycle through addresses until one works?
<cr1901_modern>
(all 65000 of them)
<Sarayan>
universal remotes tend to be programmed with a device-dependant code
<cr1901_modern>
what do you mean?
<cr1901_modern>
ohhhh.. the address _and_ the command are meant to match up to what the TV excepts
<cr1901_modern>
not just the addresses... and it has to store, say, which command corresponds to the volume down button, on all TVs it supports
<cr1901_modern>
anyways I set up an led and IR receiver and I'm pointing a remote to it like a kid b/c LED go blink
<Sarayan>
I mean they store thousands of "keymap" and you lookup which one matches your device
<Sarayan>
some also have a receptor to just read what the remote sends
<cr1901_modern>
hmmm
<Sarayan>
In contrast, the major Japanese consumer electronics manufacturers almost universally adopted a protocol that was developed and administered by NEC (now Renesas). In the NEC protocol, each manufacturer is assigned a unique code that is contained in the transmitted command, avoiding the possibility of false triggering by other remote handsets.
<cr1901_modern>
This is an NEC protocol remote
<Sarayan>
so the address is per-manufacturer, and the command is decided by the manufacturer internally
<cr1901_modern>
but it only transmits address 0
<cr1901_modern>
(which I can't help but wonder if it's a "testing address", like VID 6666 in USB
<Sarayan>
could be
<Sarayan>
my yamaha remote uses address 0x17f
<Sarayan>
and the "stop" button press is command 0x69 fwiw
<Sarayan>
(I use it on my remotepi)
<cr1901_modern>
Hmmm, I feel like I could've used one of those a while ago...
<Sarayan>
one of what?
<cr1901_modern>
a remotepi
<Sarayan>
had to hack mine so that it stops in less than four minutes
<Sarayan>
that's why mame has a brand new pic16 disassembler
<cr1901_modern>
less than 4 minutes?
<cr1901_modern>
and good god lol
<Sarayan>
yeah, when you tell it to stop it sends a signal to the pi to do an orderly shutdown. If the pi doesn't, after 4mn is cuts off the power
<Sarayan>
but my pi is on nfsroot when I'm experimenting, and spends most of its time crashed, so no orderly anything
<Sarayan>
they don't allow configuring that timeout, so I had to find it in the pic code. Now it cuts the power off after two seconds
<cr1901_modern>
heh... I soldered some wire-wrap wire to my tinkerboard to the reset pins. It's not ideal, but it does let me reset the darn thing
<Sarayan>
my pi is 6-7m away, and 3m away from the nearest other computer, I really needed something remote
<Sarayan>
well, the pi3, the pi2 plays driver to my usb printer
<Sarayan>
ok, I want to do 3 things this 3-day weekend, let's see how many I manage
<cr1901_modern>
This has been a productive week for me. However, it's because I'm trying to ignore the existential dread
<cr1901_modern>
But I may have overdone it before midnight tonight while trying to parse an OCaml function w/ a gnarly type sig
<cr1901_modern>
(basically the type sig told me to go f*** myself)
UnluckyPony has joined ##yamahasynths
SceneCAT has quit [Ping timeout: 256 seconds]
l_oliveira has joined ##yamahasynths
<andlabs>
how gnarly is the type sig, on a scale of void (*(signal(int n, void (*sigfun)(int)))(int) to public static <I,O> ListenableFuture<O> chain(ListenableFuture<I> input, Function<? super I,? extends ListenableFuture<? extends O>> function) ?
<cr1901_modern>
andlabs: worse than the former, I have no idea how bad the latter is- dunno what lang it's in :P
<andlabs>
java
<andlabs>
it's from google's guava library and it caused someone, presumably a google engineer but they never said, to say "dear god make it stop"