kaspencer
Posts: 94
Joined: Wed Mar 07, 2012 11:37 pm
Location: UK, England, Wiltshire

RPi Pico - Windows support for development.

Sat Jan 23, 2021 12:11 am

I received my order of two RPi Picos today. I connected one to my Windows PC, and was easily able obtain and load the "blink.uf2 program. But in the publication "Getting_started_with_Pico.pdf" the details of obtaining, installing and setting up tools for compiling the code, are limited to developing on the Raspberry Pi proper - there seems to be no reference to MS-Windows until Chapter 8, section 8.2.
I am really disappointed at this fairly poor way in which setting up the support for developing software in C on MS Windows is explained in that s "Getting_started_with_Pico.pdf" Guide.
For example, the chapter "Building on MS-Windows" doesn't start at the beginning of the setting up process: rather it starts in the middle with "to build you will need to install some **extra** tools" (emphasis is mine). That's all well and good, but none of the earlier chapters mention the installation and setup of their components in MS-Windows which are required in advance of Chapter 8/8.2, only in Linux, on a Raspberry Pi proper.
I know it is early days after the release of the board, but I do wish that the MS-Windows chapter could have been made complete, mirrorring for MS-Windows what has been decribed for Linux. In this respect, the Arduino platform (which I have used for serious projects over several years with about 5 different flavours of Arduino boards) is a long way ahead of support for the RPi Pico.
Sorry to be so critical - I am delighted with the Pico concept, and its price, but I really wish the instructions for setting up for MS-Windows were so much clearer, and complete!
Kenneth Spencer
2xRPi 1, 2xRPi 2, 2xRPi4.
KODI: on RPi 2.
Webserver: on RPi 2.
PDC & fileserver: 4TB disc +RiscOS Pi on RPi 2 + 4.
Book: All about your computer - http://goo.gl/ZQf7c7

User avatar
jahboater
Posts: 8511
Joined: Wed Feb 04, 2015 6:38 pm
Location: Wonderful West Dorset

Re: RPi Pico - Windows support for development.

Sat Jan 23, 2021 1:56 am

You have several Raspberry Pi's, including two Pi4's - why not develop on one of them?
Easier and quicker.

W. H. Heydt
Posts: 16108
Joined: Fri Mar 09, 2012 7:36 pm
Location: Vallejo, CA (US)

Re: RPi Pico - Windows support for development.

Sat Jan 23, 2021 2:22 am

Most Windows systems don't have language processors (e..g. compilers) on them.

cleverca22
Posts: 7007
Joined: Sat Aug 18, 2012 2:33 pm

Re: RPi Pico - Windows support for development.

Sat Jan 23, 2021 2:28 am

Code: Select all

[clever@amd-nixos:~/apps/rpi/pico/pico-sdk]$ docker run --rm -it ubuntu
root@babd9dee270c:/# apt-get update
root@babd9dee270c:/# apt-get install git cmake gcc-arm-none-eabi python3 g++
root@babd9dee270c:/# git clone https://github.com/raspberrypi/pico-examples
root@babd9dee270c:/# mkdir pico-examples/build
root@babd9dee270c:/# cd pico-examples/build/
root@babd9dee270c:/pico-examples/build# export PICO_SDK_FETCH_FROM_GIT=1
root@babd9dee270c:/pico-examples/build# cmake ..
root@babd9dee270c:/pico-examples/build# make -j8
i recently built the examples in docker as a quick test, and windows also supports docker, so you could just use that

User avatar
DougieLawson
Posts: 42327
Joined: Sun Jun 16, 2013 11:19 pm
Location: A small cave in deepest darkest Basingstoke, UK

Re: RPi Pico - Windows support for development.

Sat Jan 23, 2021 11:32 am

W. H. Heydt wrote:
Sat Jan 23, 2021 2:22 am
Most Windows systems don't have language processors (e..g. compilers) on them.
That's easy to fix in one (or both) of two ways.

1. Install the Ubuntu bash subsystem
https://docs.microsoft.com/en-us/window ... tall-win10
Note: I've not tried installing the ARM or AARCH64 pieces in that bash subsystem.

2. Install Microsoft VS2019 and add the remote Linux pieces
https://visualstudio.microsoft.com/downloads/
https://docs.microsoft.com/en-us/cpp/li ... x-computer

This may not be relevant to the Pico, yet.
Languages using left-hand whitespace for syntax are ridiculous

DMs sent on https://twitter.com/DougieLawson or LinkedIn will be answered next month.
Fake doctors - are all on my foes list.

The use of crystal balls and mind reading is prohibited.

