Skip to content

2.4″ 240×320 SPI Touch ILI9341 3.3V

This is a notes post for future reference Description: Cheap eBay color LCD display Resolution: 240×320 Size: 2.4″ Driver: ILI9341 (Display), ads7843 compatible (Touch). Colors: 16bit Voltage: 3.3v or 5v (only tried 3.3) Libraries: SPI, Adafruit_ILI9341 (Display), UTouch (Touch). CODE: #include “SPI.h” #include “Adafruit_GFX.h” #include “Adafruit_ILI9341.h” #include <UTouch.h> #define TFT_CS 10 #define TFT_DC 9 Adafruit_ILI9341 tft = Adafruit_ILI9341(TFT_CS, TFT_DC); UTouch  myTouch( 6, 5, 4, 3, 2); … void setup() { … tft.begin(); tft.setRotation(1); myTouch.InitTouch(); myTouch.setPrecision(PREC_MEDIUM); … Pins: Touch T_IRQ – pin 2 T_DO – pin 3 T_DIN – pin 4 T_CS – pin 5 T_CLK – pin 6 Display SDO(MISO) – Pin 12 LED – 3.3V SCK – Pin 13 SDI(MOSI) – Pin 11 D/C – Pin 9 RESET – RST CS – Pin 10 GND – GND VCC – 3.3V

ESP8266 – Work in progress

Thanks to a Hackaday post, I was made aware of these awesome (and awful) wireless to UART SoCs. When I first started the information available was patchy, resulting in the SoC randomly rebooting. After a few weeks of trial and error, it’s some what stable, but still has it’s issues every couple of hours. To get around this, I’ve incorporated a hard reset after ‘x’ amount of program loops with an Arduino. I had a status check that ran instead of loops, but the output of the SoC wasn’t synchronous, when dealing with multiple events from the UART and wifi interfaces. The tester project was a ‘simple’ web server with temperature dynamically displayed. I followed most of this tutorial and adjusted the code to prevent the SoC rebooting so often. There is a script that… Read More »ESP8266 – Work in progress

SoundMate M1

Purchased a couple of SoundMate M1’s for a great price to add wireless audio to area’s of our home. After a short time messing with it, I could only get iTunes to detect it as an audio source. While this is ok, I need it to work with DLNA sources from other devices. Also the web interface looked different from other images I had seen on the web. So I did a little poking around: Downloaded an older version of the firmware and did a string and hex dump to see if there was anything interesting in them. While the string dump was boring, the hex dump revealed: 00000000  01 00 00 00 4f 70 65 6e  57 72 74 00 00 00 00 00  |….OpenWrt…..| “OpenWrt” – Awesome start. Extracted the Root-FS using Firmware… Read More »SoundMate M1

Cheap Pickups: SRW2008P

I found a Linksys SRW2008P at the markets for $10. That’s 8 1000Base-T gigabit ports with POE and 2 mini-gbics (SFP’s). It also supports 256 VLANs and link aggregation. Resetting to factory defaults took some reading, and trial and error. The console cable required is a straight through DB9 cable not a cross-over (null modem) cable. I’ve used an old DB9 to RJ45 convertor and changed the pin assignment (pin 2 and 3) to make it compatible with newer Cisco console cables. The console login/password reset procedure is terrible. Pull the power and open a console session. Plug in the power and press ESC to interrupt the boot and choose “password reset procedure”. Continue booting until you see a login page. From what I worked out it is now asking you for new admin credentials,… Read More »Cheap Pickups: SRW2008P

ST7735 LCD 128×160 with Arduino

This is a notes post for future reference These LCD’s arrived during my 3rd order for the LCD’s with the red PCB. Although they use the same or at least compatible driver chips, the PCB is the wrong size for the mounting in the project I wanted to use them in. Lucky they were cheap and still handy for other projects. Description: Cheap eBay color LCD display Resolution: 128×160. Size: 1.8″ Driver: ST7735 Colors: 18bit ? Libraries: Adafruit_GFX, Adafruit_ST7735, SPI. CODE: #define sclk 13 #define mosi 11 #define cs   4 #define dc   8 #define rst  -1 Adafruit_ST7735 tft = Adafruit_ST7735(cs, dc, rst); tft.initR(INITR_BLACKTAB); tft.fillScreen(ST7735_BLACK); Pins: Display -> UNO SCLK -> 13 MOSI (SDA) -> 11 CS -> 4 DC (AO) -> 8 RST -> RESET VCC -> 5V GND -> GND LED -> 3.3v

