Log in

No account? Create an account

Previous Web | Next Web

OK, yeah, I've not posted anything for ages, I know... I've been busy, so sue me :-p

Anyway, what have I been up to of late?

  • Work
    This is the main reason that I've not been writing entries; 10 hour days doing physical and semi-physical stuff isn't leaving me feeling like dragging myself online and documenting it!

    (Ok, so 2 hours of that is quite often travel time, but still...)

    And going out at 7:30 is still not agreeing with me, even after a month and more of doing it...

    The job itself is going pretty well though; its not exactly taxing mentally, but its not a no-brainer either... even if its just stuff like planning routes for cabling and pipework or working out how to get into some piece of equiment...

  • Sleeping
    Kinda nice to actually be sleeping reasonably well... probably a side-effect of being outside so much in the heat and the sun and doing work too. I'm not getting enough sleep still; the whole 7:30 thing again...

  • Geekery
    I've got various projects making slow progress:

    • NUT driver development
      Having gotten the serial driver for my UPS to do Vaguelly Sensible Things(tm), I'm now trying to get the HID USB driver to do the same kind of Vaguelly Sensible Things(tm) when its connected to a Belkin Universal UPS. I suspect I probably wrote something about this earlier.

      Anyway, having gotten started with what seemed like the obvious (iow; simple) way to do things, it turns out that life is never that simple..!

      I had hoped to just send the relevent signals to the UPS using the exising mechanisms used by the HID UPS driver.

      Now, this would probably be fine if we were trying to turn the UPS off while the OS (more specifically, I'm working under Linux... this stuff may be different on some other *nix) were up and running in its normal operating state (obviously, as we can get and set values on the UPS), but it fails to work when running in what amounts to no-OS mode; that is, the state that Linux gets to when it's just about finished going through the shutdown scripts... Basically nut is the last thing that will run from the shutdown script if there is a killflag present, otherwise halt or reboot would be run.

      So the problem is coming up with a way to (1) get at USB devices, (2) locate the relvent device and (3) tell that device to do what it needs to be told to do, all without having the normal NUT way of doing things available.

      I've not really looked into this any more than this; I don't want to be issuing control signals to the UPS from a running Linux box that has all sorts of services and stuff on it, so I've been delaying it while I got my laptop sorted out with a new Fedora Core 5 install.

    • Fedora Core Setup Using ACX Wireless Card
      I've been trying to make the ACX WiFi card driver be a Fedora-setup-friendly so that I could install the laptop linux system using FTP over a wireless link. This is a compound problem; (1) the normal driver uses Linux hotplug to get its firmware image from the filesystem (2) the Fedora installation process provides a mechanism for loading drivers not included on the installation CD using a "driver disk" (3) so far so good, you'd think, but the setup kernel will only hotplug the firmware from the kernel-hardcoded hotplug directory... and even of thats the same as an up-and-running Fedora system, it's /lib/firmware... (4) there is no guarantee that the hotplug directory is /lib/firmware(and 5) the driver disk is a very annoying beasty; it requires certain files to exist, and for the driver binaries to be in a GZipped CPIO archive called modules.cgz...

      So, the first trick was to get the driver to support loading a firmware image from a location specified in a module parameter. This is actually really easy to do for the ACX driver; it used to have a parameter that did this anyway, so it's more a case of reintroducing the relevent code into the current source. So, that didn't take long, but I did make a couple of tweaks; the original driver had to built with eitherhotplug enabled or the firmware_dir module parameter enabled; I made it so that the presence of firmware_dir would cause the driver to use the filesystem load-code, while the absence would cause the driver to use the normal hotplug kernel-mechanism.

      Now, that was easy-peasy; for the amount of good it did... the hard bit is getting the new driver accessible to the Fedora "anaconda" install-system. And an install CD or a driver disk that would actually work seems to basically be a pipedream...

      The driver disk method seemed like a good plan, but because everything is retrieved from specific files, and the driver disk only seems to be mounted while those specific files are retrieved and stored to the /tmp directory of the setup program's ram-based filesystem, there's no way to load the firmware from the driver disk.

      And trying to make a new install CD with the firmware image somewhere just doesn't seem to work at all... The boot phase of the install CD mounts an initrd image containing the installer filesystem. Initrd's are supposed to be allowed to be either GZipped ext2 images or GZipped CPIO archives... unfortunately, I just don't seem to be able to make an initrd image that the Fedora "anaconda" install system will accept as being legal...

      I'm sure that if I could get the initrd image to load up properly, the modified ACX module would work... but as I say, absolutely no luck there whatsoever.

    • Fedora Laptop Install
      OK, so not really a big thing... just something that I spent ages trying to get done using WiFi rather than my Belkin 'pegasus' USB-ethernet adapter... pipedreams a-plenty aroung here ;-)

    • FalconNet
      I've started looking at the code for something I started a couple of years back as the basis for an online shopping system, and that I stopped working on when the guy I was writing it for screwed me over... I didn't really feel like working on it after that.

      It was always intended to be a modular framework, with a core that would handle user management, authentication, module installation and the bit of code that works out what all the different parameters received by the program should make the program do.

      I got the parameter-processing code and authentication working back before the plug got pulled, so now I want to get the core finished off and then I want to make an invoicing module. And then there are a few other modules I want to build; a content management module, the original online shop module (the invoicing module should be useful for that too) and maybe as an extension to the CMS, a wiki module too... or it may just end up as part of the CMS, I haven't decided yet.

  • Charity Stuff
    We just did a charity thing, putting up four inflatables on the beach at Weymouth for the local council as a part of the opening ceremony for World Junior Sailing Championships.

    Was a nice sunny day and four is a reasonably easy number to get up, then it was just a case of sitting on the beach in the sun (until it went down of course) until the end of the fireworks display. *^_^*

    I'm also working on a new version of the charity logo; I was never 100% happy with the original one as it was a filled in version of a scanned image and was a bitmap image... the new one is a CoralDraw image, so its a vector graphic and I can generate bitmaps from it at the exact size I need them. I can also create non-colour versions (outline and black-and-white versions that is) from it easily. This has all come out of needing a black-and-white image for some posters and it would have taken an *awful* long time to fix up that from the original bitmap.

I'm sure there's other stuff I've done recently, but I can't for the life of me think of anything at the moment... 'course, I'm watching Law & Order SVU at the mo, so I'm not really trying to think too hard...!