Another quick contest for a free FEZ Cobra

So here is another easy one for you…

The first one to guess how many IOs exist on FEZ Cobra gets a free one. You need to tell us exactly how many IOs and how did you know how many!
This is very easy one and we expect a guess very shortly.

Update: we also need to know how many analog pins are there, how many interrupt pins and how many PWM pins!!

Matt and Chris, sorry you can’t participate. You guys already have won :slight_smile:

76 GPIO.

Because it is based upon EMX chip as disclosed in latest SDK release notes.

Not correct. Some of those IOs are used for SD cards, USB…and other things. So, EMX has 76 IO total but then how many are on FEZ Cobra?

We wanted this to be more challenging so we updated the contest. You now need to know how many

  1. digital pins
  2. interrupt capable pins
  3. pwm pins
  4. analog pins

We also need to know how did you come up with these numbers :slight_smile:

Then 37… because that is what is on the J2 headers of the EMX dev sys.

Here my answer:

7 PWM pins
34 interrupt capable pins
6 analog pins
48 digital pins

I use the object browser for counting the pins , but not sure if it is correct :stuck_out_tongue:

Good luck.

76 GPIO Pins

6 taken by SD card Interface and if you used the same scheme as as the emx dev mofule none are interrupt pins

So that leaves 70 to start with
7 Analog
6 PWM All digital
6 interrupts that are also analog
33 interupts that are digital
63 would be the suspected digital available at this time.

1 Com/usb Ports 2 interrupt 2 regular digital each
Which take the above numbers down to
31 interrupt pins and
61 digital pins

maybe another 1 Com/usb Ports 2 interrupt 2 regular digital each
Which take the above numbers down to
29 interrupt pins and
59 digital pins

Then if we take out maybe can loader stuff or bootloader and what not that is 2 more digital pins and 2 more interrupt pins.
So 57 Digital pins or 59 if only using 1 com port.
and 27 interrupt pins or 29 if only using 1 com port.

Next if you still have the LCD driver stuff included and consider that separate that is 20 more digital pins gone and 10 more interrupt pins by the EMX dev design.
Which could mean
47 Digital PIns
7 interupts.

After that.

So it could be any of those stages Depending on how far you want someone to break it down and how much you put into said device. Since all we know it base chip set and nothing more it is not as easy as you would think depending on how the firmware is configured and you have segmented out the board.

So there is my pulling it out of my butt guess :> i am done staring as spec sheets and design files for the day thank you. :>

Here goes

  1. Digital pins

Total : 52
Excluding Buttons (ButtonDown,ButtonUp,ButtonSelect) : 49
Excluding LED : 51
Excluding Buttons and LED : 48

Pins with no alternate chip or board functions : 11

  1. Interrupt capable pins

Total : 34
Excluding Buttons (ButtonDown,ButtonUp,ButtonSelect) : 31

  1. PWM pins

Total : 7
Excluding LED : 6

  1. Analog pins

Total : 6
ADC (input) : 5
DAC (output) : 1

This was derived looking at the EMX Module Pin-out PDF and browsing the FEZCobra_GHIElectronics.NETMF.FEZ.dll

-Rajesh

From the DLL
I/O0-int
I/O1-int
I/O2-int
I/O3-int
I/O4-int
I/O5-int
I/O6-int
I/O7-int
I/O8-int
I/O9
I/O10
I/O11-int
I/O12-int
I/O13
I/O14
I/O15
I/O16
I/O17-int
I/O18-int
I/O19-int
I/O20-int
I/O21-int
I/O22-int
I/O23-int
I/O24-int
I/O25-int
I/O26-int
I/O27-int
I/O28
I/O29
I/O30-int
I/O31
I/O32-int
I/O33-int
I/O34
I/O35-int
I/O36-int
I/O37-int
I/O38-int
I/O45-int
I/O46-int
I/O47
I/O48
I/O49
I/O50
I/O71
I/O74
I/O75

aout

ad2
ad3
ad5
ad6
ad7

pwm0
pwm1
pwm2
pwm3
pwm4
pwm5

48 general/digital IO
6 analog
6 pwm
31 interupts

No idea where you found aout, so I would say:

