zombiehunterpro
Posts: 12
Joined: Wed Sep 28, 2016 3:05 am

Os/firmware development

Thu Nov 16, 2017 10:16 pm

I am into developing an os or firmware or a new raspbian update for the raspberry pi. Is there any possible app I can use to do so?

ShiftPlusOne
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 4731
Joined: Fri Jul 29, 2011 5:36 pm
Location: The unfashionable end of the western spiral arm of the Galaxy

Re: Os/firmware development

Fri Nov 17, 2017 12:13 am

gcc

However, you're putting the cart before the horse.

User avatar
DougieLawson
Posts: 30422
Joined: Sun Jun 16, 2013 11:19 pm
Location: Basingstoke, UK
Contact: Website

Re: Os/firmware development

Fri Nov 17, 2017 12:24 am

zombiehunterpro wrote:
Thu Nov 16, 2017 10:16 pm
I am into developing an os or firmware or a new raspbian update for the raspberry pi. Is there any possible app I can use to do so?
How much experience in ARM assembler and C/C++ programming do you have? How much experience in writing multi-threading, multi-tasking OS despatchers do you have? It took Linus Torvalds quite a few years to get from the 1991 Linux that he hacked from Andrew Tannenbaum's 1987 MINIX to the stuff we have today.

Come back in thirty years when you've something to show us.
Microprocessor, Raspberry Pi & Arduino Hacker
Mainframe database troubleshooter
MQTT Evangelist
Twitter: @DougieLawson

Since 2012: 1B*5, 2B*2, B+, A+, Zero*2, 3B*3

Please post ALL technical questions on the forum. Do not send private messages.

User avatar
Gavinmc42
Posts: 1549
Joined: Wed Aug 28, 2013 3:31 am

Re: Os/firmware development

Fri Nov 17, 2017 7:01 am

Start here,
https://ultibo.org/

It is a bit more complex than Arduino but you can do more and save you a few of those years ;)
Good luck with Raspbian, I try to avoid it, life is too short.
I'm dancing on Rainbows.
Raspberries are not Apples or Oranges

User avatar
fruitoftheloom
Posts: 15047
Joined: Tue Mar 25, 2014 12:40 pm
Location: Bognor Regis UK

Re: Os/firmware development

Fri Nov 17, 2017 7:28 am

My only "PC" is an Asus ChromeBit running ChromeOS, cloudcentric at its best !
Rockchip Quad-Core RK3288C SoC as used in ASUS Chromebook C201 & Chromebook Flip C100PA as well as the Tinker SBC.
3 Mobile Huawei E5330 Mobile Mi-Fi

User avatar
Gavinmc42
Posts: 1549
Joined: Wed Aug 28, 2013 3:31 am

Re: Os/firmware development

Fri Nov 17, 2017 10:16 am

PiLFS, hmm, will that work for 4.14?
I'm dancing on Rainbows.
Raspberries are not Apples or Oranges

jamesh
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 18182
Joined: Sat Jul 30, 2011 7:41 pm

Re: Os/firmware development

Fri Nov 17, 2017 10:23 am

Gavinmc42 wrote:
Fri Nov 17, 2017 7:01 am
Start here,
https://ultibo.org/

It is a bit more complex than Arduino but you can do more and save you a few of those years ;)
Good luck with Raspbian, I try to avoid it, life is too short.
Life too short NOT to use it. Everything else doesn't work quite as well...
Principal Software Engineer at Raspberry Pi (Trading) Ltd.
Please direct all questions to the forum, I do not do support via PM.

User avatar
Gavinmc42
Posts: 1549
Joined: Wed Aug 28, 2013 3:31 am

Re: Os/firmware development

Fri Nov 17, 2017 2:08 pm

I use Raspbian too, Full and Lite, just upgraded my Pikrellcam camera security system to 4.14 Lite for testing.

I just don't develop Aps for it anymore, Raspbian images are just too big to backup.
I use Ultibo for embedded and PiCore for anything that just has to run 24/7 on Linux.
Most PiCore aps are simple shell based stuff, if you can call Shell, Grep, Sed, Awk simple ;)
I'm dancing on Rainbows.
Raspberries are not Apples or Oranges

jamesh
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 18182
Joined: Sat Jul 30, 2011 7:41 pm

Re: Os/firmware development

Fri Nov 17, 2017 2:31 pm

Gavinmc42 wrote:
Fri Nov 17, 2017 2:08 pm
I just don't develop Aps for it anymore, Raspbian images are just too big to backup.
Forgive my ignorance, but not sure how these two statements relate.
Principal Software Engineer at Raspberry Pi (Trading) Ltd.
Please direct all questions to the forum, I do not do support via PM.

User avatar
Gavinmc42
Posts: 1549
Joined: Wed Aug 28, 2013 3:31 am

Re: Os/firmware development

Fri Nov 17, 2017 3:16 pm

