Mountaineer USB Mainboard - first test

Friday morning my package from Switzerland arrived and its being killing me as previous commitments Friday and Saturday have prevented me from trying it until now. I ordered the USB Mainboard from http://www.mountaineer-boards.com as I had heard some good things about this board from a couple of people so I was rather eager to try it out. The board is about half the size of the Cerberus and has built in power, so all you do is connect the USB to the mainboard and you have a powered system, complete with a button built into the mainboard so I whipped up my typically HelloWorld program, which is to flash the debug LED every half second.


using Microsoft.SPOT;

using GT = Gadgeteer;
using Gadgeteer.Modules.Mountaineer;

namespace MountaineerTest1
{
    public partial class Program
    {
        private bool _flash;
        private GT.Timer _timer;

        void ProgramStarted()
        {
            Debug.Print("Program Started");
            Debug.Print(Mainboard.MainboardName);
            Debug.Print(Mainboard.MainboardVersion);

            _timer = new GT.Timer(500);
            _timer.Tick += new GT.Timer.TickEventHandler(_timer_Tick);

            buttonForMountaineer.ButtonPressed += new ButtonForMountaineer.ButtonEventHandler(buttonForMountaineer_ButtonPressed);
        }

        void buttonForMountaineer_ButtonPressed(ButtonForMountaineer sender, ButtonForMountaineer.ButtonState state)
        {
            if (_timer.IsRunning)
            {
                _timer.Stop();
            }
            else
            {
                _timer.Start();
            }
        }

        void _timer_Tick(GT.Timer timer)
        {
            _flash = !_flash;
            Mainboard.SetDebugLED(_flash);
        }
    }
}

To start using this board everything you need is located here:

http://www.mountaineer.org/resources/

Including USB drivers and Mountaineer Gadgeteer 4.2 SDK and of course you will want to start by having a quick read of the ‘Get Started with Mountaineer’ intro to the platform as it explains installing everything and getting your first project running.

So far my experiences with the folks at Mountaineer would best be summed up as Jeremy Clarkson from Top Gear would say, ‘Gus’s European Cousins’, as they have been very helpful and answered all my questions etc.

In short I’ll be trying this board out in further experiments as it appears thus far to be a definite keeper.

I got a cousin? Awesome :slight_smile:

Yes these guys are great which what made our partnership with them.

By the way, I think the boards are ready to go in our production so you will see these boards on our catalog very soon.

I didn’t realize it is that small! Sounds like you are having some fun.

Yes it is smaller because the processor is on the back side. We put everything on one side to speed up manufacturing and lower the cost.

Thanks for that! Cerberus is plenty small for most projects. At roughly the same cost as a Hydra, it would be difficult to justify buying many of the Mountaineer boards.

[quote=“Duke Nukem”]So far my experiences with the folks at Mountaineer would best be summed up as Jeremy Clarkson from Top Gear would say, ‘Gus’s European Cousins’, as they have been very helpful and answered all my questions etc.

In short I’ll be trying this board out in further experiments as it appears thus far to be a definite keeper.
[/quote]

Looking forward to the update!

How is the STM32F407 related to the Cerberus’ processor (STM32F4)? Is it the same?

Look at the what I highlighted in your question :slight_smile: They are identical.

I kinda guessed … but wasn’t sure about the part you didn’t bold - “07”.

Thanks

@ Gus

So what will be the price for that board in your catalog?

Should be reasonable :slight_smile: It will be in stock in few days. It is at the production line as we speak.

If I remind correctly the stm32f407 has Ethernet Mac/phy embedded. The guys at mountaineer have implemented the firmware ?

The MAC is embedded, the PHY is not. It’s not clear to me why GHI and Oberon (apparently) have chosen to go with an ENC28J60 instead of using a PHY module (as is done with the Spider). Maybe the software is simpler to implement. Using a PHY would probably consume more I/O pins than the SPI solution, I guess. The upshot is that pre-built ENC28J60 modules are available very cheaply (a whole module can be had for much less than just the bare W5100 chip used by USBizi).

@ godefroi - ah you’re right.
With that mac configuration you need minimum 9 pin from mcu to connect a transceiver like Lan8720 chip. So spi use a lot less pins.

And you can share thd SPI pins even if they are used for enc28 Ethernet so you only lose 1 pin for SSEL

On our Mountaineer Ethernet Mainboards, we use the Ethernet controller built into the STM32F407 plus an external PHY chip (not an ENC28J60).

This was massively more work on the driver front, but should give the highest Ethernet performance, at the same time keeping the module count minimal.

I am really curious to see the performance difference between SPI and internal MAC. I know it is faster but how much faster?

I just learned that there are no 64-pin STM32 chips with a built-in MAC. You have to go 100 or more pins to get that.