* WalrusIRC

You need to have 5 posts and not be part of restricted usergroups in order to use the WalrusIRC embedded shoutbox. However, you can also access our IRC channel called #CodeWalrus via EFnet.

Author Topic: Unicorn's Arduino Explorations  (Read 4430 times)

0 Members and 1 Guest are viewing this topic.

Offline Unicorn

  • ??? ??? ??? ??? ???
  • Super User
  • CW Contest II - 2nd place
  • *
  • Join Date: Jan 2015
  • Location: ??? ??? ??? ??? ???
  • Posts: 2825
  • Post Rating Ratio: +5/-2
  • make :PICKACHUP: a thing!
    • Unicorn808
    • 114/11432
    • ??? ??? ??? ??? ???
  • Gender: Male
Unicorn's Arduino Explorations
« on: February 21, 2016, 10:46:55 pm »
Hey! So I just recently got myself an arduino mega, an ethernet shield, and a 2.8" LCD TFT Capacitive touch breakout board from adafruit. This is were I'll be posting about my adventures and questions with and about these items.

I also want to know, are there any good, simple calc modding things that I could do with an arduino? I do have the 83+ SE for its spacious case.

So the first thing I did:
I created CircleIt on the Arduino using my Adafruit LCD.

Video:


Code: [Select]
#include <Adafruit_GFX.h>    // Core graphics library
#include <SPI.h>       // this is needed for display
#include <Adafruit_ILI9341.h>
#include <Wire.h>      // this is needed for FT6206
#include <Adafruit_FT6206.h>
// The FT6206 uses hardware I2C (SCL/SDA)
Adafruit_FT6206 ctp = Adafruit_FT6206();
// The display also uses hardware SPI, plus #9 & #10
#define TFT_CS 10
#define TFT_DC 9
Adafruit_ILI9341 tft = Adafruit_ILI9341(TFT_CS, TFT_DC);
int oldcolor, currentcolor;
int radius = 65;
int score;
int highscore;

void setup(void) {
  while (!Serial);     // used for leonardo debugging

  Serial.begin(115200);
  Serial.println(F("Cap Touch Paint!"));

  tft.begin();

  if (! ctp.begin(40)) {  // pass in 'sensitivity' coefficient
    Serial.println("Couldn't start FT6206 touchscreen controller");
    while (1);
  }

  Serial.println("Capacitive touchscreen started");

  tft.fillScreen(ILI9341_BLACK);
  tft.setCursor(27,130);
  tft.setTextSize(4);
  tft.setTextColor(ILI9341_PINK);
  tft.print("CircleIt");
  tft.setCursor(27,165);
  tft.setTextSize(2);
  tft.setTextColor(ILI9341_GREEN);
  tft.print("Highscore: ");
  tft.print(highscore);
  while (1) {
    if (ctp.touched()){
      tft.fillScreen(ILI9341_BLACK);
      tft.fillCircle(120,166,50,ILI9341_PINK);
      tft.drawCircle(120,166,51,ILI9341_BLUE);
      tft.drawCircle(120,166,52,ILI9341_BLUE);
      tft.drawCircle(120,166,53,ILI9341_BLUE);
      tft.drawCircle(120,166,54,ILI9341_BLUE);
      tft.drawCircle(120,166,55,ILI9341_BLUE);
      tft.setTextSize(2);
      tft.setTextColor(ILI9341_GREEN);
      tft.setCursor(1,1);
      tft.fillRect(1,1,100,15,ILI9341_BLACK);
      tft.print("Score: ");
      tft.print(score);
      return;
    }
  }
}