kaspencer
Posts: 94
Joined: Wed Mar 07, 2012 11:37 pm
Location: UK, England, Wiltshire

Re: RPi Pico - Windows support for development.

Sat Jan 23, 2021 12:36 pm

OK - thanks everyone for those comments - it seems that I will be able to get something going with those ideas. I just wasn't expecting to have to quite so much preparation. The Arduino platform is more or less one step install and get developing!
Before I comment on the ideas: does anyone have an explanation of the significance of the file extension for the Pico executables - uf2 ?
1. DougieLawson & WHeydt
I have written applications in C (for DOS under DOS, and Windows under Windows) since 1986 (Zortech/Zorland>Symantec>Visual Studio) and more recently for the RPi (under Linux) and Arduino (under their IDE).
I have noted your proposal and will give it a try.
2. Jahboater
I may yet have to do that, but it is my preference to develop under Windows.
3. Cleverca22
Thanks - I'll give that idea a try too.

Kenneth Spencer
2xRPi 1, 2xRPi 2, 2xRPi4.
KODI: on RPi 2.
Webserver: on RPi 2.
PDC & fileserver: 4TB disc +RiscOS Pi on RPi 2 + 4.
Book: All about your computer - http://goo.gl/ZQf7c7

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

Re: RPi Pico - Windows support for development.

Sat Jan 23, 2021 1:03 pm

UF2 is a Microsoft developed file format for flashing microcontrollers. Check the FAQ.
Principal Software Engineer at Raspberry Pi Ltd.
Working in the Applications Team.

User avatar
nick.mccloud
Posts: 1280
Joined: Sat Feb 04, 2012 4:18 pm

Re: RPi Pico - Windows support for development.

Sat Jan 23, 2021 2:51 pm

With the best will in the world, expecting Raspberry Pi to major on a Windows development environment is a little ambitious!

I think there will be a fair few people blindsided by the reality gap between Arduino (which I use professional as well) and the RP2040 / Pico.

But rest assured, the gap is a mere couple of bunny hops on large solid stones over a babbling brook in pleasant sunshine. Try the step from Arduino to almost all the other ARM MCU vendors and you are looking at traversing the Bog of Eternal Stench.
Pico/RP2040 ≠ Arduino
Pico = hot rod kit car, Arduino = hot rod kit car wrapped in cotton wool with buoyancy aids & parachute

User avatar
MikeDB
Posts: 1499
Joined: Sun Oct 12, 2014 8:27 am

Re: RPi Pico - Windows support for development.

Sat Jan 23, 2021 3:48 pm

nick.mccloud wrote:
Sat Jan 23, 2021 2:51 pm
With the best will in the world, expecting Raspberry Pi to major on a Windows development environment is a little ambitious!
Why ? If RPT are expanding their userbase with the Pico, they need to consider supporting professional tool environments, which whether people like it or not is predominantly x86 and at least 50% Windows. I'd hate to think how long some of my DSP development tools would take to run on a Pi4, even if they could be installed there and use all cores.

Try the step from Arduino to almost all the other ARM MCU vendors and you are looking at traversing the Bog of Eternal Stench.
Arduino on STM32s is very usuable. I always suggest new users on the Electrosmith Daisy (an audio platform) to start with Arduino before migrating to libdaisy. And never touch the ST tools !
Always interested in innovative audio startups needing help and investment. Look for InPoSe Ltd or Future Horizons on LinkedIn to find me (same avatar photograph)

User avatar
ash73
Posts: 69
Joined: Mon Jan 30, 2017 12:52 pm

Re: RPi Pico - Windows support for development.

Sat Jan 23, 2021 3:51 pm

There was a guy on YouTube last night trying to figure out on the fly how to get it working on Windows, it was like watching a golden retriever attempt calculus.

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

Re: RPi Pico - Windows support for development.

Sat Jan 23, 2021 6:02 pm

MikeDB wrote:
Sat Jan 23, 2021 3:48 pm
nick.mccloud wrote:
Sat Jan 23, 2021 2:51 pm
With the best will in the world, expecting Raspberry Pi to major on a Windows development environment is a little ambitious!
Why ? If RPT are expanding their userbase with the Pico, they need to consider supporting professional tool environments, which whether people like it or not is predominantly x86 and at least 50% Windows. I'd hate to think how long some of my DSP development tools would take to run on a Pi4, even if they could be installed there and use all cores.

