Author Topic: O2 Joggler As full MD - Testing needed  (Read 18646 times)

garagevibes

  • Regular Poster
  • **
  • Posts: 42
    • View Profile
O2 Joggler As full MD - Testing needed
« on: March 13, 2014, 04:05:15 pm »
Hi all,

First I'm not to sure where this topic could really lie so please move if needed be,

Basically I haven't invented anything I have just pulled various things together to try and get my Joggler to PXE boot as a full MD, however I have had some issues with my core lately and I don't currently have any other MD's to test so I wonder if anyone with a Joggler wants to try these instructions out and see if they get further than me :)

Ok so where to start first the joggler uses an EFI boot rom which is a stumbling point, however someone far clever than me has created a coreboot/seabios rom replacement for this which in essence will convert your Joggler from an almost atom based pc in to a full atom based pc, I have attached a copy of this but I take no credit its from the www.jogglerwiki.com forum its just here to help people locate it.

So here are the steps to get you to this point, you should note that you will be flashing your boot rom and wont be able to boot to the old software after this although if all goes well flashing back to the EFI boot rom is quite easy and if you have a second Joggler and you do happen to somehow completely brick one you can hot swap the boot rom from a working joggler to fix so this isn't as risky as it initially looks honest :)

so steps:
1 - Download the Joggler reflashing tool and updated openpeak firmware from this site:
http://birdslikewires.co.uk
2 - Follow instructions on the site to install the updated openpeak firmware.
3 - After doing this you are left with a Joggler that is up to date and that you can easily SSH to.
4 - Download the attached rom files on this post unzip and add to a newly formated FAT32 usb stick, there are 2 folders in this zip file one is a backup of the normal EFI boot rom the other is the new coreboot rom, copy the .rom file out of the coreboot folder and place on the root of the usb stick.
5 - Now place the usb stick into the Joggler and reboot.
6 - Check the DHCP address on the Joggler and SSH to the Joggler; username is joggler and password is joggler
7 - Now issue the following commands:

# cd /mnt
This will enter the USB stick
# ls
This will list the files on the stick and should show this:
 coreboot.rom
Now the next two lines will flash the boot rom:
# modprobe fh
# dd if=/mnt/coreboot.rom of=/dev/fh count=1 bs=1024k
Now finally reboot:
# reboot

after reboot you should now see a different boot splash with an icon of a shark, this is now your bios.

So now you have more of a standard PC than a Joggler you should be able to flash a standard disc image now to a usb stick and the Joggler will boot it even windows seems to work sort of but we want to PXE boot so next steps:

1 - Go to www.rom-o-matic.com and create a usb based PXE image and flash to a usb stick.
2 - Place usb stick into the joggler and connect a network cable between the joggler and your internal LMCE network.
3 - Restart joggler and you should boot in to iPXE which will configure the network card and then TFTP from the core.

Now this is as far as I have got, I then get a kernel panic at the point it seems that the initial PXE boot image passes over control to LMCE very much like an issue you would see with an incompatible network card.

Now there are 2 types of Joggler 1 has the r8168 network card the other has a r8169 network card I have the r8168 type and this known to have issues with LMCE so i followed the wiki to recreate the diskless image with the r8168 driver but without success.

As stated before though I have had issues with my core and I get the same error trying to PXE boot VMfusion on my Mac so I would be grateful if others could test this and see if they get the same results and also if anyone has any ideas of what the issue could be it would be great, I think it has something to do with drivers I just cant pin down what ones.

If after this you want to go back to the original EFI rom just place the back up .rom file in the zip attached on the root of a usb stick, place in the joggler, reboot and at the shark logo press the F7 key this will re flash the old EFI rom back and you will be back to a normal Joggler again.

Many thanks

PS seems I cant upload file attachments larger than 192KB so please download the roms from this link: http://www.tardistracker.com/roms.zip

Marie.O

  • Administrator
  • LinuxMCE God
  • *****
  • Posts: 3675
  • Wastes Life On LinuxMCE Since 2007
    • View Profile
    • My Home
