The latest news from babybean!

Adding a flash chip for blackbox on the DTFc

Looks like it is time for my annual post to this blog!

I recently took the plunge and bought the parts for a new quadcopter. I ended up with the Doge Time Flight controler. It has several advantages and disadvantages. Asides from pretty common yaw jitters, one of the main problems is that it doesnt have any onboard storage to record your flight. It does however have pins to add your own!

So following the guide on Oscar Liangs site, I purchased some flash chips from aliexpress and got to it. The list of supported chips could be found on the manual for the blackbox in the cleanflight/betaflight repos. At the time this list consisted off:

  • Micron/ST M25P16 - 16 Mbit / 2 MByte
  • Micron N25Q064 - 64 Mbit / 8 MByte
  • Winbond W25Q64 - 64 Mbit / 8 MByte
  • Micron N25Q0128 - 128 Mbit / 16 MByte
  • Winbond W25Q128 - 128 Mbit / 16 MByte

Of course I immediately went for the largest option. I could only find the Winbond chip on aliexpress, and bought 5 of them. This turned out to be a good idea. Before trying it out on my new doge board, I had a practice run on my old naze32. The solder pads on the naze are closer together, so the pins needed to be bent in and attempt one ended with a broken pin. 

The next attempt, where I rolled the chip on a hard surface to bend the pins was more sucessfull. Thankfully the pad on the DTFc is the correct size for these chips and soldering to this was much easier. I simply pinned each of the 8 pads, held the chip in place with a pair of tweezers and ran the soldering iron down through the legs. The designers of the DTFc conveniently placed a white dot over the polarity mark of the chip. Just align the dots and you are good to go. I had made things a little awkard for myself by going through this process long after the quad has been built, making getting underneath the flight controll board difficult (the chip goes on the bottom). 

And that is all that was to it. Next time I connected to the betaflight configurator, 16MB of dataflash was available. I enabled it on the "Configuration" tab and was ready to fly!

 

I should probably note here that I was very surprised and slightly disappointed at how quickly it fills up and how long it takes to export. I haven't tried debugging yet but on average it takes over an hour for me to extract the contents of the log. Next step will be to bind it to a button on the transmitter to only log whenever I tell it to. 

 

I might add an example video here in the future. 

Note to self: Neo4j Community Config Settings

For my final year project I am using neo4j. I have quickly run into a problem where I can not clean up the database because of heap size issues. The docs are kind of hazy on where the config directory is on windows. I found mine in:

"C:\Users\bean\AppData\Roaming\Neo4j Community"

For example I have a file in there named "neo4j-community.vmoptions". You can access all these options from the settings button on the launcher program.

Custom Carbon Fiber Hubsan x4 Frame

I have an older model Hubsan x4 (it was actually a clone of the hubsan but same thing), which has had a pretty rough time. It has now gone through 2 frames! Unfortunately it is  now quite difficult to get your hands on a replacement frame for the older style hubsan (without the LED's), so I made my own!

HobbyKing sell small sheets of carbon fiber for around £7, so I though why not try my hand at making my own frame. The sheet isnt the toughest material in the world, and the carbon isn't woven but it is still very strong, doesnt bend too easily and an easy way to start working with cf.

OK, so we have a sheet of cf, how do we turn it into a frame? First approach was to start with a 100mm x 100mm square, cutting triangles out of the sides to make an X shape using a hacksaw. This approach worked ok but 100mm turned out to be far too big/heavy. I tried using a bit of sand-paper to round the corners etc. which also worked ok all be it a little slowly. 

Frame with 2 triangles cut outWith one more piece cut out

Another problem with this frame, was that I only tried drilling the holes after it had been cut down to quite a thin shape. The drill just snapped the end of the frame off.

Attempt 2

I started with a smaller 80mm X 80mm square this time, drilling the holes first. To give enough spare material around the edges, the holes were drilled about 10mm into the material. I am using 7mm motors from the Micro Motor Warehouse, so a 7mm drill bit was used. The motors didn't push in with just this, but a fraction of a turn with a circular file and the motors fitted in snugly. I still added some hot glue to make sure they don't move about during flight. I found a dremil with a sanding drum, was the quickest way to cut and shape the the cf into something that looked like a X. This time it was a lot smoother, if not very symmetric. I then re-soldered the motors to the hubsan fc board, which I then stuck onto the frame with a sticky pad, used a cable tie as the battery harness and was good to fly.

The whole setup weighs around the same as the original hubsan and fly's great!

I couldn't find any of the little charging cables lying around, so some ingenuity was required! It didn't even go on fire :)

Connectify Dispatch is Great!

I havn't reviewed a piece of software for a long time now but this little gem has impresses me enough to log in here and write a little bit. 

Connectify Dispatch allows a windows 7 or 8 based computer to use multiple network adaptors at the same time. This can have the effect of increasing download speeds. For example, my home internet connection is about 7mb/s and my phone around 2mb/s - 12mb/s. So with connectify I can download 2 files at 1 time. One file using the home internet and the other using my 3g network. This would conplete in the same time as it would take a single 12mb/s network to download. 

