Can Raspbian Buster be swapped between a Pi3B+ and
a Pi2v1.1 (armv7) board? It's on the Pi3 now but I
might want to repurpose it. I have an older Pi2 that
would require a WiFi USB dongle but is probably at
least marginally adquate, especially if the swap is
Thanks for reading, and any guidance!
On a sunny day (Mon, 16 Mar 2020 19:30:12 +0000 (UTC)) it happened bob
prohaska wrote in :
Not so sure about that, once tried the latest download
and tried it in my old PI, and it did not even boot.
Checksum was OK, no download error.
Was just curiosity.
Tell you what, if my P4 crashes (is on a no-break supply now running 24/7) now,
so hopefully never, then I will try that Buster in my very old Pi driven wall clock:
the I/O will for sure not work as GPIO assignments and I/O addressing changed
but maybe it will boot...
Sometime? Do not hold your breath.
root@raspi71:~# uname -a
Linux raspi71 3.6.11+ #456 PREEMPT Mon May 20 17:42:15 BST 2013 armv6l GNU/Linux
root@raspi71:~# cat /proc/cpuinfo
Processor : ARMv6-compatible processor rev 7 (v6l)
BogoMIPS : 697.95
Features : swp half thumb fastmult vfp edsp java tls
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x0
CPU part : 0xb76
CPU revision : 7
Hardware : BCM2708
Cannot even find the BCM2708 in Wikipedia's raspberry list, must be an earlier model I have?
and there is a can of worms...
OTOH I even have a raspi mpeg2? decoding key for it that I bought from the foundation,
So in short YMMV
On a sunny day (Tue, 17 Mar 2020 11:16:38 +0100) it happened "A. Dumas"
wrote in :
Possible, but bit unlikely, been using those SDcards without problems for years.
And, even if it booted, then it still would not work for some
software due to the GPIO addressing, example:
I usually get a recent release, like that Buster for my P4,
and from that point onwards modify it, never 'upgrade'.
If I ever buy a Pi5 ?? same procedure ;-)
What would a Pi5 be able to do? Interesting question.
Maybe it is my hardware background,
I see the software and hardware as one thing,
raspberry is not just an operating system (Linux) but a huge wilderness of applications.
Expecting to - or making it to run on all models would be a very limiting requirement.
But maybe you are right, maybe it detects the processor on boot up,
but this is my experience.
 the function of an operating system is to as much as possible make an
interface to the hardware that allows the same programs to run on as many types of hardware.
For programs that by-pass that OS and use user space access to the hardware
it would be a tall order to make those run on every model (they don't), needs a rewrite if at all possible.
So much for the basics part :-)
My advice is keep it simple, too much spaghetti in all those releases.
As to 32 bits... mm you know, programming in asm on a Microchip PIC,
setting and testing a flag
btfss spi_byte, 7
takes ONE bit of ONE byte.
Now even in C I see this:
if(too_hot) alarm_flag = 1;
On an int that takes 64 bit system this takes 8 bytes!
Basically 8 * 8 = 64 x less efficient.
Not even mentioning the memory access delay.. alignment.
And I wonder, Yes I wonder, Why
But bloat sells.
And memory per byte gets cheaper all the time
Just something to think about...
Broadcom tailor silicon to their customers. For example, put it in a
different package or with different options enabled.
So the BCM2708 is the base silicon family, and the particular instance of
that in the Pi 0 and Pi 1 is the BCM2835. The chip in the first Pis was a
side effect of other projects, which is why the BCM2708 is used in other
The Pi 2 v1.0 used a BCM2836 (variation of 2708 with four Cortex A7 cores)
and the v1.2 and Pi 3 used a BCM2837 (variation of 2708 with four A53
The SoC in the Pi 4 is custom for that, so it's only the BCM2711.
On a sunny day (Tue, 17 Mar 2020 11:51:34 +0000) it happened The Natural
Philosopher wrote in :
mm, the PIC 18F14K22 that I use runs at 64 MHz clock (internal PLL).
The timing for bit test and set instructions are (taken from 18F1XK22_datasheet_41365C.pdf):
instruction description cycles 16 bit instruction word
BCF f, b, a Bit Clear f 1 1001 bbba ffff ffff
BSF f, b, a Bit Set f 1 1000 bbba ffff ffff
BTFSC f, b, a Bit Test f, Skip if Clear 1 (2 or 3) 1011 bbba ffff ffff
BTFSS f, b, a Bit Test f, Skip if Set 1 (2 or 3) 1010 bbba ffff ffff
BTG f, b, a Bit Toggle f 1 0111 bbba ffff ffff
the 'skip if..' skips the next instruction, typical and very handy for these chips,
so you can write:
#define ALARM LATC,7 ; some output pin
btfss address,1 ; test bit 1 of address
jump somewhere ; if bit not set do your thing
bsf ALARM ; activate the alarm if bit was set
The PICs use 4 clock cycles per instruction, so the BTFSC at maximum 12, makes 12 * (1 / 64e6) = 1.875e-07 seconds,
makes almost 200nS
or 4 * (1 / 64e6) = 6.25e-08 makes 62.5 ns
On top of that it is not interrupted by a task switch as it does not run Linux or any other OS.
This makes it possible for example to do very nice things, like real time analog video processing,
like I do here:
here ONE PIC processes the video from a Sony-CCD-650TVL 0.01 Lux Starlight camera (analog PAL output),
finds and tracks a bright spot (IR emission from for example a missile)
and at the same time generates 2 RC servo signals to steer that spot to center screen (so aim it).
There is no way in this universe your raspi can do that, as the PIC has for example nice analog input comparators
and the PIC only costs about 2 $, and uses milliwatts, as much as the servos take actually.
I did not release the asm for this as it would make that US F35 look so silly... ;-)
So, if you scale it up, go single tasking sure ARM can do SOME of that in asm, you need to add some comparators,
loads of batteries, cooling? And then what do you have...
On top of that ARM asm well... ;-( not me thank you.
And memory use? WHAT memory use?
So always see things in perspective, maybe the next WW will clean the crap.
Ah now I see what I posted that link to my TAT experiment (Target Acquisition Tracking) ;-)