void loop() {
  // Retrieve a point 
  TS_Point p = ctp.getPoint();
  // flip it around to match the screen.
  p.x = map(p.x, 0, 240, 240, 0);
  p.y = map(p.y, 0, 320, 320, 0);
  Serial.print("(");
  Serial.print(p.x);
  Serial.print(", ");
  Serial.print(p.y);
  Serial.println(")");
  tft.drawCircle(120,166,radius,ILI9341_YELLOW);
  if (radius <= 50){
    tft.drawCircle(120,166,radius,ILI9341_PINK);
  }
  if (radius > 50 && radius <= 55){
    tft.drawCircle(120,166,radius,ILI9341_BLUE);
  }
  if (radius > 55){
    tft.drawCircle(120,166,radius,ILI9341_BLACK);
  }
  if (ctp.touched() && radius <= 50 || ctp.touched() && radius > 55) {
    if (score > highscore)
      highscore = score;
    tft.fillScreen(ILI9341_BLACK);
    tft.setTextSize(2);
    tft.setTextColor(ILI9341_WHITE);
    tft.setCursor(1,1);
    tft.println("GAME OVER");
    tft.setTextColor(ILI9341_ORANGE);
    tft.println("tap to play again.");
    tft.setCursor(1,37);
    tft.setTextColor(ILI9341_GREEN);
    tft.print("Highscore: ");
    tft.print(highscore);
    tft.setTextColor(ILI9341_PURPLE);
    tft.setCursor(1,53);
    tft.print("Score: ");
    tft.println(score);
    score = 0;
    while (1) {
      if (ctp.touched()){
        radius = 65;
        tft.fillScreen(ILI9341_BLACK);
        tft.fillCircle(120,166,50,ILI9341_PINK);
        tft.drawCircle(120,166,51,ILI9341_BLUE);
        tft.drawCircle(120,166,52,ILI9341_BLUE);
        tft.drawCircle(120,166,53,ILI9341_BLUE);
        tft.drawCircle(120,166,54,ILI9341_BLUE);
        tft.drawCircle(120,166,55,ILI9341_BLUE);
        tft.setTextSize(2);
        tft.setTextColor(ILI9341_GREEN);
        tft.setCursor(1,1);
        tft.fillRect(1,1,100,15,ILI9341_BLACK);
        tft.print("Score: ");
        tft.print(score);
        return;
      }
    }
  }
  if (ctp.touched() && radius <= 55 || ctp.touched() && radius > 50) {
    score++;
    tft.setTextSize(2);
    tft.setTextColor(ILI9341_GREEN);
    tft.setCursor(1,1);
    tft.fillRect(1,1,100,15,ILI9341_BLACK);
    tft.print("Score: ");
    tft.print(score);
  }
  radius--;
  radius--;
  radius--;
  if (radius <= 1){
    radius = 65;
  }
}

Its great fun, and I'm thinking about what to do next with these things. :)


Oh yeah, I got a hc-05 Bluetooth module from my robotics teacher and got that working with an arduino using the arduino IDE's built in serial port.
I decided to make it a little more fancy and create a ruby program to interface with it. But, I got a permissions error of some sort when trying to interface with the Bluetooth. But, when trying to interface with an arduino everything worked fine. I asked about it here: http://stackoverflow.com/questions/35190016/bluetooth-serial-port-permission-error-errnoeacces-ruby-serialport-gem
« Last Edit: February 21, 2016, 10:51:48 pm by Unicorn »


  • Calculators owned: I own all of them: PICKACHUP TI 84+ CSE TI 83+ SE TI something something ??? ??? ??? ??? ???
  • Consoles, mobile devices and vintage computers owned: PICKACHUP ??? ??? ??? ??? ???



??? ??? ??? ??? ???

Offline ordelore

  • Full User
  • Safe-haven access
  • Join Date: Oct 2015
  • Location:
  • Posts: 94
  • Post Rating Ratio: +3/-0
  • 8x
    • @ordelore8x
    • ordelore8x
    • @UCJ9TFxpyxonUZvAv-S8K_1A
    • /u/ordelore8x
    • ordelore
    • 112/11231
    • My WIP Story
Re: Unicorn's Arduino Explorations
« Reply #1 on: February 21, 2016, 10:58:06 pm »
I know that arTIcl would be cool to use.
https://github.com/KermMartian/ArTICL
  • Calculators owned: TI-84+SE, TI_Nspire CX
Calc Wars is still alive (I hope)

Offline xlibman

  • Omni founder & CW co-founder
  • Super User
  • Original 5
  • CodeWalrus Supporter
  • *
  • Join Date: Nov 2014
  • Location: Quebec, Canada
  • Posts: 18870
  • Post Rating Ratio: +99/-4
    • dj_omnimaga
    • DJOmnimaga.music
    • @DJOmnimaga
    • dj_omnimaga
    • @DJOmnimaga
    • /u/DJ_Omnimaga
    • DJOmnimaga
    • 112/11286
    • @djomnimaga
    • @DJOmnimaga
    • DJ Omnimaga music store
  • Gender: Male