Try the step from Arduino to almost all the other ARM MCU vendors and you are looking at traversing the Bog of Eternal Stench.
Arduino on STM32s is very usuable. I always suggest new users on the Electrosmith Daisy (an audio platform) to start with Arduino before migrating to libdaisy. And never touch the ST tools !
We are a Linux shop. We sell a Linux device which is more than adequate to develop on for the Pico. We produce a Linux desktop for x86. But we have also tested the Pico dev system (VSCode) on Windows and Mac to make sure it works. We've also got instructions for Eclipse which work on Windows. As far as we are concerned, VSCode IS a professional environment. If vendors of other tool system want to work with Pico, I am sure we would talk with them and help out.

The main issue for me is that Windows is horrible to develop on if you are used to Linux (I am originally from a Windows background just in case you were wondering). Tools are difficult to install and get working. Whereas everything "just works" on Linux.
Principal Software Engineer at Raspberry Pi Ltd.
Working in the Applications Team.

User avatar
jahboater
Posts: 8511
Joined: Wed Feb 04, 2015 6:38 pm
Location: Wonderful West Dorset

Re: RPi Pico - Windows support for development.

Sat Jan 23, 2021 6:41 pm

nick.mccloud wrote:
Sat Jan 23, 2021 2:51 pm
With the best will in the world, expecting Raspberry Pi to major on a Windows development environment is a little ambitious!
Seriously?

Firstly Windows does not even come with any sort of development environment (you have to install it separately later and usually pay for it - yes I know there is a minimal "express" compiler for free).
The Raspberry Pi on the other hand comes with a rich suit of tools pre-installed. You have for example, Python, C, Ada, C++, Go, D, Fortran, Ojective C, Objective-C++ and Assembler (at least), and all manner of essential development tools such as debuggers, profilers, test coverage generation etc etc all included within the distro - as standard. Windows includes nothing (unless its changed recently). Using WSL is the best you can do - which is ironic.

Last time I used MSVC it was very out of date and MS stated that they were not going to support recent ISO standards. MinGW on the other hand (GCC for Windows) was bang up to date, more advanced, better optimized, and free. I've not gone near MSVC for ten years or so; it may have improved.
GCC (that is included free within Raspberry Pi OS) is often referred to as the gold standard amongst compilers.

Having been a software engineer for decades working on countless platforms over the years (including Windows and MSDOS), I would choose Raspberry Pi OS any day - a 100 times over!

The RPF's choice of Linux for teaching programming on the Pi was inspired.
That is apart from the fact it doesn't cost about four times the price of the computer hardware :)

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

Re: RPi Pico - Windows support for development.

Sat Jan 23, 2021 7:25 pm

I think that might be what Nick was saying!

One way to look at this. A full Pico dev system, with HW debugger, costs $35 (plus tax and postage), or $55 if you want 4GB of RAM....

You might need to add $10-$20 worth of breadboard and wires.

How much is a Windows licence?

I know, a bit tongue in cheek, but getting in to Pico dev work can be exceptionally cheap compared with doing it via a Windows box. Perhaps this will drive more people to use Linux, which benefits us all in the long run.
Principal Software Engineer at Raspberry Pi Ltd.
Working in the Applications Team.

User avatar
nick.mccloud
Posts: 1280
Joined: Sat Feb 04, 2012 4:18 pm

Re: RPi Pico - Windows support for development.

Sat Jan 23, 2021 9:07 pm

jamesh wrote:
Sat Jan 23, 2021 7:25 pm
I think that might be what Nick was saying!
Yes, that's what I meant, to paraphrase myself, expecting the home of the most popular Linux computer on the planet to put Windows first and foremost as a development environment is expecting turkeys to vote for Christmas. Particularly for embedded development - it's just not its forte.

I think the use of VSCode was inspired and whilst Eclipse is not my friend and I'm not in love with VSCode, you have two IDE's on the three major OS's. Plus CLion. So that's three. Plus roll your own integration where you can do a build. All that said, you are better spending your time on design & documentation because hitting build, flash, test, figure out is a great time sink. It would be hard to say Eclipse is not a professional environment given it is recycled by so many MCU companies as their IDE offering.

However I do want to backtrack slightly, the OP is correct, I've had a squint at the Windows instructions and they do jump in at a point that assumes you know, for instance, where to go get the ARM compiler from (yes, I know, 8.2.1 is a list of links, but it's not obvious). I'll actually do an install and make notes before one of my own customers decides to phone me on Monday morning all excited but struggling with their install.
Pico/RP2040 ≠ Arduino
Pico = hot rod kit car, Arduino = hot rod kit car wrapped in cotton wool with buoyancy aids & parachute

cleverca22
Posts: 7007
Joined: Sat Aug 18, 2012 2:33 pm

Re: RPi Pico - Windows support for development.

