Originally Posted By: mlord
broken in current Hijack. Back up to Hijack-v504 for full functionality.


I didnt know Hijack had that functionality. I seem to miss a lot of what Hijack offers?

I was reading the "IF Counter" from the tuner module via the serial link. This claims to reflect (in some way I dont understand) "signal quality". I guess this is not RSSI. Does the DSP take RSSI by measuring the mpx signal level, that had not occured to me.

I can find "radio-empeg.c" in the hijack source, but once again I have idea what hardware this relates to (does the include the empeg mk1 tuner?) or how to use it from user space. Looking at it I guess I use some kind of IOCTL to read some kind of value using some kind of constants defined in some .h somewhere .... how do you cope with the sprawling mess of tables and zero useful documentation and even worse (and unforgivible from my perspective) the driver soruces dont have any comments to tell you WHAT devices, which hardware - kernel code is like some kind masonic club, I guess I dont yet know the secret handshake to make reading it useful to me .

/* Sonja has an I2Cesque radio data interface */
#define RADIO_DATAOUT GPIO_GPIO10
#define RADIO_DATAIN GPIO_GPIO14
#define RADIO_WRITE GPIO_GPIO13
#define RADIO_CLOCK GPIO_GPIO12


/* Clock out a 25-bit frame */
for(a=24;a>=0;a--) empeg_radio_philips_write_bit(data&(1<<a));
Ok, this is the interface to the MK1 tuner I was missing - its NOT I2C though so I have no idea what the comments are banging on about ...


Ok this looks useful:
unsigned signal = empeg_mixer_get_fm_level();

static void empeg_radio_philips_write_word(int data)
This might be my missing interface to the MK1 tuner, don't know how to use it though?

Its all very confusing unless you already know the internals and interfaces in detail. Seems the empeg has an audio dsp, a mixer and either a gpio connected tuner or a serially connected tuner, I have yet to make sense of how to drive all this with code though ?

This is what I have done to date:
http://www.jonshouse.co.uk/player_tuner_empeg.c

To solve are:
Talking to MK1 tuner from user space. I do have datasheet though.
I can read /dev/rds0 - I assume this is some fixed block length structure not investigated yet, I just need to extract the text fields.
How to read signal level from empeg audio dsp.
AM - not touched that so far.

Thanks,
Jon


Edited by jonshouse (13/09/2013 18:23)