Articles Hierarchy

Articles Home » RPI » PINN Is Not NOOBS


PINN info
PINN install
My_Raspbian for PINN
PINN test silent install
PINN test LEDE + My_Raspbian
The STRETCH challenge
or back JESSIE

for some time i play now with NOOBS ( and now PINN ) again
because some forum question related to it,
and as i can use USB stick i was thinking it is much faster to play it, what is not correct, as the most time consuming thing is the OS download.
( well it works good, compared to the download problems i see from windows, and now even from torrent it is not that fast anymore )
but anyhow, using the RASPIAN image ( from one (torrent) download ) on my MASTER SD_card
and the SD copier tool to make ( several ) working SDs

PINN info
i now with NOOBS PINN (light) downloaded RASPBIAN image 4 times and deleted it later with the reinstall, so i am very interested in the USB stick for OSs thing!

some blog about noobs, pinn, OSs..

I installed ( via NOOBS or PINN ) RASPBIAN, RASPIAN lite, together with libreELEC or OSMC
and then i try some more but that did not run ( possibly conflicts with booting from USB stick??)

Now i start a new setup on a 32GB SD, want test some switches and also the install from USB option. ( that is NOT boot from USB ! )

first some links:
PINN github
PINN sourceforge
PINN raspberry forum
not noobs

PINN OSs links

after i read that PINN docu
? not sure what are NOOBS improvements and what are PINNs specials?
( should be marked clearly ( PINN special with different background color ))
as it is years since this i am very new to both, usually use RASPBIAN image burned by win32diskimager, later ( after install and update ) copied by RASPBIAN desktop SD copier tool.

