15 years ago
About Me
Blog roll[ ];
Saturday, November 29, 2008
Open Flash Chart
Labels:
Open Flash Chart,
Python
Finally got around to implementing Shapes and shape_point in the Open Flash Chart Python library. You can now finally draw polygons on to the charts! It didn't take too long to implement which was good. I did get stuck on writing the demo though. I couldn't follow my use of arrays in my code and I had a "null" value problem in the JSON ><. I've now updated the code.google.com page for the library with a new uploaded zip file of the library and a new Wiki page for the change log.
Thursday, November 27, 2008
Photoshopping
Labels:
Photoshop
Been trying to come up with a good desktop background from my computers. Haven't had much luck coming up with an idea. Been playing around with black and white . . .


Tuesday, November 25, 2008
Dumb ATmega8 project
Labels:
ATmega8
Finally finished the ATmega8 library. Has API to use a 7-segment LED, pins, PWM, 2-bit flip flop, timers and some other random stuff. The code size is pretty big though. Not sure how to optimise the size away without losing the abstraction. So for the final Alkali programme, it's able to detect light pulses with a reverse biased LED. Depending on the length of the pulse, it will generate one of three events. These three events will be "reacted" on by setting the speed of the fan and writing one data bit to the 2-bit flip flop. The fan has three speeds; maximum, medium and off. There's an LED that blinks on and off at close to 1 second intervals. There is an LED that indicates the persistence of a light pulse and its indication will also persist. The output of the tachometer of the fan is connected to a couple of external interrupt pins and these are used to turn the decimal point of the 7-segment LED on and off.
So yeah, a pretty dumb project . . .
Monday, November 24, 2008
Dumb ATmega8 project, Open Flash Chart
Labels:
ATmega8,
Open Flash Chart
Had some problems with reading in the tachometer output through a couple of external interrupt pins. It seemed that every time the fan turned on, the "latency" light would turn on. If it wasn't doing that, it the fan would turn off after a while. I couldn't really figure out why it was doing this because the timers must have stopped working or the wireless sensor was being triggered automatically. Eventually I found a remedy. It was to increase the prescaler for the PWM timer. I was using a prescale of 1 which may have been too fast and caused the interrupts to fight over each other. I tried to get some meaningful output written to the 7-segment display but because of the distortion of the tachometer by the PWM, the numbers didn't really make sense.
I finally made changes to the Python library for Open Flash Chart. Each graph variety class has its own "set" functions to properties that are fairly unique to other graphs. This means you can change the properties after creating the graph dictionary.
Sunday, November 23, 2008
Dumb ATmega8 project, Open Flash Chart
Labels:
ATmega8,
Open Flash Chart
I've got the tachometer fan being driven by an n-channel MOSFET. Was done pretty easily. Vcc is around 7V and the input voltage is either 5V or 0V. The MOSFET seems to be fully forward conducting at 5V so that's good. Right now, I have the fan turning on and off every time the wireless / light sensor detects a light event. So, that's pretty dumb so it fits with the whole theme of the project. I'm going to try and work on this tachometer thing. The third year electronic design paper involved using a three pinned tachometer fan so I'm basically going to be doing their project. Hopefully it'll be easy.
Going to work a little more on the Open Flash Chart Python API as well.
Thursday, November 20, 2008
|-| @< |< ! |\| 7 0 5 |-|, ATmega8, Photoshopping
Managed to update to the 5th release. Was easier than I expected because last time I borked the installation. Just had to make sure a file was deleted and to change one line of the start up script. Still stuck with VESA 3.0 video. Still can't get it past the max resolution. Got wireless so that's good enough for me. One thing that does bother me is that I have to reduce the allocation of shared graphics memory (Intel 3100 GMA) for it to boot through. But if I do that, then Vista falls back to the "basic" window manager. Meh.
I did some more improvements to my ATmega8 library. The wireless / light sensor now reacts to any pulses of light. Whenever the light is de-asserted the counter will increment. Basically I have a function / method for detecting positive edges (sensor is active low). I also added a reaction to the length of time that the wireless sensor is asserted. When the period exceeds a threshold, a status light is asserted and remains asserted until the wireless sensor does not detect the light anymore. I managed salvage the Intel Pentium !!! CPU from the old Compaq desktop. It's a Coppermine revision. I also took the fan and heat sink used to cool the CPU and I've now attached it to my dumb ATmega8 project. It's got three inputs; ground, Vcc and a tachometer output. Since it's only a three terminal fan, the tachometer output is distorted for any PWM input signal. Basically the ideal tachometer output is AND-ed with the input PWM since the tachometer will output a low whenever the PWM is low regardless of whether the tachometer should be outputting a high or low; Tachometer output = (Ideal tachometer output) AND (PWM). I have yet to write a library for abstracting the tachometer output and PWM output and control.
Started photoshopping some cards today. Got a birthday card and two good-bye cards to make. I'm having a photoshopping block. I've run out of ideas for making good-bye cards. Getting harder and harder each year because you can't exactly give someone a card they've seen before . . .
Tuesday, November 18, 2008
|-| @< |< ! |\| 7 0 5 |-|
Wow, I finally did it again. Though with a different DVD. Frustrates me how I couldn't use my hacked version to make it work. I had to change the order of my SATA HDD and DVD drives so that the DVD drive had "higher priority" over the hard drive. I was amazed when I got to the set up screen. Hit a small issue when the installation finished. I had forgotten to bless the partition. That fixed the blank / black screen that I had. Got internet working but no video acceleration. Back on old VESA 3.0 so I'm maxed out at a resolution of 1280 x 1024. Looks pretty damn ugly on a widescreen monitor. But any way, good enough for me right now. Going to try installing on a virtual machine. See what happens.
Subscribe to:
Posts (Atom)