Brilliant. Cost me £10 and can be used on 3 computers for that, making this first bit of software I have paid for in a year or so. Totally worth it.

X230 Quad Build

Hi there, it has been a while but I am back with a write up on my first real quadcopter. Hopefully it will give someone out there some help with the steep learning curve needed to get in the air. 

Parts

First of all I am going to point out that I cheated a bit and bought a kit from hobbyking, which included some of the trickier bits to pick out. I also have ordered most of the other bits from hobbyking and will be referring to parts from there through this whole post (these are not affiliate links or anything like that). The kit is known as the "X230 Mini Quadcopter" and includes the following:

  • The 4 Motors (2222 1800kv and all the bits needed to connect the props to them)
  • 4 ESC's (12A)
  • 2 5030X3 and 2 5030RX3 props (4 props each with 3 blades, 2 clockwise and 2 counterclockwise)
  • The frame and all the bits and pieces to hold it together (lots of 5.6mm nylon spacers). 
  • Some sort of power distribution board
  • A battery holder cable thing

That is a real help when trying to pick parts for the first build, It is however not enough to get in the air. I will say at this stage that if you are thinking of getting this kit as a first build, it would probably be worth spending a bit of extra time and picking the pieces yourself. It is proving to be difficult to find replacement parts for this build. Back on topic tho and here is a minimal list of things I added to get into the air. 

  • A small hex/allen key. Not sure of the size, will add it later but this is needed to use the screws provided with the kit.
  • A flight control board, again I went the easy route and got a kk2.1. Honestly, for a first board it cant be faulted. 
  • A transmitter and receiver... and batteries for it - more on that later. I got a turnigy 9x and transmitter module, again no complaints here.
  • Around 5 or 6 cables to connect the receiver to the computer (these worked for me). Some flight control boards or transmitters may come with these but don't count on it.
  • Batteries. I got 3 "ZIPPY Compact 1500mAh 3S" ones. Honestly, I still have no idea how they perform or even how long they last but they seem grand and fit the supplied battery holder strap very snugly.
  • Something to charge the batteries with, and probably something to power the charger with. Check the "Batteries and Charging" section for that.
  • Some way of tightening the nuts that hold the props on. I just use a pair of pliers but if you don't have any 5.5mm spanners it might be a nice investment. 
  • A soldering iron, or a decent power distribution board. Again more on this later. 

That, as far as I can remember is the minimum but if you continue reading, you will see that there are plenty of other things which can be useful. There may be little things, such as cable ties, which you already have and are not necessary but can make the build easier, more secure etc. I have not mentioned some of these things.

The Build

The kit came with a diagram showing how to assemble the frame, and it is quite straight forward. The trickiest bit is understanding the power distribution board which comes with the kit. I didn't even bother and replaced it with one I had ordered. Unfortunately the one I ordered had bullet connectors which were bigger than the ones of the esc's so some soldering was involved to reduce the size using the smaller connectors. Next time I am making an order from hobbyking I will be ordering this board. Which is both the correct size to sit in the frame and has the correct sized bullet connectors, removing any need to solder. You should probably buy one if you are going to get this kit.

Rather than using the supplied screws to mount the kk2.1 to the frame I used a single sticky pad. I have recently switched to using 4 which has improved stability greatly. It was silly only using one in the first place, as they come in packs of 10.

 

Apart from that, the rest of the frame fits well. Something else I have done is ordered another set of nylon spacers. This allowed me to make a sort of landing gear and lower the top plate for a lower center of gravity.

One thing I had been worried about, was powering the flight control board and the receiver. This turned out to be a non-issue. Somehow the esc's magically powered the board and the board magically powered the receiver. I had read something about cutting cables from some of the esc's but with this setup, that doesn't seem to be necessary. 

Getting the receiver talking to the kk board requires knowing which channels relate to what on your receiver. For the Turnigy module I use the channels are below. Once connected, go to the receiver test on your kk board to check that everything is in order. I had to reverse a few of the channels, which you can quite easily do through the menu on the transmitter. 

  1. Aileron
  2. Elevator
  3. Throttle
  4. Rudder

As far as connecting the esc's to the board goes, I cant really remember what I did!. Good news is that the kk2 board is quite robust and can deal with cables being plugged in all directions. Figguring out which esc goes into which set of pins was fun. After going into the settigns of the fc and setting it to "x" mode, you can "view motor layout" from the main menu. The numbers showing on the screen correlate to where you should plug the esc's in. For example number 1 (top left motor for me) means that the esc plugged into slot 1 (The top set of pins if looking at the board straight on) should be plugged into the top left motor. Before you plug the motors in tho you might want to calibrate the esc's. That is one bit that can be found pretty easily on google.

When the motors are all in, they need to be checked for direction. Again the "view motor layout" screen shows which direction they are meant to be spinning. Use a bit of coloured tape, or something similar to see which direction they are spinning and just swap any two of the three wires connecting the esc to the motor to change direction if needed.

Now it is just a case of putting the props on. Remembering after this stage the quad is truley dangerous! Even at this small size with very brittle props it is still dangerous. Make sure all nuts are tight with washers between the props and washers.