i want use
+ wpa_supplicant.conf file ( but already must ask if that works for PINN or it can go also into RASPBIAN (see manual rename of that file!! ))
+ ssh file ( must ask if that can go .. into RASPBIAN ) ( as for PINN it is inside recovery.cmdline )
+ recovery.cmdline changes
+ + ADD: vncshare ssh bootmenutimeout=30
and here the big question: what is file for ( as it looks like the one after the installation of the first OS ( used for copy?)( so i need the switches there too ?)
UPDATE: so later i see that my switches are also in the modified recovery.cmdline ( starts with quiet )
and that the wpa_supplicant.conf now is wpa_supplicant.conf.bak
bad, because i now want test RASPBIAN
and for that i want try the wpa_supplicant.conf file trick too? ok i rename it again

UPDATE: thanks to procount i not need to worry:
On first execution of PINN, the wpa_supplicant.conf file is copied to PINN. It is then renamed to .bak to prevent it being copied again each time you execute PINN, otherwise it would overwrite any changes you make to the wifi within PINN.

If you want to update the wifi credentials by this file, please modify it and rename it to remove the .bak. Then it will be copied to PINN on next boot, overwriting any previous settings. After copying it will be renamed .bak again.

The wifi settings that are copied to Raspbian is the one that is used by PINN, which may not necessarily be the same as the initial file if the user adds new wifi networks within PINN.
PINN - NOOBS with the extras...

- - not find info how to make that USB stick ( there was a forum entry about directory structure) but how and where to get the files from? follow all that JSON file links manually?
- - ssh:
Use the username of 'root' and password 'raspberry' to login to the shell via the console or SSH.
but what you can do there??
ok, that SD card i boot up ( means it installs its basic partitions... )
even i not have a USB stick ( with the OSs ) ready, still i can play with some options.

PINN install
so i boot up with that SD AND that still empty USB stick and:
-a- i am WIFI online ( see the OS installation list AND ARORA browser (help) )
so the wpa file thing worked.
-b- i can see a drop down selection for the drive to install to:
SD or USB stick
-c- try remote SSH login

-d- try remote VNC ( real VNC from WIN7 PC )

work on the USB stick: ! i decided to build it up on the RPI ( boot RASPBIAN from SD )
it was clean ( sdformatter4 “Format Size Adjustment” to “ON”. )
instead of building it up manually i started directly with a bash script.
make a main dir /os/ ( and go to it )
make a subdir for each os /os/mynewOS/ ( and go to it )
use wget -N to get (or only update ) the files indicated in that JSON lists
now it would be very good to use that json list as they are ( and are used by NOOBS / PINN ?python? tools )
but as that is a test i just copy paste ( from the json files ) and delete all besides the links i need for wget.
linux not allow auto mounted usb drives to execute bash scripts.
can use sudo or can use remount

i do
sudo bash ( files still owned by "pi" !?!)

now i shut down, take out the SD card, put in the PINN SD card ( still no installed OSs on it)
and find ( and install and test ) the first OSs from USB drive.

i go on with it in steps ( no problem to run it again and again ), want stop when i reach 8GB of the stick.
after i add a other OS the download runs good ( sometimes up to 1.3MB/s )
in my OS list i only use the RPI3 version from the JSON lists.
PINN OSs list: (for RPI3 only ) takes 7.3GB
Arch2 and rtandroid show up in the list but not as available from USB??
testinstall ubuntuMate1604LTS, this time the install worked ( not like from booting from USB )
but the WIFI config after setup not bring me online??
anyhow the installation ( copy unzip from USB ) runs at 9MB/s
now use the JSON from NOOBS and matthuisman (for RPI3 only )
total 4.3GB

as test i only installed RASPBIAN from that new setup USB stick
but at first got a problem that partitioning failed.
checking the SD card:
had to check file system ( by PC)( possibly because power OFF )
i see that there now was a /grub/ directory ( possibly by some prior installs)
and deleted it.
but more could not see from PC. when i try install again it worked. ( 8.8MB/s )
and ssh and wifi OK.

so, you can setup a 16GB USB stick with all OSs for a RPI3 ( to install it to PINN )
++ if you want offline setup
++ or hate the waste of time to download it again and again
with this improved features ( and using 32GB cards now )
PINN is a good way to play raspberry.
while for "production" i still recommend the headless RASPBIAN image setup.
next i try following switches:
vncshare ssh forcetrigger ip=
++ on a new SD PINN setup
++ ssh and wpa_supplicant.conf file
++ using the new 16GB USB stick PINN OS
++ using HDMI++
++ ethernet cable ( for the fix IP )
i found PINN OS RPI at and

see many OSs not show AVAILAVBLE FROM USB

also i play HDMI ... install menu... using keyboard: ( searching for a "console" )
[ctrl][shift][F10,F11,F12] does nothing
[ALT][F11] and [CTRL][ALT][F11] give me a black screen with a blinking cursor doing nothing ( power reboot only)
on putty ssh login # i also not know how to shutdown??
as a kind of crosscheck i load a old SD card with
+ NOOBS light
+ copy in RASPBIAN and datapartition "OS" from my PINN OSs USB stick
and install ( so i have always a virgin NOOBS RASPBIAN for a test )

i know that again i am just a beginner in this, but it comes into my mind that i would redesign
the operation:
- delete the trick to disable the OS selection list if only one OS installed
- delete the sticky thing for the OS selection
+- and boot into the last selected after the timeout ( as it does anyhow ?)
+- keep the [shift] thing (only) to stay operation compatible to NOOBS
+ change the OS selection window frame with
+ + a shut down button
+ + a back to reinstall button ( installation menu )
+ + a time out adjust selection list ( 5, 10, 30, no timeout ( for VNC..))
+ change the OS installation window frame with
+ + a shut down button

My_Raspbian for PINN
+++ a dream would be if i can backup / restore installed/modified OSs to USB stick
( that's where berryboot is unbeatable ( 4min?))

try something like that:
it is nice i can install OSs from USB stick to PINN,
but actually the RASPBIAN desktop menu "SD card copier tool" allows me to reuse
a already good setup and updated and with my default installs RASPBIAN.

to do this here i now try my OWN OS
setup: i use a RPI3 with a RASPBIAN (image) install
plug in a card reader with a (updated) RASPBIAN image SD ( my MASTER )
plug in the 16GB USB stick with the PINN install OSs. ( still 3GB free )
onthere /media/pi/USBSTICK/ i create
and copy from /os/Raspbian/ all files but the "xz"
now i go:
/media/pi/boot/ ( what is the boot dir of my MASTER SD )
sudo tar -cf ../boot.tar .
and also:
/media/pi/___xxx____/ ( what is the root dir of my MASTER SD )
sudo tar -cf ../root.tar .
pi@RPI3:/media/pi/62ca0b6d-6291-4c40-b1fd-11bc291e4a38 $ sudo tar -cf ../root.tar .
tar: ./var/cache/samba/msg/1063: socket ignored
tar: ./tmp/dhcpcd-(null)/libdhcpcd-wpa-1129.1: socket ignored
tar: ./tmp/dhcpcd-(null)/libdhcpcd-wpa-1129.0: socket ignored
tar: ./tmp/.lxterminal-socket\:0.0-pi: socket ignored
tar: ./tmp/.vncserver-license/0.717: socket ignored
pi@RPI3:/media/pi/62ca0b6d-6291-4c40-b1fd-11bc291e4a38 $

what creates a tar file up at /media/pi/ ( what is the 32GB system SD / on the 8GB MASTER SD (/boot /root36737373 is no space for that)
but the tar not contain the /root/ or /boot/ subdir structure!!
now zip it with
pi@RPI3:/media/pi $ sudo xz -zv boot.tar
boot.tar (1/1)
100 % 11.9 MiB / 21.0 MiB = 0.567 596 KiB/s 0:36
pi@RPI3:/media/pi $ sudo xz -zv root.tar
root.tar (1/1)
100 % 1,326.7 MiB / 4,179.1 MiB = 0.317 471 KiB/s 2:31:22
pi@RPI3:/media/pi $

pls see that the RPI3 needed 2.5h for the xz zip ( while running at 25%cpu ( ?1cpu only ) and 200MB RAM usage )

and move that resulting root.tar.xz and boot.tar.xz to the USBSTICK

shut that system down, remove card reader with MASTER SD and remove system SD ( leave USBstick in )
put in the PINN SD / power up / operate via realVNC / and install My_Raspbian
ok, ERROR so USB stick back to PC, i needed some small repair:
rename the picture to My_Raspbian.png
( the system name == directory name used == picture name.png)
partitions.json adjust
"partition_size_nominal": 4189, to a bigger vale as actual size 6000
"uncompressed_tarball_size": 3789, to actual size 4383

the install ( from USB stick to empty 32GB PINN SD ) run at 10MB/s
( that's incl unzip of USB stick xz files ( while its zip was 2.5h ) and copy and write to Samsung EVO SD )
system directly rebooted to that system ( i only installed one ) and to the there fixed wifi IP ( of my MASTER setup )
that IP is the only thing i need to change when the MASTER to PRODUCTION copy is used in RPI1,2,3.

after shutdown and repower PINN come up again following forcetrigger

PINN test silent install
ok back to the basics:
there is a raspbian image and a noobs lite, noobs raspbian ( with internet install other OSs )
from the operation there are big differences as the raspian image ( burned) is just installed,

the noobs/pinn requires operation ( OS select ) and that means HDMI Monitor (TV) keyboard mouse.
if you want work headless anyhow ( could be remote ) using other PC ( putty / realVNC ) you ask why i need HDMI Monitor keyboard mouse
just for the 5 minutes to do the NOOBS .. Raspbian ( or other) install, so you choose Raspbian image.
you can go for the silentinstall
i play this again and again ( for academic reasons ) even i ONLY use RASPBIAN image burned by win32diskimager.
long before the ssh and wpa_supplicant.conf file trick i found a way to preconfig noobs so it can come up on WIFI after a unattended install. i called it
32 space 95 _ 32 space 110 n 111 o 111 o 98 b 115 s 32 space 110 n 111 o 105 i 114 r 32 space 95 _ 32 space
old links: here here here here
so just for confirmation i need to test it with PINN too. ( and go the hard way )
-a- SD with PINN light
-b- USB stick with one OS only Raspbian
-c- ssh and wpa_supplicant file on SD
for operation (on a RPI3 ) only powercable ( and that SD and USB stick ) should be required.
( i might connect HDMI just for monitoring but should not be required )
after noobs pinn install itself ( first partitioning )
it should follow the silent install ( and find the ONE and ONLY OS (from USB) ) install it ( 2 partitions )
and boot into it
and if its Raspbian ( or Raspbian lite ) it should come up on WIFI,
only thing is to find its IP.

what follows now is hours of testing ( and if i would not have the chance to look at a HDMI monitor, i would have given up )
-a- the silentinstall switch not work with /os/Raspbian/ on USB stick
-b- the silentinstall works with
also with recovery.cmdline add:
vncshare ssh forcetrigger silentinstall ( ! second boot goes to pinn install window )
the added

files work for Raspbian
but insofar NOT for PINN as i never see the network install list again
also no IP ( even not when i use a ethernet cable??? )

so i had to remove the silentinstall switch ( edit by PC ) to bring PINN online again.

anyhow this switch works as intended:
i read the original idea was about unattended setup of many classroom RPIs,
possibly today can use network booted systems?
the reuse for a true headless setup of noobs/pinn is questionable
as it brings down a multi boot ( OS selection) system to a single OS install, what is not much more as the image burning of one OS.
while multi OS install / boot select ( special PINN / USB OSs for offline install / with VNC option )
truly is a something for the learn and play level RPI / Raspbian is designed for.

PINN test LEDE + My_Raspbian
computer log : Stardate 71092.7 17_08_17 08:45:00 GMT
there was a 4um post how to use OpenWrt ( on a RPI2 ) ( linux OS for a router ... )
where i suggested to use PINN and LEDE quick
so i setup a new PINN SD card, ( instead of USB Stick i copy My_Raspian under /os/ ( just for test ) )
but not the LEDE2RPI3 from my USB Stick as it would be useless for the RPI2, that i just install from internet.

from the ( headless ) operation it is tricky:
-a- PINN i still not find out how to use a fix IP, so for PC realVNCviewer i must find that IP from router.
-b- when i boot from that into My_Raspbian i know the 2 fix IP ( like for RPI2: eth0:102 wlan0: 202 )
-c- when i boot into LEDE i must rip off the ethernet cable at the same second
( besause i would have 2 router on IP in same network / very bad )
and also take out the ethernet cable from PC and connect it to RPI2 (LEDE2 router ) browser

its nice when after install your own setup My_Raspbian comes up

for a router install a multi boot is very useless
but while you work and play it can make sense to have a
Raspbian and a LEDE/OpenWrt on the SD, as i not find one that is smaller as 8GB anyhow, what a waste for 75MB.

you see? Raspbian terminal start "sudo mc" and can edit files from LEDE2 OS
same terminal window / command will work via putty - RPI2 - My_Raspian ( but the OS boot select can NOT make via ssh )

pls see that PINN / NOOBS give 3.7GB for root_LEDE2,
so better change the
"want_maximised": false

The STRETCH challenge
update 19-08-2017
the stretch mission! Blog info from Simon Long

now that new RASPBIAN version i must have.
but my torrent download of hangs with 5kB/s, the raspbian image not start downloading at all.
so i need to recheck this tool here:
on my PC i have the OS backup, there i rename to RASPBIAN_jessie

on my USB stick i just delete the 2 directories ( raspbian and raspbian_light ) ( to avoid confusion and make space )
i check the noobs list there is no change,
there should not any action be need / required for update, just rerun the script:
sudo bash
the downloads run at 180kB/s, that's over 2h for both.
+ + it starts,
+ + even i read a warning about VNC, also that works
- but there is a ugly thing about apt-get ...
- - everytime i use i see 0%[Working] for a minute
- in my info script use "free -o -h" in stretch can only use "free -h"
- in dhcpcd.conf for fix IP wlan ip works, ethernet no / switch fallback not help
there should be no effects on JESSIE but there are???
looks like the change that desktop stretch need pi password for root stuff,
now leads to:
jessie update results in not see USB stick, but many mounts exist, but only root can see it.
so to work on USB stick and run my script i must be root now: sudo su
and as there are updates: all downloads run again for raspbian, raspbian_light ...
( why i try to be so fast: the old golden rule: never buy a new windows seems to be true here too )

suddenly i found that i work on the My_Raspbian ( what is a copy of my MASTER SD ) and update it with all my working projects directories ( from my also 32GB very old Raspbian image )
+ + if i want reuse that SD well, i need to backup my work
+ + but i would not wipe that SD so fast
+ + but how about STRETCH, if a build up a new "production" system, it should be the new OS??
ok, its a time of change, so i setup a SD with ( the good old ) JESSIE and the new STRECH
and they should live together ( at least for some time )
- - as i would not install new software on the JESSIE, i think the 16GB partition is a waste.
i boot STRETCH, install gparted
resize JESSIE to 6GB and create a 10GB data partition, i named it mmcblk0p10
mmcblk0 179:0 0 29.8G 0 disk
├─mmcblk0p1 179:1 0 63M 0 part
├─mmcblk0p2 179:2 0 1K 0 part
├─mmcblk0p5 179:5 0 32M 0 part /media/pi/SETTINGS
├─mmcblk0p6 179:6 0 69M 0 part /boot
├─mmcblk0p7 179:7 0 14G 0 part /
├─mmcblk0p8 179:8 0 66M 0 part /media/pi/boot0
├─mmcblk0p9 179:9 0 5.8G 0 part /media/pi/root
└─mmcblk0p10 179:10 0 9.8G 0 part /media/pi/mmcblk0p10

reboot shows that mmcblk0p10 is (auto) mounted ( the new way ) by root
what makes it difficult to work with
i must find a way to make it available from both Raspbian.
mkdir DATA
sudo nano /etc/fstab add
/dev/mmcblk0p10 /home/pi/DATA ext4 defaults,noatime 0 2
└─mmcblk0p10 179:10 0 9.8G 0 part /home/pi/DATA

so, that part with the mapped drive worked, but the permission situation not changed.
well sure, because i copied it with sudo mc from USB card read SD card
sudo chown -R pi:pi DATA
now all ok from JESSIE and STRETCH
will see if i can run also programs.. from my project dir there... already see a small difference, delete to waste bin not work there.
more work under STRETCH here

or back JESSIE
update 23-08-2017
OK, now many not happy with the new STRETCH and still want get the old JESSIE
PINN / procount shows prompt reaction.
so i try too with a new PINN setup ( and modified recovery.cmdline ) to get this from archive.
quiet ramdisk_size=32768 root=/dev/ram0 init=/init vt.cur_default=1 elevator=deadline repo_list= alt_image_source= vncshare forcetrigger

wait a minute: i used same PINN v2.4.2h, ( and i checked, there is no new version )
only change recovery.cmdline, so that parameter alt_image_source must have existed already? ( in PINN ), good, it works!
even i would have my own old JESSIE on USB stick i test here the internet download for Raspbian JESSIE, and use a RPI2 with ethernet cable ( headless ) and see 0.6MB/sec.

try also with noobs (31.08.2017)
NOOBS-lite v2.4
++ with wpa_supplicant.conf and ssh file
recovery.cmdline file add

just to compare the 2 versions:
i can not find "repo"
but here at line 182 it is.
ok, could check it with procount help:
-a- [ctrl][alt][F2] root raspberry
-b- cat /tmp/debug
Keyboard found: "/dev/input/event0"
Board revision is 10494082
Found recovery.rfs at "mmcblk0p1"
NOOBS drive: "/dev/mmcblk0"
1+0 records in
1+0 records out
8+0 records in
8+0 records out
Set disk volume ID to: "40742030"
mke2fs 1.42.12 (29-Aug-2014)
writing RiscOS blob
19+0 records in
19+0 records out
Starting dbus
Starting dhcpcd
Default language is "en"
Default keyboard layout is "gb"
Default display mode is "0"
Error opening file: "/settings/installed_os.json"
New drive selected: "mmcblk0"
Network up in 1.903 seconds
Redirection - Re-trying download from ""
Redirection - Re-trying download from ""

so, it must be ( a very consistent ) timeout error / local problem.
i find "alt_image_source" and "repo_list"

above i mention:
- in dhcpcd.conf for fix IP wlan ip works, ethernet no / switch fallback not help
so, the point is in STRETCH the net devices are named automatically ( by some hardware related ) naming scheme.
can use ifconfig or
my RPI3:
pi@RPI3:~ $ ls /sys/class/net/
enxb827eb58bf66 lo wlan0
pi@RPI3:~ $

on a RPI2 with wlan adapter
pi@RPI2:~ $ ls /sys/class/net/
enxb827eb6e15fc lo wlx48022a53056d
pi@RPI2:~ $

good news, if you use that names in
nano /etc/dhcpcd.conf

#interface eth0
interface enxb827eb6e15fc
static ip_address=
static routers=
static domain_name_servers=

#interface wlan0
interface wlx48022a53056d
static ip_address=
static routers=
static domain_name_servers=

it works.
but at forum was the question how to disable this naming thing in STRETCH
and i not know / find it / until now, and want put a usb stick up his rear port
but he seems to use a trick ?
ls /sys/devices/platform/soc/*.usb/usb1/1-1/1-1.1/1-1.1:1.0/net
? again for what ?
i hoped from here comes some help: 4um but he not explained how he
used the old interfaces file only / ? by switching OFF dhcp? and ? disable the naming thing?