All Projects → lynxis → lpc_sniffer

lynxis / lpc_sniffer

Licence: GPL-3.0 license
a low pin count sniffer for icestick

Programming Languages

Verilog
626 projects
Makefile
30231 projects
python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to lpc sniffer

icestick-lpc-tpm-sniffer
FPGA-based LPC bus sniffing tool for Lattice iCEstick Evaluation Kit
Stars: ✭ 41 (-31.67%)
Mutual labels:  lpc, ice40, icestick
my hdmi device
New clean hdmi implementation for ulx3s, icestick, icoboard, arty7, colorlight i5 and blackicemx! With tmds encoding hacked down from dvi standard. Supports DDR and SRD tranfser!
Stars: ✭ 66 (+10%)
Mutual labels:  ice40, icestick
verifla
Fork of OpenVeriFla - FPGA debugging logic analyzer to use with your designs - examples (so far) for ice40/IceStorm
Stars: ✭ 21 (-65%)
Mutual labels:  ice40, icestick
FNET
The FNET is a free, open source, dual TCP/IPv4 and IPv6 Stack (under Apache Version 2.0 license) for building embedded communication software on 32bit MCUs.
Stars: ✭ 97 (+61.67%)
Mutual labels:  lpc
no2muacm
Drop In USB CDC ACM core for iCE40 FPGA
Stars: ✭ 26 (-56.67%)
Mutual labels:  ice40
spu32
Small Processing Unit 32: A compact RV32I CPU written in Verilog
Stars: ✭ 51 (-15%)
Mutual labels:  ice40
icefloorplan
iCE40 floorplan viewer
Stars: ✭ 22 (-63.33%)
Mutual labels:  ice40
kianRiscV
KianRISC-V! No RISC-V, no fun! RISC-V CPU with strong design rules and unittested! CPU you can trust! kianv rv32im risc-v a hdmi soc with harris computer architecture in verilog: multicycle, singlecycle and 5-stage pipelining Processor. Multicycle Soc with firmware that runs raytracer, mandelbrot, 3d hdmi gfx, dma controller, etc.....
Stars: ✭ 167 (+178.33%)
Mutual labels:  ice40
shadowgate
Mirror of ShadowGate code
Stars: ✭ 12 (-80%)
Mutual labels:  lpc
terminal
Terminal inside the microcontroller (cli for mcu)
Stars: ✭ 31 (-48.33%)
Mutual labels:  lpc
cariboulite
CaribouLite turns any 40-pin Raspberry-Pi into a Tx/Rx 6GHz SDR
Stars: ✭ 785 (+1208.33%)
Mutual labels:  ice40
shapool-core
FPGA core for SHA256d mining targeting Lattice iCE40 devices.
Stars: ✭ 19 (-68.33%)
Mutual labels:  ice40
iceskate
A low cost FPGA development board for absolute newbies
Stars: ✭ 15 (-75%)
Mutual labels:  ice40
gateware
A collection of little open source FPGA hobby projects
Stars: ✭ 38 (-36.67%)
Mutual labels:  ice40
risc8
Mostly AVR compatible FPGA soft-core
Stars: ✭ 19 (-68.33%)
Mutual labels:  ice40

lpc sniffer (low pin count) for ice40 stick

Turn the ice40 stick into a LPC sniffer.

features

  • i/o read + writes
  • memory read + writes
  • sync errors

How to use

  1. modify EEPROM of the FTDI and enable OPTO mode on Channel B
  2. programm top.bin into your ice40 by iceprog lpc_sniffer.bin
  3. connect the LPC bus
  4. python3 ./parse/read_serial.py /dev/ttyUSB1

what connectors are used on the IceStick?

  • J1 connector
	VCC 3.3|NC 1
	GND        2
	lpc_clock  3
	lpc_ad[0]  4
	lpc_ad[1]  5
	lpc_ad[2]  6
	lpc_ad[3]  7
	lpc_frame  8
	lpc_reset  9
  • uart output over the ftdi

LEDs

	For orientation: the usb port points south:
	green in the middle: overflow_led

overflow_led when internal buffer is full. No more LPC frames are decoded

Uart protocol

The LPC sniffer will write out frames onto the second uart of FTDI with 921600 baud.

format

  • 4 byte: address
  • 1 byte: data
  • 1 byte: 0-3bits: direction+type, 4-7: errorcode
  • 2 byte: '\r\n'

error codes

An error code is decoded in 4 bits

  • 0001 - sync timeout.

Internal documentation

A LPC frame will:

  1. decoded by the LPC decoder
  2. saved into the internal memory
  3. padded by \r\n
  4. written onto uart

in memory layout

The internal memory is used as 48bit addressable memory. 48 bit is exact one lpc frame

  • 4 byte: address
  • 1 byte: data
  • 1 byte: direction/type + error code

internal buffer

The LPC sniffer is using an internal buffer. When the internal buffer is full, new frames will be discarded. The green LED in the middle will turn on. The internal buffer can save up to 2**10 lpc frames (1024).

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].