I just don't develop Aps for it anymore, Raspbian images are just too big to backup.
When I started using Pi's for projects 6yrs ago I knew a tiny bit of Linux.
Insert floppy, grub magic stuff eventually Linux.....evolved to boot USB Linux stick.

Starting doing gadgets/projects on Pi's because of low cost, running on Raspbian
Backup OS and everything on the SD card, 4GB back then, now 8GB.
16GB USB drives for my developer Pi3's.

You do mulitple backups of full 8GB SD's pretty soon hard drive is filled with backup images.
Many versions of Raspbian/driver/firmware etc over the years with differences from 3.x kernel to 4.x
Buy server rack to backup them all up plus all the ebooks I needed to read and Pi mag and .......
Upgrade old project to new Raspbian allow 1-2days, oh and guess what Uni policy - Pi's get no Internet access :(
Have you every tried manually doing updates from files downloaded on Windows box,
Copy to USB stick then go find missing dependencies as source code is missing a library or something.

Then I found PiCore, backup is <100MB image, no X11 needed for IoT embedded, whew
I could manually install xxx.tcz's if I needed to, but too many for x11 :(

Now it is Ultibo, backup a few KB of Pascal code, regen the whole ap/kernel in minutes plus I get graphics :D
Based on rock solid Laz/FPC I can carry complete Ultibo devel system on one USB stick and run it on any Windows or Linux box I happen to be near :P It is called progress back to pre bloat days.

Application Specific Computing compared to Raspbian General Purpose Computing which comes with all known languages, most of which I tried and learned to find "The One".
Free Pascal should do everything I want to do and learn for the next 6 years with no need to download those pesky dependencies.
Go off web? Laz/FPC still works, still usable, network optional 8-)
Great for unwebable hermit types or far off places.
I'm dancing on Rainbows.
Raspberries are not Apples or Oranges

jamesh
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 18182
Joined: Sat Jul 30, 2011 7:41 pm

Re: Os/firmware development

Fri Nov 17, 2017 3:33 pm

Hmm, not sure you need to backup and entire SD card just to backup a few bits of source code..

Keep a single SD image of your base system once its set up. The use rsync to backup the variable stuff.


Edit: Or use cloud based source code control, or even a local server. Gitlab works, or use github on the cloud.
Principal Software Engineer at Raspberry Pi (Trading) Ltd.
Please direct all questions to the forum, I do not do support via PM.

User avatar
Gavinmc42
Posts: 1549
Joined: Wed Aug 28, 2013 3:31 am

Re: Os/firmware development

Fri Nov 17, 2017 4:30 pm

First version used Python plus pygame and i2c-smb etc.
Numpy for number crunching, plus all the graphics images for display etc.
First one was old model A 256Mb, no network connected or needed as it went inside traveling solar trailer.
Driver for i2c setup etc, blacklisting bits and pieces, before I knew how to awk ;)

Someone breaks SD card, burn backup image to new card, a few minutes work, compared to days, hours rebuilding from scratch and missing a /etc file edit or forgetting an image file etc

PiCore versions are a few dozen shell script files Awking and SEDing html files live, web pages etc,
Networked, yippee can fix from 100Km away :geek:
Still some /etc edits.

Ultibo - few minutes = one new kernel with complete ap+OS, complied from source.
Only needs boodcode.bin, fixup.dat ,start.elf, sometimes config.txt.
Generally the kernel.img is smaller than start_x.elf, back it up ~3MB.

I have even made mods in a few minutes and emailed new kernel to Russia :o
You want to try emailing Raspbian image?
Hmm, wonder if I can send Ultibo source by morse?
Self hosting should be possible :D
Would be fun to try that on a Pip.
I'm dancing on Rainbows.
Raspberries are not Apples or Oranges

jahboater
Posts: 1924
Joined: Wed Feb 04, 2015 6:38 pm

Re: Os/firmware development

Fri Nov 17, 2017 4:37 pm

Gavinmc42 wrote:
Fri Nov 17, 2017 3:16 pm

Backup OS and everything on the SD card, 4GB back then, now 8GB.
16GB USB drives for my developer Pi3's.

You do mulitple backups of full 8GB SD's pretty soon hard drive is filled with backup images.
Why do you backup Raspbian (which is easily replaced) and the empty space on the disk (which is just pointless)?

Like others in previous posts, I just back up my own projects, which by comparison are tiny.

User avatar
Gavinmc42
Posts: 1549
Joined: Wed Aug 28, 2013 3:31 am

Re: Os/firmware development

Fri Nov 17, 2017 4:45 pm

Backup is so user, not me, can get new SD card with old OS/code to run gadget.
They end up scattered all over campuses.
Have you tried downloading, updating, upgrading without Internet connectivity?


