Monthly Archives: December 2012

L298 rev .6

So another rev? Beyond the resistor value issue with the old board, it had some issues that made it expensive and harder than really necessary to build.

Main difference in this rev is the switch from optoisolators to digital isolators. These digiral isolators basically seem to be a modern version of the ancient isolators that used transformers, the coupling is done via RF. I wasn’t able to get any samples, so I’m just going to get some and see what happens. Should save about 3$ in qty 1, and a little bit of power at runtime. The digital isolators are also /way/ faster, 150 Mbaud vs 5Mbaud.

I experimented with autorouting this time. It seems to work well as a helper, and with a lot of even with a lot of tweaking before and after it did speed things up some. It is also helpful to see if a rough part placement will work at all. I also made the pads on the MCU and oscillator bigger, 2 of the parts that were the hardest to place

This opened up some more space in the layout, I was able to get a single 6 channel package, freed up some much needed tool room near the USB header. I also was able to move one of the filter caps out of that ratnest. This version also has 3 mount holes.

RasPiMotorCrtl3_v6

I may still replace the USB header before I consider this rev done, I don’t like the current connector I am using, and think that micro usb would be more convenient anyway.

 

Automatically stop GrooveIP with Tasker

Tasker and GrooveIP work pretty well together. Using a tasker profile it is possible to automatically start GrooveIP when certain conditions are met, such as connecting to home wifi. I also wanted to automatically turn off GrooveIP though. Killing GrooveIP using Tasker’s ‘kill app’ task does not work, however using the ‘am’ command as root does allow GrooveIP to be stopped, as the background service starts the foreground app right back up.

Making a shell task to run “am force-stop com.snrblabs.grooveip” as root does allow the app to be completely killed. I have not tried this on other services, it might work there too.

Root android device without flashing firmware

I finally decided I needed root on my phone (nexus s), but didn’t want to flash custom firmware (the stock google works acceptably). Turns out fastboot is able to boot recovery images without actually flashing them, which then allows you to mount /system read write and copy the su binary over. This is a rough set of steps that will give you root access on a phone with an unlockable bootloader. Caveat emptor, don’t mess up. Worst case, reflash your phone using the stock image.

 

Needed binaries
Here are some rough steps from memory. It requires the android sdk
  1. boot to bootloader
    • adb reboot-bootloader
  2. unlock bootloader
    • fastboot oem unlock
    • phone will wipe itself
  3. boot device using recovery image
  4. mount system partition read / write using twrp2
  5. copy su to device
    • adb push /path/to/su /sdcard/su
  6. install su
    • adb shell (will give you root shell via twrp2)
    • cp /sdcard/su /system/bin
    • chmod su 06755
  7. reboot phone
    • adb reboot
  8. install superuser app

L298 Rev5

Took a few more board revisions than I expected, but I think this set of HW will work.

  • atmega8u2 @ 16 MHz
  • mini usb
  • optoisolators

Still working on the code, and put the wrong value resistors on so the optoisolotors die after a few minutes, I reversed the “do not exceed current” with the “set to this” current.