Re: Unicorn's Arduino Explorations
« Reply #2 on: April 25, 2016, 05:08:43 am »
Wow, how did I miss this? THis looks pretty cool @Unicorn  and I kinda feel bad for noticing this two months after it came out. Is that a port of CircleIt? Because it definitively looks cool. :)
  • Calculators owned: TI-57, 73, TI-80 (broken), TI-81, TI-82, TI-83, TI-83+ (broken), TI-83+ (broken), TI-83+SE (broken), TI-84+, TI-84+CSE, TI-84+CE, TI-85, TI-86, TI-89T, TI-92, TI-Nspire, TI-Nspire CX (semi-broken), HP 39gII, HP Prime, Casio fx-7000G, fx-7400G+, fx-7700GE, fx-9750G+, fx-9750GII, fx-9860G, cfx-9850G, FX-1.0+, fx-CG10, fx-CP400
  • Consoles, mobile devices and vintage computers owned: Samsung i5510, Nexus 5, Atari 2600, Lynx, SMS, Game Gear, Genesis, Dreamcast, NES, SNES, N64, GCN, Wii, Wii U, GBA, DS, 3DS, PS2, PS3, PS4, PSP, PSVita, XBox 360, XBOne

Bandcamp|Reverbnation|Facebook|Youtube|Twitter
Retired Omnimaga admin (2001-11) and editor (2012-14)

Offline Unicorn

  • ??? ??? ??? ??? ???
  • Super User
  • CW Contest II - 2nd place
  • *
  • Join Date: Jan 2015
  • Location: ??? ??? ??? ??? ???
  • Posts: 2825
  • Post Rating Ratio: +5/-2
  • make :PICKACHUP: a thing!
    • Unicorn808
    • 114/11432
    • ??? ??? ??? ??? ???
  • Gender: Male
Re: Unicorn's Arduino Explorations
« Reply #3 on: April 25, 2016, 05:23:14 am »
Wow, how did I miss this? THis looks pretty cool @Unicorn  and I kinda feel bad for noticing this two months after it came out. Is that a port of CircleIt? Because it definitively looks cool. :)
Haha, thanks! Yeah, it is a port of CircleIt, something I just wanted to attempt to learn that graphic library with something.
  • Calculators owned: I own all of them: PICKACHUP TI 84+ CSE TI 83+ SE TI something something ??? ??? ??? ??? ???
  • Consoles, mobile devices and vintage computers owned: PICKACHUP ??? ??? ??? ??? ???



??? ??? ??? ??? ???

Offline xlibman

  • Omni founder & CW co-founder
  • Super User
  • Original 5
  • CodeWalrus Supporter
  • *
  • Join Date: Nov 2014
  • Location: Quebec, Canada
  • Posts: 18870
  • Post Rating Ratio: +99/-4
    • dj_omnimaga
    • DJOmnimaga.music
    • @DJOmnimaga
    • dj_omnimaga
    • @DJOmnimaga
    • /u/DJ_Omnimaga
    • DJOmnimaga
    • 112/11286
    • @djomnimaga
    • @DJOmnimaga
    • DJ Omnimaga music store
  • Gender: Male
Re: Unicorn's Arduino Explorations
« Reply #4 on: April 25, 2016, 05:25:44 am »
Ok thanks for the info :). I wonder if you could port FloodIt if you succeed in making this game for the CE? :P
  • Calculators owned: TI-57, 73, TI-80 (broken), TI-81, TI-82, TI-83, TI-83+ (broken), TI-83+ (broken), TI-83+SE (broken), TI-84+, TI-84+CSE, TI-84+CE, TI-85, TI-86, TI-89T, TI-92, TI-Nspire, TI-Nspire CX (semi-broken), HP 39gII, HP Prime, Casio fx-7000G, fx-7400G+, fx-7700GE, fx-9750G+, fx-9750GII, fx-9860G, cfx-9850G, FX-1.0+, fx-CG10, fx-CP400
  • Consoles, mobile devices and vintage computers owned: Samsung i5510, Nexus 5, Atari 2600, Lynx, SMS, Game Gear, Genesis, Dreamcast, NES, SNES, N64, GCN, Wii, Wii U, GBA, DS, 3DS, PS2, PS3, PS4, PSP, PSVita, XBox 360, XBOne

