chipKIT® Development Platform

Inspired by Arduino™

Announcing the Picadillo TFT screen from 4D Systems

Created Thu, 19 Jun 2014 11:33:04 +0000 by majenko


majenko

Thu, 19 Jun 2014 11:33:04 +0000

I have finally been given the go-ahead to blab about what I have been doing for the past few months.

4D Systems approached me and asked me to assist in the design and production of a new PIC32 based TFT screen, and here's the results: [attachment=0]picadillo.jpg[/attachment] I'm really quite pleased with what we ended up with. At the core it's a MAX32, but with the footprint of an UNO32 and a TFT screen (nice high res 320x480) connected to the Parallel Master Port (so it's nice and fast).

The first boards are now off the production line any day now, and they're taking orders for them on their website, priced $99.00

[url]http://www.4dsystems.com.au/product/PICadillo_35T/[/url]

It's fully supported by UECIDE (of course), and the next release of MPIDE will also have support for it.

Programming the TFT is fairly easy, as my powerful TFT library has been especially modified to work with it. I am also working on supporting the widget files (.gci and .dat) from 4D Systems Visi Genie, so crafting good looking GUIs is a doddle.


majenko

Mon, 07 Jul 2014 22:10:31 +0000

[attachment=1]4DProducts-Banner10%off.jpg[/attachment] Guys! I have managed to wangle you all 10% off all 4D Systems' products!

This is to celebrate the release of the Picadillo-35T, and the offer lasts until the end of this month! So, if there's something you always wanted from them (like a PICadillo!!!!) now is the time to buy it!

All you need is the discount code: MAJENKO10 (that's makenko - one - zero) and you'll get 10% off everything!

[url]http://4dsystems.com.au[/url] [attachment=0]PICadillo35T-Banner10%off.jpg[/attachment]


w5uxh

Wed, 23 Jul 2014 23:40:32 +0000

Just ordered one. I realize it is a graphic panel, but I wonder if it will be practical to support simple text in a small window? What I would like to be able to do is display text as typed in real time (at speeds like 60 wpm), scrolling, preferably over several lines in the window.

I tried this a few years ago on a small panel I played with, driven from a ATmega328P, but at the time it did not seem very practical with that panel.


guymc

Thu, 24 Jul 2014 01:21:34 +0000

This looks fantastic... Thanks, Majenko!!


w5uxh

Sat, 02 Aug 2014 17:01:49 +0000

Just some comments, I have had the PICadillo for two or three days now. Having the equivalent of a Max32 so nicely integrated with the TFT display is great.

Your library allows me to try functions and slowly figure out how to migrate my application that uses a 4x20 character LCD to the TFT.

I had only barely started migrating to the Max32 from the ATmega328P, and have been able to continue that migration to the PICadillo right away.

I really like UECIDE also, much nicer than MPIDE / Arduino. I had never used the Arduino IDE, preferring to use AVR-Studio and WINAVR, but it looks like I will be plenty happy with UECIDE.

Thanks!


majenko

Sat, 02 Aug 2014 20:40:04 +0000

Glad you like it :)

I'm trying to make UECIDE a half way house between the horrors of the Arduino IDE and the sheer bulk of MPLAB-X, etc. Give it the day-to-day functions that you use all the time but leave out all the cruft and bloat that the full IDEs tend to have. If I find I need the full debugging facilities that MPLAB-X gives me (as I found I have needed this evening) I quit all other programs, load it up and go make myself a cup of tea. Later on I get to use it ;)

UECIDE I just load and use and I'm happy :) Plus if I need it to do something else I just program it to :P


guymc

Sat, 02 Aug 2014 23:25:22 +0000

So, does the PICadillo come with a chipKIT bootloader? I didn't see anything about that on the 4D Systems page...

Thanks


w5uxh

Sat, 02 Aug 2014 23:41:18 +0000

Matt will reply of course, all I know is I added the board package in UECIDE and the PICadillo downloads just like my ChipKit Max32.

