Showing posts from 2013

LCD success!

I can now blit coloured rectangles to a small 4" LCD. Bloody /RD (pin E1) was stuck as an output, even though I'm clearly telling it to be an input. This broke the LCD self-init. Why will have to wait for another day - for now, I've unplugged it. In other news: I can't set optimisations to O2 or O3 without my code crashing on startup. O1 is fine. Function calls appear to be very slow on the LM4F. Inlining a bunch of stuff speeded it up no end. Even with heavy inlining, it's still taking a while to draw the screen. We'll see how it goes when I'm rendering glyphs instead of boxes. Plus, 16 bit mode will help - I'm writing 3 bytes per pixel at the moment.

LCD frustration

So, I've been trying to get this Displaytech LCD module to function, as part of the Mazda's TFT dashboard. Without the aid of a scope or logic analyser, it was extremely difficult to debug the 8-bit parallel (8080 style) interface. So, I've managed to lay my hands on a Salea Logic16 - the most amazing logic analyser I've ever used. The software is just gorgeous, even under Linux. Unhooking my board and connecting the analyser instead, very quickly I was able to determine that the Displaytech module's on-board Atmega is sending valid commands at the panel on startup, configuring it as 480x272 as expected. Because when my Stellaris board comes along and reads out those registers I'm getting absurd values (15 x 793), this means my board is probably pulling a line during the critical startup phase. Next stop - connect it all back together and probe with a scope to find out what I'm doing wrong.

On-board diagnostics

I had a thought and figured I should write it down somewhere. The Jaguar supports OBD-II, as demonstrated by my Scan Gauge II. It's a big ugly having the gauge sat on the centre console by the gear lever, even if it does tidy away neatly into the arm rest when not in use. I'm sure with a an optoisolator like the one going in to the Mazda dashboard, I could knock up an OBD-II reader out of a the Stellaris Launchpad I'm going to use to decode the radio UI. This means I could put real-time stats on the radio UI. You could use the mode button to knock it between FM, DAB, MP3 and use, I don't know, the Dolby button to put it into real-time gauge mode. The skip up/down toggle would switch between PIDs. I did wonder if anyone had done any reverse engineering on the AJ9500R since I last looked about a year ago. Two of the top three entries on Google were written by me. I take that as a no then.

Stellaris update

I'm about to try and drive a 4.3" Display-Tech LCD from my Cortex-M4 powered Stellaris Launchpad board. Yes, this is a different LCD to the one I mentioned previously. I bought two 2.8" cheap and nasty eBay specials and one arrived cracked and the other wouldn't respond to some test code using uTFT. I gave up and decided to buy something a little more professional. Sadly, I seem to have bought the last one RS are ever going to stock. I hope I don't break it. Anyway, in preparation, I've enabled PLL support and added an option to clock the chip at 66.67MHz. I have a feeling that's going to be helpful later on. See my github .


There's so much going on at JP Towers that I feel the need to write some of it down,  lest any of it leaks about of my brain. I've talked about the Jaguar radio upgrade before so that's one. I'm planning to implement while house temperature monitoring. This will use the cat6 running to (almost) every room and Dallas one-wire temperature sensors. I'll probably drive them as multiple busses using at Arduino as there are issues configuring a star as a single 'bus'. The sensors are in and have been tested on the Arduino,  I just need to build an adapter to connect to my patch panel and build some sensor 'plugs' using standard 8P8C shells. I've got a new boiler going in soon.  I've selected a Viessmann 200-W a it has an IR control interface.  This will allow me to disable the heating when we're out and restart it on our journey home using my phone. I can probably use the Arduino for this as well as it'll be in roughly the right location

Babbage pictures

Dave Ackerman tweeted a couple of pictures of the Raspberry Jam @ Cambridge Consultants yesterday, including this great one taken by Babbage-cam while he hung in meeting room 10/11.

Raspberry Jam!

A couple of months ago, I went to a Raspberry Jam in Cambridge at the Centre for Mathematical Science. It was a great day out and I met some really interesting people, but the vending machine was a) a long way away and b) terrible anyway, and we had a lot of people in a small meeting room. "Next time", I bravely announced, "you should come over to my office. We'll lay on coffee and everything..." Well, fast forward a few months and quite a lot of planning, and the second Cambridge Raspberry Jam of 2013 came to Cambridge Consultants . Mike Horne is the local Raspberry Jam organiser and we're all very grateful to him for arranging these Jams and giving us Pi enthusiasts somewhere to go and talk about what we love. Mike arranged all the ticketing, the demos and the speakers. I arranged with Darina at Cambridge Consultants so we could borrow the reception area, and have teas and coffees and cakes laid on, name badges, etc. Many thanks for Darina for s

More Stellaris fun

My Github for the Stellaris Launchpad has had a cleanup. I've dropped support for using the ARM-Linux compiler as building without a C-library rapidly gets boring. The baremetal ARM compiler is a straightforward enough install (you unpack the tarball). The linker script has become more complicated, but I've tried to explain what (I think) it all does.