Jump to content

GPIO pin fiddling...


L0G1C

Recommended Posts

In case anyone's wondering how to toggle the expansion pins for use in sripts/infusions

# Install the GPIO kernel drivers

opkg update

opkg install kmod-gpio-dev

# Define which IO to change

GPIO=6
# Make it accessible
echo $GPIO > /sys/class/gpio/export
# Set it as an Output (Not an Input)
echo "out" > /sys/class/gpio/gpio$GPIO/direction
# Set the pin High
echo 1 > /sys/class/gpio/gpio$GPIO/value
# Set the pin Low
echo 0 > /sys/class/gpio/gpio$GPIO/value
# Set it as an Input (Not an Output)
echo "in" > /sys/class/gpio/gpio$GPIO/direction
# Get/read the pins current value
echo /sys/class/gpio/gpio$GPIO/direction
Moving beyond this, anyone know how to use the GPIO pins for PWM outputs? I found the module: kmod-pwm-gpio and what looks to be an example of how this or a similar module works: https://sites.google.com/site/bifferboard/Home/pwm-gpio
But whenever I run
find /sys -iname '*pwm*'

I get back nothing.

Anyone know?

Link to comment
Share on other sites

I did a fair bit of playing around a few months back and posted some details about the pins, the voltages, etc. I would think that software PWM should work - haven't tried though.

Probably easier to just offload that to an Arduino since I'm sure there will be issues getting everything to work nicely otherwise (especially if the SOC is busy doing other stuff).

The (yet to be released) add-on board looks like it is pretty bare-bones but does have some PWM pins which would be controlled via an Arduino sketch rather than a kmod. Whether the pricing of the board is attractive and the HDK any good (or even documented) is still to be seen.

IIRC the pins arn't GPIO, and you're probably wasting your time, is better to just wait it out

I'm pretty jaded as I've been "waiting it out" since last October, so pretty fed up of waiting now... I really don't know what the motive behind excessive delays and reluctance to properly document the expansion bus is. A leaf needs to be taken from the Mike Ossmann book of tool development.

Link to comment
Share on other sites

  • 4 months later...

So I bought the SDK board and installed it. Even a 3.3V Bluetooth module. Guess I could write an Arduino program to monitor the pins and tell me what they're doing. I noticed at the New Year's bbq, Darren had one hooked up.

How about giving us a minimal pin mapping. Even if it's presently empty. I'd be nominally satisfied to learn that none of those pins are talking. If that's accurate information, I can dig it. Means I have to wait.

Link to comment
Share on other sites

Was thinking of Picking up a board, but just curious as of the practical use of it?

I'm unsure of what its uses are? Does it standardly act as a means of expanding the RAM / CPU? Or is it a strict purpose board to just have easier access to modification? Easier way of adding say example: an lcd screen, led lights, more dip switches, etc?

Link to comment
Share on other sites

So I bought the SDK board and installed it. Even a 3.3V Bluetooth module. Guess I could write an Arduino program to monitor the pins and tell me what they're doing. I noticed at the New Year's bbq, Darren had one hooked up.

How about giving us a minimal pin mapping. Even if it's presently empty. I'd be nominally satisfied to learn that none of those pins are talking. If that's accurate information, I can dig it. Means I have to wait.

Not sure what you are actually meaning here... The pineapple pins are as I originally expected / reverse engineered. The new HDK headers / pins are just normal arduino pins as labelled on the silkscreen. The HDK enables the Pineapple to communicate with the Arduino board over SPI and in fact wastes an opportunity to utilize many of the GPIO pins.

Was thinking of Picking up a board, but just curious as of the practical use of it?

I'm unsure of what its uses are? Does it standardly act as a means of expanding the RAM / CPU? Or is it a strict purpose board to just have easier access to modification? Easier way of adding say example: an lcd screen, led lights, more dip switches, etc?

Arduino is pretty cool but a compelling use case is still needed. You can easily add displays etc but you still need lots of "glue" code on the pineapple do to anything meaningful.

Arduino does nothing in terms of RAM/CPU, however you can offload some tasks (for example display logic, neopixel timing etc) to stop the Pineapple getting too bogged down.

You can in fact add leds, dips etc without even needing Arduino.

Link to comment
Share on other sites

I still don't understand the need to add LEDs or LCD screens to a Pineapple. DIP switches are one thing because they actually add functionality to the device but no one needs more LEDs. If you are doing it for the GPIO pins and trying to build a robot, I guess thats cool, but why use a Pineapple instead of an Arduino or Raspberry Pi?

Link to comment
Share on other sites

Not sure what you are actually meaning here... The pineapple pins are as I originally expected / reverse engineered. The new HDK headers / pins are just normal arduino pins as labelled on the silkscreen. The HDK enables the Pineapple to communicate with the Arduino board over SPI and in fact wastes an opportunity to utilize many of the GPIO pins.

Arduino is pretty cool but a compelling use case is still needed. You can easily add displays etc but you still need lots of "glue" code on the pineapple do to anything meaningful.

Arduino does nothing in terms of RAM/CPU, however you can offload some tasks (for example display logic, neopixel timing etc) to stop the Pineapple getting too bogged down.

You can in fact add leds, dips etc without even needing Arduino.

Just what I was looking for, thanks oli! Edited by DataHead
Link to comment
Share on other sites

I still don't understand the need to add LEDs or LCD screens to a Pineapple. DIP switches are one thing because they actually add functionality to the device but no one needs more LEDs. If you are doing it for the GPIO pins and trying to build a robot, I guess thats cool, but why use a Pineapple instead of an Arduino or Raspberry Pi?

You are preaching to the choir :) Arduino is great, but what we need is a compelling use case - something awesome that can be done with it using the Pineapple.

I think there are some compelling stuff you could potentially do - displaying harvested passwords, displaying connection attempts, tactile switches to launch specific attacks, multi-color LEDs that display the stage or success of attacks, etc etc. I guess making a pineapple "headless" and not needing a PC/phone for standard use.

Do I think the HDK as it stands is great for that? Do I think the software component of the HDK will be good enough? Not really to be honest and I have left the Pineapple eco-system as there is a lot I don't like about it, although I hope that somebody does do something cool with it. A year ago I would have bought a dozen and tried some stuff out, but nowadays I'd rather build something bespoke and not so compromised as the current offering.

The price point of $12 does seem pretty good though.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...