Sat Jan 23, 2021 9:13 pm

jamesh wrote:
Sat Jan 23, 2021 7:25 pm
One way to look at this. A full Pico dev system, with HW debugger, costs $35 (plus tax and postage), or $55 if you want 4GB of RAM....
just to see if it could, i built the pico-example on a pi0 yesterday, and the only real problem i had was a lack of free disk space

obviously, it takes forever to compile, but it is capable of it!

User avatar
MikeDB
Posts: 1499
Joined: Sun Oct 12, 2014 8:27 am

Re: RPi Pico - Windows support for development.

Sat Jan 23, 2021 9:30 pm

jamesh wrote:
Sat Jan 23, 2021 6:02 pm
We are a Linux shop. We sell a Linux device which is more than adequate to develop on for the Pico.
I bet you didn't design, develop and debug the Pico on Pis. I assume you used the Synopsys toolset which needs state of the art x86 PCs with Windows 10 or very specific Linux builds. My point was that whilst for most users a Pi4 will be fine, it isn't up to using state of the art software to develop things that are able to be run on the Pico. Some of my applications for the larger STM ARM H7 processors can take several hours on a 10 core Intel 10850k I9 to produce the final code image. The Pico is smaller of course but I bet others will reach similar bounds of needing an Intel device to generate the code on.
We produce a Linux desktop for x86. But we have also tested the Pico dev system (VSCode) on Windows and Mac to make sure it works. We've also got instructions for Eclipse which work on Windows. As far as we are concerned, VSCode IS a professional environment.
Agreed VSCode is a professional environment. Eclipse is well past it's use by date so not sure why you've bothered with that.

The main issue for me is that Windows is horrible to develop on if you are used to Linux (I am originally from a Windows background just in case you were wondering). Tools are difficult to install and get working. Whereas everything "just works" on Linux.
I would make the opposite statement. To me Linux is a nightmare that takes days to get everything working, usually requiring phoning a friend who's a Linux guru, whereas everything just works on Windows. For instance it took 3 days and several forum messages to get PiOS64 to display correctly with a bog-standard Samsung 4k monitor that Windows just recognises and works. And don't get me started on ALSA, Linux's audio 'solution'. Obviously we have very different experiences, possibly due to how we have our machines set up. I am sure others will have different experiences but let's not start a religious war.
Always interested in innovative audio startups needing help and investment. Look for InPoSe Ltd or Future Horizons on LinkedIn to find me (same avatar photograph)

cleverca22
Posts: 7007
Joined: Sat Aug 18, 2012 2:33 pm

Re: RPi Pico - Windows support for development.

Sat Jan 23, 2021 9:50 pm

jamesh wrote:
Sat Jan 23, 2021 6:02 pm
The main issue for me is that Windows is horrible to develop on if you are used to Linux (I am originally from a Windows background just in case you were wondering). Tools are difficult to install and get working. Whereas everything "just works" on Linux.
at my work, we needed to produce windows binaries and installers, and yeah the code to do that on windows CI (appveyor) was a bit ugly

i have since rewritten all of that to cross-compile everything on linux, so now any old aws server can just pump out a windows installer, and it doesnt need any special software installed

jdb
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 2782
Joined: Thu Jul 11, 2013 2:37 pm

Re: RPi Pico - Windows support for development.

Sat Jan 23, 2021 10:48 pm

MikeDB wrote:
Sat Jan 23, 2021 9:30 pm

I bet you didn't design, develop and debug the Pico on Pis. I assume you used the Synopsys toolset which needs state of the art x86 PCs with Windows 10 or very specific Linux builds.
Fun fact: there are certain parts of the RP2040 RTL that were home-grown and developed entirely on a Pi 4. Admittedly it was running TightVNC and the remote host was a gargantuan Intel Xeon machine running the asic toolchain on a specific (old) Linux distro, but the principle is sound.
Rockets are loud.
https://astro-pi.org

User avatar
bensimmo
Posts: 5815
Joined: Sun Dec 28, 2014 3:02 pm
Location: East Yorkshire

Re: RPi Pico - Windows support for development.

Sun Jan 24, 2021 8:29 am

I guess this was feedback to the instruction writers, rather than a debate on which computer system is best.
I know a lot that will use it from Windows because they have windows computer or laptops. A licence has nothing to do with it.

Just a note visual studio code is not the same as MSVC. (someone above)

VSCode is just an open source cross platform IDE.
On Windows it is probably best to install Windows for Linux Subsystem 2, then pick Debian or Ubuntu or both as you please.
Setup that as needed too.

Then in VSCode you just select which environment/terminal you want to compile in from the list.
Best of both, or more, worlds.