Re: O2 Joggler As full MD - Testing needed
« Reply #1 on: March 13, 2014, 05:28:52 pm »
Cool!

tschak909

  • LinuxMCE God
  • ****
  • Posts: 5549
  • DOES work for LinuxMCE.
    • View Profile
Re: O2 Joggler As full MD - Testing needed
« Reply #2 on: March 15, 2014, 04:35:36 am »
That is very cool.

I do believe a complete media director could be placed onto the mmc, with careful installation of packages on top of a distro such as SqueezePlayOS, but I haven't had time to fully retrofit the entire stack on top.

I have however been able to run SimplePhone, and a few more DCE devices directly on the Joggler, without a BIOS retrofit.

-Thom

garagevibes

  • Regular Poster
  • **
  • Posts: 42
    • View Profile
Re: O2 Joggler As full MD - Testing needed
« Reply #3 on: March 31, 2014, 02:34:29 pm »
Thanks Thom,

Im afraid I have given up on the retrofitted Bios idea, it almost works gets as far as the passing over control from the PXE environment to the Linuxmce kernel but even though you can set a fake mac address in ipxe for the initial boot at the point Linuxmce seems to take over it runs ifconfig and gets the original blank mac address of the Jogglers network card again and reports FF:FF:FF:FF:FF and fails to add this to the database as it sees it as incorrect.

So I went back to running packages directly on the Joggler again, I followed your guide and got SimplePhone running really well, I then tried to adapt your guide to get xine installed so I could view video and audio, it seemed to almost work I now get a small black box over the orbiter and putting screen -ls in the terminal shows it running, plus I can select media to play and the orbiter now shows it playing but I get no audio or video so I'm probably missing off some needed packages.

I don't suppose you managed to get xine to run during your testing did you thom? or does anyone know what files are required for xine to run?

Many thanks


tschak909

  • LinuxMCE God
  • ****
  • Posts: 5549
  • DOES work for LinuxMCE.
    • View Profile
Re: O2 Joggler As full MD - Testing needed
« Reply #4 on: March 31, 2014, 06:18:32 pm »
I would connect to Xine's screen session to see what errors are being emitted. You'll be able to debug from that.

Ctrl-a ] will get you a backscroll.

ESC will escape from that backscroll.

Ctrl-a d will gracefully disconnect you from the screen session.

-Thom

phenigma

  • LinuxMCE God
  • ****
  • Posts: 1758
    • View Profile
Re: O2 Joggler As full MD - Testing needed
« Reply #5 on: April 05, 2014, 10:24:33 pm »
orbiter and xine will need xfwm4 as a window manager running to play nicely together.  :)  Cool stuff btw!

J.

garagevibes

  • Regular Poster
  • **
  • Posts: 42
    • View Profile
Re: O2 Joggler As full MD - Testing needed
« Reply #6 on: April 12, 2014, 12:04:15 pm »
Right, i finally seem to have xine up running and playing media from the orbiter, the next obstacle is mounting how should this be done?

I added /home/public to the fstab of the joggler so i can play media stored directly in home/public/audio or home/public/video which i have used for testing but I can't follow any of the symlinks to my other drives where my media is actually all stored.

I have tried to mount the various /mnt/devices/xx on the joggler but this seems to just hang whenever I give the command:mount 192.168.80.1:/mnt/device/30 /mnt/device/30 and fails at boot if I add it to the fstab file, obviously without this the joggler can't follow the symlinks so does anyone have any ideas how best to deal with this?

I also tried to add /mnt/devices to the cores export file and mount that also without success.

This as well seems a bit like a hack manually mounting is not really a linuxmce automatic way of doing things so am I missing a better solution here as well?

Thanks as always :)

Marie.O

  • Administrator
  • LinuxMCE God
  • *****
  • Posts: 3675
  • Wastes Life On LinuxMCE Since 2007
    • View Profile
    • My Home