Bandcamp|Reverbnation|Facebook|Youtube|Twitter
Retired Omnimaga admin (2001-11) and editor (2012-14)

Offline Jkolade936

  • All Around Coolio
  • Super User
  • Join Date: Jan 2016
  • Location: Horseheads, NY
  • Posts: 1515
  • Post Rating Ratio: +9/-1
  • I'm an unknown loner. I try to change that.
    • Jkolade936
    • My Sprites and Walrii Collection
  • Gender: Male
Re: Unicorn's Arduino Explorations
« Reply #5 on: April 25, 2016, 11:50:38 am »
Cool! :D
  • Calculators owned: None of them. :'(
Does this qualify as a signature? 
The answer is "Sure."


Offline Unicorn

  • ??? ??? ??? ??? ???
  • Super User
  • CW Contest II - 2nd place
  • *
  • Join Date: Jan 2015
  • Location: ??? ??? ??? ??? ???
  • Posts: 2825
  • Post Rating Ratio: +5/-2
  • make :PICKACHUP: a thing!
    • Unicorn808
    • 114/11432
    • ??? ??? ??? ??? ???
  • Gender: Male
Re: Unicorn's Arduino Explorations
« Reply #6 on: April 26, 2016, 12:54:48 am »
Definetly. i'd only have tochange display commands. :)
  • Calculators owned: I own all of them: PICKACHUP TI 84+ CSE TI 83+ SE TI something something ??? ??? ??? ??? ???
  • Consoles, mobile devices and vintage computers owned: PICKACHUP ??? ??? ??? ??? ???



??? ??? ??? ??? ???

Offline Unicorn

  • ??? ??? ??? ??? ???
  • Super User
  • CW Contest II - 2nd place
  • *
  • Join Date: Jan 2015
  • Location: ??? ??? ??? ??? ???
  • Posts: 2825
  • Post Rating Ratio: +5/-2
  • make :PICKACHUP: a thing!
    • Unicorn808
    • 114/11432
    • ??? ??? ??? ??? ???
  • Gender: Male
Re: Unicorn's Arduino Explorations
« Reply #7 on: July 25, 2016, 05:59:04 am »
I haven't posted here for a while...

Anyways, I recently got a lattepanda, which is essentially a 1.8 GHz computer with 4 gb of ram, with an arduino processor built in. Its a really nice little device, but it tends to overheat. To counter this problem I took a heat sink off of an old dell computer I had, and also took the fan. I hooked the fan's Power and Ground wires up to the arduino's 5v and GND, and voila! Whenever the panda gets power, the fan starts up. The heat sink sits on top of the box around the processor.

The thing is though, the panda may not be on, but the fan will be running. To only make it so that the fan runs when the panda is on, I'm going to write a program using their sample code and make the program run when the computer starts up.
  • Calculators owned: I own all of them: PICKACHUP TI 84+ CSE TI 83+ SE TI something something ??? ??? ??? ??? ???
  • Consoles, mobile devices and vintage computers owned: PICKACHUP ??? ??? ??? ??? ???



??? ??? ??? ??? ???

Offline xlibman

  • Omni founder & CW co-founder
  • Super User
  • Original 5
  • CodeWalrus Supporter
  • *
  • Join Date: Nov 2014
  • Location: Quebec, Canada
  • Posts: 18870
  • Post Rating Ratio: +99/-4
    • dj_omnimaga
    • DJOmnimaga.music
    • @DJOmnimaga
    • dj_omnimaga
    • @DJOmnimaga
    • /u/DJ_Omnimaga
    • DJOmnimaga
    • 112/11286
    • @djomnimaga
    • @DJOmnimaga
    • DJ Omnimaga music store
  • Gender: Male
