Raspberry Pi

Go To Last Post
25 posts / 0 new
Author
Message
#1
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Guys, what the Raspberry Pi like for embedded stuff, not Linux development?

It's extremely cheap at £35 with 1 Gig of DDR RAM?

 

I suspect there is lots of baremetal stuff on the internet.

 

Wm.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

DEfine Embedded stuff.  The Pi is a linux based computer and I can tell you firsthand that it does not do so well in things like RS-485 communications for example.  A colleague of mine and I tried for days to get the Pi and a Beaglebone black to work as a 485 master, but we could not get the TX/RX control line to toggle fast enough.  Our solution was an ATTiny with 2 USARTS to act as a 232<>485 bridge.  That worked.

 

IT all depends on what you are looking to do

 

JIm

I would rather attempt something great and fail, than attempt nothing and succeed - Fortune Cookie

 

"The critical shortage here is not stuff, but time." - Johan Ekdahl

 

"If you want a career with a known path - become an undertaker. Dead people don't sue!" - Kartman

"Why is there a "Highway to Hell" and only a "Stairway to Heaven"? A prediction of the expected traffic load?"  - Lee "theusch"

 

Speak sweetly. It makes your words easier to digest when at a later date you have to eat them ;-)  - Source Unknown

Please Read: Code-of-Conduct

Atmel Studio6.2/AS7, DipTrace, Quartus, MPLAB user

Last Edited: Tue. Jun 18, 2019 - 04:34 PM
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

jgmdesign wrote:

DEfine Embedded stuff.  The Pi is a linux based computer and I can tell you firsthand that it does not do so well in things like RS-485 communications for example.  A colleague of mine and I tried for days to get the Pi and a Beaglebone black to work as a 485 master, but we could not get the TX/RX control line to toggle fast enough.  Your solution was an ATTiny with 2 USARTS to act as a 232<>485 bridge.  That worked.

 

IT all depends on what you are looking to do

 

JIm

 

That sounds terrible!  Ah well, I'll stick to the SAMA5D44 XULT for the tie being.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

fdgh

 

Doing magic with a USD 7 Logic Analyser: https://www.avrfreaks.net/comment/2421756#comment-2421756

Bunch of old projects with AVR's: http://www.hoevendesign.com

Last Edited: Mon. Jun 24, 2019 - 08:43 AM
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Fianawarrior wrote:
That sounds terrible! 

 

It was!!  It was I do say!

 

In the end I think my colleague used a Mega2560 for all the I/o and sub board communications, and the Beaglebone or Rpi for internet comms, local comms to the Iphone/Android Apps and touchscreen GUI.  The Bone/Pi communicated via 232 to the M2560.

 

Brutal.

 

JIm

I would rather attempt something great and fail, than attempt nothing and succeed - Fortune Cookie

 

"The critical shortage here is not stuff, but time." - Johan Ekdahl

 

"If you want a career with a known path - become an undertaker. Dead people don't sue!" - Kartman

"Why is there a "Highway to Hell" and only a "Stairway to Heaven"? A prediction of the expected traffic load?"  - Lee "theusch"

 

Speak sweetly. It makes your words easier to digest when at a later date you have to eat them ;-)  - Source Unknown

Please Read: Code-of-Conduct

Atmel Studio6.2/AS7, DipTrace, Quartus, MPLAB user

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Maybe this woulda helped with the rpi & rs485 :

 

http://wiki.seeedstudio.com/RS-485_Shield_for_Raspberry_Pi/

 

They use os.system to control the pin  & some other calls to do the read & write...maybe better/faster....hard to say.

Doing anything on the pi is often fraught with opening the right bottle of secret sauce.  I worked for several days to get some led driver chip to work...no luck, just confusing results...then found some other library & had it working in minutes.

 

You wanna move things around in a vending machine...will work great....wanna control injet printing nozzles...may be a long road.

When in the dark remember-the future looks brighter than ever.   I look forward to being able to predict the future!

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

There seems to be some way of doing real time tasks on a Pi.  I have a couple of them running Logitech Media Server, Kodi, and driving a stereo 24 bit dac via spi. Not my software and I haven't ventured under the hood, but it all runs flawlessly.  Max2Play is what the stuff is called.