Re: O2 Joggler As full MD - Testing needed
« Reply #7 on: April 12, 2014, 01:24:26 pm »
you need to authenticate to NIS

phenigma

  • LinuxMCE God
  • ****
  • Posts: 1758
    • View Profile
Re: O2 Joggler As full MD - Testing needed
« Reply #8 on: April 13, 2014, 04:08:19 pm »
Use the scripts from the Bootscripts package.  /etc/init.d/linuxmce controls lmce startup, and LMCE_Launch_Manager is passed that control.  Start at an existing MD and have a look at /etc/init.d/linuxmce, the entire boot process (mostly) is spawned from there.

J.

garagevibes

  • Regular Poster
  • **
  • Posts: 42
    • View Profile
Re: O2 Joggler As full MD - Testing needed
« Reply #9 on: April 15, 2014, 08:12:03 pm »
Thanks for all your help,

think I'm getting closer I have found i can mount a drive if i first access it by another MD so I assume this has something to do with the automounter?

I now have lmce launch manager staring orbiter and xserver and managing the screens however I get the following errors with a dmesg command, is there maybe an error with the mysql-client on my joggler or am i missing more scripts or packages do we think?

Code: [Select]
init: plymouth-upstart-bridge main process (492) killed by TERM signal
init: plymouth main process (196) killed by TERM signal
init: plymouth-stop pre-start process (2112) terminated with status 1
LMCE_Launch_Man[1906]: segfault at 3b0 ip b740322c sp bfdc3e60 error 4 in libmysqlclient.so.18.0.0[b73e0000+29f000]
LMCE_Launch_Man[2125]: segfault at 3b0 ip b745722c sp bfd72630 error 4 in libmysqlclient.so.18.0.0[b7434000+29f000]
LMCE_Launch_Man[2139]: segfault at 3b0 ip b74d622c sp bf9645f0 error 4 in libmysqlclient.so.18.0.0[b74b3000+29f000]
LMCE_Launch_Man[2155]: segfault at 3b0 ip b744522c sp bf8454b0 error 4 in libmysqlclient.so.18.0.0[b7422000+29f000]
LMCE_Launch_Man[2176]: segfault at 3b0 ip b743122c sp bf97de80 error 4 in libmysqlclient.so.18.0.0[b740e000+29f000]
LMCE_Launch_Man[2186]: segfault at 3b0 ip b743122c sp bfb9a8b0 error 4 in libmysqlclient.so.18.0.0[b740e000+29f000]
LMCE_Launch_Man[2196]: segfault at 3b0 ip b746122c sp bfc7d310 error 4 in libmysqlclient.so.18.0.0[b743e000+29f000]
LMCE_Launch_Man[2206]: segfault at 3b0 ip b740b22c sp bff15280 error 4 in libmysqlclient.so.18.0.0[b73e8000+29f000]
LMCE_Launch_Man[2278]: segfault at 3b0 ip b742822c sp bf8bc8f0 error 4 in libmysqlclient.so.18.0.0[b7405000+29f000]
LMCE_Launch_Man[2290]: segfault at 3b0 ip b74ad22c sp bfd0a200 error 4 in libmysqlclient.so.18.0.0[b748a000+29f000]
show_signal_msg: 66 callbacks suppressed
LMCE_Launch_Man[3036]: segfault at 3b0 ip b743222c sp bfa800c0 error 4 in libmysqlclient.so.18.0.0[b740f000+29f000]
LMCE_Launch_Man[3046]: segfault at 3b0 ip b740922c sp bf9c0100 error 4 in libmysqlclient.so.18.0.0[b73e6000+29f000]
LMCE_Launch_Man[3056]: segfault at 3b0 ip b744722c sp bfabc6d0 error 4 in libmysqlclient.so.18.0.0[b7424000+29f000]
LMCE_Launch_Man[3066]: segfault at 3b0 ip b74ac22c sp bff9bfb0 error 4 in libmysqlclient.so.18.0.0[b7489000+29f000]
LMCE_Launch_Man[3076]: segfault at 3b0 ip b749222c sp bff99c90 error 4 in libmysqlclient.so.18.0.0[b746f000+29f000]
LMCE_Launch_Man[3086]: segfault at 3b0 ip b745a22c sp bff3f0d0 error 4 in libmysqlclient.so.18.0.0[b7437000+29f000]
LMCE_Launch_Man[3096]: segfault at 3b0 ip b748022c sp bfdca7c0 error 4 in libmysqlclient.so.18.0.0[b745d000+29f000]
LMCE_Launch_Man[3106]: segfault at 3b0 ip b741422c sp bf857c40 error 4 in libmysqlclient.so.18.0.0[b73f1000+29f000]
LMCE_Launch_Man[3116]: segfault at 3b0 ip b741722c sp bfe343a0 error 4 in libmysqlclient.so.18.0.0[b73f4000+29f000]
LMCE_Launch_Man[3126]: segfault at 3b0 ip b74b222c sp bfa75160 error 4 in libmysqlclient.so.18.0.0[b748f000+29f000]

