Page 1 of 2

Faulty USB ports on pi B+ (SOLVED - please update firmware!)

Posted: Sun Aug 03, 2014 7:31 am
by Fedexpress
Hi,

Has anyone else experienced any problems with their USB ports on their pi B+ models? I've bought 2 from different amazon vendors but still experiencing the faulty USB ports. They won't detect my usb mouse or keyboard. I've tried the mouse and keyboard on my older pi B model and they work just fine. I will try to get another pi B+ from a different vendor but just in case it is my fault, does anyone have any suggestions as to what to do straight out of the box to ensure that they work fine?

Re: Faulty USB ports on pi B+

Posted: Sun Aug 03, 2014 9:42 am
by mahjongg
Its not a hardware defect! Its simply that for the LAN9514 to receive a clock signal you will need a recent version of the firmware! Older firmware doesn't generate it, as the B had a separate crystal for its LAN9512.

Simply download the Installer or OS from the download site, or buy a card from the swag store, as those are guaranteed to have the latest firmware.

Re: Faulty USB ports on pi B+

Posted: Sun Aug 03, 2014 9:46 am
by DougieLawson
Boot your microSD card in your OLD model B using a microSD to SD adapter.

Run the following
sudo apt-get update && sudo apt-get dist-upgrade && sudo rpi-update && sudo poweroff

Pull the card, put it back in your NEW model B+ and it should work.

Re: Faulty USB ports on pi B+

Posted: Sun Aug 03, 2014 5:09 pm
by Lob0426
All I needed was the update and upgrade
sudo apt-get update
sudo apt-get upgrade
To get mine to work with a months old card. Nothing wrong with using the.
sudo apt-get dist-upgrade ; either.

I updated and upgraded the older SD card. Then copied it to a micro SD card using Win32DiskImager. Booted first time. You really do not need rpi-update to get a B+ to work.

Re: Faulty USB ports on pi B+

Posted: Sun Aug 03, 2014 6:10 pm
by pluggy
The rpi-update was always a tool to get the latest firmware, possibly buggy. The 'normal' upgrade will get you the 'release' version of the firmware which is good enough for the latest hardware. It wasn't even included in raspdian until recently. Completely unnecessary in my view.

Its still questionable whether it should be called firmware because it resides in much the same place as the rest of the OS. In my book the pi doesn't have firmware, its got a hardware element built into the GPU to start the boot process and the rest of it is on the SD card. (You can brick things with real firmware :) )

Re: Faulty USB ports on pi B+

Posted: Sun Aug 03, 2014 6:28 pm
by glossywhite
pluggy wrote: In my book the pi doesn't have firmware, its got a hardware element built into the GPU to start the boot process and the rest of it is on the SD card. (You can brick things with real firmware :) )
Exactly what I think too. Talk about misuse of terminology; it's just confusing. If you are talking about an OS component which resides on the SD card, then that should be made crystal clear. If you are talking about *real* firmware for updating a controller chip or something NON-SD card, then THAT is firmware.

You can always rely on geeks to over complicate simple things :lol:

Re: Faulty USB ports on pi B+

Posted: Sun Aug 03, 2014 10:25 pm
by Fedexpress
Thanks everyone for the suggestions, using the most recent SW release solved the problem.

Re: Faulty USB ports on pi B+

Posted: Mon Aug 04, 2014 12:04 am
by mahjongg
Agreeing that "firmware" probably isn't the right word, anybody have a better term?
In principle its the bit of software that normally would be contained in the BIOS ROM, but I loathe to call it the "BIOS code", as that would only make matters more confusing.

by the way, it appears that the all NOOBS versions starting from version v1.3.8 released on 2014-06-22 will work with the B+

Version v1.3.7 released on 2014-05-06 won't work, but that one is now three months old!

Re: Faulty USB ports on pi B+

Posted: Mon Aug 04, 2014 12:11 am
by AndrewS
bootup-ware? ;)

Re: Faulty USB ports on pi B+

Posted: Mon Aug 04, 2014 12:13 am
by mahjongg
hmm. remember it contains solutions for the hardware differences between the models, like different kinds of SDRAM.

Re: Faulty USB ports on pi B+