CDP Sniffing with an Arduino

UPDATE 5/5/21: Please check out the most current version. Firstly full credit to Chris van Marle for his work on his CDPSniffino code, of which I have butchered (to be honest) to get it to work with ENC28J60 ethernet controllers. The packet info that is captured is slightly different, so it took a while debugging. This is also my first Arduino project (not including 3D printers). It has  been a while since I have written C code… Enough excuses… Anyway, I use a lot of Cisco equipment and I have found on many occasion that network wall ports are either not labeled or the labels have worn off. When that port needs to be reconfigured it can take time to work out which network cabinet it goes back too, then which switch, and then which… Read More »CDP Sniffing with an Arduino

ENC28J60 Ethernet controller with Arduino

This is a notes post for future reference Description: Cheap/cheapest ethernet controller Speed: 10MB/s (half duplex I believe) POE: no Operating voltage: 5 or 3.3v WOL: Yes, although not tested. Libraries: EtherCard (My prefered). CODE: Add the following to: enc28j60.cpp to enable promiscuous mode (disable ip filters), can be used for packet sniffing. void ENC28J60::enablePromiscuous () { //writeRegByte(ERXFCON, readRegByte(ERXFCON) & ERXFCON_CRCEN|ERXFCON_PMEN|ERXFCON_BCEN); writeRegByte(ERXFCON, 0); } Credit #include <EtherCard.h> byte Ethernet::buffer[500]; ether.begin(sizeof Ethernet::buffer, mymac,10); if (!ether.dhcpSetup()) { tft.print(“DHCP failed.”); } ENC28J60::enablePromiscuous(); Pins: Controller -> UNO/Micro/Mini Pro (Compatible) INT -> D2 SO -> D12 SI -> D11 SCK -> D13 CS -> D10 (or D8) VCC -> 5V GND -> GND

ST7735 LCD 128×160 with Arduino

This is a notes post for future reference Description: Cheap eBay color LCD display Resolution: 128×160. Size: 1.8″ Driver: ST7735 Colors: 18bit ? Libraries: Adafruit_GFX, Adafruit_ST7735, SPI. CODE: #define sclk 13 #define mosi 11 #define cs   4 #define dc   8 #define rst  -1 Adafruit_ST7735 tft = Adafruit_ST7735(cs, dc, rst); tft.initR(INITR_BLACKTAB); tft.fillScreen(ST7735_BLACK); Pins: Display -> UNO SCLK -> 13 MOSI (SDA) -> 11 CS -> 4 DC (AO) -> 8 RST -> RESET VCC -> 5V GND -> GND LED -> 3.3v

SSD1306 OLED 128×64 with Arduino

This is a notes post for future reference Description: Cheap eBay monochrome OLED display Resolution: 128×64. Size: 0.96″ Driver: SSD1306 ? Libraries: U8glib (trying to get it to work with Adafruit_SSD1306.h). Code: //Uncomment this line from the examples: U8GLIB_SSD1306_128X64 u8g(U8G_I2C_OPT_NONE);    // I2C / TWI Pins: Display -> UNO SDA -> A4 SCK -> A5 GND -> GND VCC -> VCC (5V)

Basic MK802ii Wall/Desk Mount

To celebrate getting new batteries for both of my digital calipers, I made a quick and easy wall or desk mount for a MK802ii, which I’m using Debian and motion to stream the webcams on my 3D printers (1 each and 1 for the room = 3). The HDMI cover was made by inverting an already existing HDMI plug in Sketchup online library. Although I haven’t used it for very long, I figured having the MK802ii vents (2x sets of air holes) facing out would be the best way to dissipate heat. If heat is still an issue I’d add a bracket for a 5v 40mm fan, and use part of the 5v USB. Here’s the STL file: mk802_ii