48 general/digital IO
5 analog
6 pwm
31 interupts

although it probably won’t make any sense.

Great to see that it comes with buttons attached:
*Up
*Down
*Select

Found with Visual Studio (Adding components and checking pins with and without components)

        FEZ_Pin.AnalogIn;
        FEZ_Pin.AnalogOut;
        FEZ_Pin.Digital;
        FEZ_Pin.Interrupt;
        FEZ_Pin.PWM;

Good job!

Yeah I was on the same page as you before i edited my post i noticed the analog out a few lines above the IO0…

Good luck either way. Not like i wont own it like the other 10-12 micro controllers laying around the house I have. From propellers to arduino to pure avr butterflys and pics, 3-4 versions of stamps plenty to play with a choose from depending on the situation.

Ok. But if you check it out in visual studio, you cannot use aout, and therefor it does not count as a IO (I guess)

Haha nice collection you got there! I have AVR and a domino (planning a lot more in the future)

The pity part is that I thought of this during dinner too (checking in visual studio, not via DLL) but you were first. I guess it’s up to the aout :stuck_out_tongue:

Good luck!
If you win this contest, you absolutely deserve it.

Regards

Yeah i would have to wait till i get home to plug it into VS. that was my goal once i got there though.

Haha so we were on the same line with thoughts!
I will check out the forum tomorrow, very curious now.

Again, good luck and thanks GHI/tinyclr!
Regards.

You guys got it correct but it is still slightly wrong or some info are missing!! :slight_smile:

I think you guys are all winners but we are still trying to see if we can get the perfect answer with explanation, similar to Rajesh’s answer.

Note that your answer maybe correct but you didn’t explain how you found the answer

Trick question…
It has one IO… after another :slight_smile:

From visual Studio right from a project with the dll loaded

Total I/O removing buttons and led analog + digital = 53
Total I/O including buttons and led analog + digital = 57

Analog 5 since one in is a out
AD2
AD3 also analog out
AD5
AD6
AD7

PWM 6 or 7 removing the led or not
LED
PWM0
PWM1
PWM2
PWM3
PWM4
PWM5

Interrupts 34 or 31 removing the buttons
ButtonDown
ButtonSelect
ButtonUp
IO0
IO1
IO2
IO3
IO4
IO5
IO6
IO7
IO8
IO11
IO12
IO17
IO18
IO19
IO20
IO21
IO22
IO23
IO24
IO25
IO26
IO27
IO30
IO32
IO33
IO35
IO36
IO37
IO38
IO45
IO46

Digital IO 52 48 if you remove buttons and led.
ButtonDown
ButtonSelect
ButtonUp
IO0
IO1
IO2
IO3
IO4
IO5
IO6
IO7
IO8
IO9
IO10
IO11
IO12
IO13
IO14
IO15
IO16
IO17
IO18
IO19
IO20
IO21
IO22
IO23
IO24
IO25
IO26
IO27
IO28
IO29
IO30
IO31
IO32
IO33
IO34
IO35
IO36
IO37
IO38
IO45
IO46
IO47
IO48
IO49
IO50
IO71
IO74
IO75
LED

So the analog can both be used as digital and analog and the other things i listed from the spec.

Total I/O removing buttons and led analog + digital = 48
Total I/O including buttons and led analog + digital = 52

9 P0.25 IO6* ADC2/COM4 ADC2 (10Bit Analog to Digital Input) or Serial port (UART) TXD transmit signal (Out) for COM4.
10 P0.26 IO7* ADC3/ DAC/COM4ADC3 (10Bit Analog to Digital Input) or DAC (Digital to Analog
31 P0.12 IO45* ADC6 ADC6 (10Bit Analog to Digital Input).
32 P0.13 IO46* ADC7 ADC7 (10Bit Analog to Digital Input).
33 P1.31 IO47 ADC5 ADC5 (10Bit Analog to Digital Input).

very very very close! You are right about AOUT being shared with an AIN on the same pin. This was missing before but there is one last thing that no one noticed just yet.

It maybe very difficult to find but we want to see if someone would find it.

I guess, If I ask. How many InputPort objects I can make without getting an exception then what would the answer be? The LED wouldn’t make sense on Input Port but let us pretend it is okay.