Re: Unicorn's Arduino Explorations
« Reply #8 on: July 25, 2016, 08:07:36 am »
Interesting, I wonder if it could be used as someone's main computer if he isn't gaming a lot?
  • Calculators owned: TI-57, 73, TI-80 (broken), TI-81, TI-82, TI-83, TI-83+ (broken), TI-83+ (broken), TI-83+SE (broken), TI-84+, TI-84+CSE, TI-84+CE, TI-85, TI-86, TI-89T, TI-92, TI-Nspire, TI-Nspire CX (semi-broken), HP 39gII, HP Prime, Casio fx-7000G, fx-7400G+, fx-7700GE, fx-9750G+, fx-9750GII, fx-9860G, cfx-9850G, FX-1.0+, fx-CG10, fx-CP400
  • Consoles, mobile devices and vintage computers owned: Samsung i5510, Nexus 5, Atari 2600, Lynx, SMS, Game Gear, Genesis, Dreamcast, NES, SNES, N64, GCN, Wii, Wii U, GBA, DS, 3DS, PS2, PS3, PS4, PSP, PSVita, XBox 360, XBOne

Bandcamp|Reverbnation|Facebook|Youtube|Twitter
Retired Omnimaga admin (2001-11) and editor (2012-14)

Offline Unicorn

  • ??? ??? ??? ??? ???
  • Super User
  • CW Contest II - 2nd place
  • *
  • Join Date: Jan 2015
  • Location: ??? ??? ??? ??? ???
  • Posts: 2825
  • Post Rating Ratio: +5/-2
  • make :PICKACHUP: a thing!
    • Unicorn808
    • 114/11432
    • ??? ??? ??? ??? ???
  • Gender: Male
Re: Unicorn's Arduino Explorations
« Reply #9 on: July 25, 2016, 07:22:19 pm »
Probably! The Enhanced version (4gb ram, 64 gb emmc) can run minecraft with optifine at low graphics, 2-6 render distance.  But if the board is overheating, it can barely load the game. So you would want a good cooling system to use it as a main pc. You would have to install more storage space with an external drive, but I guess that isn't that had to do. Also they coulnd't be doing more than surfiing the web, managing files, no hardcore programs running.
« Last Edit: July 25, 2016, 07:25:52 pm by Unicorn »
  • Calculators owned: I own all of them: PICKACHUP TI 84+ CSE TI 83+ SE TI something something ??? ??? ??? ??? ???
  • Consoles, mobile devices and vintage computers owned: PICKACHUP ??? ??? ??? ??? ???



??? ??? ??? ??? ???

Offline DarkestEx

  • Super User
  • Join Date: Jan 2015
  • Location: Germany
  • Posts: 1324
  • Post Rating Ratio: +10/-2
    • @0xbmuessig
    • @muessigb
    • My homepage
  • Gender: Male
Re: Unicorn's Arduino Explorations
« Reply #10 on: July 25, 2016, 08:26:59 pm »
Hey! So I just recently got myself an arduino mega, an ethernet shield, and a 2.8" LCD TFT Capacitive touch breakout board from adafruit. This is were I'll be posting about my adventures and questions with and about these items.

I also want to know, are there any good, simple calc modding things that I could do with an arduino? I do have the 83+ SE for its spacious case.

So the first thing I did:
I created CircleIt on the Arduino using my Adafruit LCD.

Video:


Code: [Select]
#include <Adafruit_GFX.h>    // Core graphics library
#include <SPI.h>       // this is needed for display
#include <Adafruit_ILI9341.h>
#include <Wire.h>      // this is needed for FT6206
#include <Adafruit_FT6206.h>
// The FT6206 uses hardware I2C (SCL/SDA)
Adafruit_FT6206 ctp = Adafruit_FT6206();
// The display also uses hardware SPI, plus #9 & #10
#define TFT_CS 10
#define TFT_DC 9
Adafruit_ILI9341 tft = Adafruit_ILI9341(TFT_CS, TFT_DC);
int oldcolor, currentcolor;
int radius = 65;
int score;
int highscore;

