USC Course Planner

Last summer I created a Python app to simplify the process of making course plans for the next semester. It features a course bin where one can add courses and filter sections to be scheduled. The app automatically retrieves and parses course information from USC Schedule of Classes page on user request using a Beautifulsoup based scraper. The user can edit his or her preferences on the “preferences” page in terms of how he or she likes early / late courses, how much time he or she likes to have between sections, and when to have lunch / dinner breaks. The app uses a depth-first search algorithm to find the […]

Read More
A Few New Photos Taken with the Linear CCD Back

I finally put together the 3D printed prototype and took a few photos last weekend. The flange distance was way off and it was quite hard to get the right focus. The CCD had quite a few dirt specks on it and it produced this weird streaking pattern when using a a small aperture. Also the sensor saturates easily, leaving lots of white streaks and artifacts. Nevertheless I was excited that I could finally fit it on my Bronica medium format camera body.

Read More
First Photo Taken with the Linear CCD Camera

We have made lots of progress on our linear CCD project since the last article. Last week we spent some time and made a cardboard enclosure for the sensor and tired to take a photo. The good news is we did get a presentable photo, despite the obvious focus issue. The lens was a Nikkor 50/1.8 since the batteries in my Bronica were dead and the camera would not operate without it. The photo has a strong vignetting due to the lens’ small image circle. The camera was only a prototype, held together by hot glue and type. We will eventually design and 3D print an enclosure to house the […]

Read More
ilx508 Linear CCD Breadboard Prototyping

Just a quick update. Today I built the linear CCD circuit on breadboard, more or less following the Application Circuit provided in the ilx508 datasheet. Everything went according to plan except for the reel of SMD transistors decided to jump out of the anti-static bag into a half-a-meter deep vent on the ground when I opened the bag. I ended up spending a significant amount of time trying to get my transistors back poking the vent with a wooden stick. You may tell there is one wire missing, but I expect to fix it next time when I get back to the lab. I’ll also try to power on the […]

Read More
Teensy CMT + ADC DMA Experiment

After weeks of planning, I finally got the chance to test my setup for SSC7926 project for the first time. I’ll probably explain what is SSC7926 all about in one of the future posts, but for the time being it is my attempt to make a digital back for my medium format Bronica SQ camera using an ilx508 linear CCD. I plan to use a Teensy 3.6 to generate clock signals to drive the CCD, and sample the analog output from the sensor. For this proof of concept test, I used the Carrier Modulator Transmitter (CMT) on the k66 chip to generate the clock signal. CMT interrupt ISR was set […]

Read More
Code Smart Timer and Ultimate Calculator with Qt

This time, I’ll show you a few projects I did last June. First, smart timer. Back then I wanted to learn some basics about GUI design, so I looked into PyQt. After doing some digging in the documents, I decided to do something for real. I really liked the simple design of Chris Dziemborowicz’s Hourglass, so I tried to imitate it to practice. I ended up with a timer which had more or less all the primary functions Hourglass had, and looked fairly similar. It could parse simple natural language inputs like “3 hours 5 minutes” or “5m 30s”, but once I press the “start” button, time would turn into […]

Read More
Make Google Dictionary Extension better with AutoHotkey

The other day I was doing assigned reading for my General Education Seminar. As a non-native English speaker, my vocabulary is not something that I’m proud of, and some big words in the reading started to slow me down. I turned to Google Dictionary for help, but the article was unfortunately in PDF format. I could not simply select the word and click the dictionary extension button. It just does not work with PDF file. I had to copy the word, hit the button, paste the word and then hit enter. Apparently, that was too much of a hassle for a lazy person like me, so I decided to write […]

Read More