I also tried a Fubarino and a ChipKit DP32, both of which required pressing two switches for loading. On my OS X Mac Mini the serial port also switched back and forth between a FTDI like port (?) for the application and the STK500 (?) for loading, and that was clumsy.

I run a Win7 virtual machine under Fusion on the Mac and even though I click the button to tell it to remember to connect both ports to the Mac, it does not work with those two boards, the Mac / VM prompts me every time to click which machine to connect to. The Max32 and PICadillo work nicely. No buttons to press on the board for download, and my system "remembers" which machine to connect the port to.


majenko

Sun, 03 Aug 2014 07:19:08 +0000

So, does the PICadillo come with a chipKIT bootloader? I didn't see anything about that on the 4D Systems page... Thanks

Yep, standard chipKIT bootloader, and the configuration etc is in the bootloader repository: [url]https://github.com/chipKIT32/PIC32-avrdude-bootloader/blob/master/BootloadersCurrent-hex/PICadillo-35t.hex[/url]

I also tried a Fubarino and a ChipKit DP32, both of which required pressing two switches for loading. On my OS X Mac Mini the serial port also switched back and forth between a FTDI like port (?) for the application and the STK500 (?) for loading, and that was clumsy.

That's odd - they shouldn't do that. They should be seen as the same device whether they are in programming or run mode. The USB descriptors should be the same.


w5uxh

Sun, 03 Aug 2014 11:43:49 +0000

Possibly confusion on my part, or something to do with the virtual machine business, but I will not revisit it now. I'll make a note to check them out again sometime in the future.

Thanks.

That's odd - they shouldn't do that. They should be seen as the same device whether they are in programming or run mode. The USB descriptors should be the same.


w5uxh

Sun, 03 Aug 2014 12:38:34 +0000

Argh, I decided to go revisit it anyway! Neither the Fubarino nor the DP32 are not doing what I described. Perhaps something to do with a 69 year old brain remembering things from a week or two ago???

There was still some confusion, but both boards are now connecting properly without a need for me to respond to tell the virtual machine stuff which machine to connect to.

But I still do not care for having to press buttons to go into program mode, I like the more automated behavior with the Max32 and PICadillo, no buttons to press, just click the GUI to download to the boards.


majenko

Sun, 03 Aug 2014 12:51:35 +0000

Well, that's the price you pay for having a direct USB connection rather than having a USB to Serial chip in between. Yes, it is slightly more bothersome uploading your program, but the benefits far out weight the single problem. Basically you're not limited to just a serial connection - you could have any number of different USB endpoints. I have been experimenting with adding USB Keyboard, Mouse and HID support to it all, which you would have no chance doing with something like a MAX32 (not without adding extra stuff to at any rate).

We have been having discussions in the steering group about ways to make it possible to reboot into programming mode without having to use a button, but not come to any sensible conclusions yet. The Leonardo from Arduino does it, but I for one don't like how it does it as it seems rather clunky and relies on the USB interface always running even if you're not using it.


w5uxh

Sun, 03 Aug 2014 13:25:02 +0000

Interesting, I know nothing about USB, so all such bits of information are useful. My level of understanding such things is to decode the data from PS-2 keyboards :D