Thanks again everyone for your help

garagevibes

  • Regular Poster
  • **
  • Posts: 42
    • View Profile
Re: O2 Joggler As full MD - Testing needed
« Reply #10 on: April 20, 2014, 11:25:55 pm »
Just to give you all an update I have finally got xine working fine on the joggler it's pretty amazing at least I think so :) I'll put a video up soon, I have now started to toy with tv, myth is to big to fit on the internal mmc, I was going to remove the squeezeplay os parts to make some space but there are a few bits that I might borrow first like the screen dimming which works really well as does AirPlay (I never seem to be able to get the Lmce one to work) so I need to create a small script to launch these items on boot & then remove the bits left from the squeezeplay os.

I'm therefore starting to look at VDR instead of myth but struggling a little, I also need a way to make an image if the jogglers mmc so I can distribute it ideally with a small setup script for others to use.

I use JavaScript, php & HTML at work though & this is my first attempt at bash so any pointers along the way would be great fully received.

Thanks again all for your help so far.

Marie.O

  • Administrator
  • LinuxMCE God
  • *****
  • Posts: 3675
  • Wastes Life On LinuxMCE Since 2007
    • View Profile
    • My Home
Re: O2 Joggler As full MD - Testing needed
« Reply #11 on: April 21, 2014, 07:33:27 am »
Instead of struggling with the size of the internal storage, why not use a really small usbstick? We've been using a tiny usb stick for quite some time now. You don't really notice it, as it sticks out only 1-2mm

garagevibes

  • Regular Poster
  • **
  • Posts: 42
    • View Profile
Re: O2 Joggler As full MD - Testing needed
« Reply #12 on: July 22, 2014, 03:45:22 pm »
Hi,

Just to update you all,

I have made some progress with PXE booting the joggler. I found a program to reflashing the blank EEPROM of the jogglers network card and have now set a real mac address.

I will give further detail for you all to follow shortly but I can now using the instructions already posted for adding a bios and using an iPXE image to boot get to the announcing ourselves to the router, creating the media director and then boot the initial Kernel and then the full media director kernel that starts loading the beginnings of LinuxMCE.

However I then halt on errors regarding the gma500 having no valid LVDS backlight data, I believe this is to do with the intel graphics driver, there are also a number of patches available for the joggler to solve other issues such as this but for a different kernel version but as Ubuntu 12.04 is already available as an image to download these are freely available but I cant boot enough to install a different kernel or any of the patches, as soon as ssh comes up the error above halts the system in a few seconds after.

Is there a setting I can add to the boot line that will take me to just a very basic recovery console so I may install patches and graphics drivers?

Many thanks as always   

coley

  • Guru
  • ****
  • Posts: 492
    • View Profile
Re: O2 Joggler As full MD - Testing needed
« Reply #13 on: July 22, 2014, 06:46:00 pm »
Can you make the edits you require on the diskless image of your joggler MD on the core using chroot?

/usr/pluto/diskless/<NN> where NN is the device id of your joggler MD.

