I received my RPi2 earlier. Sadly, it seems to be faulty and won't boot. The red power LED comes on when it is powered up and there is a brief flash from the green LED, but no activity after that. I've tried my original unit, and that boots without any problems, so the PS and SD card must be OK. I'll contact RS about a replacement tomorrow.
Did you grab the ARM v7 kernel and create a new SD? SD's that boots on teh RasPi 1 won't boot on the RasPi 2 from what I've read. They have v6 and v7 versions of the kernels now.
Certainly in Linux and Windows your code is normally loaded and run in into a virtual memory space and isolated from other apps memory and isolated from direct access to the hardware.
However, it is quite possible to map hardware registers into an application's memory space for direct access by the app in Linux. Given that it has the privileges to do so.
Perhaps one can do that in Windows as well. I have no idea.
Alternatively one can create ones own drivers to do that in Linux, heck put your entire app into a kernel module if you like and get down to the hardware. All the tools required to do that are in Raspbian on the Pi out of the box.
I have no idea what VM's have to do with any of this.
I think the point here is that this Win 10 for the Pi seems horribly crude and one wonders what the point is.
Did you grab the ARM v7 kernel and create a new SD? SD's that boots on teh RasPi 1 won't boot on the RasPi 2 from what I've read. They have v6 and v7 versions of the kernels now.
Thanks, Rick and Heater.
I didn't know that. I'll try creating a new SD card and see if that works. I can;t see anything for the RPi2 in the download section on the Raspberry Pi web site, though. and the forum is down again. The latest NOOBS is dated 2/2/15, so perhaps it is suitable.
Certainly in Linux and Windows your code is normally loaded and run in into a virtual memory space and isolated from other apps memory and isolated from direct access to the hardware.
However, it is quite possible to map hardware registers into an application's memory space for direct access by the app in Linux. Given that it has the privileges to do so.
Perhaps one can do that in Windows as well. I have no idea.
The comments made were something to the effect that Windows 10 on RPI2 was command line based, and not even as capable as DOS because Windows won't allow direct access to the hardware and this is almost completely untrue. Like any OS, what can be done is limited by what hardware there is.
Windows, like Linux, can allow programs to directly interface with the hardware... IF the appropriate drivers and tools are installed.
I, here, have several tools that allow me to do things like read and write individual sectors, change partition tables and such, on a hard disc drive and perform similar tasks on flash media- USB and SD cards and even modify my PC's BIOS... all from within Windows, just like Linux.
Alternatively one can create ones own drivers to do that in Linux, heck put your entire app into a kernel module if you like and get down to the hardware. All the tools required to do that are in Raspbian on the Pi out of the box.
Can do that in Windows too, but they don't put the supporting tools to accomplish that in Windows, but one can download Visual Studio and the Windows DDK for free.
I have no idea what VM's have to do with any of this.
I think the point here is that this Win 10 for the Pi seems horribly crude and one wonders what the point is.
The point in mentioning VM's was to show that the assertion mentioned about Windows not allowing direct access to the hardware was incorrect, even at the lowest levels of the kernel and hardware. For instance, I can run Linux in a VM on Windows and modify the physical hard drive, if it is exposed to the VM, from within the VM using Linux tools. I guess that all but completely negates the assertion Windows, a.k.a. DOS 10, doesn't allow direct access to the hardware.
Now, Win10 on the PI, should be able to run any Win10 app that is either compiled for ARM, or compiled as a "universal" app. The only restraints are based on what hardware the app requires and what the RPI2 has connected to it, and an adept developer would code for whatever the basic requirements are and extend things up to support more robust interfaces... much like how Linux, at its core when used as an interactive computer OS and not simply as a low level arbiter with some other interface installed... like Android for instance, is command line driven but the installation of a GUI and such is possible if the hardware supports it... like Android, for instance.
And, I'd like to apologize if I came off inappropriately. It just pangs me to see banter offered out without consideration as to what is actually correct and true.
I just noticed this on the RPi2 announcement web page:
Raspberry Pi 2 is available to buy today from our partners element14 and RS Components. Remember you'll need an updated NOOBS or Raspbian image including an ARMv7 kernel and modules from our downloads page.
It looks as though that latest version of NOOBS will do the trick. I've downloaded it and it seems to be working OK.
I just checked the RS web site and they have another 14,400 units arriving before Thursday (that's this Thursday). I'll put an order in for five and I can then let Bill, Heater and anyone else who wants one have one at cost, plus postage. How does that grab you?
If I remember correctly under DOS and similar operating systems one could access the hardware with a simple:
outb(address, value)
Which pretty much mapped onto an assembler instruction like:
outb address, value
Sorry if the syntax is not correct.
On Windows and Linux this is not possible, one has to go through a shed load of pain to get those "value" bits into the hardware register. Write a device driver or figure out how to use memory mapped register space. Either way you have thousands of machine instructions between your code and the "metal". Not to mention an indeterminate length of time depending on how the task scheduling is going.
Anyway, as it stands a simple Linux install allows you to do all that. All the compilers and tools are there on the very machine, the Pi say.
Does Win 10 come with all those tools in the Pi install? Are they available?
Now, given the emphasis on "IoT" here. Does this Win 10 install come with suitable servers? An ssh server? A web server? Does it have "Iot" things like MQTT?
We want to know.
I'm probably going to sign up for the MS program to find out for myself.
If I remember correctly under DOS and similar operating systems one could access the hardware with a simple:
outb(address, value)
Which pretty much mapped onto an assembler instruction like:
outb address, value
Sorry if the syntax is not correct.
On Windows and Linux this is not possible, one has to go through a shed load of pain to get those "value" bits into the hardware register. Write a device driver or figure out how to use memory mapped register space. Either way you have thousands of machine instructions between your code and the "metal". Not to mention an indeterminate length of time depending on how the task scheduling is going.
Anyway, as it stands a simple Linux install allows you to do all that. All the compilers and tools are there on the very machine, the Pi say.
Does Win 10 come with all those tools in the Pi install? Are they available?
Now, given the emphasis on "IoT" here. Does this Win 10 install come with suitable servers? An ssh server? A web server? Does it have "Iot" things like MQTT?
We want to know.
I'm probably going to sign up for the MS program to find out for myself.
I can't, with any authority, answer many of those questions, but at least you do acknowledge the process, whether under Linux or Windows, isn't as simple as it was purported to be under DOS.
RE: RPI2 / Win10... my understanding is the RPI2 is a "target", so whatever is compiled for it would be done in a more "proper" PC environment and the OS could be considered a "runtime" environment for the system, which isn't that much different than putting any OS on any system when you think about it.
From there, I'm not sure whether the RPI2 could develop and deploy things for itself with Win10; only time will tell.
Similarly, Microsoft's position seems to be develop against and utilize Azure, but I don't see anything in VS that precludes one from using some other 'cloud'. But so far it seems to be that their "free" development stuff is tied to non-commercial ventures, as has always been the case with anything "express" Microsoft has released whether SQL, IIS or Visual Studio.
...but at least you do acknowledge the process, whether under Linux or Windows, isn't as simple as it was purported to be under DOS
What? I don't just acknowledge it, that was the entire point of my post in the first place!
And what's with the "purported to be"? I was there I did it. With a bit of attention to DOS system calls you could have your cooperative multi-tasking program continue to do work whilst one task was waiting for data to come back from that slow old floppy or hard drive.
...my understanding is the RPI2 is a "target", so whatever is compiled for it would be done in a more "proper" PC environment and the OS could be considered a "runtime" environment for the system, which isn't that much different than putting any OS on any system when you think about it.
When I think about it I see it's very different.
For sure you have to "bootstrap" an OS on a new platform but...
A Linux system, like Raspian on the Pi, is totally capable of rebuilding itself. On Raspian one could compile the kernel and modules and all the other supporting software you need to recreate Raspian. How cool is that?!
I haven't tried SimpleIDE yet, but I am aware of some quite perplexing issues on the release OS distribution for Pi 2. A simple C program set to delay 1000us, 1000 times will, for example, repeatably run for >15sec ( yes I know delays aren't absolute, but >15sec instead of 1sec is pretty severe and definitely not normal! ) and this behaviour breaks all sorts of things. It's being looked into, I also don't know what else might be affected.
I haven't tried SimpleIDE yet, but I am aware of some quite perplexing issues on the release OS distribution for Pi 2. A simple C program set to delay 1000us, 1000 times will, for example, repeatably run for >15sec ( yes I know delays aren't absolute, but >15sec instead of 1sec is pretty severe and definitely not normal! ) and this behaviour breaks all sorts of things. It's being looked into, I also don't know what else might be affected.
hmm. not quite the clone they expected it seems ?
( ~15 seconds would be where a ~286MHz clocked 32 bit timer wraps )
Ray never did come back to us about his problems with SimpleIDE on the Pi.
I just wanted to make sure that it is known to be a problem, at least for me. I will work around this by just having the program compiled with SimpleIDE RC2 on my Windows 7 box. I am guessing that the problem might be because the version for the Raspberry Pi is SimpleIDE 0-9-45 and the latest version for Windows is RC2. I believe that 0-9-45 had some issues with how it worked with XMMC mode.
It would be a lot more convenient for me if the version for Raspberry Pi was up to RC2, but ... I will just have to wait until a SimpleIDE version 1.0 for the Raspberry Pi shows up, and go from there.
OK Ray, I'm sure this will work itself out eventually. Seems the Pi builds are always behind the Windows builds which are always behind whatever is current.
Last night I started checking out assembler for the ARM.
Seriously thinking about my own microcontroller software using the Pi2 with 4 ARMv7 cores @900MHz
Comments
Except probably DOS was better as you could get to the hardware directly
I which case, if the SD boots up fine there, it seems you have to do an "apt-get update; apt-get upgrade" before moving the card over to the Pi 2.
This should get you a new kernel and modules etc that the Pi 2 needs. And also still work in the old Pi.
Did you grab the ARM v7 kernel and create a new SD? SD's that boots on teh RasPi 1 won't boot on the RasPi 2 from what I've read. They have v6 and v7 versions of the kernels now.
Isn't that what "drivers" in Linux and Windows do?
Even the concept of running a VM requires the super/hypervisor to directly access hardware so it can partition and allocate access to those things.
I'm not sure what you are getting at.
Certainly in Linux and Windows your code is normally loaded and run in into a virtual memory space and isolated from other apps memory and isolated from direct access to the hardware.
However, it is quite possible to map hardware registers into an application's memory space for direct access by the app in Linux. Given that it has the privileges to do so.
Perhaps one can do that in Windows as well. I have no idea.
Alternatively one can create ones own drivers to do that in Linux, heck put your entire app into a kernel module if you like and get down to the hardware. All the tools required to do that are in Raspbian on the Pi out of the box.
I have no idea what VM's have to do with any of this.
I think the point here is that this Win 10 for the Pi seems horribly crude and one wonders what the point is.
Thanks, Rick and Heater.
I didn't know that. I'll try creating a new SD card and see if that works. I can;t see anything for the RPi2 in the download section on the Raspberry Pi web site, though. and the forum is down again. The latest NOOBS is dated 2/2/15, so perhaps it is suitable.
Windows, like Linux, can allow programs to directly interface with the hardware... IF the appropriate drivers and tools are installed.
I, here, have several tools that allow me to do things like read and write individual sectors, change partition tables and such, on a hard disc drive and perform similar tasks on flash media- USB and SD cards and even modify my PC's BIOS... all from within Windows, just like Linux.
Can do that in Windows too, but they don't put the supporting tools to accomplish that in Windows, but one can download Visual Studio and the Windows DDK for free.
The point in mentioning VM's was to show that the assertion mentioned about Windows not allowing direct access to the hardware was incorrect, even at the lowest levels of the kernel and hardware. For instance, I can run Linux in a VM on Windows and modify the physical hard drive, if it is exposed to the VM, from within the VM using Linux tools. I guess that all but completely negates the assertion Windows, a.k.a. DOS 10, doesn't allow direct access to the hardware.
Now, Win10 on the PI, should be able to run any Win10 app that is either compiled for ARM, or compiled as a "universal" app. The only restraints are based on what hardware the app requires and what the RPI2 has connected to it, and an adept developer would code for whatever the basic requirements are and extend things up to support more robust interfaces... much like how Linux, at its core when used as an interactive computer OS and not simply as a low level arbiter with some other interface installed... like Android for instance, is command line driven but the installation of a GUI and such is possible if the hardware supports it... like Android, for instance.
And, I'd like to apologize if I came off inappropriately. It just pangs me to see banter offered out without consideration as to what is actually correct and true.
Raspberry Pi 2 is available to buy today from our partners element14 and RS Components. Remember you'll need an updated NOOBS or Raspbian image including an ARMv7 kernel and modules from our downloads page.
It looks as though that latest version of NOOBS will do the trick. I've downloaded it and it seems to be working OK.
Very good. We will be interested in hearing about any performance improvements you may find.
If I remember correctly under DOS and similar operating systems one could access the hardware with a simple: Which pretty much mapped onto an assembler instruction like: Sorry if the syntax is not correct.
On Windows and Linux this is not possible, one has to go through a shed load of pain to get those "value" bits into the hardware register. Write a device driver or figure out how to use memory mapped register space. Either way you have thousands of machine instructions between your code and the "metal". Not to mention an indeterminate length of time depending on how the task scheduling is going.
Anyway, as it stands a simple Linux install allows you to do all that. All the compilers and tools are there on the very machine, the Pi say.
Does Win 10 come with all those tools in the Pi install? Are they available?
Now, given the emphasis on "IoT" here. Does this Win 10 install come with suitable servers? An ssh server? A web server? Does it have "Iot" things like MQTT?
We want to know.
I'm probably going to sign up for the MS program to find out for myself.
Hey, I already love you for ever for "Understanding the 68000".
I've placed the order. I've got a trade account so I get free shipping.
I've powered my unit on and off a few times (shutting it down properly, of course), and everything seems OK. I'll have a proper play with it tomorrow.
All right. P.M. us how much and where to pay.
I can't, with any authority, answer many of those questions, but at least you do acknowledge the process, whether under Linux or Windows, isn't as simple as it was purported to be under DOS.
RE: RPI2 / Win10... my understanding is the RPI2 is a "target", so whatever is compiled for it would be done in a more "proper" PC environment and the OS could be considered a "runtime" environment for the system, which isn't that much different than putting any OS on any system when you think about it.
From there, I'm not sure whether the RPI2 could develop and deploy things for itself with Win10; only time will tell.
Similarly, Microsoft's position seems to be develop against and utilize Azure, but I don't see anything in VS that precludes one from using some other 'cloud'. But so far it seems to be that their "free" development stuff is tied to non-commercial ventures, as has always been the case with anything "express" Microsoft has released whether SQL, IIS or Visual Studio.
And what's with the "purported to be"? I was there I did it. With a bit of attention to DOS system calls you could have your cooperative multi-tasking program continue to do work whilst one task was waiting for data to come back from that slow old floppy or hard drive. When I think about it I see it's very different.
For sure you have to "bootstrap" an OS on a new platform but...
A Linux system, like Raspian on the Pi, is totally capable of rebuilding itself. On Raspian one could compile the kernel and modules and all the other supporting software you need to recreate Raspian. How cool is that?!
Checkout "Linux From Scratch": http://www.linuxfromscratch.org/
and for the Pi: http://www.intestinate.com/pilfs/
In fact, that is almost how Raspian is built.
Of course one does not do that unless one is an obsessive geek because it will take a long time...
I look forward to "Windows From Scratch"
First test production panel:
You know me too well:)
Or perhaps not at all...
@Gadgetoid,
Excellent.
Is that a picure from a Pi camera module ?
Nope! It's just a horribly, horribly compressed picture from my Phone. Twitter doesn't do nice things to photos.
Did you do the same tests as this earlier post, which claimed problems in some compile settings.
http://forums.parallax.com/showthread.php/159936-Raspberry-Pi-2-released.-PropellerIDE-faster-on-ARM.?p=1313878&viewfull=1#post1313878
Sounds like compiled code compiled supposedly ok, but only almost runs as expected
Perhaps start separate thread covering Building & testing PropellerIDE on Pi2
so this does not get buried ?
Ray never did come back to us about his problems with SimpleIDE on the Pi.
There are so may variables in there it's a bit premature to point fingers at compile setting used when building anything on whichever Pi or other.
( ~15 seconds would be where a ~286MHz clocked 32 bit timer wraps )
Curious. I wish I had a Pi 2 here to test such code on. And SimpleIDE.
It would be a lot more convenient for me if the version for Raspberry Pi was up to RC2, but ... I will just have to wait until a SimpleIDE version 1.0 for the Raspberry Pi shows up, and go from there.
Ray
Last night I started checking out assembler for the ARM.
Seriously thinking about my own microcontroller software using the Pi2 with 4 ARMv7 cores @900MHz