November 10, 2009 by Tom
About 5 hours ago gnetlist started crashing when trying to run a drc check:
[tom@beach pcb]$ gnetlist -g drc2 top.sch -o drc_output15.txt
gEDA/gnetlist version 1.4.3.20081231
gEDA/gnetlist comes with ABSOLUTELY NO WARRANTY; see COPYING for more details.
This is free software, and you are welcome to redistribute it under certain
conditions; please see the COPYING file for more details.
Remember to check that your schematic has no errors using the drc2 backend.
You can do it running ‘gnetlist -g drc2 your_schematic.sch -o drc_output.txt’
and seeing the contents of the file drc_output.txt.
Loading schematic [/home/tom/project/logic_analyser/pcb/top.sch]
Backtrace:
In /usr/share/gEDA/scheme/gnet-drc2.scm:
601: 736 (if (not (null? net-conn)) (let* (# # # #) (begin #)) (list))
…
608: 737 [cons "pwr" ...
609: 738* [drc2:get-pintypes-of-net-connections (# # # # ...) ()]
601: 739 (if (not (null? net-conn)) (let* (# # # #) (begin #)) (list))
…
608: 740 [cons "pwr" ...
609: 741* [drc2:get-pintypes-of-net-connections (# # # # ...) ()]
601: 742 (if (not (null? net-conn)) (let* (# # # #) (begin #)) (list))
…
608: 743 [cons "pwr" ...
609: 744* [drc2:get-pintypes-of-net-connections (# # # # ...) ()]
601: 745 (if (not (null? net-conn)) (let* (# # # #) (begin #)) (list))
…
608: 746 [cons "pwr" ...
609: 747* [drc2:get-pintypes-of-net-connections (# # # # ...) ()]
601: 748 (if (not (null? net-conn)) (let* (# # # #) (begin #)) (list))
…
608: 749 [cons "pwr" ...
609: 750* [drc2:get-pintypes-of-net-connections (# # # # ...) ()]
601: 751 (if (not (null? net-conn)) (let* (# # # #) (begin #)) (list))
602: 752 (let* ((element #) (device #) (pin #) …) (begin (cons pintype #)))
604: 753* [car …
604: 754* [cdr …
604: 755* (car net-conn)
/usr/share/gEDA/scheme/gnet-drc2.scm:604:32: In expression (car net-conn):
/usr/share/gEDA/scheme/gnet-drc2.scm:604:32: Stack overflow
some google-ing and trawling the gEDA mailing list revealed that it might have something to do with badly named pin-types. So, its probably one of my newer symbols as I didn’t have this problem a few hours back. So beginning with basic binary division by eye with Emacs, things looked good, chop it in half problem goes away but i could never seem to resolve it.. To cut a long and protracted debug short – ” when running certain larger sized schematics through some of the backends” you get a stack overflow uuurgh, the fix:
add
(debug-options (list ’stack 200000))
(eval-options (list ’stack 200000))
To a gnetlistrc file. All the misery goes away! Yet again a problem that seems so obvious after ive found some mystery obscure part of the gEDA wiki.
Posted in Computing, electronics | Leave a Comment »
November 9, 2009 by Tom

Just over a year ago I was briefly involved with the final stages in the deployment of a wireless sensor network. During the project I had many thoughts about how the radio system could have been different. The key problem was that requirements for the comms channel were somewhat unknown. At the time I had recently finished a Software defined Radio project based around the TMS320. Since then, my thoughts have often drifted back to the quandary of just how flexible can you make a radio module for a sensor network. For now I am really considering the physical layer, the network topology is an entirely different kettle of fish.
Not only are there unknowns pre-deployment but things change with time. For example, the channel may change with weather – more water, frozen water, snow cover. Or perhaps physical environment – Increase in (wet?) foliage, change in physical location – node attached to a rock in a landslide? Or a moving animal?? So what if the nodes/data sink could change system variables on the fly to negotiate for optimal communications at minimum power usage? This would of course lead into developing algorithms for choosing what actually is the best at any one time, how much overhead should one invest to optimise the channel….
The requirements initially appear quite simple (Of course not the case when you get into things). The key requirement is low power consumption. This off course relates to output power and data rate. For example, a high power, high data-rate burst may be more cost (power) effective than a longer lower power transmission. Most of the radio systems one sees deployed in commercially available WSN’s are fixed frequency, occasionally offering a choice of output power and modulation. So what are the variables that on might be interested in tinkering with?
- Frequency/Bandwidth – Pretty straightforward, generally lower frequencies are attenuated less per distance through substances – rock, ice, water etc. Higher frequency – greater data rate, smaller antennas
- Modulation – More complex modulation schemes verses resilience to noise.
- Data-rate – maximum a result of other variable choices, although features in Bit error rate somewhat.
- Transmit power – self explanatory really.
- Antenna type/direction/matching – how about a choice of an omni antenna then being able to select one from a choice of increased gain (Directional) antennas? Clearly this is linked to frequency and physical node size
What other physical layers are there? Particularly thinking of non free-space situations. Light, Acoustic wave and Inductive for starters.
Induction has two particularly exciting properties. Unlike EM Waves, its attenuation through water containing media (Eg soil/Ice) remains relatively constant Irrespective of the water/particle size. Secondly, the inductive load of the receiver can be detected, providing the transmitting station some indication of a presence of a receiver.
Even more promising for non-free-space environments is acoustic transmission. Commonly used underwater already, there is already a wealth of research. Unfortunately, little appears to show concern for power consumption. Some numbers plucked from a random paper: 500Kbps over 60m and 4Kbps over 4Km, again this is with unknown power usage. My instinct is that its probably massively too high. More investigation needed.
As a brief aside, one area that remains relatively unexplored to me is that of Wide Band Pulse, It looks quite exciting for this application. Apparently good transmissive properties through walls etc More research needed.
Posted in Uncategorized | Leave a Comment »
August 26, 2009 by Tom

I saw this about 4 times

I saw this about 30 times

Posted in Uncategorized | 2 Comments »
August 10, 2009 by Tom
Oven test part 2.
The question I have set about asking is, Is surface tension enough to keep components on the underside of a board whilst it is reheated to solder the top layer.
If your in a hurry: Yes it is.
If you have a few seconds longer, you may like to observe the evidence:
I baked some components onto a bit of gash stripboard (more about this later). It was a good job did this test as i discovered that the solder was all fully melted when the thermometer read about 160degC – really? i was expecting this to be at about the 200degC point. Ok is the thermometer lying? – it was cheap ebay fodder. Cue up the pan of boiling water. This came out at 99devidenceegC so within the tolerances I need. For now I will assume that the discrepancy at high temperature is due to the probe having a greater thermal mass and so lagging in temperature rise.
Step two was to mount the stripboard inverted so the components can fall off under gravity and repeat the heating step. With some solder paste on the top side to verify that a sufficient temperature has been reached, the parts behaved admirably. None have fallen. I pushed the heating step for longer than needed to make sure, this lead to my second discovery of the evening. When over heated, strip-board omits lots of smoke and fumes. Quite disarmingly, burnt stripboard smells of Naan bread! What does this mean, will i be able to eat naan in an Indian again?
Tags: reflow, reflow oven, soldering
Posted in electronics, studentrobotics | 2 Comments »
August 7, 2009 by Tom
In past years, the student robotics hardware has been fabbed by Pcb/Assembly houses. Partly encouraged by the quality of last years results, I decided to undercut the quotes that the companies offered and build the boards myself.
As I will be fitting lots of surface mount components I decided its high time I investigate Reflow ovens, well ovens for reflow. There are a fair few people expressing opinion on what sorts of ovens are acceptable. So where do you buy cheap reflow ovens….. well argos of course! I dropped in on the way back from a job and picked up the cheapest heating enclosure they had – A cookworks desktop oven (423/0285) £20. On first examination, its exactly as expected – Made of badly fitting pressed toffee. In fact its so flimsy one could be excused from mistaking the oven housing for its packaging!

Anyway, to the more important issue, what is its natural temperature profile? Cue up the recently purchased digital oven thermometer, a spreadsheet and a 5 second beeper (watch -n5 xkbbell). The oven was powered on at full power until 230 degrees C. At this point the door was opened and power removed. The results are shown below:

Also on the chart are some recommended warm-up rates and an approximation to the profile suggested by a solder paste datasheet. It seems that the oven is close to the upper limit of commercial reflow ovens(1.5degC/s) and well under the rate the Spark fun guys suggest as a limit (<2.5degC/s). So what is the rate of temperature change. Taking just the linear section of the graph, a line was fitted:

Well it works out at 1.75 degC/s not bad but possibly a little fast. It looks promising for a pretty good profile if the heating is stalled briefly at about 180degC. This delay in the prescribed curve is apparently to let any gasses in the components to escape before the part explodes. So testing in anger with solder tomorrow. Also that question you’ve always wanted to know. Is surface tension enough to stick components to the underside of a board when the topside is being reflowed? More results soon.
Tags: pcb reflow, reflow oven, soldering
Posted in electronics, jobs, studentrobotics | 1 Comment »
August 6, 2009 by Tom
This evening I booted my desktop PC and it appeared to hang after logging in. I got black screens (My desktop background is black) and a cursor showing that the computer was busy. Restarting X didn’t help.
I shelled in from my laptop and dmesg was showing some signs of illness:
metacity[3728]: segfault at 0 ip 080aa093 sp bf9af060 error 4 in metacity[8048000+82000]
im-info-daemon[3938]: segfault at 0 ip 0804a325 sp bf98e0b0 error 4 in im-info-daemon[8048000+6000]
im-info-daemon[4062]: segfault at 0 ip 0804a325 sp bfa898f0 error 4 in im-info-daemon[8048000+6000]
im-info-daemon[4146]: segfault at 0 ip 0804a325 sp bf965fc0 error 4 in im-info-daemon[8048000+6000]
I recently updated so thought maybe it was some sort of NVidia incompatibility horror. I tried updating in the hope it may have been fixed already, this highlighted the problem…… My root partition was full.
Simple fix: Delete some stuff. All happy again!
Posted in Uncategorized | 2 Comments »
July 29, 2009 by Tom
Did anyone else notice a chunk of the Green Wing soundtrack in this weeks Top Gear? Its rather distinctive. I wander if its an doff of the proverbial?
Posted in Uncategorized | Leave a Comment »
July 15, 2009 by Tom
I regularly get told that I am a “geek”, I generally try to take this as a compliment as anything else would hurt too much. But for the first time ever ive thought it of someone else. Im sat in a bar in a very very nice part of oxford and on the table next to me is a bunch of Flow cytometrists (I guess thats what people at a flow cytometry conference are called) getting very excited about a debate that started with Islam and religion but quickly diverted to protein bonding, physiology chairs, fourescines and a whole load of words Ive never heard before Love it!
Posted in Uncategorized | Leave a Comment »
May 10, 2009 by Tom
Ive just had a few jobs in over the summer that require me to wear a hard hat (Or “Safety Helmet” in PPE Geek parlance) so I finally decided to buy my own rather than borrowing one as I do at the moment. I really dislike wearing the normal builder style hats because they are heavy (Neck ache) and fall off all the time. Many riggers wear the Petzl Ecrin Roc (a climbing helmet) This is allegedly because they are the only IRATA (Think window cleaning by abseiling) certified helmet. This seemed like a good purchase (lightweight, comfortable, has a chinstrap and I can use it climbing), even with the painful price tag of £55, but its a tool and it will get good use. Unfortunately, none of the climbing helmets including the Ecrin roc are BSEN397:1995 certified which google tells me is the British standard. In most situations if I know anything about the regulations, it will be more than the person enforcing them so I can apply a little verbal lubricant and all will be good. So what exactly is BSENblah…blah…blah. More googleing and you end up at what looks like the official place for standards documents The British standars instituteand StandardsUK But hang on a minute, they seem to want about £120 to read it. I dont think so! Surely If i have to conform to something, at least tell me what it is before I spend any money. Presumably they burn your village and confiscate your second eldest goat in payment for testing, so why charge for the specs. I bet it doesn’t even say how big the average head is.
So I went to snow and rock and shelled out for an ecrin roc, despite the know it all in the shop who didn’t seem to like me referring to it as a hat (red rag to a bull ?) It is clearly a better hat than the £2.95 screwfix (BS…certified) one that I have used previously. I am however safe in the knowledge that I just have to spout a load of acronyms and standards numbers to anyone who questions me about it since they too will never have read the correct document.
Does this remind you of anything else anyone?
Some other useful standards numbers for use in self approving by confusion:
BS EN 12283:2002 – Printing and business paper. Determination of toner adhesion
DD CEN ISO/TS 11133-1:2009 Microbiology of food and animal feeding stuffs. Guidelines on preparation and production of culture media…
BS 3237:1960 Specification for light and medium rolling stock for mineral haulage in mines
BS AU 258:1995 Specification for elasticated straps
BS 5577:1999 Specification for table cutlery with non-metallic handles
BS ISO 4161:1999 Hexagon nuts with flange. Coarse thread
BS 6817:1991 Specification for porcelain denture teeth
BS EN 60774-5:2004 Helical-scan video tape cassette system using 12,65 mm (0,5 in) magnetic tape on type VHS. D-VHS
BS EN 4109:2006 Aerospace series. Wrenches, face spanner – (no joke) A bargain at £68!
Is that “Helmet” legal, well yes it conforms to BS 5577:1999 and BS EN 12283:2002 so its well over spec for THIS job
Posted in Uncategorized | 1 Comment »
May 8, 2009 by Tom
Well its official, about 2 months ago I finally decided to go it alone and put all of my efforts into freelancing. This has thankfully co-insided with quite a few job offers in the events industry and a few in the electronics world. Whilst I feel comfortable in the events world, it is often not very cerebral and can be physically taxing. So it was a welcome surprise when a small electronics job fell right on my lap, winner! It is a little frustrating that I am not allowed to publicly talk about it, quite an odd situation really. In short, it was a some electronics in a box with a bit of embedded development and some power electronics. Quite pleasant really.
Student Robotics:
The second annual Student robotic competition was held a few weekends back. We’ve been developing the hardware for this for nearly three years so it was pleasing to see that it is generally coming together. On the whole there were far fewer occurrences of hardware failing due to user misconfiguration (Previous failures were mainly due to powerful things getting plugged into/wiped over weedy signal related stuff.) The drive for next years hardware development is already in earnest. We are attempting to migrate to the Beagleboard from the slug and have re-spec’ed the power board to support this and remove some of the legacy cruft.
Student robotics brings me neatly onto some “software”(a pile of scripts) that I have been “developing” (banged together as I went along with little regard for a plan). We are migrating student robotics to gEDA. In the past I have complained allot about the usability of these tools for PCB design, but I am now searching for an epiphany. To help the miracle along, I wrote some scripts to make symbol libraries for commonly shaped parts. See gedashield.
Update:
Last night apparently student robotics won “About 1kg of engraved glass” at the Southampton EVA’s – apparently some sort of awards ceremony.
Posted in Uncategorized | Leave a Comment »