Tom Pappano
Tulsa, Oklahoma

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

tpappano wrote:
There seems to be some way of doing real time tasks on a Pi.
Late model Linux kernels have a real-time option during configuration.

Might consider SAMA5 as Raspberry Pi consume significant current.

http://www.at91.com/linux4sam/bin/view/Linux4SAM/TipsNTricks#Real_Time_on_A91SAM_SoC

 

"Dare to be naïve." - Buckminster Fuller

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Paulvdh wrote:
Olimex also seems to have a foothold in the industrial market, where long term availability is more important then the latest trend.
Likewise with the industrial BeagleBone with more recent BeagleBoard products in KiCad.

element14 BeagleBone Black Industrial 4G | element14 | Design Center

https://github.com/beagleboard/pocketbeagle/wiki/FAQ#Is_this_open_hardware_and_what_is_the_design_in

BeagleBoard.org | Open Hardware Physical Computing on ARM and Linux

edit :

https://github.com/beagleboard/pocketbeagle/wiki/FAQ#What_are_Programmable_RealTime_Units_PRUs_anyway

 

 

"Dare to be naïve." - Buckminster Fuller

Last Edited: Tue. Jun 18, 2019 - 07:23 PM
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

"Dare to be naïve." - Buckminster Fuller

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

jgmdesign wrote:
The Bone/Pi communicated via 232 to the M2560.

Jim, does that mean I would have to break out my old rs-232 dongle to talk to UART on my ATmega1284?  I have some ancient boards I got from Futurlec when I first got started in this business that would take RS232 input and output serial that UART was happy with.  I even think I still know where they are.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

The Raspberry Pi is for people who are already Linux/Unix computer experts.  The low cost is offset by the cost to -you - of spending hundreds of hours learning how to get the Pi working as easily as an Arduino does.  If you don't have someone to teach you basic Unix/Linux, either in a classroom or as a workplace mentor, then you will inevitably come to some idiotic Linux roadblock from which you can't solve by experiment or internet research, and then you're stuck.

 

For me, the mere fact that the Pi does not come with any ready-to-work Operating System, bootloader, or firmware pre-installed is a complete deal breaker.  You have to install the basic operating system into it, which makes it worthless if you don't know exactly how to do this.  And if (when) some little tiny detail goes wrong in the process, then you are one faced with "researching" thousands of pages of Linux "documentation" to find out what that little tiny detail is.

 