void setup(void) {
  while (!Serial);     // used for leonardo debugging

  Serial.begin(115200);
  Serial.println(F("Cap Touch Paint!"));

  tft.begin();

  if (! ctp.begin(40)) {  // pass in 'sensitivity' coefficient
    Serial.println("Couldn't start FT6206 touchscreen controller");
    while (1);
  }

  Serial.println("Capacitive touchscreen started");

  tft.fillScreen(ILI9341_BLACK);
  tft.setCursor(27,130);
  tft.setTextSize(4);
  tft.setTextColor(ILI9341_PINK);
  tft.print("CircleIt");
  tft.setCursor(27,165);
  tft.setTextSize(2);
  tft.setTextColor(ILI9341_GREEN);
  tft.print("Highscore: ");
  tft.print(highscore);
  while (1) {
    if (ctp.touched()){
      tft.fillScreen(ILI9341_BLACK);
      tft.fillCircle(120,166,50,ILI9341_PINK);
      tft.drawCircle(120,166,51,ILI9341_BLUE);
      tft.drawCircle(120,166,52,ILI9341_BLUE);
      tft.drawCircle(120,166,53,ILI9341_BLUE);
      tft.drawCircle(120,166,54,ILI9341_BLUE);
      tft.drawCircle(120,166,55,ILI9341_BLUE);
      tft.setTextSize(2);
      tft.setTextColor(ILI9341_GREEN);
      tft.setCursor(1,1);
      tft.fillRect(1,1,100,15,ILI9341_BLACK);
      tft.print("Score: ");
      tft.print(score);
      return;
    }
  }
}

void loop() {
  // Retrieve a point 
  TS_Point p = ctp.getPoint();
  // flip it around to match the screen.
  p.x = map(p.x, 0, 240, 240, 0);
  p.y = map(p.y, 0, 320, 320, 0);
  Serial.print("(");
  Serial.print(p.x);
  Serial.print(", ");
  Serial.print(p.y);
  Serial.println(")");
  tft.drawCircle(120,166,radius,ILI9341_YELLOW);
  if (radius <= 50){
    tft.drawCircle(120,166,radius,ILI9341_PINK);
  }
  if (radius > 50 && radius <= 55){
    tft.drawCircle(120,166,radius,ILI9341_BLUE);
  }
  if (radius > 55){
    tft.drawCircle(120,166,radius,ILI9341_BLACK);
  }
  if (ctp.touched() && radius <= 50 || ctp.touched() && radius > 55) {
    if (score > highscore)
      highscore = score;
    tft.fillScreen(ILI9341_BLACK);
    tft.setTextSize(2);
    tft.setTextColor(ILI9341_WHITE);
    tft.setCursor(1,1);
    tft.println("GAME OVER");
    tft.setTextColor(ILI9341_ORANGE);
    tft.println("tap to play again.");
    tft.setCursor(1,37);
    tft.setTextColor(ILI9341_GREEN);
    tft.print("Highscore: ");
    tft.print(highscore);
    tft.setTextColor(ILI9341_PURPLE);
    tft.setCursor(1,53);
    tft.print("Score: ");
    tft.println(score);
    score = 0;
    while (1) {
      if (ctp.touched()){
        radius = 65;
        tft.fillScreen(ILI9341_BLACK);
        tft.fillCircle(120,166,50,ILI9341_PINK);
        tft.drawCircle(120,166,51,ILI9341_BLUE);
        tft.drawCircle(120,166,52,ILI9341_BLUE);
        tft.drawCircle(120,166,53,ILI9341_BLUE);
        tft.drawCircle(120,166,54,ILI9341_BLUE);
        tft.drawCircle(120,166,55,ILI9341_BLUE);
        tft.setTextSize(2);
        tft.setTextColor(ILI9341_GREEN);
        tft.setCursor(1,1);
        tft.fillRect(1,1,100,15,ILI9341_BLACK);
        tft.print("Score: ");
        tft.print(score);
        return;
      }
    }
  }
  if (ctp.touched() && radius <= 55 || ctp.touched() && radius > 50) {
    score++;
    tft.setTextSize(2);
    tft.setTextColor(ILI9341_GREEN);
    tft.setCursor(1,1);
    tft.fillRect(1,1,100,15,ILI9341_BLACK);
    tft.print("Score: ");
    tft.print(score);
  }
  radius--;
  radius--;
  radius--;
  if (radius <= 1){
    radius = 65;
  }
}

