Need a powerful NETMF device at below cost? We have a few CANxtra on clearance, grab yours while they last. It’s priced low but CANxtra is based on the Embedded Master module running EMX firmware. With a lot of RAM and flash, a little display for graphics and full blown TCP/IP support with SSL, you can’t afford to miss out!
We will not offer these in the future. All design files including EAGLE are already online.
Please keep using this thread for support on CANxta specific hardware questions. If you are asking general questions on EMX firmware the please make new thread.
OK So my Canxtra just arrived , And I can at least get the Hello World console running. How do I talk to the display? The example for the non-tft display in the support page doesnt work…
Thanks for the quick reply. I am able to get the example working on the emulator, it just doesn’t work on the CANxtra box. Here is my code :
using System.Threading;
using Microsoft.SPOT;
using System;
using Microsoft.SPOT.Presentation;
using Microsoft.SPOT.Presentation.Media;
namespace MFConsoleApplication1
{
public class Program
{
public static void Main()
{
// Bitmap LCD = new Bitmap(124, 64);
Bitmap LCD = new Bitmap(SystemMetrics.ScreenWidth,SystemMetrics.ScreenHeight);
Debug.Print("LCD size = " + SystemMetrics.ScreenWidth + " , " + SystemMetrics.ScreenHeight);
//clears the memory and not the display
LCD.Clear();
//draw on memory
LCD.DrawLine(Colors.Green, 1, 10, 10, 40, 40);
//transfer the bitmap memory to the actual display
LCD.Flush();
//sleep a bit
Thread.Sleep(4000);
}
}
}
When I run on the emulator, the debug print shows a screensize of 320,240, on the CANxtra box it is 0,0. I tried specifying 128x64 but that didnt work either.
It is interesting that the CANxtra box boots up with some diagnostics :
CANxtra
Version: 4.1.3.0
Debug: USB1
LCD: 0,0 <--------------------- interesting?
IP: 192.168.1.200
MAC: blah
Managed Heap: blah again
Custom heap size: blah
There are no clear instructions for the CANxtra box, on how to update it. It is not a FEZ (Ive successfully updated firmware on my domino and a couple of pandas) - The instructions to update EMX firmware tell you to press some buttons, there are no buttons on the canxtra box as shipped - do I have to wire some up?
Thanks, that was very helpful! I successfully got the tinybooter + firmware (4.1.6 - which i think is latest) updated. Now the diagnostic reports LCD: 128,64, and the SystemMetrics.ScreenWidth is correct as well.
Unfortunately, whenever I LCD.Flush - I have a completely black screen. Ive tried various colors for my lines… no help. Any ideas? Code works on the emulator (using the SystemMetrics for the bitmap initialization) and now at least the device is aware it has a 128x64 display.
Hi. I ordered a couple of CANxtra’s. I’m struggling to get the firmware updated. I’m connected on COM1, 115200 N81N. Should I see something in the debug / console window when the devices boot? I see nothing… and it is not responding to the % symbol as indicated in GHI Electronics – Where Hardware Meets Software
You need to send % repeatedly and fast while the device is being powered. You may need help from another person to power CANxtra while you hit % quickly.
The code is wrong to start with FEZ_Pin.Digital.IO33 is a FEZ pin. You should only use EMX pins. Remove any FEZ-named dll from your project completely. Use “…hadrware.emx” instead
The documentation (schematics/brochure) shows the pins available on the db25. Pick the right one and use it in your code.
If anybody is interested, here is some code to get 7 shades of yellow.
public static Microsoft.SPOT.Presentation.Media.Color GetColor(int Shade)
{
//Limit Shade to values between 0 and 15
Shade=Shade & 0xf;
//Shift the shade into the correct place in the color value.
return (Microsoft.SPOT.Presentation.Media.Color)(Shade << 19);
}
CANxtra_Broch_Pinouts.pdf states 16 bits per pixel. The Web page state 4 bits per pixel. Thus far i’m only getting 3 bits per pixel. But that is plenty… ;D
Edit: found the 4’th bit, now code has full 16( 16 with black included) shades.