Raspbmc doesn’t update

For some reason, xbmc and raspbmc didn’t auto update anymore on my raspberry pi (running Raspbmc) since april this year.

Usually when you reboot your device, auto update makes sure your raspbmc is using the latest version.

By deleting some files, you can trigger your pi to update again on the next restart. This will probably solve your problem if you have the same issue:

  1. sudo -s
  2. cd /scripts/upd_sys
  3. rm *.sh
  4. wget http://svn.stmlabs.com/svn/raspbmc/release/update-system/getfile.sh
  5. wget http://svn.stmlabs.com/svn/raspbmc/release/update-system/cdn_env_prep.sh
  6. cd /scripts/upd_hist
  7. rm xbmcver
  8. reboot

Source

Update CouchPotato on Raspbmc

If you want to update CouchPotato just execute the following commands in the bash shell:

  1. sudo /etc/init.d/couchpotato stop
  2. cd CouchPotatoServer (or cd CouchPotato, whatever folder you installed CouchPotato in).
  3. git pull
  4. sudo /etc/init.d/couchpotato start

Even after starting, it might take 60 seconds before your site responds to requests.

 

My raspberry pi

The raspberry pi is an awesome device. It’s affordable, it’s a media center, a web server, very slow and doesn’t use much electricity. It’s also a very good looking piece of hardware. Fits your living room!

pi-1

pi-2

This post is about how mine is configured!

The services

  • Xbmc (installed as raspbmc): a powerful media center, running on Debian.
  • Transmission: A minimalistic torrent client.
  • CouchPotato: Software that searches the movies you want and starts to download them as soon as they come available.
  • BitTorrent Sync: Dropbox like service, easy way to backup folders on multiple computers.
  • Samba: Share a hard disk to the local network.

The place

My pi lives next to my TV. It’s powered by a 5V 2A power supply. It has a 8 gb sd card and their is a 2 TB external usb hard drive attached.

Connected

I use Putty to modify raspbmc via ssh, Yatse android app to control Xbmc. When needed I can connect an external keyboard because I still have 1 usb port over.

Security

As you could possibly open up some ports to the internet, you will want to secure your raspberry pi.

Install

I won’t list the complete process but refer to guides I followed.

0. Static IP

http://choorucode.com/2012/08/14/how-to-assign-a-static-ip-address-to-raspbmc/

1. Raspbmc

First we need to install raspbmc on the pi: http://www.raspbmc.com/wiki/user/windows-installation/.

2. CouchPotato, Transmission

3. BitTorrent Sync

4. Enable samba

You can do this in the xbmc interface.

5. Dynamic Dns

http://www.techjawab.com/2013/06/setup-dynamic-dns-dyndns-for-free-on.html

XBMC tweaks

  1. By default, if there is no hdmi connected on boot, it won’t enable hdmi. That’s ridiculous!

Uml basics

If you want to do proper analysis you really need to be able to draw what you intend to build. Doing so will make you a better architect.

Even though I have learned uml at school, I did forgot most of it. I have however been able lately to spend more time on making proper analyses, and thus improving my own uml skills.

This is a quick wrap up of the most important relationships you can have in uml.

uml

Generalization
An object extends another object.

Implements
An object implements an interface.

Aggregation
Aggregation means that classes have their own life, but they can only belong to one parent. For example a department and a teacher.

Composition
A bit stronger than aggregation, is composition. If the parent object dies, children object dies to. Sometimes referred to as the death relation. Think of it as a house and rooms. When you delete the house, all rooms get deleted too.

Association
There is a relationship between both objects, but at the same time they also have their own life cycle.

Copy file to android in ClockWorkMod

If you installed a malfunctioning ROM on your android smartphone, it can happen that your android phone no longer works. I have had this often enough to write a blog post on how copy a hopefully better ROM on your device, to install that one.

Why didn’t the ROM work?

  • If you install nightlies from cyanogenmod, it can happen that a nightly is actually broken.
  • Sometimes the file you downloaded from the internet and copied to your smartphone got corrupt.

What do I need?

This guide will only work when you have ClockworkMod Recovery installed on your phone.

You also need the android SDK. If you are a developer you will already have this. It’s in the folder AndroidSDK/platform-tools.

How to

  1. Copy your new cyanogenmod ROM (or other) file to this AndroidSDK/platform-tools folder. (Or any file you would like to copy.)
  2. Give it an easy name, something like cm-11.zip
  3. Control-Shift click in the folder, and choose Open command window here.
    adt-openshell
  4. Boot your smartphone into ClockworkMod Recovery. Every smartphone has it’s own way to do. For the Galaxy S3 you need to push power, volume-up and the home button all together. When the boot logo shows you can stop.
  5. Go to mounts and storage in the ClockworkMod Recovery menu.
  6. Make sure it says unmount /system and unmount /data by entering on the items.
  7. Now go to your shell and start the copy process with this command: adb push cm-11.zip /sdcard/0/cm-11.zip. (Of course, change the files to your filenames!)
    adt-shell
  8. The process can take a while, it will respond with the copy speed and the total bytes / total time it took. That means it was successful!
  9. Go back, and choose install zip, choose zip from /sdcard to install the MOD!

Wifi password in windows 8.1

If you want to see your wifi password in Windows 8.1, you can do this via a “Command Promt” command.

Open the command promt, by searching Command Prompt in the Windows Start page.

wifi-startmenu

Then type or copy the next command: netsh wlan show profile name=”WifiName” key=clear.

Do not forget to change WifiName to the name of the wifi you would like to know the password from.

wifi-cmd

 

Developpers spelling

This post is a work in progress where we try to document some popular programming terms and words.

What? Explained Example
Hyphen Used to form compound words. award-winning
Dash Has a space before and after. yes – no
Underscore _

 Delimiter

(nl: scheidingstekens, fr: séparateur)

Use to group or seperate numbers or letters.

, ; . () [] {}

Curly brackets

{ }

Square brackets

[ ]

Bracket

( )

Less then sign

<

Greater than sign

>

Quotation mark

 

Apostrophe

 

Variables in Selenium IDE

You can store and later reuse values in Selenium IDE.

Storing values?

<tr>
<td>storeEval</td>
<td>window.document.domain</td>
<td>variableName</td>
</tr>

All store commands start with store. A few examples:

  • storeEval: Stores the value of a JavaScript snippet.
  • storeAttribute: Can store the value of an html attribute.
    Example
    If you have: <href id=”example-id”>Hello world</href>
    Then: StoreAttribute | link=Hello World@id | idVariable
    Will give: example-id
  • there are many more store commands actually! Intelli-sense  in the IDE will certainly help you!

Getting/using values?

You can reuse your stored values with ${variableName}. If you want to just display it in the log use:

<tr>
<td>echo</td>
<td>${variableName}</td>
<td></td>
</tr>