Take off time!  Something that I had not read anywhere: keep the throttle at 0 but move it to the right to arm the quad. Have it at 0 and move left to disarm.

 

Dat Jello Tho

This quad is never going to be the most stable of video recording platforms. I am using the 808 #16 keychain camera on the top of the quad (well not anymore but still) and the video was very wobbly. Even with some foam for cushioning. Balancing the props, using small amounts of electrical tape and a cheap prop balancer from ebay has helped with this greatly! I am still working on improving this.

Batteries and Charging

I had no idea how little of an idea I have about batteries. So anyway, I am sitting with these 3 "ZIPPY" 3 cell 1500mAh batteries. Some points to consider:

  • People charge their batteries at a rate correlating to the capacity of the battery. eg. for these 1500mAh batteries people recommend to charge at 1.5A max. For a 2000mAh one 2A would be recommended, 1200 = 1.2A etc.
  • Using the balance option is slower but better for the batteries
  • They should not be discharged below 3 volts per cell. So these 3S batteries should not drop below 9V.
  • I got a massive lipo safe charging bag for this but have a sneaking suspicion that these batteries are small enough not to really need it. Still for a couple of quid its worth having.

For the charger I got a Turnigy Accucel-6,  which doesn't come with a power supply. The power supply must have a 5.5mm jack and the voltage doesn't matter too much (something like anywhere between 12v to 18v). This is one of the few things I didn't get from HK, instead I got a cheappo one from ebay, which has managed not to explode yet, is thankfully silent and does the job. The charger came with a cable that fitted my batteries.

The charger then, I am not going to try and explain how to use it properly here, I still don't really know. What I do is: choose the lipo balance option, have it set to 1.5A max, plug both cables from the battery into it and hold the start button for a few seconds until it prompts to confirm. Nothing has exploded yet!

Something else worth mentioning; The controller seems to be eating the (8!) aa batteries I have put in it quite quickly. I have ordered a battery for the transmitter but it has not arrived yet. It seem to be charged differently and needs to be placed into the transmitter the correct way. I will update this when I get it, figure it out and undoubtedly destroy my transmitter!

I wish you all the best. Be safe, Have fun.

Tethering Motorola razr i on 3

So it finally happened. The old phone stopped charging again so I got a new phone and switched to 3 in the process. One problem I was having was with tethering. I am on 3's "one plan" so tethering is included on my plan.

When I tried to connect over the wireless hotsopt set up normally in the settings, I could not get a connection to the internet. The computer connected to the phone ok but not on through. The same problem was present with USB connections. The solution came from a forum, which I have lost or I would credit, and involves adding "dun" to the "APN type" setting. 

That is all it takes. Add ",dun" to the list of apn types on the last screen there. The apn on the 3rd screen works for tethering but will not let you use your phone normally.

 

Overall I am happy and impressed with the speeds. Normally a bit slower than below but with a slightly faster ping.

speedtest result from Motorola razr i on 3

 

Talk about this (temporary comments):

HTML Comment Box is loading comments...

 

Reading MP3 id3 Tags in PHP

Whilst we are on the topic of metadata...

Recently I have been hacking this excellent example of a music player to work just from songs in a folder rather than an external cloud source. One thing which I came up against was looking for mp3 id3 tags. That is, the tags with information about song names albums etc. 

It is apparently quite easy to extract this information with PHP using a PEAR package, but considering I would rather not have to install a package (I dont even know if I can on this server...) it would be nice to just have a stand alone function to extract this information. Step in "MP3_IDv2 0.1.8". Which has this great line in its README file.

"v0.1 did in fact just do that. I don't have a copy of code that old, but I could essentially write it today with a one-line function:

  function getID3($filename) { return unpack('a3TAG/a30title/a30artist/a30album/a4year/a28comment/c1track/c1genreid', substr(file_get_contents($filename), -128)); }"

 

That is a line, which seems to extract most id3 tags.

function getID3($filename) {
          return unpack('a3TAG/a30title/a30artist/a30album/a4year/a28comment/c1track/c1genreid', substr(file_get_contents($filename), -128));
}

This function return an array which is formatted as follows:

Array ( 
          [TAG] => TAG
                    [title] => Easy Money
                    [artist] => Bruce Springsteen
                    [album] => Wrecking Ball
                    [year] => 2012
                    [comment] =>
                    [track] => 0
                    [genreid] => 2
          )

How very handy. It work great for this project, where a full PEAR package is probably an overkill to be honest.

FLAC in Windows.

Recently I have been trying to get my hands on FLAC music as much as possible. Windows does not appear to support FLAC files in any way.  To make windows 7 a bit more FLAC friendly I installed 2 files. 

  • "opencodecs" -  makes Windows Media Player etc able to play the FLAC format. 

Oddly this didnt actually solve the problem which I was having. What I really wanted was for Explorer to understand and display the FLAC metadata. 

  • "FLAC Property Handler" - Something I stumbled upon (well it was on the front page of google but still) on a windows forum. There was a few different mirrors of it on the forum and I have uploaded the 64 bit version here, just for safe-keeping.

That is all it took, lovley extra metadata for FLAC files in Windows 7.

A screenshot of windows explorer showing file numbers of a flac album