#358470 - 02/05/2013 14:00
Empeg player software, a new generation
|
old hand
Registered: 20/07/1999
Posts: 1102
Loc: UK
|
Hi. A friend of mine, Jon Andrews, whom you may remember from such projects as this, got a bit carried away with the software he wrote for the thing and basically kept going. The end result is pretty much a clone of the empeg player software, admittedly currently missing one or two things but also having several options the original didn't have. He wrote it to run on a Raspberry Pi, driving a display board I did for him with a 256x64 OLED display, IR, buttons, and rotary encoder, which oddly enough looks almost exactly like the empeg panel... However, I mentioned that he should make sure it ran on the original empeg hardware. He complained that this would be too hard, but did it anyway It works on all versions of the empeg. It will play files from network sources or from local storage, has visuals, can be controlled by a remote, uses the original controls, and so on. He's adding tuner support soon. One quite neat addition is a master/slave mode, where one player can be designated as the master, and others as slaves, which will then act as repeaters of whatever the master is playing. Unfortunately at the moment the empeg-native version doesn't quite have the power to run a master mode player, but it runs slave mode perfectly. He has players that run on the empeg, the RPI, and normal PC linux. Porting it to other devices would be fairly simple. He has a sourceforge page where the code will live here, although there's nothing there at the time I'm posting this as he is writing some documentation. It should be up within the next day or two. The player requires a late version of Hijack to be installed, but other than that replaces the original empeg player software completely. pca
_________________________
Experience is what you get just after it would have helped...
|
Top
|
|
|
|
#358471 - 02/05/2013 14:07
Re: Empeg player software, a new generation
[Re: pca]
|
veteran
Registered: 01/10/2001
Posts: 1307
Loc: Amsterdam, The Netherlands
|
One quite neat addition is a master/slave mode, where one player can be designated as the master, and others as slaves, which will then act as repeaters of whatever the master is playing. Very cool! What protocol does it use for the synchronisation?
|
Top
|
|
|
|
#358472 - 02/05/2013 14:08
Re: Empeg player software, a new generation
[Re: julf]
|
old hand
Registered: 20/07/1999
Posts: 1102
Loc: UK
|
It's all done via UDP broadcasts, I believe.
pca
_________________________
Experience is what you get just after it would have helped...
|
Top
|
|
|
|
#358473 - 02/05/2013 14:10
Re: Empeg player software, a new generation
[Re: pca]
|
veteran
Registered: 01/10/2001
Posts: 1307
Loc: Amsterdam, The Netherlands
|
It's all done via UDP broadcasts, I believe. Using custom messages designed by Jon, or something like xPL?
|
Top
|
|
|
|
#358474 - 02/05/2013 14:30
Re: Empeg player software, a new generation
[Re: julf]
|
addict
Registered: 11/01/2002
Posts: 612
Loc: Reading, UK
|
superb - however please introduce him to github; it's where all we cool kids hang out these days
_________________________
LittleBlueThing
Running twin 30's
|
Top
|
|
|
|
#358476 - 02/05/2013 14:35
Re: Empeg player software, a new generation
[Re: LittleBlueThing]
|
journeyman
Registered: 18/09/2012
Posts: 55
Loc: Somerset UK
|
I'm too old fat and bald to be cool :-)
|
Top
|
|
|
|
#358477 - 02/05/2013 14:39
Re: Empeg player software, a new generation
[Re: jonshouse]
|
addict
Registered: 11/01/2002
Posts: 612
Loc: Reading, UK
|
Hey Jon, welcome to the bbs
Impressive entrance!
_________________________
LittleBlueThing
Running twin 30's
|
Top
|
|
|
|
#358478 - 02/05/2013 15:25
Re: Empeg player software, a new generation
[Re: LittleBlueThing]
|
journeyman
Registered: 18/09/2012
Posts: 55
Loc: Somerset UK
|
Thanks for the welcome :-)
|
Top
|
|
|
|
#358482 - 02/05/2013 16:08
Re: Empeg player software, a new generation
[Re: jonshouse]
|
carpal tunnel
Registered: 08/06/1999
Posts: 7868
|
Very impressive, thank you for the work on it Jon, and welcome to the community. I'll try it out soon.
Feel free to use the boards here for soliciting feedback or bug reports, this is definitely empeg related. It's good to see that well over a decade later, the hardware is still a good enough platform to host developer projects such as this.
|
Top
|
|
|
|
#358486 - 02/05/2013 20:09
Re: Empeg player software, a new generation
[Re: drakino]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
Hey Jon! Good to see this going public now!
|
Top
|
|
|
|
#358490 - 02/05/2013 20:30
Re: Empeg player software, a new generation
[Re: LittleBlueThing]
|
carpal tunnel
Registered: 13/02/2002
Posts: 3212
Loc: Portland, OR
|
Hey Jon, welcome to the bbs
Impressive entrance! Yes, indeed. But be careful... IIRC, the last time there was such an impressive software project, it was the Hijack kernel, and now look at Mark's post count! Welcome.
|
Top
|
|
|
|
#358491 - 02/05/2013 20:40
Re: Empeg player software, a new generation
[Re: pca]
|
carpal tunnel
Registered: 13/02/2002
Posts: 3212
Loc: Portland, OR
|
The end result is pretty much a clone of the empeg player software, admittedly currently missing one or two things but also having several options the original didn't have. [...] It works on all versions of the empeg. I'm curious to know, aside from the forthcoming tuner support, what's missing. And, how does it deal with the limitations of the old player, wrt large song databases? Does it still use the existing FID layout, etc? Are we going to need a new version of emplode/jemplode?
|
Top
|
|
|
|
#358492 - 02/05/2013 21:24
Re: Empeg player software, a new generation
[Re: canuckInOR]
|
carpal tunnel
Registered: 08/06/1999
Posts: 7868
|
I'll post the readme_empeg file from the software, as it answers a few of your questions.
Attachments
README_empeg.txt (722 downloads)
|
Top
|
|
|
|
#358496 - 03/05/2013 01:19
Re: Empeg player software, a new generation
[Re: canuckInOR]
|
journeyman
Registered: 18/09/2012
Posts: 55
Loc: Somerset UK
|
"wrt large song databases? Does it still use the existing FID layout, etc? Are we going to need a new version of emplode/jemplode? "
I'm hoping other people will pick up that challenge. Personally I could live without emplode, I never really made it work!, I hear jemplode is stable but I have yet to try it. I can understand that some poeple will want emplode, or at least proper database style playlist management!
I concentrated on getting the real time bits (displays, audio, menus etc) to work, it should be pretty simple bolt extra functionality onto it later.
The player will accept instructions to play a named track (or with a bit more hacking a FID). It should be possible to write another stand alone process to manage playlists and control centro player, failing that someone could always fork the code and add anything they like :-)
As for large databases on the MK1, i've no idea. The playlists stored in RAM are simply a list of partial path/filenames, should not eat much RAM. It would be possible to split the task partially into files if RAM becomes a problem. I've not noticed any specific MK1 problems but my playlist is only a couple of thousand tracks.
At the moment the player has no proper mp3 database at all so its all open for grabs. I might get time to re-visit the subject it in a few weeks.
Thanks, Jon
Edited by jonshouse (03/05/2013 07:46)
|
Top
|
|
|
|
#358497 - 03/05/2013 01:26
Re: Empeg player software, a new generation
[Re: drakino]
|
journeyman
Registered: 18/09/2012
Posts: 55
Loc: Somerset UK
|
>Feel free to use the boards here for soliciting feedback or bug reports,
Thanks :-) Good idea. Its great to see the board still alive and kicking with a loyal user base.
I hope to have a desktop empeg style player kit for the raspberry Pi board in the next few months, the player software was made with that in mind. I will post photos/some links to video here as soon as I have something worth looking at :-)
|
Top
|
|
|
|
#358502 - 03/05/2013 03:40
Re: Empeg player software, a new generation
[Re: jonshouse]
|
carpal tunnel
Registered: 27/06/1999
Posts: 7058
Loc: Pittsburgh, PA
|
Fantastic stuff, Jon. Looking forward to playing with it ASAP.
|
Top
|
|
|
|
#358503 - 03/05/2013 09:37
Re: Empeg player software, a new generation
[Re: pca]
|
old hand
Registered: 17/01/2003
Posts: 998
|
Wow nice, the one thing I would really ask Santa (Jon) for is wildcard searching. And please don’t lose the “Press 2 to enque more artist songs.”
|
Top
|
|
|
|
#358506 - 03/05/2013 14:08
Re: Empeg player software, a new generation
[Re: Redrum]
|
journeyman
Registered: 18/09/2012
Posts: 55
Loc: Somerset UK
|
A couple of vidos to show the code in action. First one on a MK1 player. The second video is a MK2 player, also demos slave mode with the master being a Raspberry Pi board. http://youtu.be/c1wXFo_blmIhttp://youtu.be/qs0bEXLIAek
|
Top
|
|
|
|
#358507 - 03/05/2013 15:10
Re: Empeg player software, a new generation
[Re: jonshouse]
|
carpal tunnel
Registered: 08/06/1999
Posts: 7868
|
I'm hoping other people will pick up that challenge. Personally I could live without emplode, I never really made it work!, I hear jemplode is stable but I have yet to try it. I can understand that some poeple will want emplode, or at least proper database style playlist management! One quick solution could be a script that scans the FIDs, and does soft links to an MP3 filename for centro to scan/use. If I remember right, emplode simply passes the MP3 file through, preserving ID3 tags while also writing the second FID file with the relevant ID3 info. Many people here who use it in car and at home may like a sort of dual boot situation. Stock empeg player in the car, and centro in the home. No promises from my end, but I may look to tackle a bit of this.
|
Top
|
|
|
|
#358508 - 03/05/2013 15:50
Re: Empeg player software, a new generation
[Re: jonshouse]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
I don't suppose there's much that's "special" about using a Raspberry Pi as the "Master", or is there?
Could I use an ordinary Linux notebook computer instead, possibly with a few mods to the display output?
|
Top
|
|
|
|
#358509 - 03/05/2013 16:25
Re: Empeg player software, a new generation
[Re: mlord]
|
journeyman
Registered: 18/09/2012
Posts: 55
Loc: Somerset UK
|
>possibly with a few mods to the display output? The player works in UDP packets, nothing needs modding! >don't suppose there's much that's "special" about using a Raspberry Pi as the "Master", or is there? Nothing special at all, you can use anything you like as a master:-) The empeg cant be an effective master simply because its fractionally too slow, works well as a slave though. The player on platforms other than the empeg has no display of its own, it uses UDP to send display data and accept button push data from either a process on the same machine or stations on the LAN. The script ./compile will build the player binary for/on most linux hosts. I've yet to try a Sparc (I do have one, I must dust it off, we use an Ultra 10 as a coffee table !) or MIPS but I have tried numerous PCs plus the Pi board and another generic Arm linux board :-) Two display programs for Centro player are in the sources, "display_on_x11" is a scalable X11 128x32 display, display_on_framebuffer is similar but for raw framebuffer, both require 16 bit per pixel displays at the moment. The master is a UDP broadcast source, it sends audio data (called audio plus in the sources) and display data as UDP streams, any number of slaves on the LAN can decode it. I pretty much guarantee it will only work on networks with real cables ! Master/Slave is network transparent, if both players are on the same LAN and in the same subnet you simple select mode->master on one and mode->slave on the other (or push the rotary encoder button to toggle between normal and slave mode on a player). I must write some kind of manual or docs for this when I have time :-) Almost forgot, "buttons_x11" gives a virtual set of buttons, both the display and buttons code will drive Centro player,or the original empeg player software if you use this code on the empeg: http://www.jonshouse.co.uk/download/broadcastfb_proc.tar.gz(binary in is in the tar, code for original player only Centro includes the functionality) This is what it looks like from the linux desktop: http://www.jonshouse.co.uk/display_on_x11.jpg(will make a windows version one day maybe) To use the entire player on a linux desktop PC just cd player ./compile run ./bin_x86/display_on_x11 and ./bin_x86/buttons_x11 127.0.0.1 and ./bin_x86/player_pulse (or works less well on desktops, player_alsa) No empeg required to play, that is how I did most the coding, I compile for Pi board and empeg after the changes are tested on the PC. Jon PS If anyone is confused dont worry, I'm confused and I wrote it ........
Edited by jonshouse (03/05/2013 17:05)
|
Top
|
|
|
|
#358510 - 03/05/2013 17:18
Re: Empeg player software, a new generation
[Re: drakino]
|
journeyman
Registered: 18/09/2012
Posts: 55
Loc: Somerset UK
|
"One quick solution could be a script that scans the FIDs, and does soft links to an MP3 filename for centro to scan/use. If I remember right, emplode simply passes the MP3 file through, preserving ID3 tags while also writing the second FID file with the relevant ID3 info."
Yes, that would work quite well :-)
If Centro is pointed at the FIDS direcory it will play the non-text files within it, it just displays the name as "/FIDS/NNN" rather than anything useful. Eiether your idea of a set of links or some extra code to make Centro aware of FIDS would do the job :-)
I thought about replacing the filename with the ID3 tag but not all files have the tag populated, what the player needs to do it recognise FIDS, produce a playlist with only the real mp3 data files and then fill in the title text using the text data in the text FID file. I wont have time this week to look at it.
The other way is just as valid, a set of symlinks would work short term. Just change "MP3DIR0=/drive0" to "MP3DIR0=/drive0/links" in player.cfg and create directory of links. Works well if the link filenames are meaningful :-)
Jon
Edited by jonshouse (03/05/2013 23:22)
|
Top
|
|
|
|
#358516 - 04/05/2013 11:02
Re: Empeg player software, a new generation
[Re: jonshouse]
|
carpal tunnel
Registered: 20/05/2001
Posts: 2616
Loc: Bruges, Belgium
|
I hope to have a desktop empeg style player kit for the raspberry Pi board in the next few months, the player software was made with that in mind. I will post photos/some links to video here as soon as I have something worth looking at :-)
Wow! VERY nice! Thank you for all your efforts you've put into this! I myself am looking very forward to this RPi 'desktop' solution. I currently drive a car that doesn't have the option to build in an Empeg anymore, no more DIN slot unfortunately, like most modern cars... It does have RCA in though, so I could see myself fitting an RPi board with an SSD disk into the glove compartment, all controlled by a small touch screen. (or maybe my iPhone?) That would be awesome! (and would give me my empeg experience back, which I'm still missing after 5 years of being without one) As it happens, yesterday I coincidentally received my first RPi board. Sure I bought it for another project, but now I know this is coming up, I'll probably buy a few more! Again, THANK YOU!!!!
_________________________
Riocar 80gig S/N : 010101580 red Riocar 80gig (010102106) - backup
|
Top
|
|
|
|
#358519 - 04/05/2013 13:59
Re: Empeg player software, a new generation
[Re: BartDG]
|
journeyman
Registered: 18/09/2012
Posts: 55
Loc: Somerset UK
|
Wow! VERY nice! Thank you for all your efforts you've put into this! I myself am looking very forward to this RPi 'desktop' solution. Your welcome :-) I've always been an empeg fan. The project was a bit of a vanity project for me, i've bult some displays and gadgets but I needed the software to make them useful. The software is probably not feature complete from an empeg perspective. RPi board with an SSD disk into the glove compartment, all controlled by a small touch screen. (or maybe my iPhone?) Very much in theory here..... if you put a bog standard Pi board with a good DC/DC converter on it and a suitable USB wifi stick it would be possible to run the player application (and hostAP) with no head and use an Iphone (or tablet) to control it. I dont have any Iphone or similar front end available but it should not be a huge job to write one. The important to thing to note is that my player software does not require a display at all, its nicer with one - but is not required. It all functions with UDP packets, the player is not aware of the front end. Practial upshoot is you can connect or disconnect a display/keys at any point (or have multiple displays or key inputs), the player continues regardless. For anyone who wants to write a front end, specify -ptx <port> (for just display data) or -master (display and audio data) on the player command line. The UDP display packet is identical to an empeg framebuffer (I thought ahead here). Its 2048 bytes of two pixel per byte 2 bit data. An example (a little crude) of the display end is "display_on_framebuffer.c" From memory format is XXPPXXPP for a byte, X unused PP two bits of pixel data. For reference networking (and player process) looks like this: (some might claim overkill here!) On empeg substite "madplayer" for "mplayer" http://www.jonshouse.co.uk/player.pngThe player listens for buttons (from any host) on UDP port 5050 It optionally sends UDP display data on a port specified with -ptx. It sends UDP display data on port 5051 but only to localhost (127.0.0.1), except on the empeg version where it drives the VFD instead. In master mode it sends UDP display data on UDP BROADCAST port 4040 in master mode is sends AUDIO + (see source, sorry) data on UDP BROADCAST port 2500 If a master is already present the player will refuse to enter master mode. In slave mode it receives UDP display data on port 4040 in slave mode it receives AUDIO+ data on port 2500 Jon
Edited by jonshouse (04/05/2013 14:18)
|
Top
|
|
|
|
#358520 - 04/05/2013 15:03
Re: Empeg player software, a new generation
[Re: jonshouse]
|
carpal tunnel
Registered: 20/05/2001
Posts: 2616
Loc: Bruges, Belgium
|
Thanks for the info Jon, very informative! Unfortunately, I can't do this myself, since I can't code. (I simply don't have the skills) So here's to hoping somebody will pick up the task of writing such a front end. That would be awesome!
_________________________
Riocar 80gig S/N : 010101580 red Riocar 80gig (010102106) - backup
|
Top
|
|
|
|
#358550 - 07/05/2013 23:51
Re: Empeg player software, a new generation
[Re: BartDG]
|
carpal tunnel
Registered: 18/06/2001
Posts: 2504
Loc: Roma, Italy
|
I am just reading this and I am so amazed. In the ideal world, I'd LOVE to have an empeg-type player, with all its great features, capable of managing an MP3 collection directly, without converting to FID. Should this happen, I'd reconsider immediately a car PC project. This would be the perfect interface to bring back an empeg experience. A simple synch of the file systems between a home collection and the car PC would bring back the magic in a simple, effective way. Thank you thank you Jon!!
_________________________
= Taym = MK2a #040103216 * 100Gb *All/Colors* Radio * 3.0a11 * Hijack = taympeg
|
Top
|
|
|
|
#358571 - 09/05/2013 00:01
Re: Empeg player software, a new generation
[Re: Taym]
|
journeyman
Registered: 18/09/2012
Posts: 55
Loc: Somerset UK
|
In the ideal world, I'd LOVE to have an empeg-type player, with all its great features, capable of managing an MP3 collection directly, without converting to FID. Can you explain what you would like to see ? Currently Centro player has no "real" mp3 management at all. You tell the player the path of (upto 16) directories of mp3s, it crawls those directories and generates a "playlist". The playlist is really just a list of partial path/filenames in a text file. It then can play tracks from the list sequentially or randomly. To get tracks onto an empeg ftp is about the only way... The software also runs on a linux PC so give it a go :-) I've not had any feedback so far and only 11 souls have downloaded the source so I'm guessing the demand is not huge ;-) I've borrowed a tuner from PCA, next job is to add tuner support and audio input support. Just for fun I made this, my larger display also runs it but this size is about right for a living room: http://youtu.be/pi-5hULYxv8Cheers, Jon
|
Top
|
|
|
|
#358572 - 09/05/2013 06:11
Re: Empeg player software, a new generation
[Re: Taym]
|
veteran
Registered: 01/10/2001
Posts: 1307
Loc: Amsterdam, The Netherlands
|
In the ideal world, I'd LOVE to have an empeg-type player, with all its great features, capable of managing an MP3 collection directly, without converting to FID. This would be the perfect interface to bring back an empeg experience. A simple synch of the file systems between a home collection and the car PC would bring back the magic in a simple, effective way. There is always mp3tofid. Allows you to do exactly what you describe, albeit via an intermediate step.
|
Top
|
|
|
|
#358574 - 09/05/2013 12:22
Re: Empeg player software, a new generation
[Re: julf]
|
carpal tunnel
Registered: 18/06/2001
Posts: 2504
Loc: Roma, Italy
|
Yes, I definitely wasn't detailed in my previous post. This is what I would like to see (and thank you so much for being here to listen in the first place!) : I've always been interested in having a Car PC. At the same time, I've never seen any better player and GUI (in Car) than the Empeg's. I could get both in my car if: 1. A player software replicating the Empeg GUI and feature set was available on PC, possibly TOUCH based. 2. The above player could create it's track DB (and Empeg player related features) by looking at a specific directory tree on the local HDD/SSD containing an MP3 collection. I am thinking that playlists could be created on a PC in one of the several ways already there: M3U lists, and similar. At that point, one would simply decide which MP3s to put in the carPC, and possibly perform simple synch among home PC and car PC, or cloud, etc. Also, currently there are several x86 (even just Atom) touch tablets that would work nicely as in-car PCs (I am thinking Lenovo Tablet 2, Microsoft Surface Pro), actually. In that case, It'd be nice a Windows player (or a Win8 App). I'd really like to dock a tablet in my car and use it that way. I hope this is clearer.
_________________________
= Taym = MK2a #040103216 * 100Gb *All/Colors* Radio * 3.0a11 * Hijack = taympeg
|
Top
|
|
|
|
#358576 - 09/05/2013 13:31
Re: Empeg player software, a new generation
[Re: Taym]
|
journeyman
Registered: 18/09/2012
Posts: 55
Loc: Somerset UK
|
1. A player software replicating the Empeg GUI and feature set was available on PC, possibly TOUCH based. One or the other ! If its touch based then its not replicating empeg GUI. Centro player is true emulation for some of the empeg front end. 2. The above player could create it's track DB (and Empeg player related features) by looking at a specific directory tree on the local HDD/SSD containing an MP3 collection. Ok, it does this. At the moment it doesnt offer much more though. Its a little primitive but works. Also, currently there are several x86 (even just Atom) touch tablets that would work nicely as in-car PCs (I am thinking Lenovo Tablet 2, Microsoft Surface Pro), actually. In that case, It'd be nice a Windows player
Hmmmm .... welll errrrr hmmmm .... Centro will compile on Liux/Intel and Linux/ARM - so a tablet with linux will run the software. In theory it would build for windows with a little work, I have no plans for a windows version though. As an embedded developer I find your logic fuzzy. My aim was to create an empeg style player that will run on modern hardware. PC, Raspberry Pi etc. Later adding a real display and button hardware to the raspberry Pi to create a player device. The software is pretty flexible and will work in many configurations but it does not have a GUI as such, nor is it windows like, cloud like, or touch screen. I would go as far as to say that if it was any of those things it would not be like an empeg at all. Cheers, Jon
|
Top
|
|
|
|
#358577 - 09/05/2013 16:55
Re: Empeg player software, a new generation
[Re: jonshouse]
|
carpal tunnel
Registered: 18/06/2001
Posts: 2504
Loc: Roma, Italy
|
1. A player software replicating the Empeg GUI and feature set was available on PC, possibly TOUCH based. One or the other ! If its touch based then its not replicating empeg GUI. Sorry Jon, I meant to type UI, not GUI. If you replicate the empeg UI on a display, it makes very much sense to me to make it touch. Of course, if you're not planning to include any GUI at all then I misunderstood your project in this regard. Also, currently there are several x86 (even just Atom) touch tablets that would work nicely as in-car PCs (I am thinking Lenovo Tablet 2, Microsoft Surface Pro), actually. In that case, It'd be nice a Windows player
Hmmmm .... welll errrrr hmmmm .... Sorry, I did not mean anything bad. Linux on VM could be interesting as well. I, personally, use a lot of Windows machines for various reasons, and I'd love to use a tablet in car as a stereo controller, in the office docked as my main PC, on the couch, and elsewhere for other stuff. But that's just me. I'm notoriously eccentric in many ways As an embedded developer I find your logic fuzzy. My aim was to create an empeg style player that will run on modern hardware. PC, Raspberry Pi etc. Later adding a real display and button hardware to the raspberry Pi to create a player device.
Yes, it seems to me I partly misunderstood the purpose of the project (what you intend to do on a PC, in particular), but I too find your logic fuzzy (regardless of my job :)): if you are in fact conceiving this software for a PC as well, then how is it going to work, in that specific case, without a GUI? I think the PC part misled me. But, not problem, a cool project nonetheless. There's a lot of great stuff there pc or not! I would go as far as to say that if it was any of those things it would not be like an empeg at all. As far as I am concerned, you may call my idea "Crazy Taym's Contraption" if you wish, it is just a matter of definitions and I'd not be offended in any way Having said that, I am sure the Empeg is comprised of software and hardware (I am pretty sure I've been pushing buttons on it in the last 10 years ), so since you said you're creating a new software part to be used on current hardware and PC, I assumed that "current hardware" could include touch screens, and PC referred to in-car PC (and all that implies). Of course, this is your project and you may design it as you wish. In any case, great project, and thanks a lot for keeping the Empeg community alive also with such projects, cool indeed.
_________________________
= Taym = MK2a #040103216 * 100Gb *All/Colors* Radio * 3.0a11 * Hijack = taympeg
|
Top
|
|
|
|
#358580 - 09/05/2013 19:28
Re: Empeg player software, a new generation
[Re: Taym]
|
journeyman
Registered: 18/09/2012
Posts: 55
Loc: Somerset UK
|
Yes, it seems to me I partly misunderstood the purpose of the project (what you intend to do on a PC, in particular), but I too find your logic fuzzy (regardless of my job :)): if you are in fact conceiving this software for a PC as well, then how is it going to work, in that specific case, without a GUI? I think the PC part misled me. I'm prepared to admit its confusing. The player software has a UI - it generates an "image", the image being 128x32 dots of 2 bits per pixel. It is a graphic, so it could be argued either way but by most definitions it is not a GUI as it does not interact with anything. i.e. its fixed size, no "real" menus in a GUI sense, no Z ordering, no interaction with a desktop etc. You may have missed the earlier parts of this thread, this image is a desktop (X11) application for viewing and controlling the player. http://www.jonshouse.co.uk/display_on_x11.jpgIf you follow the youtube links you see examples of the player running on MK1 and MK2 empeg hardware, a Raspberry Pi board driving an LCD display and a Raspberry Pi board driving an LED display. The player itself sends its graphics via UDP (networking) - it is the job of the display (in the case above a program called 'display_on_x11') to render the image so the user can see it. The player itself is not aware of the front end, it just accepts button pushes (or text commands) and does "stuff" with them :-) Another way to think of the is that Centro player is a server, the program rendering the front end is the client. so since you said you're creating a new software part to be used on current hardware and PC, I assumed that "current hardware" could include touch screens, and PC referred to in-car PC (and all that implies)
Well yes and no. As microsoft have discovered its a different way of working to drive something with a touch screen, the empeg is a button driven interface. You could emulate the buttons with a touch screen by pushing an up/down/left/right button (as in the graphic above) but the sofware itself remains button driven. The software can be extended (its open source after all), its possible to hack into whatever interface you would like. The software runs on real empeg hardware, linux PCs and Pi boards (confusingly with or without a front end !) In "master/slave" mode the player can have multiple front ends at the same time - think two or more displays and buttons but one player. Even I think understanding it is tricky, I will write some proper documentation for it one day :-) Hope that helps. Jon
|
Top
|
|
|
|
#358581 - 09/05/2013 20:06
Re: Empeg player software, a new generation
[Re: jonshouse]
|
carpal tunnel
Registered: 18/06/2001
Posts: 2504
Loc: Roma, Italy
|
Jon, one more clarification on my part that I see is needed: by Empeg UI I actually meant the Empeg User Interface: buttons & rotary knob.
I assumed that by bringing the player >> on the PC << you intended to also create a software version of the Empeg UI (turning it from a hardware UI into a GUI). I see that's not what you intended and probably I read too much in your reference to PC.
All the rest (On Empeg hardware, or on Pi) is clear and I actually saw the interesting videos.
Thanks,
_________________________
= Taym = MK2a #040103216 * 100Gb *All/Colors* Radio * 3.0a11 * Hijack = taympeg
|
Top
|
|
|
|
#358583 - 09/05/2013 21:22
Re: Empeg player software, a new generation
[Re: Taym]
|
journeyman
Registered: 18/09/2012
Posts: 55
Loc: Somerset UK
|
I assumed that by bringing the player >> on the PC << you intended to also create a software version of the Empeg UI (turning it from a hardware UI into a GUI). I see that's not what you intended and probably I read too much in your reference to PC. I'm not sure I fully understand the question, I think the answer is "yes". The screen capture shows a front end X11 display process and a button process talking to a Centro player process. Does the video clarify it, this is all on the PC. In this instance, the Centro player process and the two front end processes running on Debian desktop linux (that is 3 programs). You can split and have the player on a Pi board and front end on the PC, or swap them round, or have mulitiple front ends - I did say it was confusing.... http://youtu.be/S3ixxMDCcG4You are aware PC is not the same as "Windows" ?
Edited by jonshouse (09/05/2013 21:25)
|
Top
|
|
|
|
#358590 - 10/05/2013 16:04
Re: Empeg player software, a new generation
[Re: jonshouse]
|
carpal tunnel
Registered: 13/02/2002
Posts: 3212
Loc: Portland, OR
|
You can split and have the player on a Pi board and front end on the PC, or swap them round, or have mulitiple front ends - I did say it was confusing.... I don't think it's that confusing. Centro doesn't have a "UI", it has an "I" that works by listening for specific messages on the network, and spitting out a stream of images to the network (that corresponds to the display). Anyone can write a custom "UI" for the player, by mapping user actions (pressing an analog button, pressing a touchscreen in a specific location, using the mouse to press a GDK or Qt widget in a desktop app) to generate those network messages, and rendering the stream of images pulled from the network. Because the player is "UI" agnostic, it can have whatever "UI" you can dream up. On the Pi or a desktop that has an attached microphone, you could have a voice-recognition control app, for example. So far, you've provided a few reference applications.
|
Top
|
|
|
|
#358592 - 10/05/2013 16:48
Re: Empeg player software, a new generation
[Re: canuckInOR]
|
journeyman
Registered: 18/09/2012
Posts: 55
Loc: Somerset UK
|
So far, you've provided a few reference applications.
Well, if I am completely honest the whole thing is a bit "hacky". I wrote an X11 front end to speed up development, that way I get to compile entirely on the PC without the effort of cross compiling. I'm not sure any of the code is clean enough to be called a "reference application". What I must do sometime is document the thing. The player has a (limited but functional) command interpreter, it will accept more than just button presses - but without digging into the source nobody would know. I used UDP so that the front end also works with the LED sign code (broadcastfb_proc), not sure that is going to everyones cup of tea though. I'm not convinced its worth any more public development, with only 12 downloads of the source plus one single rating of a thumbs down for my youtube video of the MK2 player i'm pretty convinced nobody will ever use it ! Cheers, Jon
Edited by jonshouse (10/05/2013 18:05)
|
Top
|
|
|
|
#358593 - 10/05/2013 17:15
Re: Empeg player software, a new generation
[Re: jonshouse]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
I haven't downloaded it yet, but fully intend to do so, and to use it on several of my players here.
Just not yet.. in a particularly busy spell with work at the moment.
So please do continue with it!!!
|
Top
|
|
|
|
#358594 - 10/05/2013 17:34
Re: Empeg player software, a new generation
[Re: jonshouse]
|
carpal tunnel
Registered: 20/05/2001
Posts: 2616
Loc: Bruges, Belgium
|
I'm not convinced its worth any more public development, with only 12 downloads of the source plus one single rating of a thumbs down for my youtube video of the MK2 player i'm pretty convinced nobody will ever use it !
I haven't downloaded it either, but I fully intend to in the future, maybe when there is a UI for Windows or -dare I say it- iPhone. I'm not a Linux user, and even though I'm now taking my first baby steps with my RPi (and love it), more than 90% of my own ecosystem is still windows, so that's why I'm holding off for the moment. If a Windows version never comes, then I'll probably WILL try the Linux version, but I don't really have the time to tinker too much with it at the moment. But please don't chuck it in, I for one am VERY curious to see the direction this project is heading into!
_________________________
Riocar 80gig S/N : 010101580 red Riocar 80gig (010102106) - backup
|
Top
|
|
|
|
#358595 - 10/05/2013 18:39
Re: Empeg player software, a new generation
[Re: mlord]
|
carpal tunnel
Registered: 13/02/2002
Posts: 3212
Loc: Portland, OR
|
I haven't downloaded it yet, but fully intend to do so, and to use it on several of my players here.
Just not yet.. in a particularly busy spell with work at the moment.
So please do continue with it!!! Ditto. Only add a 3-year old, and a 3-month old on top of busy work!
|
Top
|
|
|
|
#358596 - 10/05/2013 18:48
Re: Empeg player software, a new generation
[Re: canuckInOR]
|
carpal tunnel
Registered: 19/01/2002
Posts: 3584
Loc: Columbus, OH
|
I haven't downloaded it yet, but fully intend to do so, and to use it on several of my players here.
Just not yet.. in a particularly busy spell with work at the moment.
So please do continue with it!!! Ditto. Only add a 3-year old, and a 3-month old on top of busy work! Ditto again. 4,2, and 1 year old and an international move consuming my time...will try it soon.
_________________________
~ John
|
Top
|
|
|
|
#358597 - 10/05/2013 18:51
Re: Empeg player software, a new generation
[Re: jonshouse]
|
carpal tunnel
Registered: 13/02/2002
Posts: 3212
Loc: Portland, OR
|
So far, you've provided a few reference applications.
[...]I'm not sure any of the code is clean enough to be called a "reference application". Okay... sample code, then.
|
Top
|
|
|
|
#358598 - 10/05/2013 19:30
Re: Empeg player software, a new generation
[Re: canuckInOR]
|
journeyman
Registered: 18/09/2012
Posts: 55
Loc: Somerset UK
|
Ok, it looks like some people will use it so I will stick at it :-)
I also have some real work to do but at the end of the week I hit a work lul for while so I will have some time to burn. I guess next job is to add tuner and AUX input support for the empeg.
Like I said in an early post I wrote it for myself. My main concern was newer hardware and LED displays rather than the empeg unit itself, you have PCA to thank for the empeg support as he complained when I dropped it and encouraged me to put the code back in and make it work :-)
Thanks for the feedback.
Jon
Edited by jonshouse (10/05/2013 20:05)
|
Top
|
|
|
|
#358600 - 11/05/2013 13:59
Re: Empeg player software, a new generation
[Re: jonshouse]
|
carpal tunnel
Registered: 18/06/2001
Posts: 2504
Loc: Roma, Italy
|
The screen capture shows a front end X11 display process and a button process talking to a Centro player process.
Does the video clarify it, this is all on the PC. In this instance, the Centro player process and the two front end processes running on Debian desktop linux (that is 3 programs). You can split and have the player on a Pi board and front end on the PC, or swap them round, or have mulitiple front ends - I did say it was confusing....
Jon, so I take it what when you said the "player software has no GUI at all", you meant you were using a separate software as a GUI/front end, and that the player software per se did not have it. Great, it makes sense and offers a great deal of flexibility. You are operating on that via mouse on a PC, and I think that touch would work better in the specific case of an in-car PC, where your software would be fantastic, I am thinking. But, please do not take this as criticism to your work, that is fantastic. I am just thinking out loud here You are aware PC is not the same as "Windows" ?
Are you being sarcastic here? There's no need to be, Jon, please read all my messages as friendly and if they seemed otherwise I am sincerely sorry.
Edited by Taym (11/05/2013 14:07)
_________________________
= Taym = MK2a #040103216 * 100Gb *All/Colors* Radio * 3.0a11 * Hijack = taympeg
|
Top
|
|
|
|
#358602 - 11/05/2013 20:05
Re: Empeg player software, a new generation
[Re: Taym]
|
journeyman
Registered: 18/09/2012
Posts: 55
Loc: Somerset UK
|
Are you being sarcastic here? No I was not, remember I can not tell anything much about you. You have said you have a lot of windows kit and like touch screen, I take this as you being on the younger side, I have looked at your profile now - you are only a few years younger than me so I guessed wrong! I am over 40 and worked with PCs well before Windows, a lot of people less over the hill than myself think (partly thanks to Microsoft marketing) that PC is Windows. I have endless examples of me saying to a client "yes, I can make that works on a PC" and getting a reply "bla bla windows bla bla" as they have failed to notice that windows and PC are not the same entity. As it happens I can write for Windows, but mostly I code for linux on generic PC kit. As you changed platform at least twice and operating system 3 times in just one post, I wanted to check that you did appreciate that PC is not the same as Windows, if you had confusion on this I would then explicitly state "PC/windows" and "PC/linux" in my answers to help clarify it for you. I was not in any way taking the piss. You are operating on that via mouse on a PC, and I think that touch would work better in the specific case of an in-car PC, where your software would be fantastic, I am thinking. But, please do not take this as criticism to your work, that is fantastic. I am just thinking out loud here
I did not take it as a criticism. When you talk to developers appreciate they are often highly context sensitive and staggeringly literal. This can seem rude but its not intentional. I have not taken any offence from anything you have said, nor have tried to cuase you any offence, sorry if I have managed to do so. It can be difficult to helpfully answer your questions if you constantly change context, my replies have mostly been trying to pin you down to one context so I can fully understand what you are asking me and offer a useful reply. Touch screen emulating Up Down Left Right buttons = Yes, very easy. Touch screen as a more complex interface (drag, gesture etc) much more tricky, possible, but not my cup of tea ! Thanks, Jon http://www.youtube.com/watch?v=xsN5hh2G7l8
Edited by jonshouse (11/05/2013 20:07)
|
Top
|
|
|
|
#358603 - 12/05/2013 15:15
Re: Empeg player software, a new generation
[Re: jonshouse]
|
carpal tunnel
Registered: 18/06/2001
Posts: 2504
Loc: Roma, Italy
|
No offense taken. I understand your project, looked at the diagrams, looked at the videos, understand the software architecture you've designed, and most likely will be testing it on one of my empegs. Having said all this, my first post was underlying one particular possible usage of your project, and was based on the assumption/understanding that you were doing on a PC (whatever OS) what you are in fact doing: replicating the Empeg UI on screen, making it a GUI in all regards. And that is: IN-CAR PC. I've been thinking for a while that current tablets would be quite interesting if used as an in-car PC. There are some iPads hacked as such, but my personal problem with that is that 1. an iPad is not a PC, so I've been waiting for an some x86 tablet to hit the market. That's happening now. 2. I don't know of any software that can get close what I consider the best ui and feature set for an audio player in a car: the Empeg. So, an all-software empeg on a x86 tablet is very, very interesting. The Empeg device is now old, not in production, and everyone here is complaining that there's no such car player in the market anymore. I've been complaining about that for years now Now, you can revive the empeg, with your software, in many ways: on all the hardware you mentioned (Pi, existing Empeg) but ALSO and very interestingly on an x86 tablet, and THAT can get in a car. In other words, you can take the empeg experience and free if from the hardware (now obsolete) that it was originally conceived for. In particular, bringing it on X86 tablet seems to me a wonderful opportunity. That's what I am talking about.
Edited by Taym (12/05/2013 15:17)
_________________________
= Taym = MK2a #040103216 * 100Gb *All/Colors* Radio * 3.0a11 * Hijack = taympeg
|
Top
|
|
|
|
#358604 - 12/05/2013 16:26
Re: Empeg player software, a new generation
[Re: Taym]
|
carpal tunnel
Registered: 08/07/1999
Posts: 5549
Loc: Ajijic, Mexico
|
Now, you can revive the empeg, with your software, in many ways: on all the hardware you mentioned (Pi, existing Empeg) but ALSO and very interestingly on an x86 tablet, and THAT can get in a car. In other words, you can take the empeg experience and free if from the hardware (now obsolete) that it was originally conceived for. In particular, bringing it on X86 tablet seems to me a wonderful opportunity. Now that would be interesting. The only tablet I have ever had any use for is my Kindle. Apple, Android, whatever, they just don't do anything that I want or need to do. Obviously tens of millions of people are wrong and I am right, of course... Seriously, there's nothing wrong with tablets, they're just not for me. But this idea... if Jon can get a "software empeg" working on a tablet, and if I can then pipe the output of that tablet into my car's audio system, I'll be standing in line at the computer store to buy whatever tablet it works on. tanstaafl.
_________________________
"There Ain't No Such Thing As A Free Lunch"
|
Top
|
|
|
|
#358605 - 12/05/2013 19:15
Re: Empeg player software, a new generation
[Re: tanstaafl.]
|
journeyman
Registered: 18/09/2012
Posts: 55
Loc: Somerset UK
|
Dont forget a Raspberry Pi add kit on is in the works, this would make empeg style hardware for a reasonable (as yet uncalculated) price, not give away cheap but less than an x86 tablet I suspect. Another thought though... under most android tablets is a linux kernel. If somebody can modify a cheap (ARM) tablet to run generic linux then it should be possible to run my software. The softwrare has both X11 and framebuffer output code, the framebuffer code scales so it would drive a smaller tablet full screen. Worth a thought .... Personally I would rather have the VFD (or on my new hardware OLED) display, but that is just my personal taste. But this idea... if Jon can get a "software empeg" working on a tablet, and if I can then pipe the output of that tablet into my car's audio system, I'll be standing in line at the computer store to buy whatever tablet it works on.
No promosis but I will see what I can do. Any reason it has to be x86?, would a $80 Arm tablet that did just one job suit or do you prefer an application running on a Tabet desktop (slightly more tricky but possible).. Jon
Edited by jonshouse (12/05/2013 19:30)
|
Top
|
|
|
|
#358607 - 13/05/2013 00:04
Re: Empeg player software, a new generation
[Re: jonshouse]
|
carpal tunnel
Registered: 08/07/1999
Posts: 5549
Loc: Ajijic, Mexico
|
Any reason it has to be x86? Any portable device that can emulate the empeg hardware and do everything or nearly everything the empeg UI does would be fine. I am not a "techie" - I want a turnkey solution: buy the tablet, load your software onto it, add the music, and voila! I have a fourth-generation empeg in a car whose integrated stereo system doesn't allow modification. Would the ability to drag-and-drop the music onto the tablet from my Windows PC require an x86 tablet? Would we use emplode to load the music onto a Linux tablet? How about the capabilities available only through the empeg remote, like "next song by same artist", that sort of thing? this would make empeg style hardware for a reasonable (as yet uncalculated) price, not give away cheap but less than an x86 tablet I suspect. Remember that you are talking to people who ten years ago unflinchingly paid more than a thousand dollars for the original empeg. I put a good few thousand dollars after that into building a stereo system for my car that, alas, is no longer with me. A few hundred dollars for a tablet is trivial at this point. At first I didn't understand the point of your project, but now I get it. This is exciting. tanstaafl.
_________________________
"There Ain't No Such Thing As A Free Lunch"
|
Top
|
|
|
|
#358692 - 21/05/2013 12:28
Re: Empeg player software, a new generation
[Re: jonshouse]
|
carpal tunnel
Registered: 18/06/2001
Posts: 2504
Loc: Roma, Italy
|
No promosis but I will see what I can do. Any reason it has to be x86? Any cheap hardware that allows a new, updated Empeg device in my car would be superb to me as well. But, ALSO, in addition to the above, and to answer to you question on why x86: >>> In-CAR PC. Today there already are real PCs (i3, i5 processors) in Tablet form factor. With those and software like your, one could have a real in-car PC that ALSO offers the empeg experience. Also, this could be a device you don't leave in the car, unless you want to. This is a device you take with you for work or any other reason. A real tablet PC. The UX I would love for myself includes using this tablet PC docked for work, at home on the couch, travelling. In other words, ALL the things I do today with my laptop and can't do nearly as well with my iPad. BUT ALSO, with a software like yours, I could dock in in my car and start the Empeg software, and replicate the BEST, by far, in car experience ever. One more idea (which I quickly mentioned in an earlier post): why not an "App"? Also interesting, even though less for those like me who like full featured tablet-pcs (x86), would be to make this an App for the most popular OSs: Android, for Android tablets (or phones?), iPad (hoping one can easily replicate the empeg experience using mp3s on the iPad), Windows (where one could easily use MP3s on the local file system). This could get an interesting and, who knows, popular App if its GUI is designed for in-car use (which means, to me, large icons and fonts, and touch). The fact is, it seems to me we are really a step away from making our smartphones and tablets the main way to control our on board stereo system. If you put an Empeg-like App on them, and people start to realize its potential, who knows, that could even, maybe, create some market. To sum up, I see three things here: 1. New cheap dedicated hardware for a revamped, possibly inexpensive, Empeg. --> Raspberry Pi, for example 2. Empeg as an APP for most popular OS ecosystems (Android, iOS, Windows Phone) 3. Empeg as an App/software for PC OSs (Linux, Windows) for in-car PCs. Pretty cool, I think. But, again, I am just thinking out loud and throwing out ideas one may or may not like. As Doug, I'd be standing in line to get it, and happily pay for it. Of course, not easy to say how many others would. For me, I'd pay way more than the cost of a standard App for this.
_________________________
= Taym = MK2a #040103216 * 100Gb *All/Colors* Radio * 3.0a11 * Hijack = taympeg
|
Top
|
|
|
|
#358697 - 21/05/2013 16:32
Re: Empeg player software, a new generation
[Re: Taym]
|
old hand
Registered: 20/07/1999
Posts: 1102
Loc: UK
|
A picture of some prototype dedicated hardware pca
Attachments
oled1.jpg (6514 downloads)
_________________________
Experience is what you get just after it would have helped...
|
Top
|
|
|
|
#358699 - 21/05/2013 16:55
Re: Empeg player software, a new generation
[Re: pca]
|
carpal tunnel
Registered: 13/02/2002
Posts: 3212
Loc: Portland, OR
|
A picture of some prototype dedicated hardware Hmm... it needs more nipple.
|
Top
|
|
|
|
#358702 - 21/05/2013 18:02
Re: Empeg player software, a new generation
[Re: pca]
|
carpal tunnel
Registered: 08/06/1999
Posts: 7868
|
Ooo. So am I right in guessing that prototype has an OLED screen? (based on the file name)
|
Top
|
|
|
|
#358707 - 21/05/2013 18:28
Re: Empeg player software, a new generation
[Re: drakino]
|
old hand
Registered: 20/07/1999
Posts: 1102
Loc: UK
|
It's a 256x64 OLED panel, which although smaller (and much thinner) than the empeg VFD, has a visible display area almost exactly the same dimensions. Also 16 grey levels, unlike the VFD's five and half, rounded down to 4 Jon's current software emulates the 128x32 2BPP display on the OLED display in a very convincing manner. The blue one also looks very much like the empeg display, but if anything is brighter. It's driven by SPI from the raspberry pi expansion port, and also has the same button and rotary encoder layout as on the empeg, with a consumer IR receiver as well. pca
_________________________
Experience is what you get just after it would have helped...
|
Top
|
|
|
|
#358717 - 21/05/2013 22:06
Re: Empeg player software, a new generation
[Re: canuckInOR]
|
carpal tunnel
Registered: 20/12/1999
Posts: 31597
Loc: Seattle, WA
|
A picture of some prototype dedicated hardware Hmm... it needs more nipple. WINNER! Laughing out loud here. Seriously, though, GORGEOUS photo of a super-clean display board there. Wow.
|
Top
|
|
|
|
#358762 - 23/05/2013 13:26
Re: Empeg player software, a new generation
[Re: tfabris]
|
journeyman
Registered: 18/09/2012
Posts: 55
Loc: Somerset UK
|
|
Top
|
|
|
|
#358766 - 23/05/2013 17:06
Re: Empeg player software, a new generation
[Re: jonshouse]
|
carpal tunnel
Registered: 19/01/2002
Posts: 3584
Loc: Columbus, OH
|
Nice!
_________________________
~ John
|
Top
|
|
|
|
#358769 - 23/05/2013 20:49
Re: Empeg player software, a new generation
[Re: pca]
|
old hand
Registered: 14/02/2002
Posts: 804
Loc: Salt Lake City, UT
|
A picture of some prototype dedicated hardware pca I'm guessing I'm not the only one here thinking about ripping out my empegs guts, sticking a Raspberry Pi in there along with that beautiful display. Although how to get my illuminated buttons working...
_________________________
-Michael
#040103696 on a shelf Mk2a - 90 GB - Red - Illuminated buttons
|
Top
|
|
|
|
#358788 - 24/05/2013 17:09
Re: Empeg player software, a new generation
[Re: Waterman981]
|
old hand
Registered: 20/07/1999
Posts: 1102
Loc: UK
|
I'm guessing I'm not the only one here thinking about ripping out my empegs guts, sticking a Raspberry Pi in there along with that beautiful display. That would, in my opinion, be a mistake. The empeg is a reliable, resilient system with excellent audio output, a lot of tolerance to power supply fluctuations, and is specifically designed for high vibration environments. The Raspberry Pi is none of the above That said, it has two things going for it - it's cheap, and it's quite fast. The reliability can be improved significantly by powering it from a source other than the micro USB socket. The audio is more of a problem. While it's acceptable, it's certainly not audiophile grade (it needs a lot more silver plating for skin effect reduction, for example ). I have been considering doing a small expansion board that would give a better codec, but haven't yet had the time. I am in the process of designing a nice acrylic box to put the Pi, a small switch-mode PSU, and the display board in, which would give a neat table-top audio player. I'm not convinced it's the right hardware for a car player, though. What I have been wondering is if there is any point in doing a replacement display board for existing empegs that uses the OLED panel. The display area of the OLED is about 1mm smaller horizontally and vertically than the VFD, and it's at least as bright. One problem is that it's much more monochromatic, so it needs a filter exactly the right colour or most of the light goes away. pca
_________________________
Experience is what you get just after it would have helped...
|
Top
|
|
|
|
#358789 - 25/05/2013 18:59
Re: Empeg player software, a new generation
[Re: pca]
|
carpal tunnel
Registered: 27/06/1999
Posts: 7058
Loc: Pittsburgh, PA
|
I haven't had a chance to try the centro player yet, but I do have a crazy pipe dream feature request. So, we all love our empegs, but a lot of us are also cheating on our empegs with podcasts and cloud-y music services. The possibility of tight integration of these things into the stock player was virtually nil, but with a fully open-source player, it seems like these ideas might be within reach. One such idea I'm thinking about would be the ability to play tracks from Google Music, and it turns out someone has already done a lot of the hard work involved in exposing Google Music libraries as a Linux filesystem using FUSE. You install the app, run it, and it goes out and indexes your collection, and gives you a relatively sane directory structure under which you can get easy access to the MP3 files. So, the missing piece is how to easily integrate MP3 files on the Android smartphone's filesystem with the Centro ecosystem, and for that, I was thinking something like MPD might fit in well. There's an android port, which means in theory one could run a server on the phone to serve up the mp3 files as content that can be streamed over to an mpd client, e.g. a Centro player speaking the mpd protocol. Obviously the architecture is getting a bit Rube Goldbergian at this point, but with these pieces of the puzzle available, the task of having Google Music content playing on empeg hardware actually seems doable. Anyway, I'm still finishing up my own empeg install and associated software bits, but once I have an empeg in my car, I'm going to give Centro a try, and if it's something I could see using as my everyday player, I might (might!) try to experiment with making this happen. Just thought I'd throw the idea out there and see what y'all think.
|
Top
|
|
|
|
#358856 - 02/06/2013 10:26
Re: Empeg player software, a new generation
[Re: tonyc]
|
addict
Registered: 11/01/2002
Posts: 612
Loc: Reading, UK
|
Thanks to a plonker in a taxi the "display-extender in the XKR" install is no more I'm at the point where I don't want to use the empeg in a new install now - my interests in mobile computing mean I'm more interested in a raspi or tablet-like solution. So to address the sound quality from a raspi I was thinking: http://www.ebay.co.uk/itm/YJ-TE7022-WM87...=item2577110cf3also Tony - I think you may have the mpd architecture wrong. The mpd server is typically a headless unit which can be controlled by mpd clients, You'd want the head unit to run mpd and your phone to be the control interface. You could write something to plugin to mpd to stream audio to the player using jon's udp protocol. Then you'd have to figure out display udp. I really think that's not going to work. At that point I think you're using the empeg as a TCP->RCA convertor with a very limited display and the knob/buttons. Reasonable if it's already installed - and I'll probably explore that in my other installation. For me, for a new install, I think it'd make more sense to use a RasPi or a UDOO with some decent DAC (like ^^^ ?) and a display/input (eg a phone/tablet or Patrick's display replacement).
_________________________
LittleBlueThing
Running twin 30's
|
Top
|
|
|
|
#358857 - 02/06/2013 12:21
Re: Empeg player software, a new generation
[Re: LittleBlueThing]
|
journeyman
Registered: 18/09/2012
Posts: 55
Loc: Somerset UK
|
The Pi DAC isnt the best, but it seems passable. I've been listening to one all week and have not noticed it being bad. On paper its not first rate. Best I can tell the Pi DSP is generating the DAC via PWM. I've made some more progress. My living room player is pretty much finished - I cant complain I cant see it ;-) Looks a little better with trim and paint, I just need to add the equipment feet to complete it. It looks better in real life the video camera adds flicker that you cant see in person. http://www.youtube.com/watch?v=zHSGtInrsDYThanks to Patricks kind help the consumer IR works. I could not make the IR decoder reliable, PCA used his wizzy logic analyzer to debug it. He re-wrote the consumer IR code on the front board PIC. After a few problems of my own making I managed to get the IR data returned by the front panel board to match that the EMPEG sends via /dev/IR. Also made the front panel buttons and the LED work. The front board PIC code is now complete. http://www.youtube.com/watch?v=S2YEHl_ujC0It still has a few issues but I may be in a position to sell some boards when the final spit and polish is completed. You could write something to plugin to mpd to stream audio to the player using jon's udp protocol.
The player has two protocols really, one for output that is just pixel data and on for input. The input protocol is plain text that Centro interpretets, this can be delivered via a named pipe or via UDP. If a file exists in the file system, FUSE, NFS, SMB doesnt matter - the player can be told to play it by sending a command and the full file path to the intpreter. Practical result if you have any content than mplayer will decode as audio you can probably play it by reference alone (on the Pi that is). At that point I think you're using the empeg as a TCP->RCA convertor Yep that works, very simple in fact. Just put the empeg into slave mode, can be done via the command line so it starts in that mode. You could argue though if you can get the player into the car its probably better to just use the player :-) Jon
Edited by jonshouse (02/06/2013 12:29)
|
Top
|
|
|
|
#358896 - 05/06/2013 19:38
Re: Empeg player software, a new generation
[Re: jonshouse]
|
old hand
Registered: 20/07/1999
Posts: 1102
Loc: UK
|
We got a prototype box sorted out for the Raspberry Pi based Centro player today. I personally think it looks quite nice!
pca
Attachments
_________________________
Experience is what you get just after it would have helped...
|
Top
|
|
|
|
#358897 - 05/06/2013 19:39
Re: Empeg player software, a new generation
[Re: jonshouse]
|
old hand
Registered: 20/07/1999
Posts: 1102
Loc: UK
|
And the back view.
pca
Attachments
_________________________
Experience is what you get just after it would have helped...
|
Top
|
|
|
|
#358900 - 06/06/2013 13:21
Re: Empeg player software, a new generation
[Re: pca]
|
old hand
Registered: 07/01/2005
Posts: 893
Loc: Sector ZZ9pZa
|
That looks great! Good work guys.
|
Top
|
|
|
|
#358908 - 08/06/2013 00:27
Re: Empeg player software, a new generation
[Re: sein]
|
carpal tunnel
Registered: 19/01/2002
Posts: 3584
Loc: Columbus, OH
|
Beautiful
_________________________
~ John
|
Top
|
|
|
|
#358913 - 08/06/2013 20:01
Re: Empeg player software, a new generation
[Re: tanstaafl.]
|
carpal tunnel
Registered: 08/07/1999
Posts: 5549
Loc: Ajijic, Mexico
|
if Jon can get a "software empeg" working on a tablet, and if I can then pipe the output of that tablet into my car's audio system, I'll be standing in line at the computer store to buy whatever tablet it works on. Is this idea something still in the pipeline or has the emphasis shifted entirely to the hardware side of things? tanstaafl
_________________________
"There Ain't No Such Thing As A Free Lunch"
|
Top
|
|
|
|
#358914 - 08/06/2013 21:56
Re: Empeg player software, a new generation
[Re: tanstaafl.]
|
journeyman
Registered: 18/09/2012
Posts: 55
Loc: Somerset UK
|
Is this idea something still in the pipeline or has the emphasis shifted entirely to the hardware side of things? To port the application to a tablet running Linux (and just Linux) natively would take a few days. I did some reaseach and could not find a tablet that I could just install a native Linux on, i'm sure its possible though. To the run the player as an application on a tablet is a months solid work, I am simply not prepared to put that kind of time in for a handful of possible users. Jon
|
Top
|
|
|
|
#358915 - 08/06/2013 23:39
Re: Empeg player software, a new generation
[Re: jonshouse]
|
carpal tunnel
Registered: 08/07/1999
Posts: 5549
Loc: Ajijic, Mexico
|
To the run the player as an application on a tablet is a months solid work, I am simply not prepared to put that kind of time in for a handful of possible users. Not even for ME? Well, as it turns out, it looks like I may be able to use my empeg again after all. The Mexican government has made a few changes to the immigration rules. Up until a few months ago, I could remain a Mexican immigrant on "non-inmigrante" status indefinitely. Now they have restricted that to four years, and after that I have to change my status to "permanente", which is advantageous in many areas, such as not having to renew my non-inmigrante status every year, I can legally be employed, a few other things. The down side is that a permanente resident is not allowed to own a foreign-plated automobile. My particular car cannot be "nationalized" to Mexican license plates, because (1) only cars that are 2007 models or older can be nationalized; and (2) my car was not assembled in a NAFTA country (VIN number starting with a 1, 2, 3, 4, or 5). So, sometime before December of this year I have to drive my car (a 2009 Honda Fit with Navigation) back to the U.S., sell it, fly back to Mexico and purchase a Mexican plated car. To purchase a comparable car in Mexico will cost me three to five thousand dollars more than I can sell my car for in the U.S., plus the expense of taking my car out of the country and flying back. This is so the Mexican government can protect the Mexican car dealers. What all this means is this: My "new" Mexican car (it will be about a five year old Honda CRV, I think) will NOT have navigation, but a DIN-sized AM-FM radio which will be replaced by my empeg. I won't bother with a tuner kit. I had one in my last empeg-equipped car and to the best of my memory I tested it to see that it worked, then never used it after that. So, in another six months or so I will be empeg enabled again. I am really looking forward to that! tanstaafl.
_________________________
"There Ain't No Such Thing As A Free Lunch"
|
Top
|
|
|
|
#358950 - 13/06/2013 14:53
Re: Empeg player software, a new generation
[Re: tanstaafl.]
|
member
Registered: 02/04/2002
Posts: 148
|
Over the past week I finally got 5 minutes to myself, to attempt to dissassemble the dash on my 2010 Hyundai. I REALLY want room to fit my Mark2a. But it will require either ditching the stock system (which I actually like) or a lot of hacking structure.
I hopped on here today on a whim, first time in months, and what do I see...
First, great work! Im so glad to see some new life for what is STILL arguably the BEST player (software, and hardware) for car use ever.
Second, I have a few questions, even after reading this whole thread:
- Is the new player software a feature complete empeg re-do? I.e. in all the youtube vids, I see only visuals. Is the other part of the player SW there? I.e. playlist? "down down down" shuffle all? Browse music, enqueue songs, etc?
- The new display board: Heck yea! Finally a solution to my "dimmed out" VFD problem. My only request - can this PLEASE be made so that the empeg can be remote mounted? I.e. max display cable length measured in meters? At least say 50cm? That would let many of us breathe new life into our old empegs... I know for sure myself and my brother, and cousin (who bought one of the first Mk2's) would all consider this.
Where can I read more? I have to share this. I think, despite the "slow" response from the dozen or two people on this board, that once word filters out, and this becomres more documented and "turn key" there will be many more adopters of this.
This is what I have dreampt of (mostly) for ages. Being able to BUILD a modular "empeg" with the SAME GREAT interface/options! One that will fit with a modern car, has different display/control options, etc.
Wow. Great start. Im going to be visiting this thread a lot, and will be ordering a RP today...
J
_________________________
Empeg Mk2a 60G
|
Top
|
|
|
|
#358951 - 13/06/2013 15:21
Re: Empeg player software, a new generation
[Re: jbrinkerhoff]
|
member
Registered: 02/04/2002
Posts: 148
|
In regards to the tablet route (not sure I even care, but this would open it up to a lot more potential users) I too found almost NO tablets that you can "just install linux on". I guess the way tablets are manufactured, its a huge task to get the sources for the various drivers/tools/etc necessary. This looks promising though: http://www.omgubuntu.co.uk/2013/03/world...but-is-it-legithttps://www.intermatrix.com.au/linuxtablet/preorder.phpSo, perhaps soon(ish) we can have an ubuntu unity tablet with a NATIVE empeg/player. just downloaded the sources.
_________________________
Empeg Mk2a 60G
|
Top
|
|
|
|
#358958 - 13/06/2013 20:35
Re: Empeg player software, a new generation
[Re: jbrinkerhoff]
|
addict
Registered: 11/01/2002
Posts: 612
Loc: Reading, UK
|
In regards to the tablet route (not sure I even care, but this would open it up to a lot more potential users) I too found almost NO tablets that you can "just install linux on". I guess the way tablets are manufactured, its a huge task to get the sources for the various drivers/tools/etc necessary.
Just as an FYI that stuff is based on something called libhybris which was born at a slightly inebriated session at Devaamo (a Finnish OSS event) when I said "how hard can it be to use the android bionic drivers with a glibc userspace? We could do ...." From there Carsten Munk developed the idea in Mer and Ubuntu quite happily stole it, declined to credit the original authors and took it in-house to develop it further. Nice eh? Still - they eventually saw the light and are now contributing to the upstream code again. What makes this stuff really neat is that you can now use Mer on top of any Android BSP. BTW - if you want a truly open tablet then see: http://makeplaylive.com/And if you want something to develop a player on then you should seriously consider Mer ... http://www.merproject.org/.... but then I would say that wouldn't I?
_________________________
LittleBlueThing
Running twin 30's
|
Top
|
|
|
|
#358976 - 17/06/2013 23:47
Re: Empeg player software, a new generation
[Re: LittleBlueThing]
|
journeyman
Registered: 18/09/2012
Posts: 55
Loc: Somerset UK
|
Maybe I am getting old or something ? I read the entire page referenced here, twice, and I still have no idea what this project actually is or what it does ? The Wiki "About Mer" Mer exists in a complex environment and the wiki uses this 'About' category to collate information about useful concepts, tools, systems, processes and probably more. Well that clears that up then ........
Edited by jonshouse (18/06/2013 00:05)
|
Top
|
|
|
|
#358977 - 17/06/2013 23:58
Re: Empeg player software, a new generation
[Re: jbrinkerhoff]
|
journeyman
Registered: 18/09/2012
Posts: 55
Loc: Somerset UK
|
Is the new player software a feature complete empeg re-do? I.e. in all the youtube vids, I see only visuals. Is the other part of the player SW there? I.e. playlist? "down down down" shuffle all? Browse music, enqueue songs, etc? Nope !! never really used my empeg on anything other than Random play. I did not use Emplode in the past 8 years as it crashes on my Windows boxes. I never really wanted mp3 management as such so I have put zero effort into that part of it. My hope was if people where interested they would take it and develop it, I suspect its a bit of a dead end project but it keeps me entertained :-) Centro builds what I called (for want a better term) playlists. They are nothing more than a list of filenames from a directory containing MP3 files. Its very crude, the best that can be said is that it works (mostly). You can enter track by number from the remote control, skip forwards and backwards and that is about it. I will improve it one day, I concentrated on the hard bits - getting the real time audio/visuals to work on 3 platforms (Linux/X11, empeg hardware, Raspberry Pi hardware), other than those parts it offers little but a few subtle bugs and lots of missing features ! My honesty is why I am not in marketing..... Cheers, Jon
|
Top
|
|
|
|
#358979 - 18/06/2013 07:43
Re: Empeg player software, a new generation
[Re: jonshouse]
|
addict
Registered: 11/01/2002
Posts: 612
Loc: Reading, UK
|
OK - it's my baby so I have to post this First - you really do have a point - we could improve the brochure aspect quite a lot and thanks for taking the time to read the link But this doesn't feel accurate: Maybe I am getting old or something ? I read the entire page referenced here, twice, and I still have no idea what this project actually is or what it does ?
So let me help you with that... the first line is: Mer is an open, mobile-optimised, core distribution aimed at device manufacturers So if you're not technical (which I find hard to believe) then following the link on the next line : here's a non-technical page "about Mer" - it says The project itself:
* Develops the base operating system software for use in devices like phones, tablets, TVs, digital pictureframes and even vehicles - and, we expect, devices that haven't been invented yet. * Develops tools that companies and groups can use to work with our base software * Provides services for developing system and application software that anyone can use * Provides support for learning about Mer * Fixes problems in Mer
Does that clear it up?
_________________________
LittleBlueThing
Running twin 30's
|
Top
|
|
|
|
#358995 - 19/06/2013 22:17
Re: Empeg player software, a new generation
[Re: LittleBlueThing]
|
journeyman
Registered: 18/09/2012
Posts: 55
Loc: Somerset UK
|
But this doesn't feel accurate: Sorry I was telling the truth. You have to understand that I started coding on CP/M on Z80 using assembler moving to C a few years later. Had brief few years with Delphi/Windows before landing back in the world of linux/gcc. I find it difficult to work out what the proposition is with anything that offers a "framework" or "SDK" as these ideas are pretty alien to me. I am relectant to link against a library if I can avoid it :-) I write code using vi in xterm so nobody could claim I follow fashion ! The project itself:
* Develops the base oper....... Does that clear it up? Yes and no .... I still dont quite follow. The last two embedded devices I worked on I compiled the kernel and coreutils from scratch - the ones before that I used gerneric Debian. For me personally I tend to code only in plain old C, what I want is linux plus a framebuffer device for whatever display I am using and as little else as possible! This method seems out of favuor, most people seem to want linux to be some kind of base system for a visual studio style front end with a ".NET style bucket of crap all things to all people" runtime ? Develops the base operating system software for use in devices like phones, tablets, TVs Err ok. My TV (an LG) runs a generic kernel from flash, busybox and custom control software for the tuner/front end. The job of LG would have been to write the device drivers for whatever platform they had built. How does another layer of software speed this process up ? Do you have a generic hardware platform I can use, if not more sofware just slows me down from my point of view. I am not being difficult, people who code in say Java and want a generic base O/S then this probably ok - but for me personally who just wants generic kernel with support for custom hardware does yet another distro/toolkit help me, how does it differ from say Debian if I want a repository or busybox if I want a small code footprint. Provides services for developing system and application software that anyone can use Again, I have no idea what this means in reality. Dont worry too much that I dont get it - it is not aimied at me I suspect, my phone is a mono Nokia, my TV does not surf the web nor would I want it to :-) Your pitch sounds like Android without google (not a bad idea) or have I missed the point a bit?
Edited by jonshouse (19/06/2013 22:20)
|
Top
|
|
|
|
#359006 - 20/06/2013 21:40
Re: Empeg player software, a new generation
[Re: jonshouse]
|
addict
Registered: 11/01/2002
Posts: 612
Loc: Reading, UK
|
But this doesn't feel accurate: I find it difficult to work out what the proposition is with anything that offers a "framework" or "SDK" as these ideas are pretty alien to me. I am relectant to link against a library if I can avoid it :-) I write code using vi in xterm so nobody could claim I follow fashion ! That's fine - you're definitely not the 'target audience' though - we mainly cater for emacs users and konsole Seriously though Mer is for people who look at the capability of cheap embedded systems and want a much shinier UI or just more in the way of middleware that they don't want to manage themselves. Most of our devs use vi/emacs and consoles. The project itself:
* Develops the base oper....... Does that clear it up? Yes and no .... I still dont quite follow. The last two embedded devices I worked on I compiled the kernel and coreutils from scratch - the ones before that I used gerneric Debian. For me personally I tend to code only in plain old C, what I want is linux plus a framebuffer device for whatever display I am using and as little else as possible! This method seems out of favuor, most people seem to want linux to be some kind of base system for a visual studio style front end with a ".NET style bucket of crap all things to all people" runtime ? Right - we still do that. We actually define an set of CONFIG_* that you need to have in your kernel (and why). You then build your hardware adaptation layer (using Android BSP if you like) and put Mer on top. Your UI layer sits on there. So yes, we're a small and increasingly blurry step up in device class from a kernel/framebuffer. I see you didn't write a kernel from scratch? Why not? Because if you can answer that then. in a way, Mer takes that rationale and pushes it up the stack to the UI layer (but no higher). You selected Debian (me too on my desktop) - but if you knew Mer Core has just ~350 packages which are selected and optimised for mobile (RAM and storage space still matter) to form a rational mobile base OS that is pre-built for multiple ARM, MIPS and x86 architectures. If it helped with the "OMG what bits of Debian do I need?" question. If it also used latest stuff like systemd, Wayland and similar (I don't care what people say about them for the desktop/server - they are *superb* for mobile). Then maybe you'd use Mer - after all it's the same source that Debian uses - just less to wade through. Then yes, there's an 'SDK' which operates at 3 levels - there's a pure command-line SDK which is basically a chroot for us platform-level guys. All vi/emacs and raw gcc, nasm, cmake, $whatever (also we support a really nice opensource cross-compile solution called scratchbox2). Nicely this thing also runs as-is on our build farm stuff - so if you want to scale up to do QA with a team or 2 or more ... that's fine we can go there (and that's another key point - this is not just for 1-man outfits - it scales from hobbyist to Nokia's size) That *same* SDK is then quietly wrapped in virtualisation tech and shipped with a GUI as an application SDK. Same toolchains, same code releases as your platform or build systems - but with the C++/Qt graphics stuff available. That's nice for QA Develops the base operating system software for use in devices like phones, tablets, TVs Err ok. My TV (an LG) runs a generic kernel from flash, busybox and custom control software for the tuner/front end. The job of LG would have been to write the device drivers for whatever platform they had built. How does another layer of software speed this process up ? Do you have a generic hardware platform I can use, if not more sofware just slows me down from my point of view. So moving on 10 years to 2010 You still need to do that but now does it have ... bluetooth? web browser? wifi? maybe even a remote control with a touchscreen display that needs fancy graphical transitions? Sure you *could* write them - but Mer would let you assemble and prototype that setup in a matter of days. (We know - there's a Chinese consortium making set top boxes using Mer). I am not kidding - days. Maybe a month if you've never used Mer before and need to brush up on Qt/C++ Sure it'll look like crap until you hire some graphics people to pick nice colours and do fancy layouts - but that won't take long either - Qt/QML is good there. And this isn't for end-users to hack it onto a phone - it's for a company to 'easily' make a device for their market. oh, and it just happens that we're making a phone too I am not being difficult, people who code in say Java and want a generic base O/S then this probably ok - but for me personally who just wants generic kernel with support for custom hardware does yet another distro/toolkit help me, how does it differ from say Debian if I want a repository or busybox if I want a small code footprint.
[quote]Provides services for developing system and application software that anyone can use
Again, I have no idea what this means in reality. Dont worry too much that I dont get it - it is not aimied at me I suspect, my phone is a mono Nokia, my TV does not surf the web nor would I want it to :-) [quote] (I think I covered the Debian/busybox (yes, we'll have a busybox option) points above.) Fair enough. I'm not radically different. I have smartphones but barely use them. My TV is MythTV but I just watch boring old TV (though Denise does occasionally browse epguides.com to see what order the shows are in) But I do want my next car stereo to tether to my phone to sync on the move or browse the web or use OSM - but I suspect I'll enjoy building it more than actually using it The 'services' part is about the systems that you need to run all the infra - automation, QA, build. All opensource of course. Your pitch sounds like Android without google (not a bad idea) or have I missed the point a bit?
Yes, that's pretty close - but properly open with more linux and no java(*) (*) ask if you *really* care about running Android apps on it 'cos you can.
_________________________
LittleBlueThing
Running twin 30's
|
Top
|
|
|
|
#359008 - 20/06/2013 23:16
Re: Empeg player software, a new generation
[Re: LittleBlueThing]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
|
Top
|
|
|
|
#359010 - 21/06/2013 06:11
Re: Empeg player software, a new generation
[Re: mlord]
|
carpal tunnel
Registered: 10/06/1999
Posts: 5916
Loc: Wivenhoe, Essex, UK
|
I read that as: Time time write my own DVR
_________________________
Remind me to change my signature to something more interesting someday
|
Top
|
|
|
|
#359012 - 21/06/2013 08:21
Re: Empeg player software, a new generation
[Re: mlord]
|
addict
Registered: 11/01/2002
Posts: 612
Loc: Reading, UK
|
Thank you For more discussion: irc is #mer on freenode - I'm lbt of course
_________________________
LittleBlueThing
Running twin 30's
|
Top
|
|
|
|
#359015 - 21/06/2013 15:56
Re: Empeg player software, a new generation
[Re: LittleBlueThing]
|
member
Registered: 02/04/2002
Posts: 148
|
Question to PCA: Is there some thought of making the new display board available a a replacement/retrofit for current players? Or (better yet for me) as a "display extender"? I think the bulk of us out there who still use (or want to use) our Empegs would prefer to trunk/glovebox/underseat mount them. I could much more easily find a place to mount a display board (even if DIN size, but only 1cm thick).
My VFD is nearly shot, and as you are all aware replacements are not to be found.
I seem to recall a few display extender projects that never made it all the way to "where can I buy that- even in kit form".
If the cost was anything approaching reasonable, I would pay for a display extender, - regardless if display technology, if it could go at least 1m away from the Empeg. Heck, in my current situation I could probably "hide" the empeg INSIDE my dash, and mount the display extender where my clock is now. That would require only ~30cm of cable.
_________________________
Empeg Mk2a 60G
|
Top
|
|
|
|
#359018 - 21/06/2013 17:44
Re: Empeg player software, a new generation
[Re: jbrinkerhoff]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
The existing PCATS display extenders have much, much longer range (ribbon cable) than 30cm!
Still would be cool if the new boards could work with the old player hardware, but I doubt the feasibility of that.
|
Top
|
|
|
|
#359020 - 23/06/2013 11:28
Re: Empeg player software, a new generation
[Re: jonshouse]
|
new poster
Registered: 22/06/2013
Posts: 2
|
With Colour? the NExt Generation empeg could have been color :-(
|
Top
|
|
|
|
#359024 - 23/06/2013 21:13
Re: Empeg player software, a new generation
[Re: jbrinkerhoff]
|
old hand
Registered: 20/07/1999
Posts: 1102
Loc: UK
|
It's not impossible at all, but the current version isn't really suitable. It's driven by SPI from the raspberry pi, and the IR and buttons go via a serial port. This isn't the same way the empeg does it.
One the empeg the display is passive and driven by the lcd output port, with a certain amount of logic on the display board to twiddle the LCD signals into the format of the VFD. To make it drive an OLED like this, we would probably have to add another processor, which would read the lcd signals and generate the correct data to drive an intelligent OLED panel.
Something like an STM32F4 series microcontroller would do it. I have been considering making a board like this, but whether there is sufficient demand to make it worthwhile is debatable.
Pca
_________________________
Experience is what you get just after it would have helped...
|
Top
|
|
|
|
#359026 - 24/06/2013 09:51
Re: Empeg player software, a new generation
[Re: pca]
|
addict
Registered: 11/01/2002
Posts: 612
Loc: Reading, UK
|
Could you make a USB display?
That would also support key and maybe rotary feedback.
Could that work from an empeg (with suitable code) and a-n-other device like a raspi or even smartphone?
(edit: thinking to expand the possible user base as this could support a wide range of applications - even PVR and HA)
Edited by LittleBlueThing (24/06/2013 09:51)
_________________________
LittleBlueThing
Running twin 30's
|
Top
|
|
|
|
#359027 - 24/06/2013 10:29
Re: Empeg player software, a new generation
[Re: LittleBlueThing]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
No USB host (master) in an empeg.
|
Top
|
|
|
|
#359028 - 24/06/2013 13:51
Re: Empeg player software, a new generation
[Re: mlord]
|
addict
Registered: 11/01/2002
Posts: 612
Loc: Reading, UK
|
Use a raspi as a middleman ?
usb display -> raspi
Empeg screen-scrape -> raspi over ethernet?
_________________________
LittleBlueThing
Running twin 30's
|
Top
|
|
|
|
#359033 - 25/06/2013 09:57
Re: Empeg player software, a new generation
[Re: LittleBlueThing]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
Yeah, ethernet would work. No need for a new screen scrape -- Hijack already has it in /proc/
Cheers
|
Top
|
|
|
|
#359034 - 25/06/2013 11:17
Re: Empeg player software, a new generation
[Re: mlord]
|
addict
Registered: 11/01/2002
Posts: 612
Loc: Reading, UK
|
so how viable would that be Patrick? I'm thinking that it would be nice to have a multi-part board too. Basically cut the buttons and the rotary sections off the main board and use some extension mechanism (row of header pins) to allow them to be mounted alongside as per the prototype or in different positions above/below the display or even remotely. That would also allow users to trivially make a custom button-only extension board. Just thinking of easy ways to broaden the appeal Hmm - otoh everything is on the internet
_________________________
LittleBlueThing
Running twin 30's
|
Top
|
|
|
|
#359036 - 25/06/2013 15:37
Re: Empeg player software, a new generation
[Re: LittleBlueThing]
|
member
Registered: 02/04/2002
Posts: 148
|
Yes, this sounds like an even better idea from many perspectives.
Something more modular, something that would potentially have broader appeal to the general tinkerer community, but conveniently would work well with the default display characteristics needed for the empeg.
I love the idea of two (or three) boards too - more mounting options for those of us so constrained.
How much would be a ballpark figure for seed money to get something like this rolling? I would seriously consider donating $$ to get this project started.
That's if we could come to a "best idea" of how to proceed, and the players PCA, Mark, anyone else needed) would be on board.
I totally agree that having a broader appeal than "just the empeg" would make it potentially more interesting. Having potentially more display size options, and flexible button/control/IR board configurations might also be very appealing. Being able to retrofit into an actual empeg might be nice too, but frankly I think more folks these days would remote mount if they could.
And of course keeping it as simple as possible (without being too simple) would stand a better chance of it actually happening :-)
Being simply a techie/tinkerer/IT geek, I cant really help much other that to offer ideas, input, and possibly seed money. But man, I really would LOVE to see this happen.
_________________________
Empeg Mk2a 60G
|
Top
|
|
|
|
#359038 - 25/06/2013 16:00
Re: Empeg player software, a new generation
[Re: jbrinkerhoff]
|
member
Registered: 02/04/2002
Posts: 148
|
Wait, woah, just followed your link to Yoctopuce. That seems really, really intriguing.
The site is a little light on details (I didnt dig far) but are you thinking that one of these little critters, hooked up to a ras pi, with the ras pi reading the screen scrape via ethernet from Hijack, and handling the button presses, etc (from the yoctupuce board)?
Seems like it would work, if I were a programmer I would love to take a crack at it. Hmm... US $110. Plus buttons & Rot Enc somehow. I could live without IR.
Anyone have opinions?
_________________________
Empeg Mk2a 60G
|
Top
|
|
|
|
#359040 - 25/06/2013 16:33
Re: Empeg player software, a new generation
[Re: jbrinkerhoff]
|
journeyman
Registered: 18/09/2012
Posts: 55
Loc: Somerset UK
|
Over thye next week I will try and write up what has been done to date and what options are available. At the moment the RPI will drive an O-LED display using a board from PCA and myself. It has an O-LED module, 4 buttons and consumer IR. With software on the RPI board the display can either act as a remote for an existing empeg player (via ethernet) or work as a stand alone player itself. I have parts for 10 display boards on order and will solder this lot together when it all arrives, I have 25 PCBs available. The front panel PIC microcontroller code is finised, all buttons and the IR works as it should. The display board has a pinout that matches the RPI : http://www.jonshouse.co.uk/rpi_displayboard_pinout.pngThe board uses SPI to drive the display. The button presses are sent to the Pi via serial, the serial from the RPI to the display is just used to toggle the front panel LED on/off :-) At the moment remote control of the existing empeg from the RPI display board is pretty simple, as it is from the larger LED units i've built. All these units with buttons can run Centro and/OR act as a remote display for an existing empeg. http://www.youtube.com/watch?v=zHSGtInrsDYUsing a RPI board + display board as a head unit for the existing empeg is pretty easy (but not documented yet, I will do that !). It would be possible to produce a shim board that goes between the RPI display board and existing empeg to duplicate the functionality of the front panel - it was not designed for this, but it would be possible. It would be better done as a new project though as board holes are not designed to lign up with the empeg metal work. The RPI disply board was designed to fit into a custom case PCA designed and laser cut from perspex, thanks Patrick - nice job :-) http://www.jonshouse.co.uk/centro/This page has some (not great) pictures. Words pictures and video to follow soon. The prototype has been running on my desk here for days, all seems stable (well as stable as anything using the Raspberry Pi ... ho hum). http://www.youtube.com/watch?v=a6VpvDC5Cs4&feature=youtu.beAssembled Raspberry Pi player. Cheers, Jon
Edited by jonshouse (25/06/2013 19:34)
|
Top
|
|
|
|
#359044 - 25/06/2013 23:49
Re: Empeg player software, a new generation
[Re: jonshouse]
|
member
Registered: 02/04/2002
Posts: 148
|
Assuming this means what I think it does, basically what we were postulating would be a great idea for a display extender for an existing empeg, has in fact already been done. Cool.
From the pics I see, the display board looks to be pretty thin, and roughly single-DIN sized. This would likely fit well where my clock currently is, which is where I would mount my empeg if I had the depth.
I assume that the raspi can be some reasonable distance from the board (10cm)? and the empeg itself can be Ethernet distance away, so that works (trunk mount).
Silly question, but can you show remote control of a standard (hijack'ed obviously) player? What does the boot sequence look like? What power dependencies are there (thinking "key on" in the car - does boot order matter? etc...)
What other specific hardware (ras pi, etc) is needed? I know, I know, you said you were writing it up... OK. Ill wait. Heck Im going on vacation for 2 weeks anyway. :-)
But please count me in line....
_________________________
Empeg Mk2a 60G
|
Top
|
|
|
|
#359047 - 26/06/2013 13:14
Re: Empeg player software, a new generation
[Re: jbrinkerhoff]
|
journeyman
Registered: 18/09/2012
Posts: 55
Loc: Somerset UK
|
I assume that the raspi can be some reasonable distance from the board (10cm)? and the empeg itself can be Ethernet distance away, so that works (trunk mount).
Yes, should work ok - its not screened cable so I would not push it with the length but 10cm is about the cable length I am using. It will suffer with a longer cable as the SPI data is running at about 30Mhz. Silly question, but can you show remote control of a standard (hijack'ed obviously) player? What does the boot sequence look like? What power dependencies are there (thinking "key on" in the car - does boot order matter? etc...) I had to find the original player hard disk and put it back in, but here you go :-) http://www.youtube.com/watch?v=JRC3K52T3N8&feature=youtu.beWhat does the boot sequence look like?
Empeg end looks unchanged, the RPI board end is very very boring - nothing happens until the process "display_on_oled" is started. The Pi is not aware of the SPI display at all, only the process I wrote is drving it. In theory it could be made a linux framebuffer device but I have no plans to do that. Not in the sligtest. You need to give the RPI and player a static IP address you also need to tell the RPI end the IP of the EMPEG unit, after that you can power on/off each end at will, order does not matter. A hub is not required, I have tested with a crossover ethernet cable and it seems to work fine. What other specific hardware (ras pi, etc) is needed? I know, I know, you said you were writing it up... OK. Ill wait. Heck Im going on vacation for 2 weeks anyway. :-) You need this lot : 1) Raspberry Pi (B) board (either revision, not included) 2) The O-LED display and button board (included in kit) 3) 12v to 5v Buck converter (included in kit) 4) Ribbon cable to connect Pi to display board (included in kit) 5) 4GB or bigger SD card for Pi board (not included) 6) Case (not decided yet !) 7) Cross over ethernet cable (not included) 8) Some software (not all released yet, but will be soon) :-) So far I have yet to test the Pi kit in a car. I will do this but I want to wait until I have put a few more units together before I start trying to blow one up ! I also need to make the IR proxy work with the original player. The decoded IR codes match so in theory this should be simple enough.... cant seem to make this work at the moment though. Writing 4 byte IR codes to /proc/empeg_ir is ignored by the original player ? Cheers, Jon
Edited by jonshouse (26/06/2013 14:02)
|
Top
|
|
|
|
#359048 - 26/06/2013 16:28
Re: Empeg player software, a new generation
[Re: jonshouse]
|
member
Registered: 02/04/2002
Posts: 148
|
Excellent. Thanks for the video - clearly it works exactly as you described. I can't wait to order one when you feel comfortable releasing it. Like I said, Im not rushing at all, since I'll be gone for 2 weeks, but I really do look forward to dusting off the old empeg and having it back in my car. Pretty sure my brother and cousin will eventually want to do so with theirs as well...
Thanks for allthe work!
JEff
_________________________
Empeg Mk2a 60G
|
Top
|
|
|
|
#359049 - 26/06/2013 21:08
Re: Empeg player software, a new generation
[Re: jonshouse]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
I also need to make the IR proxy work with the original player. The decoded IR codes match so in theory this should be simple enough.... cant seem to make this work at the moment though. Writing 4 byte IR codes to /proc/empeg_ir is ignored by the original player ? I forget how that works, but Hijack has interfaces for "cooked" button press/release events. Eg. the weblite interface has a fully functional empeg remote control and front-panel, done with a bit of javascript in one's web browser. Something like this via http to Hijack: http://empeg.ip.addr/?NODATA&BUTTON=TopOr locally: echo "BUTTON=Top" > /proc/empeg_notify Front panel buttons are Top, Bottom, Left, Right, KnobLeft, KnobRight, and Knob There's a way to send "raw" events as well (BUTTONRAW=) but I forget the syntax. Press/Release can also be distinguished. Cheers
|
Top
|
|
|
|
#359051 - 26/06/2013 22:07
Re: Empeg player software, a new generation
[Re: mlord]
|
journeyman
Registered: 18/09/2012
Posts: 55
Loc: Somerset UK
|
I forget how that works, but Hijack has interfaces for "cooked" button press/release events.
I have that working, at the moment I decode the key/IR code and translate it into a string before passing it back to the player, my code on the player writes it to /proc/empeg_notify. This code is on the originating machine, the string is written to the destination machine. convert_ir_to_name(void *st,long ircode) { switch (ircode) { case 0x00000000: sprintf(st,"BUTTON=Top"); break; case 0x00000002: sprintf(st,"BUTTON=Right"); break; case 0x00000004: sprintf(st,"BUTTON=Left"); break; case 0x00000006: sprintf(st,"BUTTON=Bottom"); break; case 0x0000000B: sprintf(st,"BUTTON=KnobLeft"); break; case 0x0000000A: sprintf(st,"BUTTON=KnobRight"); break; case 0x00000009: sprintf(st,"BUTTON=Knob"); break; } }
What I really want to do is the pass the raw 32 bit value back to the player, that way consumer IR itself can be proxied. I've not found a way so far. IE The "Menu" key on the IR remote gives me 0x0020DF12, I pass this to the empeg player - my code on the player side needs to fake this as the reception of IR ? With my own centro software if it sees text that is 10 bytes long and starts 0x then it processes it as an IR sequence. IE 0x00000000 will be interpreted as a key up event, 0x0020DF12 as a menu key etc, this means Centro will proxy the IR and key codes player to player with no problems but this doesn't help me with the original player software much :-) I can see what I need to do but I need a raw interface I can write the IR code to, not sure if one exists. If not I will have to write a complete table for IR values to names :-( Would be nice if I could avoid that though, also would be good to go through the hijack IR translation on the destination device rather than the device receiving the IR ? Thanks, Jon
Edited by jonshouse (26/06/2013 22:43)
|
Top
|
|
|
|
#359052 - 27/06/2013 10:16
Re: Empeg player software, a new generation
[Re: jonshouse]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
The /proc/empeg_notify interface accepts 32-bit (well, actually 24-bits -- the high byte is "reserved" for internal use) hex codes for press and release events. They don't have to be "names".
Then, Hijack's built-in IR-translation mechanism can convert those internally to standard empeg action buttons.
So if you can reduce that 32-bit raw value down to 24-bits, nothing new is needed and it can fully leverage the existing feature set.
|
Top
|
|
|
|
#359053 - 27/06/2013 10:18
Re: Empeg player software, a new generation
[Re: mlord]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
// How button press/release events are handled:
//
// button -> interrupt -> input_append_code() -> inputq -> hijack_handle_button() -> playerq -> real_input_append_code()
//
// hijack.c::input_append_code() performs raw IR translations
// hijack.c::inputq[] holds translated buttons with timing information queued for hijack to examine
// hijack.c::hijack_handle_button() interprets buttons for hijack/menu functions
// hijack.c::playerq[] holds translated buttons with timing information queued for the Empeg player software
// empeg_input.c::real_input_append_code() feeds buttons to userland
//
|
Top
|
|
|
|
#359054 - 27/06/2013 13:37
Re: Empeg player software, a new generation
[Re: mlord]
|
journeyman
Registered: 18/09/2012
Posts: 55
Loc: Somerset UK
|
The /proc/empeg_notify interface accepts 32-bit (well, actually 24-bits -- the high byte is "reserved" for internal use) hex codes for press and release events. They don't have to be "names". Last attempt I had looks like this. The buffer "ubuffer" is a string, either in the form "Button=right" or hex in the form "0x12345678", I convert that to a long and write it. Tried writing 3 or 4 bytes cant make it play, see code around "Note, doesn't work" http://www.jonshouse.co.uk/broadcastfb_proc.cOutput looks like this: empeg:/empeg/bin# /broadcastfb_proc Listening on UDP port 5050 Sending packets on UDP port 4040 Got 10 bytes from receiving UDP socket [0x0020DF12] sent 0020DF12 to /proc/empeg_ir, got -1 Got 10 bytes from receiving UDP socket [0x0020DF12] sent 0020DF12 to /proc/empeg_ir, got -1 Got 10 bytes from receiving UDP socket [0x0020DF12] sent 0020DF12 to /proc/empeg_ir, got -1 Got 10 bytes from receiving UDP socket [0x0020DF12] sent 0020DF12 to /proc/empeg_ir, got -1 Thanks, Jon
|
Top
|
|
|
|
#359055 - 27/06/2013 18:02
Re: Empeg player software, a new generation
[Re: jonshouse]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
Try it from the command line first, and once you get the syntax worked out there, move it into your code.
My apologies.. the 24-bit value is actually done with ASCII hex, as in:
echo "BUTTONRAW=0x123456" > /proc/empeg_notify echo "BUTTONRAW=0x123456.R" > /proc/empeg_notify
I think. No empeg in front of me at the moment.
|
Top
|
|
|
|
#359056 - 27/06/2013 18:27
Re: Empeg player software, a new generation
[Re: mlord]
|
journeyman
Registered: 18/09/2012
Posts: 55
Loc: Somerset UK
|
This feature confuses the hell out of me ! I googled for examples, I can't find any. The only reference I found with anything useful is on the this board and uses names rather than hex. http://empegbbs.com/ubbthreads.php/topics/321953/Remote_control_shell_script#Post321953The ".R" also makes zero sense to me. For example when the Top button is pushed the /dev/ir device generates a 32 bit word with the value 0x00000000 when the button is releases it generates 0x00000001 - If buttonraw is raw then I simply dont understand how it could have usefully have a ".R" suffix or what that would do ? I've tried sending my best guess strings at it but so far everything I send just sends the player to sleep. For example I would expect this to pop up the menu as it is a 24 bit version of the remote control menu button, doesnt work though. echo "BUTTONRAW=0x20DF03" >/proc/empeg_notify Anyone any ideas ? Thanks, Jon
|
Top
|
|
|
|
#359057 - 28/06/2013 13:29
Re: Empeg player software, a new generation
[Re: jonshouse]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
Okay, I'm in my home office, and have an empeg in front of me. I'll refresh my own memory first, and then post here how to use it.
Cheers
|
Top
|
|
|
|
#359058 - 28/06/2013 13:32
Re: Empeg player software, a new generation
[Re: mlord]
|
journeyman
Registered: 18/09/2012
Posts: 55
Loc: Somerset UK
|
Many thanks for that :-)
I had a quick look at the hijack source but I dont really know way around it :-)
Jon
|
Top
|
|
|
|
#359059 - 28/06/2013 13:41
Re: Empeg player software, a new generation
[Re: mlord]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
Okay. Using button names, I can do variable length presses, like this: echo 'BUTTONRAW=Bottom' > /proc/empeg_notify # wait a second or so, then release it: echo 'BUTTONRAW=Bottom.R' > /proc/empeg_notifyGetting that far required me to realize I named the "down" button "Bottom", not "Down". I'll try hex next.
|
Top
|
|
|
|
#359060 - 28/06/2013 13:50
Re: Empeg player software, a new generation
[Re: mlord]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
Okay, same thing for hex. It appears that the code wants it spelled out completely, as in "0x00000006" rather than "0x6" or simply "6". Pity it's so pedantic about it, but that's how it works.
Here's the "Bottom" button again, using hex:
echo 'BUTTONRAW=0x00000006' > /proc/empeg_notify # wait a second or so, then release it: echo 'BUTTONRAW=0x00000006.R' > /proc/empeg_notify
And next, using the button you were trying (0x20df03), which is actually the SOURCE button, not MENU:
echo 'BUTTONRAW=0x0020df03' > /proc/empeg_notify echo 'BUTTONRAW=0x0020df03.R' > /proc/empeg_notify
Note that using BUTTONRAW requires real-time approximation, as buttons do change function depending upon the interval between press and release.
Hope this helps!
-ml
|
Top
|
|
|
|
#359061 - 28/06/2013 13:53
Re: Empeg player software, a new generation
[Re: mlord]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
Button hex values are in include/asm-arm/arch-sa1100/hijack.hThe same syntax works over http, prefixing the "BUTTON.." command with " http://empeg.ip.addr/?NODATA&". Edit: and the same commands can be done from within an FTP client, prefixing with " site". Eg. site BUTTON=Menu
Edited by mlord (28/06/2013 14:03)
|
Top
|
|
|
|
#359062 - 28/06/2013 14:10
Re: Empeg player software, a new generation
[Re: mlord]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
I don't know if you've tried weblite on a "stock" empeg with Hijack. If not, give it a go. Just untar the contents of the attachment to the root (/) directory on the empeg. Then point a web browser at the empeg's IP address. Click on show/hide remote for some fun with BUTTONRAW.
[attachment deleted -- the BBS seems incapable of attaching it without corrupting it. New issue?]
Edited by mlord (28/06/2013 15:32)
|
Top
|
|
|
|
#359063 - 28/06/2013 14:32
Re: Empeg player software, a new generation
[Re: mlord]
|
journeyman
Registered: 18/09/2012
Posts: 55
Loc: Somerset UK
|
echo 'BUTTONRAW=0x00000006' > /proc/empeg_notify # wait a second or so, then release it: echo 'BUTTONRAW=0x00000006.R' > /proc/empeg_notify Oh, OK .... I assumed (incorrectly) that as 0x000006 (push in) is followed by 0x000007 (release) that the application itself timed the perioud inbetween ! And next, using the button you were trying (0x20df03), which is actually the SOURCE button, not MENU:
Me bad, I cut&pasted the wrong line :-) should have been 0x0020DF12, sorry echo 'BUTTONRAW=0x0020df03' > /proc/empeg_notify
Ah, so 32 bits then :-) Doesnt seem to work properly though. If I send right button push: echo "BUTTONRAW=0x0020df11" >/proc/empeg_notify The player sits and skips tracks forever! I tried this just in case, didnt help: echo "BUTTONRAW=0x0020df11.R" >/proc/empeg_notify Can you try skipping ahead one track and let me know what I am doing wrong. To proxy the IR I assume I just write the string and forget but that does not seem to behave ? http://www.jonshouse.co.uk/broadcastfb_proc.cI modified the code to do this : Got 10 bytes from receiving UDP socket [0x0020DF11] sent BUTTONRAW=0x0020DF11 to /proc/empeg_ir, got 20 sent BUTTONRAW=0x0020DF11.R to /proc/empeg_ir, got 22 Player goes nuts processing the same key over and over, with or without the the extra .R line? Thanks, Jon
Edited by jonshouse (28/06/2013 15:15)
|
Top
|
|
|
|
#359064 - 28/06/2013 14:53
Re: Empeg player software, a new generation
[Re: mlord]
|
journeyman
Registered: 18/09/2012
Posts: 55
Loc: Somerset UK
|
jon@jonspc:~/x$ file weblite-0.95.tgz weblite-0.95.tgz: gzip compressed data, from Unix jon@jonspc:~/x$ gunzip weblite-0.95.tgz
gzip: weblite-0.95.tgz: unexpected end of file
jon@jonspc:~/x$ ls -l weblite-0.95.tgz -rw-r--r-- 1 jon jon 1096338 Jun 28 17:48 weblite-0.95.tgz
I googled for the file but cant see another source.
|
Top
|
|
|
|
#359065 - 28/06/2013 15:35
Re: Empeg player software, a new generation
[Re: jonshouse]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
echo 'BUTTONRAW=0x00000006' > /proc/empeg_notify # wait a second or so, then release it: echo 'BUTTONRAW=0x00000006.R' > /proc/empeg_notify Oh, OK .... I assumed (incorrectly) that as 0x000006 (push in) is followed by 0x000007 (release) that the application itself timed the perioud inbetween ! Eh? YES, the application DOES have to time the period between. So press the button (BUTTONRAW=0x00000006), delay for however long you want to keep it pressed, and then release the button (BUTTONRAW=0x00000006.R). If you just want a regular short-press (tap, single click) of a button, then let Hijack do it for you: echo 'BUTTON=0x00000006' > /proc/empeg_notify ## combined press/release
|
Top
|
|
|
|
#359066 - 28/06/2013 15:36
Re: Empeg player software, a new generation
[Re: mlord]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
Can you try skipping ahead one track and let me know what I am doing wrong. Yeah, you're holding the button down. Gotta press/release once quickly to skip a single track, just like on the real hardware.
|
Top
|
|
|
|
#359067 - 28/06/2013 15:42
Re: Empeg player software, a new generation
[Re: jonshouse]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
I modified the code to do this : Got 10 bytes from receiving UDP socket [0x0020DF11] sent BUTTONRAW=0x0020DF11 to /proc/empeg_ir, got 20 sent BUTTONRAW=0x0020DF11.R to /proc/empeg_ir, got 22
I have no idea at all how to talk to /proc/empeg_ir (is there even such a file?). Hijack implements /proc/empeg_notify for this stuff. Cheers
|
Top
|
|
|
|
#359068 - 28/06/2013 15:48
Re: Empeg player software, a new generation
[Re: mlord]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
So.. to spell it out completely, here's how to skip one track (assuming no menu is active on the display):
echo 'BUTTON=0x0020DF11' > /proc/empeg_notify
Or like this:
## press/hold the NextTrack button: echo 'BUTTONRAW=0x0020DF11' > /proc/empeg_notify ## delay for, say, 1/4 second .. ## Now release release the NextTrack button: echo 'BUTTONRAW=0x0020DF11.R' > /proc/empeg_notify
Personally, I prefer using names rather than numbers:
## press/hold the NextTrack button: echo 'BUTTONRAW=NextTrack' > /proc/empeg_notify ## delay for, say, 1/4 second .. ## Now release release the NextTrack button: echo 'BUTTONRAW=NextTrack.R' > /proc/empeg_notify
Edited by mlord (28/06/2013 15:52)
|
Top
|
|
|
|
#359069 - 28/06/2013 15:50
Re: Empeg player software, a new generation
[Re: mlord]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
Here's a temporary link to a copy of the http://rtr.ca/weblite-0.95.tgz file. For whatever reason the BBS corrupts the file when I try to attach it directly here.
Edited by mlord (28/06/2013 15:50)
|
Top
|
|
|
|
#359070 - 28/06/2013 18:59
Re: Empeg player software, a new generation
[Re: mlord]
|
journeyman
Registered: 18/09/2012
Posts: 55
Loc: Somerset UK
|
## press/hold the NextTrack button: echo 'BUTTONRAW=0x0020DF11' > /proc/empeg_notify ## delay for, say, 1/4 second .. ## Now release release the NextTrack button: echo 'BUTTONRAW=0x0020DF11.R' > /proc/empeg_notify
Ok, this sends the strings - complete with delay but the player software still continues to skip ahead like the button is held down ! Code is here (ps I am updating this code as I go, sorry for any confusion) http://www.jonshouse.co.uk/broadcastfb_proc.cCode output Got 10 bytes from receiving UDP socket [0x0020DF11] sent BUTTONRAW=0x0020DF11, got 20 sent BUTTONRAW=0x0020DF11.R, got 22 Player seems to ignore the .R ? I have inserted a 250ms delay in between the 20DF11 and the 20DF11.R line. Personally, I prefer using names rather than numbers:
Understood, but in this application a non empeg is decoding the infra-red and sending it to the empeg for decode. have no idea at all how to talk to /proc/empeg_ir (is there even such a file?). Hijack implements /proc/empeg_notify for this stuff.
Sorry, this is me adding confusion - the name /proc/empeg_ir was from an older experiment and was still in the printf - my code has always been talking to /proc/empeg_notify. My code now does : A write - sent BUTTONRAW=0x0020DF11, got 20 A delay - usleep(250000); Appends ".R" to the string - strcat(st,".R"); A second write - sent BUTTONRAW=0x0020DF11.R, got 22 Player skips ahead forever ? Note the second write got the string length back from the write (22) so I have no idea what I am doing wrong ! Tried writing a bit of shell script to run on the player, I cant generate a 250ms dielay with ease so I used "echo Hello >/dev/null" 30 times. I cut&pasted your script example but that does exactly the same as my C code - it seems to ignore the.R and acts as if the button is held down. I've made it work - but with a hack. I write 0xFFFFFFFF to cancel the key, that sems to work ! Odd ! Got 10 bytes from receiving UDP socket [0x0020DF11] sent BUTTONRAW=0x0020DF11, result 20 sent BUTTONRAW=0xFFFFFFFF, result 20 Sorry for the effort involved, I am not going to mad but this box just does not seem to act as described - it ignores the .R ? Tried .R in lower and upper case, same result Thanks for the help :-) , if you have any ideas why I need the hack then let me know and and I will clean up my code. Good news is it seems to proxy IR now - pretty cool. Jon
Edited by jonshouse (28/06/2013 19:15)
|
Top
|
|
|
|
#359071 - 28/06/2013 20:10
Re: Empeg player software, a new generation
[Re: jonshouse]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
Well, I don't see the bug, where ever it is hiding. But I did write a simple little program, basically a stripped down version of yours, to test with: #include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <unistd.h>
#include <errno.h>
static void sendButton (int fd, const char *st)
{
int ret = write(fd, st, strlen(st));
if (ret != strlen(st)) {
fprintf(stderr, "write() returned %d instead of %d\n", ret, strlen(st));
exit(-1);
}
}
int main(int argc, char *argv[])
{
char st[64];
int fd;
if (argc != 2) {
fprintf(stderr, "Error: expected button name/value as only parameter\n");
exit(-1);
}
fd = open("/proc/empeg_notify",O_RDWR);
if (fd < 0) {
perror("Failed to open /proc/empeg_notify for RDWR\n");
exit(1);
}
sprintf(st, "BUTTONRAW=%s", argv[1]);
sendButton(fd, st);
usleep(250000);
strcat(st, ".R");
sendButton(fd, st);
return 0;
}
I just compiled that, renamed it to junk and put it in / on the empeg. Once in place, I ran it many times like this: /junk NextTrackEach time, it skipped forward exactly one track -- I used the "Now&Next" track info display to monitor it. So.. something's not quite right at your end. Maybe the real-time priority is preventing the keys from being processed at the desired time spacing?
|
Top
|
|
|
|
#359072 - 28/06/2013 20:20
Re: Empeg player software, a new generation
[Re: mlord]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
I also now took your broadcastfb_proc.c program, changed it only very slightly, to simply send the NextTrack hexcode pairs once every five seconds, and this also works:
// broadcastfb.c
//
// Hiijack kernel adds /proc/empeg_screen.raw file. Try reading this instead
//
// Verson 3.1
// Jonathan Andrews ( j o n @ j o n s h o u s e . c o . u k )
//
// Last Changed 28 Jun 2013
//
// Always seems to send 38 frames per second, I think the empeg display is refreshed faster
// but its tricky to find a way to read it without corruption.
//
// Version 2 adds support for remote button presses via UDP port.
//
// Version 3 adds support for messages in the form 0x12345678, these are key press or
// consumer IR 4 byte (long int) represented as hex.
// These messages are sent to /proc/empeg_ir to proxy infra-red sequences or just button
// push/release events
//
#define PORT 4040
#define RXPORT 5050
#define DEST_ADDR "255.255.255.255"
unsigned char fbdata[32*64]; // 32 Rows of 64 Bytes = 2048 Bytes (2K)
#define TRUE 1
#define FALSE 0
#include <stdio.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <unistd.h>
#include <sys/mman.h>
#include <sys/ioctl.h>
#include <sys/resource.h>
#include <errno.h>
// sockets related
#include <sys/socket.h>
#include <netinet/in.h>
#include <netdb.h>
int sockfd;
int rxsockfd;
int proc_buttonfd;
int proc_irfd;
#include <sched.h>
void set_realtime(void)
{
struct sched_param sparam;
sparam.sched_priority = sched_get_priority_max(SCHED_RR);
sched_setscheduler(0, SCHED_FIFO, &sparam);
}
// Received UDP packet.
unsigned char ubuffer[512];
int main(int argc, char *argv[])
{
struct sockaddr_in sendaddr;
struct sockaddr_in recvaddr;
int numbytes;
int broadcast=1;
int allon;
int allblack;
int limit;
int flags;
int j,i,fd;
int res;
caddr_t dmap;
int addr_len;
long ircode=0;
char st[1024];
set_realtime(); // Marking as realtime gives more FPS but some clashing with player
// nice myself to higher priority
setpriority(PRIO_PROCESS,0,-20); // Give this process a CPU boost, same nice as pulse
// Setup receiving UDP socket
if((rxsockfd = socket(PF_INET,SOCK_DGRAM,0)) == -1)
{
perror("rx sockfd");
exit(1);
}
// Setuop socket, specify listening interfaces etc
recvaddr.sin_family = AF_INET;
recvaddr.sin_port = htons(RXPORT);
recvaddr.sin_addr.s_addr = INADDR_ANY;
memset(recvaddr.sin_zero,'\0',sizeof (recvaddr.sin_zero));
// Put socket in non blcoking mode
flags = fcntl(rxsockfd, F_GETFL); // Get the sockets flags
flags |= O_NONBLOCK; // Set NONBLOCK flag
if (fcntl(rxsockfd, F_SETFL, flags) == -1) // Write flags back
{
perror("error,fcnctl failed - could not set socket to nonblocking");
exit(1);
}
if(bind(rxsockfd, (struct sockaddr*) &recvaddr, sizeof recvaddr) == -1)
{
perror("bind");
exit(1);
}
printf("Listening on UDP port %d\n",RXPORT);
fflush(stdout);
// Setup sending UDP socket
if((sockfd = socket(PF_INET,SOCK_DGRAM,0)) == -1)
{
perror("sockfd");
exit(1);
}
if((setsockopt(sockfd,SOL_SOCKET,SO_BROADCAST,&broadcast,sizeof broadcast)) == -1)
{
perror("setsockopt - SO_SOCKET ");
exit(1);
}
sendaddr.sin_family = AF_INET;
sendaddr.sin_port = htons(PORT);
sendaddr.sin_addr.s_addr = inet_addr(DEST_ADDR);
memset(sendaddr.sin_zero,'\0',sizeof(sendaddr.sin_zero));
printf("Sending packets on UDP port %d\n",PORT);
fflush(stdout);
// Open hijack kernel version of framebuffer
fd = open("/proc/empeg_screen.raw", O_RDWR);
if (fd == -1)
perror("open /proc/empeg_screen.raw failed");
// Open /proc/empeg_notify so we can push button presses into it
proc_buttonfd=open("/proc/empeg_notify",O_RDWR);
if (proc_buttonfd < 2)
{
perror("Failed to open /proc/empeg_notify for RDWR\n");
exit(1);
}
//proc_irfd=open("/proc/empeg_ir",O_WRONLY);
//if (proc_irfd < 2)
//{
//perror("Failed to open /proc/empeg_ir\n");
//exit(1);
//}
while (1)
{
if (0) {
lseek(fd,0,SEEK_SET);
read(fd,fbdata,sizeof(fbdata)); // Read data from framebuffer
numbytes = sendto(sockfd, &fbdata, sizeof(fbdata), 0, (struct sockaddr *)&sendaddr, sizeof(sendaddr));
//numbytes = sendto(sockfd, dmap, 2048, 0, (struct sockaddr *)&sendaddr, sizeof(sendaddr)); // direct from FB data
if (numbytes<=0)
{
perror("sendto error");
exit(1);
}
else
{
//printf("Sent %d bytes\n",numbytes);
//fflush(stdout);
}
// Receive text and send it to empeg player to process.
addr_len=sizeof(recvaddr);
numbytes = recvfrom (rxsockfd, (char*)ubuffer, sizeof(ubuffer)-2, 0, (struct sockaddr *) &recvaddr, &addr_len);
ubuffer[numbytes]=0; // terminate actual string
ubuffer[sizeof(ubuffer)-1]=0; // ensure buffer is always 0 terminated
} else {
sleep(5);
strcpy(ubuffer, "0x0020DF11");
numbytes = strlen(ubuffer);
}
if (numbytes > 0)
{
printf("Got %d bytes from receiving UDP socket [%s]\n",numbytes,ubuffer);
fflush(stdout);
// If message starts 0x and is 0x12345678 long then its an IR code
if ( (ubuffer[0]=='0') & (ubuffer[1]=='x') )
{
if (strlen(ubuffer)==10) // sequence is 0x12345678
{
sprintf(st,"BUTTONRAW=%s",ubuffer);
res=write(proc_buttonfd,st,strlen(st)); // write text to /proc/empeg_notify file
printf("sent %s, result %d\n",st,res);
fflush(stdout);
usleep(250000);
strcat(st,".R");
res=write(proc_buttonfd,st,strlen(st)); // write text to /proc/empeg_notify file
printf("sent %s, result %d\n",st,res);
fflush(stdout);
}
}
else
write(proc_buttonfd,ubuffer,strlen(ubuffer)); // write text to /proc/empeg_notify file
}
usleep(5000); // works well, 38 frames/second
}
close(fd);
}
|
Top
|
|
|
|
#359073 - 28/06/2013 20:25
Re: Empeg player software, a new generation
[Re: mlord]
|
journeyman
Registered: 18/09/2012
Posts: 55
Loc: Somerset UK
|
Nice one :-) I compiled your code and put in root with the same name: empeg:/# /junk NextTrack /junk NextTrack Works fine empeg:/# /junk 0x0020DF11 /junk 0x0020DF11 Skips Skips Skips forever ....... Remember the sender is not running Hijack and has only the IR code, I don't want to translate all the IR codes into names if I can avoid it - I just want to send it to the empeg and have it process it. PS How do you post code in forum :-) I am not offered a code tag in the posting form and it would be nice to see correct formatting for things I post :-) ? Thanks again for the help :-) Just in case its compiler related or some other odd problem: Source http://www.jonshouse.co.uk/junk.cBinary http://www.jonshouse.co.uk/junkempeg:/empeg/bin# cat /proc/version Linux version 2.2.17-rmk5-np17-empeg55-hijack-v515 ( [email protected]) (gcc version 2.95.3 20010315 (release)) #2 Wed Jul 20 09:24:02 EDT 2011 Jon
Edited by jonshouse (28/06/2013 21:01)
|
Top
|
|
|
|
#359074 - 28/06/2013 23:54
Re: Empeg player software, a new generation
[Re: jonshouse]
|
carpal tunnel
Registered: 08/07/1999
Posts: 5549
Loc: Ajijic, Mexico
|
PS How do you post code in forum :-) {code} ...text... {/code} except you use square brackets instead of curly brackets. I couldn't use the square brackets in this example because the bbs interprets them as..., well, code delineators. Anyway, I think that's how you do it. tanstaafl.
_________________________
"There Ain't No Such Thing As A Free Lunch"
|
Top
|
|
|
|
#359075 - 29/06/2013 00:20
Re: Empeg player software, a new generation
[Re: tanstaafl.]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
Now that's interesting.. Looking through the code for Hijack, it appears that the ".R" suffix is only supposed to be applied when a button _name_ is used, not a hexcode. Why it worked for me when I did with a hexcode, well.. ?? So.. red-faced and all, here's how to do it: echo "BUTTON=0x0020DF11" > /proc/empeg_notify ## delay a short while, or not. Then.. echo "BUTTON=0x8020DF11" > /proc/empeg_notify
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <unistd.h>
#include <errno.h>
static void sendButton (int fd, const char *st)
{
int ret = write(fd, st, strlen(st));
if (ret != strlen(st)) {
fprintf(stderr, "write() returned %d instead of %d\n", ret, strlen(st));
exit(-1);
}
}
int main(int argc, char *argv[])
{
char st[64];
unsigned int code;
int fd;
if (argc != 2) {
fprintf(stderr, "Error: expected button name/value as only parameter\n");
exit(-1);
}
fd = open("/proc/empeg_notify",O_RDWR);
if (fd < 0) {
perror("Failed to open /proc/empeg_notify for RDWR\n");
exit(1);
}
code = strtol(argv[1], NULL, 0);
sprintf(st, "BUTTONRAW=0x%08x", code);
sendButton(fd, st);
usleep(250000);
sprintf(st, "BUTTONRAW=0x%08x", code | 0x80000000);
sendButton(fd, st);
return 0;
}
|
Top
|
|
|
|
#359076 - 29/06/2013 00:26
Re: Empeg player software, a new generation
[Re: tanstaafl.]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
PS How do you post code in forum :-) {code} ...text... {/code} except you use square brackets instead of curly brackets. The default font for the code tag is too large though, so I always do it like this: [size:8pt ][code ] program goes here [/code ][/size ]
|
Top
|
|
|
|
#359077 - 29/06/2013 10:02
Re: Empeg player software, a new generation
[Re: mlord]
|
journeyman
Registered: 18/09/2012
Posts: 55
Loc: Somerset UK
|
code | 0x80000000 Oh - that is what that is for !! Ooops.... When I got the 0x80 codes from the empeg I had no idea what they meant so I simply threw them away ! Seems the empeg IR generates some kind of key held code that I guess I fail to generate in my IR PIC microntroller code and the data stream I generate. Maybe I should investigate that one day ... ho hum ! Centro code .... hangs head in shame ....
// Make sure we only process ONE of the two messages on genuine empeg hardware
#ifdef EMPEG
if (ircode & 0x80000000) // if higher bit is set then discard it, avoid duplicate key
numbytes=0;
#endif
** proper formatted code, thanks :-) ** Had I decoded the IR in exactly the same way as the empeg then the BUTTONRAW=0x sequences would have worked.... oops ! I should not assume that if I dont know what its for then I can just discard it..... I dont know my way around the original software very well - does the software have many features that are triggered by a held key on the remote control ? Thanks for all the help :-) Jon
|
Top
|
|
|
|
#359078 - 29/06/2013 10:32
Re: Empeg player software, a new generation
[Re: jonshouse]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
does the software have many features that are triggered by a held key on the remote control ?
Lots of them, yes. Many buttons perform different functions when held down for more than (about) a second (aka. "long press") than for a quick "short press". And I believe the FF/REW functions require holding a button for the duration. Cheers
|
Top
|
|
|
|
#359079 - 29/06/2013 13:42
Re: Empeg player software, a new generation
[Re: mlord]
|
journeyman
Registered: 18/09/2012
Posts: 55
Loc: Somerset UK
|
Guess I had better fix that then :-) The front panel buttons have push and release codes so those work as expected its just the IR that is not complete it seems. It drives the software ok as a remote proxy, but it would be nice to be feature complete so I will have a play with the IR code. I need to decode and act on the repeat code. http://wiki.altium.com/display/ADOH/NEC+Infrared+Transmission+ProtocolThanks, Jon
Edited by jonshouse (29/06/2013 13:53)
|
Top
|
|
|
|
#359080 - 29/06/2013 20:38
Re: Empeg player software, a new generation
[Re: jonshouse]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
Or just not send the release until you stop seeing repeats, or something?
|
Top
|
|
|
|
#359081 - 29/06/2013 21:33
Re: Empeg player software, a new generation
[Re: mlord]
|
journeyman
Registered: 18/09/2012
Posts: 55
Loc: Somerset UK
|
Or just not send the release until you stop seeing repeats, or something?
Yes, snag is the repeats are not framed in the same was as the main IR word, at the moment I can't see the repeat messages at all. I need to re-write the interrupt service routine on the PIC microcontroller to see the repeat codes before I can modify the PIC state machine to send something useful. I will try and tackle that one during the week. Jon
Edited by jonshouse (29/06/2013 21:35)
|
Top
|
|
|
|
#359183 - 17/07/2013 01:23
Re: Empeg player software, a new generation
[Re: jonshouse]
|
journeyman
Registered: 11/07/2013
Posts: 65
|
Jon,
OMFG! OMFG!
I was away for a while having a sig change, but just stumbled across this.
I'd been in the throes of "What to do for music on the new, new, old boat?" when I spotted this. I was starting to get a bit melancholy when it came to things Empeg, but this is hugely interesting. I'll try to be more coherent later, but for now I think I'll just be gobsmacked and a little dizzy.
|
Top
|
|
|
|
#359187 - 17/07/2013 17:49
Re: Empeg player software, a new generation
[Re: snowcrash]
|
member
Registered: 02/04/2002
Posts: 148
|
I had the same reaction. I just returned from a 2 week vacation, driving 27 hours on both ends of that. With no empeg. Yeah, we my son's iPhone (with his music), but the stock stereo wouldn't bluetooth with it properly, and the USB connection was buggy on the iPhone end. So basically I was stuck with 3 CDs and radio all the way from upstate NY to southern FL (1600 miles). One thing I realized, virtually ALL radio stations play the same songs (by genre). Heard the same country songs on country stations, same pop on pop, same classic rock on classic rock, etc. SO infuriating.
So, yep, Im DEFINITELY in line for one of these displays to use as an extender. As soon as Jon is ready. I think he's getting the IR stuff sorted out (I dont really even care about that, but I can wait).
I jammed my Empeg into an old "case logic" DIN cary bag last night, with a RCA to 1/8" cable and a power cable, and its sitting on my center console right now like the world's biggest iPod. I think I will keep it that way until I can get the extender and then I will trunk mount it. So good to have music back... and easy access, shuffle, cross fade, paramatric eq, etc. Forgot how much I missed this stuff.
_________________________
Empeg Mk2a 60G
|
Top
|
|
|
|
#359195 - 19/07/2013 16:30
Re: Empeg player software, a new generation
[Re: jbrinkerhoff]
|
carpal tunnel
Registered: 13/02/2002
Posts: 3212
Loc: Portland, OR
|
One thing I realized, virtually ALL radio stations play the same songs (by genre). Heard the same country songs on country stations, same pop on pop, same classic rock on classic rock, etc. SO infuriating. SO ClearChannel.
|
Top
|
|
|
|
#359227 - 26/07/2013 11:59
Re: Empeg player software, a new generation
[Re: pca]
|
member
Registered: 03/05/2003
Posts: 131
|
My Empeg has unfortunately been out of commission for awhile. It still works perfectly, but like many it seems, the VFD is nearly unreadable. I had to pull it out of the car. What I replaced it with, I really don't like. I have yet to find anything as well done as the Empeg.
While I am really liking that it is being updated to run on the Raspberry Pi, I'm a little saddened that in the upgrade and changes that the album art and stuff aren't going to be displayed. That was my one complaint about the Empeg. I know that the Vibez had that feature and was hoping someone could add that in to a new version
Since I really want album art, I am working on a single DIN radio using a Raspberry Pi that uses a 4.3" screen (non touch screen) and knobs and buttons to navigate through a menu structure. The main program I am going to use is Squeezeplay. I really like the Squeezebox software and hardware and the LMS music server. I plan to put all my music on a USB stick that plugs into the face. It is going to function almost exactly like the Squeezebox radio. I am using a Teensy 3 to adapt all the buttons and encoders to key presses. I have a good portion of the design done and should be testing it all out soon.
I cannot remember how to post an image here or I would show preliminary design... I really was hoping that any new version of an Empeg would bring it a bit more into the modern world. But I am sure that is a much bigger challenge to do than I realize.
|
Top
|
|
|
|
#359230 - 26/07/2013 15:22
Re: Empeg player software, a new generation
[Re: Jemmi]
|
carpal tunnel
Registered: 08/07/1999
Posts: 5549
Loc: Ajijic, Mexico
|
I cannot remember how to post an image here Just beneath the text box in which you are typing your reply, click on File Manager. Then browse to the file you want, select it, and click Add File, then Done Adding Files. Optionally you can add a description of the file. A lesser-known trick is that if the file is sized to something less than about 190KB, the file will display directly with your post rather than creating a link to display the file. tanstaafl.
_________________________
"There Ain't No Such Thing As A Free Lunch"
|
Top
|
|
|
|
#359259 - 29/07/2013 14:38
Re: Empeg player software, a new generation
[Re: Jemmi]
|
member
Registered: 03/05/2003
Posts: 131
|
Here you go... this is the guts. Not done yet packaging it all
Attachments
Raspberry Pi Radio.JPG (4985 downloads)
|
Top
|
|
|
|
#359282 - 31/07/2013 19:47
Re: Empeg player software, a new generation
[Re: Jemmi]
|
journeyman
Registered: 18/09/2012
Posts: 55
Loc: Somerset UK
|
I really was hoping that any new version of an Empeg would bring it a bit more into the modern world I like the very things that make it non-modern ! The wide viewing angle monochrome display, the simple button interface. If you want a colour display and an mp3 player I would have thought many things would do the job. XBMC on small PC or Raspberry Pi would probably do what you are after ? In many ways a high level language coded mp3 player with simpler visuals and a touch screen interface would be far less work than cloning the original empeg experience. I estimate the original empeg software is between 2 and 4 man years of effort - if I start now in a year or two my code will be almost as functional as the original :-) Jon
Edited by jonshouse (31/07/2013 19:54)
|
Top
|
|
|
|
#359283 - 31/07/2013 19:51
Re: Empeg player software, a new generation
[Re: jonshouse]
|
journeyman
Registered: 18/09/2012
Posts: 55
Loc: Somerset UK
|
Just a quick update. I have finally found some time and fixed the IR so that holding down buttons on the IR remote works. It needs some more testing but looks ok. I have built and tested 10 boards and will putting some on ebay when I have sorted the documentation out.
Jon
|
Top
|
|
|
|
#359319 - 07/08/2013 11:27
Re: Empeg player software, a new generation
[Re: jonshouse]
|
member
Registered: 03/05/2003
Posts: 131
|
I do not like the way XBMC handles music. The Squeezebox stuff is the closest I have come to the ease of use of the empeg software. I just finished building the Squeezeplay software for the pi that I intend to use as the front end. I may have a way to launch FM radio from that as well. I looked into it years ago but have to refresh my memory on how to accomplish it.
I pretty much have the faceplate and buttons done. I am using a lot of off the shelf parts and just making them into the cohesive unit. All of the controls will send keystrokes to the pi.
I am having trouble getting the pi and USB hub packaged nicely. I need a lot of right angle USB cables
Attachments
Raspberry Pi Radio.JPG (14700 downloads)
|
Top
|
|
|
|
#359337 - 10/08/2013 21:05
Re: Empeg player software, a new generation
[Re: Jemmi]
|
journeyman
Registered: 18/09/2012
Posts: 55
Loc: Somerset UK
|
Attachments Raspberry Pi Radio.JPG Interesting, can we see some more :-) How are you making it, what materials ? Is the enclosure 3d printed ? Any photos of the real hardware ? Thanks, Jon
Edited by jonshouse (10/08/2013 21:05)
|
Top
|
|
|
|
#359376 - 16/08/2013 10:44
Re: Empeg player software, a new generation
[Re: jonshouse]
|
member
Registered: 02/04/2002
Posts: 148
|
Hey Jon,
Please let me (us) know when you put these on ebay. I do want one for sure. I have been using my empeg in my car the past month again (in a bag on the dash!). I never realized how much I missed it. Still, by far, the best car MUSIC player ever created.
I can be emailed at jbrinker at syr dot edu when you have them ready.
Edited by jbrinkerhoff (16/08/2013 10:44)
_________________________
Empeg Mk2a 60G
|
Top
|
|
|
|
#359418 - 19/08/2013 18:10
Re: Empeg player software, a new generation
[Re: jonshouse]
|
member
Registered: 03/05/2003
Posts: 131
|
I 3D printed the faceplate. The housing itself will just be bent sheet metal or aluminum. The things I don't have figured out are the exact mounting of everything within the housing itself. Using a lot of right angle cables currently to make it even remotely packagable.
Here is a pic of the screen mounted in the faceplate before painting. Also a viewable eDrawings file
I just got a working version of the software running it all last week. It is going to be a necessity really to leave the Pi on all the time. The boot time takes less time than bringing up the logitech media server and being able to play locally stored files.
I haven't had time the past week to finish assembling the hardware. The button mounting is causing some issues and would probably be easier if I just made a PCB.
Attachments
photo.JPG (828 downloads)
|
Top
|
|
|
|
#359497 - 27/08/2013 02:13
Re: Empeg player software, a new generation
[Re: Jemmi]
|
journeyman
Registered: 18/09/2012
Posts: 55
Loc: Somerset UK
|
Here is a pic of the screen mounted in the faceplate before painting. Also a viewable eDrawings file Ok, not bad :-) Should look good painted, gloss black ? It is going to be a necessity really to leave the Pi on all the time.
Yes, I do that in my software. The plan in the longer term is to clock the processor at a much lower rate when "powered off" to save some watts. I yet to investigate how to do this. The button mounting is causing some issues and would probably be easier if I just made a PCB.
What I have done in the past is to mark up a bit of PCB material with insulating tape then drop it into the etcher. The insulating tape stops of the etch quite nicely. If you dont have access to a small mill then this can be a good way of making a one off PCB if the detial is very low (IE just some buttons). Keep ip the good work, please post some updates when its more complete.
|
Top
|
|
|
|
#359498 - 27/08/2013 02:28
Re: Empeg player software, a new generation
[Re: jbrinkerhoff]
|
journeyman
Registered: 18/09/2012
Posts: 55
Loc: Somerset UK
|
Please let me (us) know when you put these on ebay. Ok, will do :-) I am struggling a little at the moment to get it into a state that I can ship it. The prototypes work ok, I have some extra boards built but I was hoping to have 10 to 15 units to ship. The switcher IC I need for the O-LED power has gone out of stock and alternate sources are not available so this is slowing down progress. Good news is the delay on the hardware front gives me some more time to spit and polish the software. I am considering making an alternate box to mount the player in a car, early days on this at the moment as its yet another task I dont have the time for ! My plan for the next week is to get some documentation online and more up to date software released. Part of my problem is I have no easy way to make the SD card image for the Pi. At the moment I install Raspian onto an SD card then copy some files from an NFS server, ok for me but not very useful for anyone else. I need to find a way of installing the system onto a machine with little effort. I have part coded an installer but once again it needs some work to finish it. My time is split a bit at the moment as I am also trying to make the tuner on the MK1 and MK2 empeg units work with my software as well. It turns out the tuner module in the external tuner is a bit of a pain to program, I thought this task would take a couple of days - I suspect its more like a solid weeks work. I have written support for an FM radio tuner that can be added to the Pi fairly cheaply, I need to produce a PCB to make it all nice though. See this thread. http://empegbbs.com/ubbthreads.php/topics/359470#Post359470If anyone reading this has any details of making the MK1 players radio tuner work then please let me know, I can find no information on this. Thanks, Jon
Edited by jonshouse (27/08/2013 02:30)
|
Top
|
|
|
|
#359773 - 19/09/2013 10:51
Re: Empeg player software, a new generation
[Re: jonshouse]
|
journeyman
Registered: 18/09/2012
Posts: 55
Loc: Somerset UK
|
Just a note to say the Centro software no supports the PCATS radio tuner, only in FM mode at the moment but its a start.
|
Top
|
|
|
|
#359846 - 27/09/2013 16:37
Re: Empeg player software, a new generation
[Re: jonshouse]
|
journeyman
Registered: 18/09/2012
Posts: 55
Loc: Somerset UK
|
version 0.61 adds Radio support. Now drives the PCATS tuner in all modes. Remote "TUNER" button toggles tuner/player mode. "Mode Select" button changes between FM/MW/SW/LW/Weather band. http://sourceforge.net/projects/centroplayer/files/It needs some testing but I *think* it mostly works. I get the feeling nobody even looks at this code, bit of a shame as the core functionality is done. Just needs a bit of mp3 management added and a code tidy up and will be a proper player..... I need some code to decode the RDS stream written, I am not going to write this as I need to turn my attention back to the Pi hardware/software. If anyone wants to give RDS decode a go then please feel free. Jon
|
Top
|
|
|
|
#359851 - 28/09/2013 22:44
Re: Empeg player software, a new generation
[Re: jonshouse]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
There's a /dev/rds or something, I seem to recall. Just read from it? I know there are some existing apps that do it.
I'm on the road right now, no empeg in hand, so tricky for me to check on that.
Cheers
|
Top
|
|
|
|
#359852 - 28/09/2013 23:08
Re: Empeg player software, a new generation
[Re: mlord]
|
journeyman
Registered: 18/09/2012
Posts: 55
Loc: Somerset UK
|
I have done some experimentation, had a look at it. I did read some pages on the RDS protocol. I have run out of time to work on the code. Version 0.61 Adds support for PCATS tuner in FM/MW/LS/SW and Weather band. I will have to leave RDS decoding until I have some more free time, or maybe someone else will give it a go. All I want to do is decode the station name and some program text. I hacked some crude test code into player_tuner_common.c, but have not done much with it so far.
//�!3orld = C2 04 21 33 6F 72 6C 64 player: tuner_visual_display_rds() - got 8 bytes of RDS data
int rds_fd=-1;
tuner_visual_display_rds(char mode)
{
unsigned char buff[4096];
int numbytes=0;
// At the moment only for FM mode and only on the empeg unit
if (mode!='f')
return;
#ifndef EMPEG
return;
#endif
if (rds_fd<1)
rds_fd = open("/dev/rds0", O_RDONLY); // empeg rds device
if (rds_fd<1)
{
perror("cant open rds");
exit(1);
}
numbytes=read(rds_fd,&buff,sizeof(buff)); // read as large a chunk as driver allows
printf("%s: tuner_visual_display_rds() - got %d bytes of RDS data\n",PROGNAME,numbytes);
//printf("[%s] = ",buff);
dump_as_hex(&buff[0],numbytes);
if ( (buff[0]==0xC2) & (buff[1]==0x04) & (buff[2]==0x21) & (buff[3]==0x33 ) )
printf("[%s] = ",buff);
fflush(stdout);
}
Thanks, Jon
|
Top
|
|
|
|
#360125 - 30/10/2013 15:23
Re: Empeg player software, a new generation
[Re: jonshouse]
|
member
Registered: 02/04/2002
Posts: 148
|
Hi all, Just checking in again - had a really busy summer/early fall, and was hoping Jon has some of these ready to ship (I'll be a tester! Minimal docs is good! Can you tell Im eager?)
The empeg has been riding around on my center console all summer, slopping around in its padded bag. I really want to get it more permanently mounted, and the remote board would help dramatically.
Let me know (email jbrinker at syr dot edu) if you are at that point. Or close. I can wait, but I dont want to miss out!
Thanks for all your hard work!
Jeff
_________________________
Empeg Mk2a 60G
|
Top
|
|
|
|
#361690 - 14/05/2014 18:25
Re: Empeg player software, a new generation
[Re: pca]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
MMm.. what happened to these projects?
I am about to try and install my empeg somewhere in the Impreza, and it will definitely want a low-profile remote display.
Ideally that display will operate over ethernet, so the empeg could remain "removable" from the vehicle. But failing that, I do have a PCATS display extender that can be used as the second choice solution.
|
Top
|
|
|
|
#362156 - 04/07/2014 20:08
Re: Empeg player software, a new generation
[Re: mlord]
|
carpal tunnel
Registered: 20/05/2001
Posts: 2616
Loc: Bruges, Belgium
|
Indeed, whatever happened to it? I was reminded today about it when I read about the new Hummingboard that got released last week. It's like a Raspberry Pi on steroids. It's not only faster (ARMv7 compared to ARMv6), but also includes other fun stuff like a gigabit ethernet connection, powered USB's AND digital audio out (spdif). Watch the video here. This thing seems even better suited for this project, especially since it's got a digital out.
_________________________
Riocar 80gig S/N : 010101580 red Riocar 80gig (010102106) - backup
|
Top
|
|
|
|
#362186 - 11/07/2014 14:00
Re: Empeg player software, a new generation
[Re: BartDG]
|
enthusiast
Registered: 16/02/2002
Posts: 290
Loc: Denver, CO
|
WOW! Those things are perfect for so many applications! I am going to get one of each
_________________________
-Jason
|
Top
|
|
|
|
#362887 - 04/11/2014 00:26
Re: Empeg player software, a new generation
[Re: pca]
|
addict
Registered: 09/06/1999
Posts: 559
Loc: Newfoundland, Canada
|
Awesome work. Nice to see activity here. I found an unused cage the other night in my collection of old gear and decided to check out the BBS again. Glad I did!
_________________________
12 gig empeg Mark II, SN: 080000101 30 gig RioCar SN: 30103114 My blog
|
Top
|
|
|
|
#362891 - 04/11/2014 09:15
Re: Empeg player software, a new generation
[Re: ShadowMan]
|
carpal tunnel
Registered: 20/05/2001
Posts: 2616
Loc: Bruges, Belgium
|
Yes, but it's been more than a year since the last update on this project. My guess is it's not going to happen anymore...
_________________________
Riocar 80gig S/N : 010101580 red Riocar 80gig (010102106) - backup
|
Top
|
|
|
|
#363137 - 15/12/2014 11:05
Re: Empeg player software, a new generation
[Re: BartDG]
|
carpal tunnel
Registered: 20/05/2001
Posts: 2616
Loc: Bruges, Belgium
|
Today I read about this new HiFiBerry DAC for Raspberry Pi B+ units. I immediately started thinking how this would be an excellent addition to this project, since Patrick once said that Jon had made great software, but the downside was that the audio out quality of a RPi was a lot worse than the audio out of the Empeg. With this add-on, this problem is fixed. I would really, really, really, really like to see this project by Jon getting released! Anybody got any news on it?
_________________________
Riocar 80gig S/N : 010101580 red Riocar 80gig (010102106) - backup
|
Top
|
|
|
|
#363157 - 17/12/2014 11:32
Re: Empeg player software, a new generation
[Re: pca]
|
carpal tunnel
Registered: 19/01/2002
Posts: 3584
Loc: Columbus, OH
|
Cool. I have my rPi ready .
_________________________
~ John
|
Top
|
|
|
|
#363161 - 17/12/2014 18:13
Re: Empeg player software, a new generation
[Re: pca]
|
carpal tunnel
Registered: 24/01/2002
Posts: 3937
Loc: Providence, RI
|
yeah, guess i need to get another DAC; the one i have (i was building an airplay target) is fine, but the hifiberry looks better.
of course i then built an airplay target from an old iphone with a broken display (but a good touch sensor)
|
Top
|
|
|
|
#363395 - 06/02/2015 19:29
Re: Empeg player software, a new generation
[Re: BartDG]
|
carpal tunnel
Registered: 20/05/2001
Posts: 2616
Loc: Bruges, Belgium
|
Replying to myself here. This week they released the Raspberry Pi 2. Completely backwards compatible with the first Pi, but now using a Quad core CPU @ 900 Mhz instead of single core @ 700 Mhz. It's supposed to be at least 6 times faster compared to the original Pi, and yet is remains very energy efficient and is still only $35. This would probably be a perfect kit for Jon's project. If only he would give us an update...
_________________________
Riocar 80gig S/N : 010101580 red Riocar 80gig (010102106) - backup
|
Top
|
|
|
|
#363468 - 16/02/2015 11:18
Re: Empeg player software, a new generation
[Re: pca]
|
addict
Registered: 22/11/2007
Posts: 475
Loc: Denmark, Odense
|
Me just came back after a LOOOOOOOOOOONG break Story.... Denmark will cut FM next year or one year after... Most will just go to the STEALER and get something fitted, maybe an addon that just passes the DAB to FM... some might get an new head unit... But in either way the price will be far more than an DIY thing will cost.... So my thought was why not turn this in to an open source project? I'm not good with programming but doing hardware i can... and a bit of planning also... But yes... is Jon still around? and if so does he like the idea? Of course he have spent some time and money on this and its only fair that the investment is returned, so it might not be complete open source but then something that comes close? EDIT: The HIFI Berry seems like a well suited ways for doing audio out, wonder if there are a similar DAB module for us europeans... Q: the display patrick made for Jon is that Jon's property or can others have one? EDIT2: This might be a suitble route for a radio module in europe: http://www.monkeyboard.org/products/85-d...pment-board-pro has to be slimmed down but it has eagle files so should not be an issue... data sheet: http://d1jy6p8pks3hof.cloudfront.net/dat..._I_20130527.pdfEDIT3: This audio lib. has support for many formats, i have even under widnows been able to play stuff with DRM.... not sure how that happened but it was an album from itunes store... and no i tunes was not installed on the pc... http://www.un4seen.com/bass.htmlEDIT4: design files for the Pi compute module IO board... http://www.raspberrypi.org/documentation/hardware/computemodule/designfiles.md
_________________________
the "monkey" who learned to check a harddrive
|
Top
|
|
|
|
#363511 - 01/03/2015 15:13
Re: Empeg player software, a new generation
[Re: Boelle]
|
addict
Registered: 22/11/2007
Posts: 475
Loc: Denmark, Odense
|
anyone thinks that a "new" empeg player would do well enough today?
what i had in mind was to opensource it... or do a kind of kickstarter thing...
maybe do it kit form or whatever....
but if the site is still alive let me know...
_________________________
the "monkey" who learned to check a harddrive
|
Top
|
|
|
|
#363514 - 01/03/2015 19:06
Re: Empeg player software, a new generation
[Re: pca]
|
old hand
Registered: 27/02/2003
Posts: 777
Loc: Washington, DC metro
|
Personally, I doubt there's a market for an in-dash device - folks with music libraries keep them on their phones now, and just plug the phone into the car. And car dashes are too tough to work with.
Is there way to port the empeg functionality to android or ios and manage a device's music library? That could be fun. I have an ios, and the built-in player is awful.
-jk
|
Top
|
|
|
|
#363560 - 04/03/2015 16:08
Re: Empeg player software, a new generation
[Re: pca]
|
addict
Registered: 22/11/2007
Posts: 475
Loc: Denmark, Odense
|
you are prob. right.... now we just need an app for either Ios or android that can catch DAB radio and play it
for music i have learned to use whats in the iphone... so would not be bothered with another app for the same job.
i only came up with this as it seems fairly doable... dashes are not that hard to work with... for most cars you can get a kit that convert their custom cutout to either single din or double din cutout... from there its pretty easy...
the only trouble is that DIN is not the same all over the world even thou it should be if you know what the 3 letters stand for
_________________________
the "monkey" who learned to check a harddrive
|
Top
|
|
|
|
#363565 - 05/03/2015 00:30
Re: Empeg player software, a new generation
[Re: pca]
|
pooh-bah
Registered: 12/01/2002
Posts: 2009
Loc: Brisbane, Australia
|
It's a lot more than just the physical dash these days
Steering wheel controls Amps that are simply not line level inputs from the dash Bluetooth integration to dash unit Climate control, navigation etc integration with dash unit
_________________________
Christian #40104192 120Gb (no longer in my E36 M3, won't fit the E46 M3)
|
Top
|
|
|
|
#363578 - 05/03/2015 20:24
Re: Empeg player software, a new generation
[Re: pca]
|
carpal tunnel
Registered: 24/01/2002
Posts: 3937
Loc: Providence, RI
|
i just want a decent ui integrated to play onboard music. of course, currently i am using a custom iOS app which loads a javascript page that scrapes a web site and queues videos on youtube, so. i am probably disqualified.
|
Top
|
|
|
|
#363582 - 05/03/2015 23:32
Re: Empeg player software, a new generation
[Re: Daria]
|
old hand
Registered: 27/02/2003
Posts: 777
Loc: Washington, DC metro
|
i just want a decent ui integrated to play onboard music. of course, currently i am using a custom iOS app which loads a javascript page that scrapes a web site and queues videos on youtube, so. i am probably disqualified. Can you scrape an empeg? That could work... -jk
|
Top
|
|
|
|
#363583 - 06/03/2015 01:34
Re: Empeg player software, a new generation
[Re: jmwking]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
That, is the basis of Hijack: screen-scraping and then intercepting (hijacking) the buttons.
|
Top
|
|
|
|
#366567 - 21/04/2016 15:00
Re: Empeg player software, a new generation
[Re: mlord]
|
carpal tunnel
Registered: 20/05/2001
Posts: 2616
Loc: Bruges, Belgium
|
Does anybody know if this project will ever see the light of day for the normal user? It's been more than two years now since Jon's last post. Since the RPi is now at version 3, which is a lot faster than the original one, I'm guessing a lot of cool stuff could be done with it... but I doubt it's ever going to happen. At least I'm not holding my breath. Does anybody have an update on this ? (Patrick maybe?)
_________________________
Riocar 80gig S/N : 010101580 red Riocar 80gig (010102106) - backup
|
Top
|
|
|
|
#366574 - 22/04/2016 11:37
Re: Empeg player software, a new generation
[Re: pca]
|
addict
Registered: 11/01/2002
Posts: 612
Loc: Reading, UK
|
meh - I've come to the conclusion about things like this that if it's not open source then I'm not interested.
It's too easy for things that become important to you to fade away.
Now if Jon had opened it up on github 2 years ago where might we be today?
What's even worse (and I find really annoying) is that his loudly announced progress probably put off other people who may have also begun working on the problem.
_________________________
LittleBlueThing
Running twin 30's
|
Top
|
|
|
|
#366576 - 22/04/2016 17:19
Re: Empeg player software, a new generation
[Re: LittleBlueThing]
|
carpal tunnel
Registered: 13/02/2002
Posts: 3212
Loc: Portland, OR
|
meh - I've come to the conclusion about things like this that if it's not open source then I'm not interested. Huh? Jon posted the source on sourceforge. The centro_player*.tar.gz contains the new player code, and 3rd-party libs, cross-compiled. The src_v0.61.tar.gz file contains a drop-in replacement for the player code in the previous tarball, which is at 0.59. It's been available for almost three years, now. Now if Jon had opened it up on github 2 years ago where might we be today? Probably the same place we are now, since when he first posted, he got very few downloads, and very few people who actually tested it. What's even worse (and I find really annoying) is that his loudly announced progress probably put off other people who may have also begun working on the problem. That's a pretty big hypothetical. Unless you're talking about yourself, I'm pretty skeptical that anyone was actually working on something similar. There's been talk about writing an open-source player for years and years, and, IIRC, only one other person has actually come through with anything, and it was no-where near as sophisticated as Jon's player. The idea hasn't exactly attracted what few developers remain in our dwindling membership numbers.
|
Top
|
|
|
|
#366577 - 22/04/2016 17:30
Re: Empeg player software, a new generation
[Re: canuckInOR]
|
carpal tunnel
Registered: 10/06/1999
Posts: 5916
Loc: Wivenhoe, Essex, UK
|
He even GPL licensed it.
_________________________
Remind me to change my signature to something more interesting someday
|
Top
|
|
|
|
#366594 - 25/04/2016 13:54
Re: Empeg player software, a new generation
[Re: canuckInOR]
|
addict
Registered: 11/01/2002
Posts: 612
Loc: Reading, UK
|
oh, definitely my bad then I've seen too many "ooh look what I did" projects where the promises to share it never seem to pan out and I really recalled this being one of them. I'm really sorry for the aspersions Jon
_________________________
LittleBlueThing
Running twin 30's
|
Top
|
|
|
|
|
|