[color=#0040FF]USB Keyboard support on both the DP32 and Fubarino would be of much interest to me. [/color] A few years ago I did a MBED project and managed to stumble around and integrate an existing library into my code. I did not understand the low level operations at all, but it was nice to be able to work with it. Unfortunately, the hardware on the MBED was susceptible to static discharges in our low humidity desert environment, and the USB Keyboard interface would hang up and require a hard reset of the processor to recover.

My projects are strictly hobbyist, a never ending sequence over 50 years of building devices to send "Morse Code" (CW) in ham radio applications and there always seems to be a new piece of hardware to play with. Years ago it required lots of TTL chips, so the world has certainly changed.


w5uxh

Tue, 05 Aug 2014 00:27:52 +0000

This is now merely a curiosity--> while working with the touch screen, I was trying to find the definitions for LCD_XL etc. in this statement:

[color=#0040FF]AnalogTouch ts(LCD_XL, LCD_XR, LCD_YU, LCD_YD, 320, 480);[/color]

I used grep to try to find all references to LCD_XL etc. and could only find them in the various example sketches.

Initially I was looking at this until I found the ts.setRotation function, but now it is only a curiosity since I just can't find them anywhere. Must be right under my eyes somewhere????

Where are the definitions hiding?


w5uxh

Tue, 05 Aug 2014 03:44:32 +0000

An even better deal than majenko's 10% discount, they have a five day 25% off sale with code MEGA25N, Aug 5 - Aug 9.

Shipping to the US is expensive of course, so 25% off helps offset that. Might have to order a second one.


majenko

Tue, 05 Aug 2014 08:48:28 +0000

This is now merely a curiosity--> while working with the touch screen, I was trying to find the definitions for LCD_XL etc. in this statement: [color=#0040FF]AnalogTouch ts(LCD_XL, LCD_XR, LCD_YU, LCD_YD, 320, 480);[/color] I used grep to try to find all references to LCD_XL etc. and could only find them in the various example sketches.
Initially I was looking at this until I found the ts.setRotation function, but now it is only a curiosity since I just can't find them anywhere. Must be right under my eyes somewhere???? Where are the definitions hiding?

Those are defined in the PICadillo's board configuration files. Check under ~/.uecide/boards/


majenko

Thu, 07 Aug 2014 10:48:38 +0000

I've got some of these now to sell myself, so they're in my eBay shop. Save big time on postage (both cost and time) if you're in the UK!

[url]http://www.ebay.co.uk/itm/191278201195[/url]


w5uxh

Mon, 25 Aug 2014 13:16:01 +0000

No idea where to post this question, so I will try here. Is there a way to change the button text "on the fly"?
e.g. I have some UP and DOWN buttons for parameters and would like to dynamically change the step size from 1 to 5 by pressing a "step size" button.

I initialize the buttons like this:

// Paddle speed DOWN button
twButton pdlSpeedDOWN(tft, ts, PDL_SPEED_DOWN_BUTTON, "D");

where "D" is the label. But I would like to initialize them with a label like "-5" or "+1" and be able to change from one step size to another on the fly.


majenko

Mon, 25 Aug 2014 18:30:24 +0000

It doesn't have that functionality at the moment, though it should be easy enough to add it.

For now, just make two buttons each with different text and choose which one to display?

Also, if the text is held in RAM, then you can just modify the text in RAM and it will change it in the widget.


majenko

Mon, 25 Aug 2014 18:36:19 +0000

Ok, that was easy - I just added a '.setLabel(...text...);' function to the twButton class. It's in github now.


w5uxh

Mon, 25 Aug 2014 20:30:22 +0000

Great, I have been playing with options, but think the new feature will be nice, thanks.

[color=#4080FF]Where should I post to report that I never (pretty sure it is never) receive notification for replies or notifications for watched topics or watched forums? This has worked fine in the UECIDE forum. [/color] I have looked around several times and not been able to find a setting that I have wrong, so I have to remember to come back and refresh to look for replies.

I have "Notify me when a reply is posted" selected, and have a number of watched forums and topics.


majenko

Mon, 25 Aug 2014 20:32:00 +0000

It's a known issue, and Go Badly (aka Go Daddy) are (we think) to blame.

We basically have the option of a form that works without emails, or a forum that doesn't work and times out all the time, but with working emails.


w5uxh

Mon, 25 Aug 2014 20:53:07 +0000

I grabbed the .setLabel feature and it does exactly what I needed, many thanks.

Regarding the lack of email notifications, it is a minor pain for me but you guys must really find it a major pain unless you have work arounds for admin types, which I would hope you do!


majenko

Mon, 25 Aug 2014 20:54:45 +0000

My workaround is to wear out my F5 button refreshing the Unread Posts page many many times in a day ;)

Two screens helps as well.