Some correction to update bootloader.
[ul]Download G400 bootloader installer (make sure 2016 SDK is install with g400 Tools).
Copy
G400 Bootloader.2.0.2.bin in G400 bootlader installer directory.
Update Bootloader.tcl file with new name: replace booloader.bin with G400 Bootloader.2.0.2.bin.
Connect pin 8 on socket 3 to ground. Press reset and after 3 sec remove connection on this pin.
Open a command line (for me, it canāt work when just launch Flash booloader.bat with double-click on it) and launch .bat file.
Wait some minutes until Bootloader complete message appears.[/ul]
More drivers today for Gadgeteer TinyCLRā¦
-DisplayNHVN (new haven module) - I use Dave touch controller driver for the capacitive touch, thanks mate
-AccelG248 (accelerometer)
-CharacterDisplay
-CurrentACS712
-Gyro
-RotaryH1
Note:
Serial Camera L1 : I need to wait for the next TinyCLR release because there is a few methods/properties that doesnāt have an implementation in Serial Communication Class
more driversā¦
-MaxO (there is a bug when initialize the SPI, please help)
-Xbee Adapter (waiting for serial com. impl. completed)
-Touch C8
-Breakout TB10
@ Gus - yes, bug in my code, when I try to create spi device from id : āSPI1ā. I have tried spi mode 0 to spi mode 3, I got the same error. suggestion ?
this is my last commit while waiting for the next TinyCLR release⦠(and I need your help to fix driver for MaxO and VideoOut)
more drivers:
-Relay X1
-VideoOut (I have got a problem when calling setdisplayconfiguration) -> if (ud != 0x55 && ud != 0x54) this.ErrorPrint(āSetting the display configuration failed.ā); Can I configure SDA and SCL pins manually with TinyCLR ? )
-CellularRadio (waiting for serial com. implementation and PPPSerialModem)
-RFID (waiting for serial com. implementation complete)
I canāt continue to these modules till usb host, filesystem, networking are ready
Here is how I am initializing a ST7735 display same as the N18 . In my code, I an using fixed pins and SPI2 but you can modify to accommodate your configuration.
public ST7735()
{
var gpio = GpioController.GetDefault();
ControlPin = gpio.OpenPin(G80.GpioPin.PE10);
ControlPin.SetDriveMode(GpioPinDriveMode.Output);
ResetPin = gpio.OpenPin(G80.GpioPin.PE12);
ResetPin.SetDriveMode(GpioPinDriveMode.Output);
BacklightPin = gpio.OpenPin(G80.GpioPin.PC7);
BacklightPin.SetDriveMode(GpioPinDriveMode.Output);
// Initialize SPI
var spiConnectionSettings = new SpiConnectionSettings(G80.GpioPin.PD10) { ClockFrequency = 48000000, Mode = SpiMode.Mode3, DataBitLength = 8, SharingMode = SpiSharingMode.Shared };
var devices = DeviceInformation.FindAll();
for (var x = 0; x < devices.Length; x++)
{
if (devices[x].Id == "SPI2")
{
Spi = SpiDevice.FromId(devices[x].Id, spiConnectionSettings);
}
}
Reset();
Initialize();
Backlight = true;
}
Thank you very much, my mistakes were to not define DataBitLength and to initialize SpiConnectionSettings with 0 (in NETMF, it must be 0).
Now itās working.
Take a look at your code at Line 197. Put in a breakpoint at this line and see what the value of ud is.
In line 198, you are testing for ud to be not both equal to either 0x55 and 0x54.
if (ud != 0x55 && ud != 0x54)
this.ErrorPrint("Setting the display configuration failed.");
This will always return true as a single byte cannot be both two values at once. Perhaps you mean to be testing with a Logical OR || rather than a Logical AND &&