|
Forum Index : Microcontroller and PC projects : Raspberry PI 2
| Page 1 of 3 |
|||||
| Author | Message | ||||
| G8JCF Guru Joined: 15/05/2014 Location: United KingdomPosts: 676 |
I finally received my Raspi2 from RS on Friday. All I can say is, "WOW", for GBP 30 it's a fantastic bit of kit, and really usable - I use VNC from a a PC to connect to my new Raspi2, and it's (almost) seenless [sic]. If you haven't invested in a PI so far, now is the time to get a PI. For GBP 30/USD 45 you will not find a more value for money computing platform anywhere, and, with such a huge amount of code/support. MMBasic4PI would be a truly magnificent achievement even if the real-time performance wasn't truly "real-time", but with a 1.2GHz clock perhaps the difference between "realtime, and near-realtime" might not actually matter in real life (except for those truly sub micro-second situations). Peter The only Konstant is Change |
||||
Grogster![]() Admin Group Joined: 31/12/2012 Location: New ZealandPosts: 9750 |
I was so impressed with the speed of the PI2 when I got mine, that I have used it to replace my ageing Windoze box as my main Mediaplayer. In the PI's case, it is running a recent version of OpenElec compiled for the new quad-core PI to take advantage of it. Full blu-ray HD is no problem for this new PI - the first gen one with the single core 700MHz would have had no chance at blu-ray HD. The only thing that stops me from using it as the basis of a home media server, is the fact that the network is still via the on-board USB chip and not a Gb ethernet. Not that I am complaining really - they have very tight cost considerations for the PI, so adding a Gb ethernet would no doubt push the cost up a lot more. I AM going to build a backup-server out of a PI A+, as these are only about twenty bucks. I will add an external USB ethernet-and-hub which will give it network access, and the extra USB sockets will be used for large-ish capacity flash drives. This server is going to be more of a file backup server, for small files created in applications(except video!). It will act as a dirt-cheap way to have a simple NAS for file backup without needing to spend more then about $40 all up including the USB hub. Smoke makes things work. When the smoke gets out, it stops! |
||||
| G8JCF Guru Joined: 15/05/2014 Location: United KingdomPosts: 676 |
The PI2 is staggeringly great value for money, but it doesn't come even close to a core i7 with 8 GBytes of RAM when it comes to raw performance. Power wise the PI2 is at least 10 if not 20 times more frugal than my PC, so if I was an environmentalist I would of course ditch my PC, but I'm not going to do that :) Anyway, what I said still stands, if you haven't got a PI, then go get a PI 2 and be prepared to be amazed as to just how much compute power and I/O you can get for GBP 30/USD 45 ! Now we just got to figure out how to get MMBasic (uMite version) in all it's I/O glory working on a PI - that would make a MegaMite ! Peter The only Konstant is Change |
||||
Grogster![]() Admin Group Joined: 31/12/2012 Location: New ZealandPosts: 9750 |
A member here(sorry, I forget who it was - robert.rozee?) was an advocate of running MMBASIC on the PI A+, and this is the PI I am going to build my little file-server out of as an experiment. I also seem to remember that Geoff himself had mentioned in one of his posts that porting MMBASIC to the PI was something he had given serious thought to - perhaps this could be the next port following the 470 and ARMmite. For that matter, as the PI is ARM-based, would the ARMmite port(once stable) be portable to the PI? Smoke makes things work. When the smoke gets out, it stops! |
||||
| WhiteWizzard Guru Joined: 05/04/2013 Location: United KingdomPosts: 2959 |
My thoughts exactly - hopefully MatherP and/or Geoff can comment on this . . . . |
||||
MicroBlocks![]() Guru Joined: 12/05/2012 Location: ThailandPosts: 2209 |
I thought you needed a binary 'blob' to be able to use the broadcom chips. And that blob is made for linux. Figuring out (reverse engineer) the thing would not be worth the effort as once you have figured it out the world has moved on to the Pi 4. There is a reason why the BBC did not choose the Pi. It is not a plug and play device. Microblocks. Build with logic. |
||||
Grogster![]() Admin Group Joined: 31/12/2012 Location: New ZealandPosts: 9750 |
Good point, TZA. Smoke makes things work. When the smoke gets out, it stops! |
||||
| astroboy Regular Member Joined: 28/12/2014 Location: AustraliaPosts: 41 |
Hi Sorry if its a silly question but I don't understand what you are saying here. Could you please explain. John |
||||
Grogster![]() Admin Group Joined: 31/12/2012 Location: New ZealandPosts: 9750 |
He PROBABLY means that as the PI needs a Linux volume on an SD card from which to boot up from, it is not plug-and-play because of that reason. Older computers from years back like Commodore 64, Atari, BBC, Amstrad, Sinclair etc all had a boot ROM, so that when you plug them in, at the very least, they will boot to a command prompt, usually from some kind of built-in ROM-based BASIC. The PI is different in that respect, and it won't even show you an error screen, if it can't find a boot code on the root of the SD card. The PI EXPECTS the bootcode to be there in the root of the SD card as part of a normal SD card setup. The PI promptly falls over if it can't actually find this bootcode. If you fire up a RP without an SD card in it, you could be forgiven for thinking the PI was faulty, as it won't even start the HDMI to show you an error message if the initial bootcode fails to load. You won't even get the LED's lighting up, other then the power one.
So, in the classroom, lost or corrupted Linux volume SD cards for the PI's totally prevent them from even booting up, which is why I guess TZA was referring to them as not plug-and-play. EDIT: I should have said that the PI uses the "Binary blob" - which is the bootcode.bin file, for initial startup, and this binary is designed to allow loading of a Linux kernel, which then takes over booting the rest of the system. I think that's how it all works, anyway - others feel free to correct me if I am mistaken. Smoke makes things work. When the smoke gets out, it stops! |
||||
| astroboy Regular Member Joined: 28/12/2014 Location: AustraliaPosts: 41 |
Thanks indeed Grogster. And what about "the BBC did not choose the Pi". Is that the British Broadcasting Corporation or something else? |
||||
Grogster![]() Admin Group Joined: 31/12/2012 Location: New ZealandPosts: 9750 |
Correct.
EDIT: I've done a little reading on the PI bootup thing, and found this on the net:
Smoke makes things work. When the smoke gets out, it stops! |
||||
| astroboy Regular Member Joined: 28/12/2014 Location: AustraliaPosts: 41 |
Well, its certainly a tangled web at boot time.
But this "binary blob" (bootcode.bin) is no secret. So perhaps it would not hinder someone porting the code? |
||||
CircuitGizmos![]() Guru Joined: 08/09/2011 Location: United StatesPosts: 1427 |
Isn't the secret all of the hardware? I thought that interfacing to the broadcom hardware was not public code? Micromites and Maximites! - Beginning Maximite |
||||
| G8JCF Guru Joined: 15/05/2014 Location: United KingdomPosts: 676 |
When I said MMBasic on PI, I don't think a true MMBasic only image for the PI is a practical goal - Broadcom will NOT make it easy to find out how to make stuff work on bare metal on the SOC - too much Intellectual Property is at risk for them - and the PI market is (despite selling 5 million units) a tiny drop in the ocean for them. Getting MMBasic to work under Raspbian (LINUX) on a PI with I/O performed via the the standard Linix mechanisms is practical (I believe), but of course that approach would not permit TRUE Realtime operation since the MMBasic interpreter would be at the mercy of the Linux task scheduler. However, given 1200 MHz clock, 1GB RAM etc, and setting the MMBasic task's priority to nice -20, for many if not most applications for which pure MMBasic programs are written, ie those which do NOT need CFunctions, I'd be willing to bet that NEAR Realtime would be plenty good enough, and for those situations where true realtime'ness is esential, eg Rotary Encoders, perhaps a 'MX170 running MMBasic MK II interfacing back to the PI via I2C/Serial would solve that problem. It might well be that IF - and it's a BIG IF, we were to attempt to port MMBasic - IN ALL IT'S GLORY - over to Raspbian - that the result might comprise of two parts 1) The core MMBasic interpreter running under LINUX, interfacing to the PI's I/O/Peripherals as per http://elinux.org/RPi_Low-level_peripherals 2) With an oprional I/O extender running on a 'MX170 which handles realtime I/O The key thing being that we would interface the I/O extender to the PI MMBasic, so that people could write programs in MMBasic, and have the intricacies of communicating with the I/O extender completely hidden/handled by the interpter, eg SetpinEx 3,Dout 'Set Pin 3 of the I/O Extender to be a Digital Output Setpin 3,Dout 'Set pin 3 of the native PI I/O to be a Digital Output PinEX(3) = 1 Pin(3)=1 and so on. I'm inside the ARMMite C source code every day these days, as is Peter Mather, so it might be something worth looking at. The fact that the STM32F and PI are both ARM chips is neither her nor there in reality, ie it makes very little/if at all any difference. The big thing is to find a good (and free) toolchain, ie gcc and friends, which will enable the porting to be carried out - I'm no expert at all at this toolchain stuff, but very luckily Peter Mather found CooCox which allowed us to work on the STM32F chipset for FREE - KEIL and co are just too expensive for a hobbyist/speculative work. So first step, GeoffG has to first approve of the intended activity, and the way that the activity will be undertaken, eg who, who gets what source-code, how betas will be distributed etc. Second Step - assuming we get Geoff's Blessing - is could someone who really knows about these things - @JohnS ? - tell us how to go about getting an IDE for ARM on PI installed on a PC please - preferably under Windows, but if needs be it could run under Linux - in my case under Mint in a VMWare virtual machine ? BTW, I don't think we should start on the PI until the STM32 port has been completed - which I believe it more or less has been. This will not be an easy/quick port especially the I/O extender part IMHO. What do people, particularly GeoffG and PeterM, think of this idea, am I barking up the wrong tree, is the proposed architecture optimal given all the constraints ? Peter The only Konstant is Change |
||||
Grogster![]() Admin Group Joined: 31/12/2012 Location: New ZealandPosts: 9750 |
Okey dokey. I thought that perhaps as they are both from the ARM family...
I vote to drop the PI idea then - if it is not going to be a simple-ish port over to it, why waste the effort, when the ARMmite will probably do for just about anything. ...and there is also the 470 series port to play with too... Smoke makes things work. When the smoke gets out, it stops! |
||||
| JohnS Guru Joined: 18/11/2011 Location: United KingdomPosts: 4126 |
They are both ARM. I use gcc for both. I don't wish to work on MMBasic as long as it stays closed source. John |
||||
| halldave Senior Member Joined: 04/05/2014 Location: AustraliaPosts: 121 |
what about the completely open source version OpenPi built and invented in Nottingham, UK that might be worth porting to |
||||
| hitsware Guru Joined: 23/11/2012 Location: United StatesPosts: 535 |
Isn't the main advantage of MMBasic simply the hardware it will run on ? ( I.E. the Pic chips ) For a Pi why not choose a Basic written for Linux ? |
||||
mbramwel![]() Regular Member Joined: 10/07/2013 Location: CanadaPosts: 42 |
It was my understanding that someone already got mmbasic running in Linux 2 years ago: Granted it is missing lots of stuff but it is a start http://www.thebackshed.com/forum/uploads/vk2sja/2013-07-25_235108_Linux_MMBasic_ReadMe.pdf |
||||
Grogster![]() Admin Group Joined: 31/12/2012 Location: New ZealandPosts: 9750 |
You are right in the sense that the Linux version is compiled to work on i386 processors - Intel. I don't know if it would work on the ARM processor, as that is not what it was compiled for - perhaps someone here can clarify that, but if it was that simple, I expect people would have done it by now. Smoke makes things work. When the smoke gets out, it stops! |
||||
| Page 1 of 3 |
|||||
| The Back Shed's forum code is written, and hosted, in Australia. | © JAQ Software 2025 |