I just reread my last post and had flashback,
source by morse
The good old days of 300baud modems, dialup tones, handshake etc
Pip has speaker and microphone, get them exchanging data via audio.
Rats, I will need more than one :lol:
Now what was those touchtone dialing freqs? Google time :)
I'm dancing on Rainbows.
Raspberries are not Apples or Oranges

jamesh
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 18182
Joined: Sat Jul 30, 2011 7:41 pm

Re: Os/firmware development

Fri Nov 17, 2017 4:47 pm

Gavinmc42 wrote:
Fri Nov 17, 2017 4:30 pm
First version used Python plus pygame and i2c-smb etc.
Numpy for number crunching, plus all the graphics images for display etc.
First one was old model A 256Mb, no network connected or needed as it went inside traveling solar trailer.
Driver for i2c setup etc, blacklisting bits and pieces, before I knew how to awk ;)

Someone breaks SD card, burn backup image to new card, a few minutes work, compared to days, hours rebuilding from scratch and missing a /etc file edit or forgetting an image file etc

PiCore versions are a few dozen shell script files Awking and SEDing html files live, web pages etc,
Networked, yippee can fix from 100Km away :geek:
Still some /etc edits.

Ultibo - few minutes = one new kernel with complete ap+OS, complied from source.
Only needs boodcode.bin, fixup.dat ,start.elf, sometimes config.txt.
Generally the kernel.img is smaller than start_x.elf, back it up ~3MB.

I have even made mods in a few minutes and emailed new kernel to Russia :o
You want to try emailing Raspbian image?
Hmm, wonder if I can send Ultibo source by morse?
Self hosting should be possible :D
Would be fun to try that on a Pip.
Make a backup of the SD card, when it is the state you want, once. That's all that's needed to get back to where you want the base device. Then simply backup the changes from that.

Why would you email an entire image? Linux kernels are easily built and sent as is, although you may need modules as well. If you do need an entire image (I have done, once in the past to get to a supplier), use dropbox, not email.

Don't use morse.
Principal Software Engineer at Raspberry Pi (Trading) Ltd.
Please direct all questions to the forum, I do not do support via PM.

gkaiseril
Posts: 193
Joined: Mon Aug 08, 2016 9:27 pm
Location: Chicago, IL

Re: Os/firmware development

Fri Nov 17, 2017 4:52 pm

Backup usually include more than just the OS, it includes all user data and there are some backup systems that use an incremental approach and just backup the changes since the last backup and then only do a full backup once a month. Having a backed up system also restores and configuration settings that have been applied to the system. With a system admin doing a full or full and incremental backups there will be a lot of user data and system settings unique to the computer that will be lost. You should be aware that as you connect to various networks that some of the network information is retained your OS so you do not need to reenter the network's pass code and address. There are also many settings within user applications that are specific to a given user and system. One also has manually added packages. So there are many settings, packages, user and system data that has been generated that is not part of the distributed system and if one were to rebuild starting from the distributed system many user needed information would be lost.

User avatar
Gavinmc42
Posts: 1549
Joined: Wed Aug 28, 2013 3:31 am

Re: Os/firmware development

Fri Nov 17, 2017 5:22 pm

Sysadmin, what's that?
For some silly reason most sys admins are Windows guys here.
Pi's speak Linux, mostly, it is agreat big divide, what version of Windows is it running?
What is an user?
These gadget get turned on, do stuff get turned off or they sit there collecting data that one day may get looked at and used.
One also has manually added packages
Adding them manually sucks, it can take hours, days to get things running again.
I don't have systems to admin, yet.
Got rack, got boxes and hubs, got Gitlab and Jenkins, just not got time to learn this.
Application Lifetime Management, maybe one day, month, year, it is on the list :oops:

Lots of gadgets, each one is different. no single Raspbian image was ever the same.
Raspbian evolved, my coding evolved, old gadgets running old OS and libs. Library on SD card gets corrupted, rebuild or what?
I may get around to learning Linux but Raspbian is big and each gadget only uses or needs a tiny bit of it.
Not many even used the same language. I tried lots to test them all out in my search for "The One".

Got this things here called firewalls, I even got asked in the early days what virus checker are you using?
"No virus checker! You are not getting near our networks" :o
Have you tried to get a headless Pi signing on via a GUI login to get Internet access past the firewall and who is paying for that account?

Pi's running DoS from inside the firewall :o
Raspbian is Linux, it has zero day exploits, PiCore runs kernel and busybox, also exploitable :oops:
I can read the source for Ultibo, the image is small, 3MB that's only a few novels worth.

With Intel and AMD Ryzen cpu's running minix and threadX and ???? what can you trust?
Just thinking ahead, none of my gadgets can move, yet.

And what is wrong with morse?
I knew a Russian programmer who used a single GPIO and beeper as his debug output.
I'm dancing on Rainbows.
Raspberries are not Apples or Oranges

Return to “Advanced users”

Who is online

Users browsing this forum: k-pi and 16 guests