Its great fun, and I'm thinking about what to do next with these things. :)


Oh yeah, I got a hc-05 Bluetooth module from my robotics teacher and got that working with an arduino using the arduino IDE's built in serial port.
I decided to make it a little more fancy and create a ruby program to interface with it. But, I got a permissions error of some sort when trying to interface with the Bluetooth. But, when trying to interface with an arduino everything worked fine. I asked about it here: http://stackoverflow.com/questions/35190016/bluetooth-serial-port-permission-error-errnoeacces-ruby-serialport-gem
Looks awesome :D

Since Claw will be made to run on the Mega too, I could port your game XD
  • Calculators owned: TI-84+, Casio 101-S, RPN-Calc, Hewlett-Packard 100LX, Hewlett-Packard 95LX
  • Consoles, mobile devices and vintage computers owned: Hewlett-Packard 100LX, Hewlett-Packard 95LX, Original Commodore 64C, Tektronix AWG2021, IBM X60s, IBM X60t, Nintendo DS Lite, Nintendo GameBoy Color, Nintendo GameCube, Xbox 360, Palm m5


Avatar drewn for me by Tabbes.

Offline Unicorn

  • ??? ??? ??? ??? ???
  • Super User
  • CW Contest II - 2nd place
  • *
  • Join Date: Jan 2015
  • Location: ??? ??? ??? ??? ???
  • Posts: 2825
  • Post Rating Ratio: +5/-2
  • make :PICKACHUP: a thing!
    • Unicorn808
    • 114/11432
    • ??? ??? ??? ??? ???
  • Gender: Male
Re: Unicorn's Arduino Explorations
« Reply #11 on: July 26, 2016, 06:56:18 am »
Maybe!

So I have a question: Do you think I should put the board on top of the heat sink with the fan behind it like this:
http://imgur.com/4o4xpK3

Or with the heat sink on top with the panda held up by supports, like this: (the supports will be screws or something on each corner)

http://imgur.com/cH5vtYN

What would be the best design for keeping the temp down?
  • Calculators owned: I own all of them: PICKACHUP TI 84+ CSE TI 83+ SE TI something something ??? ??? ??? ??? ???
  • Consoles, mobile devices and vintage computers owned: PICKACHUP ??? ??? ??? ??? ???



??? ??? ??? ??? ???

Offline xlibman

  • Omni founder & CW co-founder
  • Super User
  • Original 5
  • CodeWalrus Supporter
  • *
  • Join Date: Nov 2014
  • Location: Quebec, Canada
  • Posts: 18870
  • Post Rating Ratio: +99/-4
    • dj_omnimaga
    • DJOmnimaga.music
    • @DJOmnimaga
    • dj_omnimaga
    • @DJOmnimaga
    • /u/DJ_Omnimaga
    • DJOmnimaga
    • 112/11286
    • @djomnimaga
    • @DJOmnimaga
    • DJ Omnimaga music store
  • Gender: Male
Re: Unicorn's Arduino Explorations
« Reply #12 on: July 26, 2016, 07:57:14 am »
I am not tech-savy so I can't really help you on that, but I think this fan might need a bit of cleanup :P
  • Calculators owned: TI-57, 73, TI-80 (broken), TI-81, TI-82, TI-83, TI-83+ (broken), TI-83+ (broken), TI-83+SE (broken), TI-84+, TI-84+CSE, TI-84+CE, TI-85, TI-86, TI-89T, TI-92, TI-Nspire, TI-Nspire CX (semi-broken), HP 39gII, HP Prime, Casio fx-7000G, fx-7400G+, fx-7700GE, fx-9750G+, fx-9750GII, fx-9860G, cfx-9850G, FX-1.0+, fx-CG10, fx-CP400
  • Consoles, mobile devices and vintage computers owned: Samsung i5510, Nexus 5, Atari 2600, Lynx, SMS, Game Gear, Genesis, Dreamcast, NES, SNES, N64, GCN, Wii, Wii U, GBA, DS, 3DS, PS2, PS3, PS4, PSP, PSVita, XBox 360, XBOne

Bandcamp|Reverbnation|Facebook|Youtube|Twitter
Retired Omnimaga admin (2001-11) and editor (2012-14)