I recommend that you take the 35 pounds, dollars, euros (aren't they all about the same now?) and buy a 10-pack of Arduino Nanos, a few STM32F103-based "blue Pill" ARM module boards for experimenting with, and spend the remaining change on Guinness.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Simonetta wrote:
The Raspberry Pi is for people who are already Linux/Unix computer experts
My 9-yr-old nephew is no Linux expert.  He manages his RPi just fine.

 

"Experience is what enables you to recognise a mistake the second time you make it."

"Good judgement comes from experience.  Experience comes from bad judgement."

"Wisdom is always wont to arrive late, and to be a little approximate on first possession."

"When you hear hoofbeats, think horses, not unicorns."

"Fast.  Cheap.  Good.  Pick two."

"We see a lot of arses on handlebars around here." - [J Ekdahl]

 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

You’ve not used one then. Of course the pi has a boot loader - how else does it read the sdcard? The os is loaded onto the sdcard. Based on the number of blogs - there’s a lot of ‘experts’ out there.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

 

For me, the mere fact that the Pi does not come with any ready-to-work Operating System, bootloader, or firmware pre-installed is a complete deal breaker. 

There are plenty of easy tutorials to use NOOBS to get  the rpi up and running (you can even buy an SD card with OS loaded and ready to just plug in & powerup). 

 

you are one faced with "researching" thousands of pages of Linux "documentation" to find out what that little tiny detail is.

You have a point there---being open source, a lot of things are left hanging, unfinished, undocumented, poorly performing, problematic & solutions vary from "simply correct" to a 3 day exasperation in tracking down some undocumented combination that fails to install/work/give results.

Now doesn't that sound like working with some AVR Studio installs?!!

Yes, you will spend some (many) hours exploring & adapting.---but the price is right & the capabilities pretty amazing.

 

 

 

 

When in the dark remember-the future looks brighter than ever.   I look forward to being able to predict the future!

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Simonetta wrote:
For me, the mere fact that the Pi does not come with any ready-to-work Operating System, bootloader, or firmware pre-installed is a complete deal breaker.  You have to install the basic operating system into it, which makes it worthless if you don't know exactly how to do this. 
Oh dear God - you have heard of Google I take it??

 

https://projects.raspberrypi.org/en/projects/raspberry-pi-getting-started

 

That is written so a 5 year old child could follow it - hope you get on OK.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Considering a generation of spotty kids learnt machine code on the likes of a C64, zx80 and so on, the raspi is Luxury.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

clawson wrote:

Simonetta wrote:
For me, the mere fact that the Pi does not come with any ready-to-work Operating System, bootloader, or firmware pre-installed is a complete deal breaker.  You have to install the basic operating system into it, which makes it worthless if you don't know exactly how to do this. 
Oh dear God - you have heard of Google I take it??

 

https://projects.raspberrypi.org/en/projects/raspberry-pi-getting-started

 

That is written so a 5 year old child could follow it - hope you get on OK.

 

The 5-year-old will have it at Lego web site long before finishing those instructions. My kids LOVED lego web site.

The largest known prime number: 282589933-1

It's easy to stop breaking the 10th commandment! Break the 8th instead. 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Fianawarrior wrote:
I suspect there is lots of baremetal stuff on the internet.

 

Never seen or heard of anyone doing bare metal on the Raspberry, not saying it can't or hasn't been done, just that it's not common! Everybody uses it with some kind of OS, normally Linux.

- Brian

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I suspect there is lots of baremetal stuff on the internet.

Some of the chips in the pi have functionalities which are not made public, so in some cases you may clang into metal wall.   

When in the dark remember-the future looks brighter than ever.   I look forward to being able to predict the future!

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

avrcandies wrote:
Some of the chips in the pi have functionalities which are not made public, so in some cases you may clang into metal wall.   
Except that Linux is GPL and so therefore are any added kernel drivers to support the hardware as they are "derived work" (they use generic biits of the driver support structure).

 

This is the classic conundrum for those using Linux in a commercial, sensitive IPR environment (thing satellite pay TV systems for example!). You want to use Linux because of all the goodies it brings but to then access the "secret bits" in your silicon you have to develop .ko's and as soon as you do the source of those .ko's has to be made available to the end user under the GPL licence.

 

So I would suggest that if you study the published source for any Linux in RPi you should be able to find the support code for any part of the silicon (of course it may be written in a deliberately very obfuscated way!)

 

But I would still return to the classic argument (which is why Linux is pervasive) that "if everything you can ever think of doing is already catered for in Linux why wouldn't you just use it anyway?". I don't see much attraction/point in developing bare metal for any silicon that has a Linux port (BSP). Even if you develop a whole OS no one is going to want to use it anyway because "everyone else is using Linux and that's where all the support is".

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

clawson wrote:
I don't see much attraction/point in developing bare metal for any silicon that has a Linux port (BSP).
Microchip nee Atmel SAMA5

The 1MB object code Linux kernel can be onerous (sizing, GPLv2 + syscall exception), 100KB for a heavy RTOS is an excellent fit for automobiles and mechatronics, 10kB for a lightweight RTOS can be fit and function for some applications.

Automotive Linux is there and growing especially for autonomous vehicles (a reasonably certified OS that can run applications written in a memory-safe computer language)

clawson wrote:
Even if you develop a whole OS no one is going to want to use it anyway because "everyone else is using Linux and that's where all the support is".
counterpoint - Windows 10 IoT Core is on some Raspberry Pi.

 


https://github.com/atmelcorp/atmel-software-package/blob/master/LICENSE.md

in GitHub - atmelcorp/atmel-software-package: Atmel Software Package

WebHome < Linux4SAM < TWiki via Welcome to AT91SAM Community Discussions - Index page (very top, left)

http://community.qnx.com/sf/wiki/do/viewPage/projects.bsp/wiki/AtmelAT91SAMA5D3XEvaluationKit

...

[license Apache v2]

...

via http://community.qnx.com/sf/wiki/do/viewPage/projects.bsp/wiki/BSPAndDrivers via QNX Neutrino RTOS

Apache License 2.0 (Apache-2.0) Explained in Plain English - TLDRLegal

Suggested Prototype Boards - Windows IoT | Microsoft Docs (Raspberry Pi at bottom)

 

edit : QNX 7 (previous was QNX 6)

Board Support Packages – BSPs - QNX

...

BeagleBone Black

...

 

"Dare to be naïve." - Buckminster Fuller

Last Edited: Tue. Jul 2, 2019 - 05:30 PM
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

After the rush is over and the new Pi is in stock at places like Adafruit, I guess I am going to have to get one and brush up on my 30 year old Unix.  I still seem to remember cc does a compile and grep around, grep around, I grep around (to the tune of I Get Around) let's me find text strings in files.  I dont have a Linux machine.  We are a strictly Windows household, although one of my Windows 7 machines only has WiFi turned on long enough to synch DropBox periodically.  I had a little problem with the last update and had to do two restores to finally get it to start without the update.  It is a tiny machine with with a tiny version of Windows Starter.  Having 64 bit doubles would be a treat for doing scientific calculations,and easier than dealing with Visual C#, although C# makes nice GUIs.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

tpappano wrote:
I have a couple of them running Logitech Media Server, Kodi, and driving a stereo 24 bit dac via spi.
USB stereo audio DAC are popular.

OSMC

OSMC is a free and open source media center built for the people, by the people.

...

runs on a new arrival

Raspberry Pi Media Center Kit for Raspberry Pi 3 - Adafruit | Mouser

[video starts at 1:10 for about 3m30s]

 

"Dare to be naïve." - Buckminster Fuller

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

MarkThomas wrote:
I still seem to remember cc does a compile and grep around, grep around, I grep around (to the tune of I Get Around) let's me find text strings in files.  I dont have a Linux machine.  We are a strictly Windows household
For my sins all my current work is in Windows so I don't even other to run a Linux VM any more but I would find it almost impossible to operate if I didn't at least have grep !

 

Anyone who has AS7 installed on their Windows PC does have:

 Directory of C:\Program Files (x86)\Atmel\Studio\7.0\shellutils

22/06/2018  14:22            29,568 basename.exe
22/06/2018  14:22            68,480 cat.exe
22/06/2018  14:22            89,984 chgrp.exe
22/06/2018  14:22            87,936 chmod.exe
22/06/2018  14:22            92,032 chown.exe
22/06/2018  14:22            30,592 chroot.exe
22/06/2018  14:22            31,616 cksum.exe
22/06/2018  14:22            32,128 comm.exe
22/06/2018  14:22           136,064 cp.exe
22/06/2018  14:22            82,304 csplit.exe
22/06/2018  14:22            44,928 cut.exe
22/06/2018  14:22           134,528 date.exe
22/06/2018  14:22            93,568 dd.exe
22/06/2018  14:22            87,936 df.exe
22/06/2018  14:22           186,752 dir.exe
22/06/2018  14:22            36,736 dircolors.exe
22/06/2018  14:22            30,080 dirname.exe
22/06/2018  14:22           114,560 du.exe
22/06/2018  14:22            31,104 echo.exe
22/06/2018  14:22            30,080 env.exe
22/06/2018  14:22            33,664 expand.exe
22/06/2018  14:22            68,480 expr.exe
22/06/2018  14:22            37,248 factor.exe
22/06/2018  14:22            23,936 false.exe
22/06/2018  14:22            36,736 fmt.exe
22/06/2018  14:22            32,640 fold.exe
22/06/2018  14:22           134,528 gdate.exe
22/06/2018  14:22            31,104 gecho.exe
22/06/2018  14:22           141,184 ginstall.exe
22/06/2018  14:22           108,416 gln.exe
22/06/2018  14:22            75,136 gmkdir.exe
22/06/2018  14:22            31,104 grmdir.exe
22/06/2018  14:22           102,272 gsort.exe
22/06/2018  14:22            79,232 head.exe
22/06/2018  14:22            31,616 hostid.exe
22/06/2018  14:22            29,568 hostname.exe
22/06/2018  14:22            34,176 id.exe
22/06/2018  14:22           141,184 install.exe
22/06/2018  14:22            46,464 join.exe
22/06/2018  14:22            34,688 kill.exe
22/06/2018  14:22            37,760 link.exe
22/06/2018  14:22           108,416 ln.exe
22/06/2018  14:22            30,080 logname.exe
22/06/2018  14:22           186,752 ls.exe
22/06/2018  14:22           331,136 make.exe
22/06/2018  14:22            48,000 md5sum.exe
22/06/2018  14:22            75,136 mkdir.exe
22/06/2018  14:22            67,456 mkfifo.exe
22/06/2018  14:22            73,600 mknod.exe
22/06/2018  14:22           144,768 mv.exe
22/06/2018  14:22            32,128 nice.exe
22/06/2018  14:22            72,064 nl.exe
22/06/2018  14:22            34,176 nohup.exe
22/06/2018  14:22            92,032 od.exe
22/06/2018  14:22            32,128 paste.exe
22/06/2018  14:22            64,896 pathchk.exe
22/06/2018  14:22            75,136 pinky.exe
22/06/2018  14:22           127,360 pr.exe
22/06/2018  14:22            29,056 printenv.exe
22/06/2018  14:22            51,072 printf.exe
22/06/2018  14:22           117,120 ptx.exe
22/06/2018  14:22            67,456 pwd.exe
22/06/2018  14:22            66,432 readlink.exe
22/06/2018  14:22           115,072 rm.exe
22/06/2018  14:22            31,104 rmdir.exe
22/06/2018  14:22            32,640 seq.exe
22/06/2018  14:22            31,616 setuidgid.exe
22/06/2018  14:22            48,000 sha1sum.exe
22/06/2018  14:22            93,056 shred.exe
22/06/2018  14:22            33,664 sleep.exe
22/06/2018  14:22           102,272 sort.exe
22/06/2018  14:22            78,208 split.exe
22/06/2018  14:22         1,447,824 srec_cat.exe
22/06/2018  14:22            81,792 stat.exe
22/06/2018  14:22            55,680 stty.exe
22/06/2018  14:22            84,352 su.exe
22/06/2018  14:22            42,368 sum.exe
22/06/2018  14:22            29,056 sync.exe
22/06/2018  14:22            98,176 tac.exe
22/06/2018  14:22            94,080 tail.exe
22/06/2018  14:22            30,592 tee.exe
22/06/2018  14:22            68,992 test.exe
22/06/2018  14:22            84,864 touch.exe
22/06/2018  14:22            49,024 tr.exe
22/06/2018  14:23            23,936 true.exe
22/06/2018  14:23            32,640 tsort.exe
22/06/2018  14:23            29,568 tty.exe
22/06/2018  14:23            39,808 uname.exe
22/06/2018  14:23            34,688 unexpand.exe
22/06/2018  14:23            38,784 uniq.exe
22/06/2018  14:23            30,592 unlink.exe
22/06/2018  14:23            38,272 uptime.exe
22/06/2018  14:23            41,344 users.exe
22/06/2018  14:23           186,752 vdir.exe
22/06/2018  14:23           106,368 wc.exe
22/06/2018  14:23            79,232 who.exe
22/06/2018  14:23            30,592 whoami.exe
22/06/2018  14:23            29,056 yes.exe
22/06/2018  14:23            75,136 [.exe
              99 File(s)      8,237,712 bytes

but sadly they didn't include things like grep.exe, awk.exe, sed.exe so it's a pretty poor collection of Linux utilities. Thankfully for Windows users there is:

 

http://gnuwin32.sourceforge.net/packages.html

 

An alternative would be to install Cygwin.

 

Oh and yes, I know, Windows has findstr - one day I'll work out how to use it!