Also get Terminal or Terminal preview (from the store),. This gives you easy access to any terminal you have (cmd/power/debian...) again another open source MS thing.


I don't know how long RaspberryPi have been developing the current programming setup and been writing all the docs up.
But the things only just been released to people, Arduino been around for ages.
Give it time to get established.

User avatar
rpdom
Posts: 21217
Joined: Sun May 06, 2012 5:17 am
Location: Chelmsford, Essex, UK

Re: RPi Pico - Windows support for development.

Sun Jan 24, 2021 8:55 am

bensimmo wrote:
Sun Jan 24, 2021 8:29 am
Arduino been around for ages.
Give it time to get established.
I will.

Until then I'll mess around with the Pico ;-)

I just thought, when it comes to microcontrollers this will have added "o" to my experiences. From PIC to Pico.
Unreadable squiggle

otalado
Posts: 29
Joined: Tue Oct 27, 2015 4:17 pm

Re: RPi Pico - Windows support for development.

Sun Jan 24, 2021 9:00 am

Too much of the discussion on this topic seems to be part of the platforms war.

kaspencer asked a legitimate question and responses like jahboater's are just useless noise. jamesh validly pointed out that Raspberry Pi Foundation is Linux Shop. But he also said that RPF (succesfuly) tested Pico dev on Windows and Mac. So why not just post instructions for that? I read Pico SDK docs today and with its help, I can't figure how to set that up in the windows environment.

P.S.
jamesh asks: How much is a Windows licence? Answer: for many of us nothing as we already have it! (imo: such comments are not helping anybody at all)

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

Re: RPi Pico - Windows support for development.

Sun Jan 24, 2021 10:27 am

otalado wrote:
Sun Jan 24, 2021 9:00 am
Too much of the discussion on this topic seems to be part of the platforms war.

kaspencer asked a legitimate question and responses like jahboater's are just useless noise. jamesh validly pointed out that Raspberry Pi Foundation is Linux Shop. But he also said that RPF (succesfuly) tested Pico dev on Windows and Mac. So why not just post instructions for that? I read Pico SDK docs today and with its help, I can't figure how to set that up in the windows environment.

P.S.
jamesh asks: How much is a Windows licence? Answer: for many of us nothing as we already have it! (imo: such comments are not helping anybody at all)
We did post instructions. It all covered in the documentation published on launch day.

It looks as if there may be a gap in the Windows instructions though, so if someone could report that in the feedback repo it will get fixed.
Principal Software Engineer at Raspberry Pi Ltd.
Working in the Applications Team.

markkuk
Posts: 312
Joined: Thu Mar 22, 2018 1:02 pm
Location: Finland

Re: RPi Pico - Windows support for development.

Sun Jan 24, 2021 10:33 am

bensimmo wrote:
Sun Jan 24, 2021 8:29 am
On Windows it is probably best to install Windows for Linux Subsystem 2, then pick Debian or Ubuntu or both as you please.
Setup that as needed too.
WSL2 doesn't support USB pass-through or mounting USB drives, so it's pretty useless for any kind of microcontroller development.

User avatar
bensimmo
Posts: 5815
Joined: Sun Dec 28, 2014 3:02 pm
Location: East Yorkshire

Re: RPi Pico - Windows support for development.

Sun Jan 24, 2021 10:50 am

rpdom wrote:
Sun Jan 24, 2021 8:55 am
bensimmo wrote:
Sun Jan 24, 2021 8:29 am
Arduino been around for ages.
Give it time to get established.
I will.

Until then I'll mess around with the Pico ;-)
..
:lol:

User avatar
bensimmo
Posts: 5815
Joined: Sun Dec 28, 2014 3:02 pm
Location: East Yorkshire

Re: RPi Pico - Windows support for development.

Sun Jan 24, 2021 10:53 am

markkuk wrote:
Sun Jan 24, 2021 10:33 am
bensimmo wrote:
Sun Jan 24, 2021 8:29 am
On Windows it is probably best to install Windows for Linux Subsystem 2, then pick Debian or Ubuntu or both as you please.
Setup that as needed too.
WSL2 doesn't support USB pass-through or mounting USB drives, so it's pretty useless for any kind of microcontroller development.
But you transfer it via the normal windows interface?

(i.e. just mount a WSL2 folder as a drive in Windows Explorer and move it over that way ?)

Am I correct in thinking USB disc's are but 'flash' isn't ? It's just the 'flash' drive part that isn't (yet)


Me/ just giving alternatives over using a 'just windows' setup, since windows10 provides linux too.

Return to “General”