Offline Unicorn

  • ??? ??? ??? ??? ???
  • Super User
  • CW Contest II - 2nd place
  • *
  • Join Date: Jan 2015
  • Location: ??? ??? ??? ??? ???
  • Posts: 2825
  • Post Rating Ratio: +5/-2
  • make :PICKACHUP: a thing!
    • Unicorn808
    • 114/11432
    • ??? ??? ??? ??? ???
  • Gender: Male
Re: Unicorn's Arduino Explorations
« Reply #13 on: August 01, 2016, 12:25:27 am »
Yeah, it does, but I may never get around to that. :p


But anyways, I made a thing!

I re-hooked up the fan to the green airflow conductor, and wedged a piece of wood with the lattepanda screwed onto it between the edges.

Here you can see it in the "case"


As you can see, there is a small block of wood resting on the hood, as well as a cutout along the side. These two things exist to let the Display connect and have a mount. You can also see the Coasters in this image, making sure that it does not tip over. I have since put some nails halfway into the fan that support it now.



From this view you can see the fan and the lattepanda itself inside:


Now, I haven't mentioned the heat sink, but it is in there, just resting on top of the CPU. I have ordered some thermal paste to make it more permanent. You can also see the fan's wires, which go to 5v and GND pins.



And here is a picture  of what it will look like most of the time:



This seems to be pretty successful cooling, it is averaging 50-45 degrees Celsius while writing this post, while it used to average 75-80.


EDIT: I also have another  question, this time about ArTIcl. I followed along with geekboy's how-to video, but I am wondering if there is  a way to get what key is being pressed on the calc. For example, if I press [Enter] on the homescreen, It sends some sort of data to the Arduino that I can read over serial.
  • Calculators owned: I own all of them: PICKACHUP TI 84+ CSE TI 83+ SE TI something something ??? ??? ??? ??? ???
  • Consoles, mobile devices and vintage computers owned: PICKACHUP ??? ??? ??? ??? ???



??? ??? ??? ??? ???

Offline xlibman

  • Omni founder & CW co-founder
  • Super User
  • Original 5
  • CodeWalrus Supporter
  • *
  • Join Date: Nov 2014
  • Location: Quebec, Canada
  • Posts: 18870
  • Post Rating Ratio: +99/-4
    • dj_omnimaga
    • DJOmnimaga.music
    • @DJOmnimaga
    • dj_omnimaga
    • @DJOmnimaga
    • /u/DJ_Omnimaga
    • DJOmnimaga
    • 112/11286
    • @djomnimaga
    • @DJOmnimaga
    • DJ Omnimaga music store
  • Gender: Male
Re: Unicorn's Arduino Explorations
« Reply #14 on: August 01, 2016, 01:00:14 am »
Nice job Unicorn. Also that kinda looks cool lol actually. :P I wonder if @ACagliano might know some stuff about the ArTIcl library? Else you might need to ask Kerm for help.
  • Calculators owned: TI-57, 73, TI-80 (broken), TI-81, TI-82, TI-83, TI-83+ (broken), TI-83+ (broken), TI-83+SE (broken), TI-84+, TI-84+CSE, TI-84+CE, TI-85, TI-86, TI-89T, TI-92, TI-Nspire, TI-Nspire CX (semi-broken), HP 39gII, HP Prime, Casio fx-7000G, fx-7400G+, fx-7700GE, fx-9750G+, fx-9750GII, fx-9860G, cfx-9850G, FX-1.0+, fx-CG10, fx-CP400
  • Consoles, mobile devices and vintage computers owned: Samsung i5510, Nexus 5, Atari 2600, Lynx, SMS, Game Gear, Genesis, Dreamcast, NES, SNES, N64, GCN, Wii, Wii U, GBA, DS, 3DS, PS2, PS3, PS4, PSP, PSVita, XBox 360, XBOne

Bandcamp|Reverbnation|Facebook|Youtube|Twitter
Retired Omnimaga admin (2001-11) and editor (2012-14)

 


You can also use the following HTML or bulletin board code to share it on your page or forum signature!


Also do not forget to check our affiliates below.
Planet Casio TI-Planet Calc.news BroniesQC BosaikNet Velocity Games