-Coley.
« Last Edit: July 22, 2014, 07:01:58 pm by coley »

garagevibes

  • Regular Poster
  • **
  • Posts: 42
    • View Profile
Re: O2 Joggler As full MD - Testing needed
« Reply #14 on: August 15, 2014, 02:59:09 pm »
Thanks Coley,

Sorry for the delays Ive just recently had a baby so thats taken most of my time at the moment.

I have tried to do it under chroot but I end up with a few errors as I need to download the kernel source patch it and then compile it and finally install it but it doesn't seem like it likes compiling over a chroot environment, I dont really know where next to go I would be so grateful if someone with more Linux knowledge could help, So if you have a joggler that you wouldn't mind sparing and fancy a challenge the guide to getting to where I am now is as so:

1 - Download the Joggler reflashing tool and updated openpeak firmware from this site:
http://birdslikewires.co.uk
2 - Follow instructions on the site to install the updated openpeak firmware.
3 - After doing this you are left with a Joggler that is up to date and that you can easily SSH to.
4 - Download the following rom files from here http://www.tardistracker.com/roms.zip  unzip and add to a newly formated FAT32 usb stick, there are 2 folders in this zip file one is a backup of the normal EFI boot rom the other is the new coreboot rom, copy the .rom file out of the coreboot folder and place on the root of the usb stick.
5 - Now place the usb stick into the Joggler and reboot.
6 - Check the DHCP address on the Joggler and SSH to the Joggler; username is joggler and password is joggler
7 - Now issue the following commands:

# cd /mnt
This will enter the USB stick
# ls
This will list the files on the stick and should show this:
 coreboot.rom
Now the next two lines will flash the boot rom:
# modprobe fh
# dd if=/mnt/coreboot.rom of=/dev/fh count=1 bs=1024k
Now finally reboot:
# reboot

after reboot you should now see a different boot splash with an icon of a shark, this is now your bios.

8. now we need to flash our EEPROM so we need a tool to do that and we need DOS to run it so first download a usb bootable freedos imaged from here: http://ftp.chtaube.eu/pub/FreeDOS/bootable-usb/FreeDOS-1.1-memstick-2-256M.img.bz2 and thne download the realtek EEPROM flash tool from here: http://www.biosrepair.com/bios/PG8168.rar.

9. now dd over the dos image to a memory stick (must be at least 256mb).

10. now mount your memory stick and extract the EEprom programing tool to the stick so you can access it once freedos is booted on the joggler.

11. browse to the extracted EEprom programming tool directory on the memory stick and find 3 .cfg files named like this "8168.CFG" each one is for a different version of the  network card to be safe I edited all of them so open each one in a text editor and then at the top of the file find the line "node id=" and edit this to whatever mac address you want, I would recommend just offsetting the last few digits and then save each amended .cfg file.
 
12. now attach a small usb hub to the usb port of your joggler and attached a keyboard and the memory stick you have just been using and apply power.

13. follow the options on screen to boot yourself in to freeDOS and browse to the EEprom programming tool folder.

14. now type the following and press enter to flash "PG8169 / W".

15. now type PG8169 / R to read the network card and check all is written correctly.

16. now power down the joggler.

17 - Go to www.rom-o-matic.com and create a usb based PXE image and flash to a usb stick.
18 - Place usb stick into the joggler and connect a network cable between the joggler and your internal LMCE network.
19 - power on the joggler and you should boot in to iPXE which will configure the network card and then TFTP from the core using your new mac address.

20. that should be it you should shortly see the announced ourselves to the router messaged and the Media Director should start to be created, once done your get a message saying rebooting but the joggler wont reboot just pull the power and turn it on again, you should now boot in to LMCE.

21. your now as far as me you should after a bit of loading be presented with errors relating to the graphics drivers this is where I need your help.

if you want to read more on the EEprom flashing tool use google to translate teh following site: http://www.biosrepair.com/bios/pg8168.htm.

Hope someone can follow this and possibly offer some assistance, Many thanks.