Posted: Mon Aug 04, 2014 12:13 am
by DougieLawson
mahjongg wrote:Agreeing that "firmware" probably isn't the right word, anybody have a better term?
Microcode? (Although it's probably no better than firmware.)
Init code?

Re: Faulty USB ports on pi B+

Posted: Mon Aug 04, 2014 12:28 am
by mahjongg
Microcode is what separates a CISC from a RISC processor (I'm taking liberties here I know).

Bootcode is the code needed to boot.....


see, that why I couldn't come up with something better than "firmware".

The terminology simply does not exist, as the PI is quite unique in this way.

Re: Faulty USB ports on pi B+

Posted: Mon Aug 04, 2014 12:35 am
by mahjongg
I've come up with "glue ware" (in parallel with "glue logic"), its the code that is the intermediate between sometimes changeable hardware, and always changing software, that "glues" the two together.

Re: Faulty USB ports on pi B+

Posted: Mon Aug 04, 2014 12:46 am
by DougieLawson
Except that's not really what glueware is about.

It's the piece that you put between something that runs 32-bit but needs to interface to something in 64-bit. The glueware sticks things together and moves the data (reshaping it if needed) between the heterogenous systems. It's also the sort of stuff you find when a big-endian system needs to work with little-endian data (or vice versa).

Re: Faulty USB ports on pi B+

Posted: Mon Aug 04, 2014 1:26 am
by mahjongg
Yeah, I vaguely remember... sigh....

Re: Faulty USB ports on pi B+

Posted: Mon Aug 04, 2014 1:30 am
by ukscone
I normally just use the term the other person in the conversation used but my "internal" name for everything loaded before the kernel from the sd card is ipl-ware

Re: Faulty USB ports on pi B+

Posted: Mon Aug 04, 2014 1:32 am
by mahjongg
IPL = Initial Program Loader? If i'm not mistaken this is just another term for "boot code".

Re: Faulty USB ports on pi B+

Posted: Mon Aug 04, 2014 1:32 am
by mahjongg
"configuration code", perhaps.

Re: Faulty USB ports on pi B+

Posted: Mon Aug 04, 2014 2:07 am
by ukscone
mahjongg wrote:IPL = Initial Program Loader? If i'm not mistaken this is just another term for "boot code".
on the whole yes although i've worked with devices that have IPL code that is as little as a 10 byte loader for another loader to a full memory image (snapshot/stream) of the state the system prior to use.

Re: Faulty USB ports on pi B+

Posted: Mon Aug 04, 2014 3:29 am
by Chris1975
SySware ,maybe?

Re: Faulty USB ports on pi B+

Posted: Mon Aug 04, 2014 4:43 am
by rpdom
As it is code that runs on the GPU hardware layer beneath the CPU and OS, it could be termed Underware :lol:

Re: Faulty USB ports on pi B+

Posted: Mon Aug 04, 2014 5:27 am
by Lob0426
rpdom wrote:As it is code that runs on the GPU hardware layer beneath the CPU and OS, it could be termed Underware :lol:
I like it ,BUT;
A young new user might be confused when you tell them to update and Upgrade their "Underware". :shock:
Or They might wonder if the Camera is on with their RasPi. :roll:
Or when they tell their parents That the foundation recommended they change their "Underware"! :oops:
Might just have unexpected consequences! :lol: :lol: :lol: :lol: :lol: :lol: :lol: :lol:

Re: Faulty USB ports on pi B+

Posted: Mon Aug 04, 2014 10:44 am
by mahjongg
ukscone wrote:
mahjongg wrote:IPL = Initial Program Loader? If i'm not mistaken this is just another term for "boot code".
on the whole yes although i've worked with devices that have IPL code that is as little as a 10 byte loader for another loader to a full memory image (snapshot/stream) of the state the system prior to use.
Yeah, the ten bytes you had to load into the memory using toggle switches, to read a paper tape, been there done that!

P.S. I like Sysware, but its not very descriptive of what it does.

Re: Faulty USB ports on pi B+

Posted: Mon Aug 04, 2014 3:01 pm
by FTrevorGowen
mahjongg wrote:
ukscone wrote:
mahjongg wrote:IPL = Initial Program Loader? If i'm not mistaken this is just another term for "boot code".
on the whole yes although i've worked with devices that have IPL code that is as little as a 10 byte loader for another loader to a full memory image (snapshot/stream) of the state the system prior to use.
Yeah, the ten bytes you had to load into the memory using toggle switches, to read a paper tape, been there done that!
...
Likewise, 'way back in '72 on a PDP-8S. IIRC the first paper (punch-)tape loaded code that could subsequently load a more "complex" punch-tape format. If you were lucky, and the punch-tape didn't get chewed, you might have 10 mins. left of your half-hour slot, to run the "real program" ;) .
Trev.

Re: Faulty USB ports on pi B+

Posted: Mon Aug 04, 2014 4:26 pm
by DougieLawson
ukscone wrote:
mahjongg wrote:IPL = Initial Program Loader? If i'm not mistaken this is just another term for "boot code".
on the whole yes although i've worked with devices that have IPL code that is as little as a 10 byte loader for another loader to a full memory image (snapshot/stream) of the state the system prior to use.
IPL is a slightly different kettle of fish.

It was normally a short (24 byte) program that could be created on a 80byte punched card. The IPL program (channel command word) simply said - read this number of bytes to this address of memory and branch to it. It didn't do anything to initialise the hardware that was left to the IPL text (or system kernel) that was loaded by the IPL CCW. In the early days that IPL text was on the deck of cards behind the first card (with the IPL CCW) in the reader. It later moved to tape and finally to disk.

There's an example of an IPL CCW in the Linux on s/390 part of the kernel.

Changing the name from "firmware" to "IPL code" while technically more accurate would only confuse the folks who've never met a Raspberry Pi and have never run any Linux system.