| 22.11.2004 |
still alive. live's a bit turbulent right now.
all case parts are done. integrating a gps-module. built a desktop system
for development.
|
| 29.6.2004 |
did work on pg-apps. trying to integrate the tmc-data into the radio
application. it's a bit buggy still.
i'm constructing a frame for the board and disc with a bit of rubber
dampening.
|
| 28.5.2004 |
it's been a long time. but i haven't been totally inactive. i built a case.
but it's still waiting to be filled.
slowly continuing.
|
| 2.4.2004 |
the tmc-decoder does a good job. implemented a first shot at
persistence/lifetime. doing some cleanup in the code. adapted the
picogui-radio-app to the library, it even displays the tmc messages.
i will finish the rds/tmc-libs, then go back to ui/apps.
hardware: the int-controller in the isplsi needs to be finalized.
|
| 9.3.2004 |
tmc-decoding running quite well. i'm trying to get all information
(quantifiers is next) together. getting a "good" textual representation of
the message content seems to be non trivial.
a friend pulled my attention to sqlite. might be a good solution for all my
persistence problems (rds-database and locations/events).
|
| 25.2.2004 |
i decoded my first tmc message (by hand ;-)) and heard it 5 minutes later
in the traffic announcement. whoaaa!
development is somewhat slow due to other projects (related to earning
money) ;-) .
implemented oda handling. oda-handlers register at the decoder, when
a station receives a group for which a oda-id is transmitted, it tries
to deliver the group to the registered oda-handler.
|
| 12.2.2004 |
reorganizing the rds-lib: will change the af handling (including EON).
will implement oda handling. i WANT a tmc decoder ;-).
the decoder can write the station-list to a file (but not yet read it again).
|
| 9.2.2004 |
the rds-decoder does a good job now. it supports every standard group-type.
it even does some of the EON features. i'm still trying to find strategies
for alternative frequencies, EON-linking and (future) quality-scanning.
some of the decoders (string, e.g. station-name) will no longer be tied to
the top-level decoder, but move over to the station structures.
next big-point will be oda-handling.
the TMC-data arrived (location- and event-list). ;-)
after some cleanup i'll go for a TMC-decoder ...
|
| 31.1.2004 |
the c++-decoder takes shape. ported my group0-decoder to the new lib (no
AFs yet).
the stations are a (pi-sorted) linked-list. there will be standard
group-decoders and pluggable oda-decoders. the topmost put-block-function
returns flags for every received update to the station-information.
the application then retrieves the (changed and supported) information
from the station-structures.
i ordered the tmc location-code-list for germany. finally i'll get the
data.
|
| 21.1.2004 |
enhanced the decoding-lib for all standard groups but EON.
it does decode quite good now.
started an oo-design for a "real" lib.
|
| 14.1.2004 |
did a bit of research on the shared-ints. it seems i have to put a simple
interrupt-controller in the isplsi. reworked the driver. it seems to be a
bit more stable/reliable and does give less overruns.
it can work in saa6588's standard ( double int-rate, with a way to recover
one overrun) and reduced mode (half int-rate) now.
the decoding library does decode (groups0 and group2) quite good although
the design _and_ the implementation is crap ;-) .
have to think first ...
|
| 2.1.2004 |
both prototypes work. only a single wrong connection (soldered together
a smd-pad and a via). it nevertheless took quite some time to find.
the new 1016 isplsi also works. decoding rds works better,
but it is still possible to have no further interrupts triggered. a driver
reload (radio) cures this. this is up next.
there is some aluminium sheet-metal in my cellar waiting to become a case
;-) .
some weeks ago i started a rds-decoding library. although i don't like
the internals and i don't support too much yet (only group0), it works ok.
|
| 30.12.2003 |
i built 2 more prototypes with my remaining pcb's. want to
build 2 cases ( 1 double-height, 1 single-height) and have real
demo systems. the third pcb is for development in a standard pc using
a pc104-to-isa adapter.
will use a fully syncronized 1016 for one board (to see if i the
int-problems go away). starting to think about pcb rev.2 .
i'm writing this log for 1 year now. kind of interesting to see what i have
done (and what i haven't).
as this will be my last entry for this year, i wish everyone a happy
new year. maybe i could get some more feedback next year to keep
motivated ;-) .
|
| 14.11.2003 |
worked on the rds-drivers, stability improves. inserted a "memset(0)" on the
kmalloc'ed i2c_client-structures (the mixer tried to use 10bit addresses
sometimes).
i found that one of the main picogui developers has "lost the interest".
another investment in a dead technology?
|
| 10.11.2003 |
last week, i finally found the time to power up the system again.
the select/poll-stuff for rds worked right out of the box.
i found a small machine to bend sheet metal on ebay. should arrive
in the next 2 days. my first try will be a double-height din car-stereo
case. PS: ARRIVED TODAY!! LOOKING GOOD.
|
| 15.10.2003 |
slowly starting work again. lots of things i'm thinking of:
picogui apps, driver stability, build an rds-decoder-library.
the biggest problem: i'm covering every aspect from hardware, drivers,
os-support to user-applications. this is a really _big_ project.
|
| 14.10.2003 |
still alive. yet no time, no development.
started some smaller modifications of the drivers. especially
the rds and event stuff. implemented (at least i hope so) the poll-call
for the rds-device.
the event-device can only be opened once: following
opens do never receive an event. writing the led_events does only
work sometimes. need to investigate.
|
| 12.09.2003 |
hacked together a basic cd-player. this is even pre-alpha. it nevertheless
works.
maybe i''l be able to test on the "real" hardware over the weekend.
development is extremely slow right now. i do not find the time ...
|
| 8.09.2003 |
back at work. so maybe development will continue ;-) .
|
| 13.08.2003 |
right now i'm experimenting with "context mode": pressing the "ok"
button for longer digs deeper into contexts/hierarchy.
i then mostly "unfold" some initially 0-sized panels with options.
not sure where and how far this may lead me. ;-)
the playlist stuff works quite good (still only adding is implemented).
i'm still not sure how arranging/starting/stopping applications should work
(maybe with contexts?).
|
| 12.08.2003 |
hacking around with picogui. i can browse files and select a playlist.
must add playlist load/save, directory adding, setup ...
|
| 6.08.2003 |
picogui apps are getting almost usable. working on playlist management.
i've not yet decided on general ui philosophy.
see release.
|
| 1.08.2003 |
working on picogui apps.
kind of progress. i can use it with the buttons/knob. implemented a first
try on messaging for the applications.
|
| 31.07.2003 |
working on picogui apps. i'm having a hard time figuring out a concept to
control the picogui apps with my 4-buttons + wheel (and a keyboard/mouse if
available).
i've not yet decided on a ui philosphy.
|
| 22.07.2003 |
released cajun patches.
picogui-radio kind of working. pg-mp3play tested, prev/next, play/pause,
ff/rev work.
|
| 18.07.2003 |
finally. i released my current state (almost). even the irmp3 patches.
working on a radio-app for picogui. small driver modifications.
very slow. no time and no power. very hot.
|
| 7.07.2003 |
no real news. except that there are none.
i will never promise a software release again. i'll just release. ;-)
may i can help a german car manufacturer to get internet in his high end
cars. would be an interesting project to help with.
still looking for a case (or a way to build one).
i plan to do a microwindows-driver for my display (320x240 at first).
related to another project (read above), this could be very interesting.
|
| 23.06.2003 |
back from vacation. i did play a bit with rds decoding. the fmscan2 tool
does a way better job now at finding stations and station-names. i modified
the rds decoder to reliably read the Alternative Frequencies. "Bayern 3" has
a list of 60 frequencies so this a good test case.
i modified the int-handling for the radio(-tuner) driver. right now it
seems to lock for scans really reliable. i'm thinking of changing the device
semantics for my /dev/radioXs: allow one to open rw, and multiple to open
r and add a ioctl to allow group-filtering for rds. this could result in
simpler clients (for a tmc decoder e.g.). but maybe we need the whole
datastream to allow for stream verification.
i plan to get a general software update ready in the near future ;-) .
including the cajun/irmp3 patches.
|
| 11.06.2003 |
i've been struggling with picogui and threads. the mp3-player has a
picogui/foreground-thread to handle the ui and a "background"-thread to
handle the mp3-device. i did not understand (if it is possible at all)
how to update the ui from both threads. but there is a certain progress,
at least it plays.
will be heading off for italy tomorrow (without the car-pc) for some days
with my family. expect no updates before 22.6.03. (if anyone is reading
this?!) ;-) .
|
| 5.06.2003 |
long time, no write. i've been programming on ui.
did a simple mp3-player: added picogui to the mpg345 tool.
started a crude app-framework to host the various car-pc applications.
started enhancing the rds-parser, reworked the af-code. will start a
picogui program for the radio-tuners. no luck with tmc- specs and
databases, any sources known?
i need picogui clients for a mixer, a playlist-editor, a cd-player and
a navigation-system (i'm heading off for holidays on 12th ;-) ).
|
| 19.05.2003 |
i'm in the process of evaluating the ui options:
- microwindows: had it running for the first time. using vga-framebuffer.
slow. no usable lcd-driver.
- picogui: there is even a sed1330 driver! compiled, tested. lots of demo
applications. random pixel-noise though. promising. need to understand
functional structure. mouse moves, but does rarely "click".
- fresco: will eval tomorrow, update: read about X11 and CORBA, this will be
too heavy for (my) embedded systems.
|
| 13.05.2003 |
i compiled the secondary-console-driver for the sed (after changing it for
my hw-interface). it works. it seems i lost the reverse-attribute after
some time (yes, attribs _are_ compiled in). it uses 40x30 chars. maybe
i will change it for a 6x8 font and 53x30 chars. if adapted for primary
console, the system would not necessarily need a graphics card anymore,
this could make a complete system somehow cheaper.
i'm looking at ebay for a metal sheet bending machine (is this the name?).
i need to make cases to fit into the standard car-radio in-dash slot.
i missed a good (and rather cheep) one on the weekend :-( .
|
| 12.05.2003 (late) |
i've tested the output capabilities of my event driver. it did work (after
minor modifications). used it to make the screen backlight switchable. had
an oops when reloading the driver, need to investigate.
tested irmp3 with the big screen: the browsed lines are now dynamically adapted
to the display (on part of mod_lcdproc)(see screenshots).
kind of nice when selecting, although there is to much unused room (when playing) ;-) .
i will go for a console driver asap.
|
| 12.05.2003 |
i've been in contact with joris robijn, the or one of the maintainers of
lcdproc's sed driver, to show my sed-work and get an update on the drivers
state and heading. directed him to this little wesite: he wrote me some
kind words on my work here. i liked it ;-).
i made 3 more photo's of system, gfx-controller and my tft-display. i will
try to add some more tonight. i hope i can include screenshots of the
working system. (time is the problem, not my hardware ... ;-) ).
|
| 9.05.2003 |
the 320x240 display + controller works.
the calculated timing works, had to hack lcdproc's sed133x driver a bit:
changed to 240 lines (not 200) and adapted the memory map to
the bigger screen. contrast adjustment works (in a way). the display is a
bit noisy, i will try to smoothen the bias voltage.
this weekend i will do some photo's of the system.
|
| 8.05.2003 |
yesterday i tried to go back to 2 tantal caps (35v): they die immediately.
soldered together the sed1335 and SRAM: the signals seem ok. i calculated a
new timing for the 320x240 display this afternoon. the cable is already
soldered onto the display. can't wait to test. i will make some new shots
as soon as it works.
|
| 6.05.2003 (late) |
bias-voltage gen working as expected. i removed the compensation cap.
perfectly matching the voltage, perfectly stepping up/down and resetting.
i'll try to get the sed1335 and 320x240 display up and running asap
(maybe even this evening).
|
| 6.05.2003 |
still fiddling around with the bias-voltage gen. the maxim tech support
told me everything i already know about the max749 ;-) . One tip
might be good: the compensation capacitor might be too large. will test.
hacked up a simple utility for up/down/reset of the generator: it does
work.
as soon as the voltage gen will work, i will build the sed1335
controller and get the display working (hopefully).
|
| 28.04.2003 |
built and tested the lcd bias voltage generator using the max749.
once again i found an error in the schematic (and layout and pcb), can
be easily patched.
the generator did _not_ work. did a lot of measuring ... it seems, i have
killed the capacitors to smooth the output voltage at the very first test.
today i replaced the 10u 35V with a 1u 63V (after 3 days of measuring).
it does kind of work: i get a negative volatge around 17V with a lot of ripple.
but i know i'm on the right track.
|
| 15.04.2003 |
it seems my hacking is getting better all the time ;-). apart from minor problems, the
driver works, and is delivering input-events. i am thinking of
integrating infrared into this too. if there only were a (lirc) daemon for
this.
the corrected hardware gives 2 switchable ouput pins.
i have not tested the input-core part of it though.
|
| 14.04.2003 |
hacked together an input-event-driver for io. it compiles without errors.
once again i found an existing driver that had almost the needed
functionality. i had to convert it from usb to i2c. seems to be quite easy.
could not test yet.
|
| 12.04.2003 |
the modules do work. once again i have an error in my layout: the fet's
need to be connected with vcc and gnd swapped.
i modified my board, but could not test yet.
|
| 11.04.2003 |
tested an io-module: ir works (with tsop1738). i2c detects, but does not
work. my pull-up seems to be too weak. will add another 10k (which is quite
high by itself) on the module. the resulting 5k should suffice.
i will put together a lcd-controller (maybe tonight).
i'm not sure what to do with the io stuff. maybe i should integrate
it into the lirc-driver?! if i could find more information about the
kernel's event interface, i would go this way.
|
| 6.04.2003 |
on friday, i tried to make a longer cable from the elan-board to my
tft-panel: it did not work, looked like only every second column were shown.
went back to old cabling: the same effect. FRUSTRATION!
on sunday, i tried both variants: both worked. the display now has
apple-cinema-display-like "case", made out of transparent acryl. kind of
cool.
i just soldered together one of my io-boards. did not test though, i have to
make a cable first. i hate making cables: cutting, crimping ... takes a lot
of time. when its ready, you only have a simple cable. necessary though ;-).
|
| 2.04.2003 |
still no time left ...
|
| 21.03.2003 |
the PCBs for the io and graphics boards arrived. looking good.
my (paid) work does leave no time for my own projects. waiting ...
|
| 9.03.2003 |
i enhanced mpg345 with id3-tag support. id3-tags and mp3-header
information is displayed with proper messages (@I and @S).
enhanced irmp3 to show mp3 stream-info. the browser can display more
lines now. i still don't think that this is the way to go.
applied a little fix to the mp3-driver: always clear the int-req,
regardless if the data_req is actually active.
|
| 4.-7.03.2003 |
i finalized my designs for the i2c-io-adapter and the graphics
controller.
in 10 working days we'll see ;-) .
|
| 20/21.02.2003 |
modified mp5play to support mpg123's remote interface. now i can use my
hardware in almost any application available. not sure what to do with
id3 tags and stream parameters.
fixed cajun to allow my 2 tuners, mixer source is selected via config
param. i like cajun's configurability and the way screens and layout are
handled, but it's way too slow to be usable on my hardware.
set-up irmp3. this is _much_ faster (and does not need a database):
screen setup is fixed. this is bad. i don't like the browser. no
cddb (as in cdcd). no radio.
but it is _usable_ (compared to cajun). i will see if i can improve
this ;-).
|
| 18.02.2003 |
cajun running. i had to implement a lirc input-module for cajun. in fact
an ugly hack (parsing irw output). mixer works, radio works, cdcd kind of
works. the system is not very responsive. no wonder, i have only 16mb of
ram, but mysql, apache, cajun ... running.
i need a mpg123 (remote-like-) interface for my hardware. this way i could
integrate my stuff in a lot of existing projects. i will rewrite mp5play to
simulate the mpg123 remote interface.
in the long run, i need a own ui framework. maybe i'll use the t6963 and
sed1330 console drivers, add in framebuffer drivers and set up microwindows.
and in 10 years time i will be finished ;-).
|
| 16.02.2003 |
i tried to get everything together for a cajun install. not running yet.
tried to load all my drivers at once and test the whole system. did not
work out of the box. will investigate.
i did also change the isplsi to trigger interrupts on both edges for ALL
signals. maybe this was too much for my drivers. _need_ to adapt the radio
driver to this (although it should work, but give warnings).
|
| 15.02.2003 |
i modified the lirc-plcdio driver to work with the mp3redux design and
made a small ir receiver with a sh5110. this time with a big C and the
resistor as in the application note. works like a charm.
also hacked together a sound mixer driver for the tea6320. it does work.
but the tea6320 gave some headaches. it seems it can't take long transfers
with autoincrement, at least it didn't work for me.
|
| 13.02.2003 |
the irq-timeout timer caused the oops. as i do not need it, i disabled it.
it's playing fine now.
investigating in player ui. cajun seems to be what i want, yet text-only.
i will use it to get something working.
starting mixer driver. maybe do a quick hack for a lirc driver. i want
the whole thing to be usable.
|
| 12.02.2003 |
elan / state machine issue resolved.
did a little bit more logic-analyzing: there was a race between isa_clk
and isa_iow. some state bits must have longer internal paths from
isa_iow to the state bit than others. if isa_iow was getting close to
isa_clk, some of the state bits did see a changed isa_iow (short path),
some the unchanged signal (longer paths). i "just" latched isa_iow to
synchronize it with isa_clk.
the new design still fits in a 2032. thinking of switching to a 1016
though, to resolve the irq sensing. will switch to 4a5 or 4a3 in the long
term.
right now, i get an oops in mp5play, and shortly afterwards a kernel oops
if i do a pause/continue or ff/rew. back to driver work ;-).
|
| 11.02.2003 |
elan / state machine issue still unresolved.
will try a fully synchronized state machine (in a isplsi1016 though) tonight.
worked on radio/rds driver. implemented hardware search ioctl. can read
rds data from both tuners. will also modify the "shared" interrupt logic
to trigger an interrupt on both edges for every signal. this way i will be
able to service all interrupts properly. at least i will _exactly_ know when to
service what interrupt.
the tuning/search logic needs more work.
|
| 4/5.02.2003 |
elan / state machine issue still unresolved.
converted the radio tasklet to a kernel_thread (thx adrian cox). now it does
work without a kernel panic. ;-)
added an ioctl for the hardware search (will test tonight).
there is 20ms time to service the saa6588, seems to work with the thread.
will measure thread-latency some time.
added locking for the tuner/rds data structures.
|
| 28.01.2003 |
mp3 playing improving ;-). on the elan board the state-machine
"short-cuts" sometimes, but constantly, after shifting out 2 bits.
tried to contact lattice and comp.arch.fpga to get a hint for
these problems. will check "new" isplsi-file tonight. will
check if there _is_ a reset.
using a lvx00, not a hct03, for level-shifting gives great
pulse shapes ;-).
the elan issue takes all time. no driver work.
|
| 21.01.2003 |
i could not stop to debug earlier than 2.00 in the morning ;-).
reworked the isplsi-programming. the pcf8584 has now a state machine
for isa-accesses: i can use the "400ns" isa-timing of my elan520 board.
the pcf is quite picky with bus cycles. cs _has_ to go low _before_ any
rd/wr signal. realizing this, i could even simplify the state-machine and
get a bit more room in the packed 2032.
does not play mp3 though. will try the "softreset" fix when downloading
firmware to sta013. this could explain everything: why it works on
the (slower) cpu board, why it never deactivates data_req ...
the relaxed dma-transfer mode seems to work with the elan.
once again the pjrc website gave me this hint.
|
| 21.01.2003 |
started here. |